فرمت :WORD تعداد صفحه :22
UPS (Uninterruptible Power Supplies)
امروزه با وجود مادربرد هایی که خیلی هم گران نیستند می توانید از روشهای ارزان قیمت مختلفی برای حفاظت مادربرد کامپیوتر در برابر مشکلات منبع تغذیه ( برق شهر ) استفاده کنید. ولی هیچ روشی مانند استفاده از UPS یا یک منبع تغذیه بدون وقفه نمی تواند از مادربرد یا سایر تجهیزات گرانقیمت شما در برابر مشکلات برق حفاظت کند. زمانیکه شما یک سرور یا کامپیوتر گرانقیمت دارید اهمیت وجود UPS بیشتر می شود. UPS برای فیلتر نوسانات ناخواسته برق ورودی و کنترل ولتاژ آن دارای مدارات خاصی است. و برای حل مشکل قطع برق یا افت بیش از حد ولتاژ ( افت ولتاژ برای بسیاری تجهیزات مضر است یا سبب از کار افتادن موقت آنها می شود ) از باتری استفاده می کند. که کل این مچموعه را تغذیه پشتیبان می گویند.
اما برای انتخاب یک UPS باید خدمتتان عرض کنم این به خود شما بستگی دارد که چه میزان می خواهید خرج کنید و UPS را برای چه منظوری مورد استفاده قرار می دهید. مصرف انرژی آنچه محافظت می کنید عامل دیگری است که در خرید UPS نقش مهمی ایفا می کند. واحدی که بوسیله آن ظرفیت UPS یا مقدار انرژی که به شما میدهد بیان می شود عبارت است از آمپر-ساعت. مثلاً یک UPS پنجاه آمپر ساعت می تواند دستگاه شما را با جریان 2 آمپر به مدت 25 ساعت یا با جریان 5 آمپر به مدت 10 ساعت تغذیه کند. توجه داشته باشید که میزان جریان را مصرف دستگاه تعیین می کند پس زمان تغذیه برای یک UPS مشخص به میزان مصرف دستگاه شما دارد. بدیهی است در صورتیکه زمان بحرانی که به یک منبع تغذیه احتیاج دارید کوتاه باشد می توانید از UPS با آمپر-ساعت کمتر و در نتیجه ارزانتر استفاده کنید. البته یک محدودیت هم در این زمینه وجود دارد و آن این است که جریان نامی UPS شما باید از کل برق دستگاههای شما ( به آمپر ) بزرگتر باشد.
نکته دیگری که در پایان توجه شما را به آن جلب می کنم این است که هیچگاه از یک محافظ لوازم برقی ( مانند محافظ یخچال یا کامپیوتر ) در خروجی یک UPS استفاده نکنید یا به عبارت دیگر زمانیکه از UPS استفاده می کنید نباید از این محافظ ها به طور همزمان برای یک دستگاه استفاده کنید چون باعث صدمه دیدن دستگاه شده و حتی از نظر ایمنی شما هم می تواند خطرناک باشد.
USB
اتصال یک وسیله USB به کامپیوتر ساده است. کانکتور یا سوکت USB را در پشت کامپیوترتان به راحتی می توانید پیدا کنید و کابل USB را به آن وصل کنید.
اگر دستگاه جدیدی را از طریق USB به کامپیوتر وصل کنید. سیستم عامل شما (مثلاً ویندوز) به طور خودکار وجود یک وسیله USB را تشخیص می دهد و از شما دیسک حاوی راه انداز (یا درایو) سخت افزار جدید را می خواهد. ولی اگر دستگاه قبلآ نصب شده باشد کامپیوتر به طور خودکار آ ن را فعال می کند و با آن ارتباط برقرار می کند یک وسیله USB هر موقع می تواند نصب شود (به کامپیوتر متصل شود) یا از سیستم جدا شود.
بسیاری از دستگاههای USB کابل USB خود را به همراه دارند. یعنی کابل از یک سمت به دستگاه وصل است و قابل جدا کردن نیست و از سمت دیگردارای یک سوکت نوع"A" است که از این سمت به کامپیوتر وصل می شود
فرمت :WORD تعداد صفحه :39
عنوان صفحه
مقدمه........................................................................................................................5
فصل اول: مروری بر ویژگی های جدید ویژوال استودیو
ارائه یک نسخه جدید فریمورک دات نت و دستاوردهای آن.....................................8
ویژگی هائی از فریمورک مختص پیاده کنندگان برنامه های ASP.NET..............10
مروری بر ویژگی هائی که می تواند برای برنامه های ASP. NET مفید واقع شود.....11
مروری بر ویژگی های جدید ویژوال استودیو 2008..............................................13
فصل دوم: ویژگی های جدید ویژوال استودیو
انتقال تنظیمات (Settings migration).............................................................17
کامپوننت های ارتباطی (Community components)....................................17
منوهای Community و Help..........................................................................18
مدیریت پنجره ها و المنتهای عمومی کاربران..........................................................18
امکان طراحی کلاس برای کدهای Visual C++.................................................19
پروژه برنامه های تحت وب...................................................................................19
گسترش ایجاکس (AJAX) ................................................................................21
موارد پشتیبانی طراح پروژه در برنامه های معرف ویندوز (WPF)........................23
موارد پشتیبانی طراح پروژه در برنامه های تحت وب.............................................23
پشتیبانی پروژه های چند منظوره در طراح پروژه....................................................24
راهبرد ClickOnce.............................................................................................25
راهبرد Windows Installer............................................................................27
Design View و CSS Design Tools در ویژوال استودیو 2008................28
IntelliSense برای Jscript و ASP.NET AJAX...................................28
پشتیبانی Object Browser و Find Symbol Support برای چند منظوره سازی......29
طراح برنامه های معرف ویندوز (WPF).............................................................29
داده (Data)........................................................................................................30
Language-Integrated Query (LINQ).................................................32
سرویسهای نرم افزار کلاینت.................................................................................33
گزارش گیری........................................................................................................33
فرمتهای جدید فایلهای گزارش.............................................................................34
Report Wizard.............................................................................................34
گسترش Expression Editor.........................................................................35
چاپ Report Viewer....................................................................................35
فشرده سازی PDF..............................................................................................36
یک .NET Framework مشخص انتخاب کنید..............................................36
قابلیت چند پردازشی............................................................................................36
Logging پیشرفته..............................................................................................36
تعریف آیتم ها.....................................................................................................37
آدرس اسمبلی ها و فایلهای تغییر نام یافته...........................................................37
خلاصه................................................................................................................39
فهرست منابع.......................................................................................................40
مقدمه
مایکروسافت و نسخه جدید ویژوال استودیو
شرکت مایکروسافت در نوزدهم نوامبر 2007 (بیست و هشتم آبان ماه هشتاد و شش)، رسماً نسخه ASP. NET 3.5 و ویژوال استودیو 2008 را عرضه کرد. همانند نسخه شماره 3 که نسبت به نسخه شماره 2 دارای امکانات بیشتری بود، در این نسخه نیز نسبت به نسخه قبلی امکانات جدیدی اضافه شده است. اسمبلی های اساسی نصب شده توسط نسخه شماره 2 فریمورک، همچنان در نسخه های 2 و5/3 قابل استفاده می باشند. به عبارت دیگر، در نسخه شماره 5/3، مفاهیم و نحوه نوشتن کد و مواردی از این قبیل نسبت به نسخه شماره 2 تغییر نکرده است. در این نسخه، نوع ها، ویژگی ها و قابلیت های جدیدی به فریمورک اضافه شده است. ویژوال استودیو 2008، ابزاری قدرتمند برای پیاده سازی برنامه های ASP. NET است. برخلاف نسخه قبل که صرفاً مختص یک نسخه خاص فریمورک بود (به عنوان نمونه در ویژوال استودیو 0/3، نسخه ASP.NET 1.1 و در ویژوال استودیو 2005 نسخه ASP. NET 2.0)، از ویژوال استودیو 2008 می توان به همراه چندین نسخه فریمورک استفاده کرد. شما می توانید از طریق یک لیست drop down، نوع فریمورک خود جهت پیاده سازی برنامه ها (به عنوان نمونه ASP. NET 2.0 و یا ASP. NET 3.5) را انتخاب نمائید.
شکل 1 نحوه انتخاب فریمورک در زمان ایجاد یک وب سایت جدید را در ویژوال استودیو 2008 نشان می دهد.
شکل 1 : نحوه انتخاب فریمورک در زمان ایجاد یک وب سایت جدید در ویژوال استودیو 2008
در ویژوال استودیو 2008، در محیط طراحی نیز تغییراتی در جهت قدرتمند تر شدن آن ایجاد شده است. افزودن امکاناتی نظیر هوشمندی در تایپ و اشکال زدائی کدهای جاوا اسکریپت و قابلیت مشاهده و حتی توقف در هسته کد فریمورک دات نت در حین اشکال زدائی نمونه هایی در این زمینه میباشند.
فرمت :WORD تعداد صفحه :49
شبکه vpn چیست
همزمان با عمومیت یافتن اینترنت ، اغلب سازمانها و موسسات ضرورت توسعه شبکه اختصاصی خود را بدرستی احساس کردند. در ابتدا شبکه های اینترانت مطرح گردیدند.این نوع شبکه بصورت کاملا" اختصاصی بوده و کارمندان یک سازمان با استفاده از رمز عبور تعریف شده ، قادر به ورود به شبکه و استفاده از منابع موجود می باشند. اخیرا" ، تعداد زیادی از موسسات و سازمانها با توجه به مطرح شدن خواسته های جدید ( کارمندان از راه دور ، ادارات از راه دور )، اقدام به ایجاد شبکه های اختصاصی مجازی VPN)Virtual Private Network) نموده اند.
یک VPN ، شبکه ای اختصاصی بوده که از یک شبکه عمومی ( عموما" اینترنت ) ، برای ارتباط با سایت های از راه دور و ارتباط کاربران بایکدیگر، استفاده می نماید. این نوع شبکه ها در عوض استفاده از خطوط واقعی نظیر : خطوط Leased ، از یک ارتباط مجازی بکمک اینترنت برای شبکه اختصاصی بمنظور ارتباط به سایت ها استفاده می کند.
عناصر تشکیل دهنده یک VPN
دو نوع عمده شبکه های VPN وجود دارد :
◁ دستیابی از راه دور (Remote-Access) . به این نوع از شبکه ها VPDN)Virtual private dial-up network)، نیز گفته می شود.در شبکه های فوق از مدل ارتباطی User-To-Lan ( ارتباط کاربر به یک شبکه محلی ) استفاده می گردد. سازمانهائی که از مدل فوق استفاده می نمایند ، بدنبال ایجاد تسهیلات لازم برای ارتباط پرسنل ( عموما" کاربران از راه دور و در هر مکانی می توانند حضور داشته باشند ) به شبکه سازمان می باشند. سازمانهائی که تمایل به برپاسازی یک شبکه بزرگ " دستیابی از راه دور " می باشند ، می بایست از امکانات یک مرکز ارائه دهنده خدمات اینترنت جهانی ESP)Enterprise service provider) استفاده نمایند. سرویس دهنده ESP ، بمنظور نصب و پیکربندی VPN ، یک NAS)Network access server) را پیکربندی و نرم افزاری را در اختیار کاربران از راه دور بمنظور ارتباط با سایت قرار خواهد داد. کاربران در ادامه با برقراری ارتباط قادر به دستیابی به NAS و استفاده از نرم افزار مربوطه بمنظور دستیابی به شبکه سازمان خود خواهند بود.
◁ سایت به سایت (Site-to-Site) . در مدل فوق یک سازمان با توجه به سیاست های موجود ، قادر به اتصال چندین سایت ثابت از طریق یک شبکه عمومی نظیر اینترنت است . شبکه های VPN که از روش فوق استفاده می نمایند ، دارای گونه های خاصی در این زمینه می باشند:
▪ مبتنی بر اینترانت . در صورتیکه سازمانی دارای یک و یا بیش از یک محل ( راه دور) بوده و تمایل به الحاق آنها در یک شبکه اختصاصی باشد ، می توان یک اینترانت VPN را بمنظور برقرای ارتباط هر یک از شبکه های محلی با یکدیگر ایجاد نمود.
▪ مبتنی بر اکسترانت . در مواردیکه سازمانی در تعامل اطلاعاتی بسیار نزدیک با سازمان دیگر باشد ، می توان یک اکسترانت VPN را بمنظور ارتباط شبکه های محلی هر یک از سازمانها ایجاد کرد. در چنین حالتی سازمانهای متعدد قادر به فعالیت در یک محیط اشتراکی خواهند بود.
استفاده از VPN برای یک سازمان دارای مزایای متعددی نظیر : گسترش محدوه جغرافیائی ارتباطی ، بهبود وضعیت امنیت ، کاهش هزینه های عملیاتی در مقایسه با روش های سنتی WAN ، کاهش زمان ارسال و حمل اطلاعات برای کاربران از راه دور ، بهبود بهره وری ، توپولوژی آسان ،... است . در یکه شبکه VPN به عوامل متفاوتی نظیر : امنیت ، اعتمادپذیری ، مدیریت شبکه و سیاست ها نیاز خواهد بود.
شبکه های LAN جزایر اطلاعاتی
فرض نمائید در جزیره ای در اقیانوسی بزرگ ، زندگی می کنید. هزاران جزیره در اطراف جزیره شما وجود دارد. برخی از جزایر نزدیک و برخی دیگر دارای مسافت طولانی با جزیره شما می باشند. متداولترین روش بمنظور مسافرت به جزیره دیگر ، استفاده از یک کشتی مسافربری است . مسافرت با کشتی مسافربری ، بمنزله عدم وجود امنیت است . در این راستا هر کاری را که شما انجام دهید ، توسط سایر مسافرین قابل مشاهده خواهد بود. فرض کنید هر یک از جزایر مورد نظر به مشابه یک شبکه محلی (LAN) و اقیانوس مانند اینترنت باشند. مسافرت با یک کشتی مسافربری مشابه برقراری ارتباط با یک سرویس دهنده وب و یا سایر دستگاههای موجود در اینترنت است . شما دارای هیچگونه کنترلی بر روی کابل ها و روترهای موجود در اینترنت نمی باشید. ( مشابه عدم کنترل شما بعنوان مسافر کشتی مسافربری بر روی سایر مسافرین حاضر در کشتی ) .در صورتیکه تمایل به ارتباط بین دو شبکه اختصاصی از طریق منابع عمومی وجود داشته باشد ، اولین مسئله ای که با چالش های جدی برخورد خواهد کرد ، امنیت خواهد بود. فرض کنید ، جزیره شما قصد ایجاد یک پل ارتباطی با جزیره مورد نظر را داشته باشد .مسیر ایجاد شده یک روش ایمن ، ساده و مستقیم برای مسافرت ساکنین جزیره شما به جزیره دیگر را فراهم می آورد. همانطور که حدس زده اید ، ایجاد و نگهداری یک پل ارتباطی بین دو جزیره مستلزم صرف هزینه های بالائی خواهد بود.( حتی اگر جزایر در مجاورت یکدیگر باشند ) . با توجه به ضرورت و حساسیت مربوط به داشتن یک مسیر ایمن و مطمئن ، تصمیم به ایجاد پل ارتباطی بین دو جزیره گرفته شده است . در صورتیکه جزیره شما قصد ایجاد یک پل ارتباطی با جزیره دیگر را داشته باشد که در مسافت بسیار طولانی نسبت به جزیره شما واقع است ، هزینه های مربوط بمراتب بیشتر خواهد بود. وضعیت فوق ، نظیر استفاده از یک اختصاصی Leased است . ماهیت پل های ارتباطی ( خطوط اختصاصی ) از اقیانوس ( اینترنت ) متفاوت بوده و کماکن قادر به ارتباط جزایر( شبکه های LAN) خواهند بود. سازمانها و موسسات متعددی از رویکرد فوق ( استفاده از خطوط اختصاصی) استفاده می نمایند. مهمترین عامل در این زمینه وجود امنیت و اطمینان برای برقراری ارتباط هر یک سازمانهای مورد نظر با یکدیگر است . در صورتیکه مسافت ادارات و یا شعب یک سازمان از یکدیگر بسیار دور باشد ، هزینه مربوط به برقرای ارتباط نیز افزایش خواهد یافت .
فرمت :WORD تعداد صفحه :57
Vpn چیست؟
VPN، نظری و عملی
برقرار کردن امنیت برای یک شبکه درون یک ساختمان کار ساده ای است. اما هنگامی که بخواهیم از نقاط دور رو ی دادههای مشترک کار کنیم ایمنی به مشکل بزرگی تبدیل میشود. در این بخش به اصول و ساختمان یک VPN برای سرویس گیرندههای ویندوز و لینوکس میپردازیم.
اصول VPN
فرستادن حجم زیادی از داده از یک کامپیوتر به کامپیوتر دیگر مثلاً در به هنگام رسانی بانک اطلاعاتی یک مشکل شناخته شده و قدیمی است. انجام این کار از طریق Email به دلیل محدودیت گنجایش سرویس دهنده Mail نشدنی است.
استفاده از FTP هم به سرویس دهنده مربوطه و همچنین ذخیره سازی موقت روی فضای اینترنت نیاز دارد که اصلاً قابل اطمینان نیست.
یکی از راه حلهای اتصال مستقیم به کامپیوتر مقصد به کمک مودم است که در اینجا هم علاوه بر مودم، پیکر بندی کامپیوتر به عنوان سرویس دهنده RAS لازم خواهد بود. از این گذشته، هزینه ارتباط تلفنی راه دور برای مودم هم قابل تامل است. اما اگر دو کامپیوتر در دو جای مختلف به اینترنت متصل باشند میتوان از طریق سرویس به اشتراک گذاری فایل در ویندوز بسادگی فایلها را رد و بدل کرد. در این حالت، کاربران میتوانند به سخت دیسک کامپیوترهای دیگر همچون سخت دیسک کامپیوتر خود دسترسی داشته باشند. به این ترتیب بسیاری از راههای خرابکاری برای نفوذ کنندگان بسته میشود.
شبکههای شخصی مجاری یا VPN (Virtual private Network)ها اینگونه مشکلات را حل میکند. VPN به کمک رمز گذاری روی داده ها، درون یک شبکه کوچک میسازد و تنها کسی که آدرسهای لازم و رمز عبور را در اختیار داشته باشد میتواند به این شبکه وارد شود. مدیران شبکه ای که بیش از اندازه وسواس داشته و محتاط هستند میتوانند VPN را حتی روی شبکه محلی هم پیاده کنند. اگر چه نفوذ کنندگان میتوانند به کمک برنامههای Packet sniffer جریان دادهها را دنبال کنند اما بدون داشتن کلید رمز نمی توانند آنها را بخوانند.
-4.1.1 VPN چیست ؟
VPN دو کامپیوتر یا دو شبکه را به کمک یک شبکه دیگر که به عنوان مسیر انتقال به کار میگیرد به هم متصل میکند. برای نمونه میتوان ب دو کامپیوتر یکی در تهران و دیگری در مشهد که در فضای اینترنت به یک شبکه وصل شده اند اشاره کرد. VPN از نگاه کاربر کاملاً مانند یک شبکه محلی به نظر میرسد. برای پیاده سازی چنین چیزی، VPN به هر کاربر یک ارتباط IP مجازی میدهد.
داده هایی که روی این ارتباط آمد و شد دارند را سرویس گیرنده نخست به رمز در آورده و در قالب بستهها بسته بندی کرده و به سوی سرویس دهنده VPN میفرستد. اگر بستر این انتقال اینترنت باشد بستهها همان بستههای IP خواهند بود.
سرویس گیرنده VPN بستهها را پس از دریافت رمز گشایی کرده و پردازش لازم را روی آن انجام میدهد. روشی که شرح داده شد را اغلب Tunneling یا تونل زنی مینامند چون دادهها برای رسیدن به کامپیوتر مقصد از چیزی مانند تونل میگذرند. برای پیاده سازی VPN راههای گوناگونی وجود دارد که پر کاربرد ترین آنها عبارتند از
Point to point Tunneling protocol یا PPTP که برای انتقال NetBEUI روی یک شبکه بر پایه IP مناسب است.
Layer 2 Tunneling protocol یا L2TP که برای انتقال IP، IPX یا NetBEUI روی هر رسانه دلخواه که توان انتقال Datagramهای نقطه به نقطه (Point to point) را داشته باشد مناسب است. برای نمونه میتوان به IP، X.25، Frame Relay یا ATM اشاره کرد.
IP Security protocol یا Ipsec که برای انتقال دادههای IP روی یک شبکه بر پایه IP مناسب است.
-4.1.2 پروتکلهای درون تونل
Tunneling را میتوان روی دو لایه از لایههای OSI پیاده کرد. PPTP و L2TP از لایه 2 یعنی پیوند داده استفاده کرده و دادهها را در قالب Frameهای پروتکل نقطه به نقطه (PPP) بسته بندی میکنند. در این حالت میتوان از ویژگیهای PPP همچون تعیین اعتبار کاربر، تخصیص آدرس پویا (مانند DHCP)، فشرده سازی دادهها یا رمز گذاری دادهها بهره برد.
با توجه به اهمیت ایمنی انتقال دادهها درVPN، دراین میان تعیین اعتبار کاربر نقش بسیار مهمی دارد. برای این کار معمولاً از CHAP استفاده میشود که مشخصات کاربر را در این حالت رمز گذاری شده جابه جا میکند. Call back هم دسترسی به سطح بعدی ایمنی را ممکن میسازد. در این روش پس از تعیین اعتبار موفقیت آمیز، ارتباط قطع میشود. سپس سرویس دهنده برای برقرار کردن ارتباط جهت انتقال دادهها شماره گیری میکند. هنگام انتقال داده ها، Packetهای IP، IP X یا NetBEUI در قالب Frameهای PPP بسته بندی شده و فرستاده میشوند. PPTP هم Frameهای PPP را پیش از ارسال روی شبکه بر پایه IP به سوی کامپیوتر مقصد، در قالب Packetهای IP بسته بندی میکند. این پروتکل در سال 1996 از سوی شرکت هایی چون مایکرو سافت، Ascend، 3 com و Robotics US پایه گذاری شد. محدودیت PPTP در کار تنها روی شبکههای IP باعث ظهور ایده ای در سال 1998 شد.L2TP روی X.25،Frame Relay یا ATM هم کار میکند. برتری L2TP در برابر PPTP این است که به طور مستقیم روی رسانههای گوناگون WAN قابل انتقال است.
4.1.3 - VPN-Ipsec فقط برای اینترنت
Ipsec برخلافPPTP و L2TP روی لایه شبکه یعنی لایه سوم کار میکند. این پروتکل داده هایی که باید فرستاده شود را همراه با همه اطلاعات جانبی مانند گیرنده و پیغامهای وضعیت رمز گذاری کرده و به آن یک IP Header معمولی اضافه کرده و به آن سوی تونل میفرستد.
کامپیوتری که در آن سو قرار دارد IP Header را جدا کرده، دادهها را رمز گشایی کرده و آن را به کامپیوتر مقصد میفرستد.Ipsec را میتوان با دو شیوه Tunneling پیکر بندی کرد. در این شیوه انتخاب اختیاری تونل، سرویس گیرنده نخست یک ارتباط معمولی با اینترنت برقرار میکند و سپس از این مسیر برای ایجاد اتصال مجازی به کامپیوتر مقصد استفاده میکند. برای این منظور، باید روی کامپیوتر سرویس گیرنده پروتکل تونل نصب شده باشد. معمولاً کاربر اینترنت است که به اینترنت وصل میشود. اما کامپیوترهای درون LAN هم میتوانند یک ارتباط VPN برقرا کنند. از آنجا که ارتباط IP از پیش موجود است تنها برقرار کردن ارتباط VPN کافی است. در شیوه تونل اجباری، سرویس گیرنده نباید تونل را ایجاد کند بلکه این کار ار به عهده فراهم ساز (Service provider) است. سرویس گیرنده تنها باید به ISP وصل شود. تونل به طور خودکار از فراهم ساز تا ایستگاه مقصد وجود دارد. البته برای این کار باید همانگیهای لازم با ISP انجام بگیرد.
۴.۱.۴- ویژگیهای امنیتی در IPsec
Ipsec از طریق Authentication Header (AH) مطمئن میشود که Packetهای دریافتی از سوی فرستنده واقعی (و نه از سوی یک نفوذ کننده که قصد رخنه دارد) رسیده و محتویات شان تغییر نکرده. AH اطلاعات مربوط به تعیین اعتبار و یک شماره توالی (Seguence Number) در خود دارد تا از حملات Replay جلوگیری کند. اما AH رمز گذاری نمی شود. رمز گذاری از طریق Encapsulation Security Header یا ESH انجام میگیرد. در این شیوه دادههای اصلی رمز گذاری شده و VPN اطلاعاتی را از طریق ESH ارسال میکند.
ESH همچنین کارکرد هایی برای تعیین اعتبار و خطایابی دارد. به این ترتیب دیگر به AH نیازی نیست. برای رمز گذاری و تعیین اعتبار روش مشخص و ثابتی وجود ندارد اما با این همه، IETF برای حفظ سازگاری میان محصولات مختلف، الگوریتمهای اجباری برای پیاده سازی Ipsec تدارک دیده. برای نمونه میتوان به MD5، DES یا Secure Hash Algorithm اشاره کرد. مهمترین استانداردها و روش هایی که در Ipsec به کار میروند عبارتند از:
• Diffie-Hellman برای مبادله کلیدها میان ایستگاههای دو سر ارتباط.
• رمز گذاری Public Key برای ثبت و اطمینان از کلیدهای مبادله شده و همچنین اطمینان از هویت ایستگاههای سهیم در ارتباط.
• الگوریتمهای رمز گذاری مانند DES برای اطمینان از درستی دادههای انتقالی.
• الگوریتمهای درهم ریزی (Hash) برای تعیین اعتبار تک تک Packet ها.
• امضاهای دیجیتال برای تعیین اعتبارهای دیجیتالی.
4.1.5 - Ipsec بدون تونل
Ipsec در مقایسه با دیگر روشها یک برتری دیگر هم دارد و آن اینست که میتواند همچون یک پروتکل انتقال معمولی به کار برود.
در این حالت برخلاف حالت Tunneling همه IP packet رمز گذاری و دوباره بسته بندی نمی شود. بجای آن، تنها دادههای اصلی رمزگذاری میشوند و Header همراه با آدرسهای فرستنده و گیرنده باقی میماند. این باعث میشود که دادههای سرباز (Overhead) کمتری جابجا شوند و بخشی از پهنای باند آزاد شود. اما روشن است که در این وضعیت، خرابکاران میتوانند به مبدا و مقصد دادهها پی ببرند. از آنجا که در مدل OSI دادهها از لایه 3 به بالا رمز گذاری میشوند خرابکاران متوجه نمیشوند که این دادهها به ارتباط با سرویس دهنده Mail مربوط میشود یا به چیز دیگر.
فرمت :WORD تعداد صفحه :71
VPN ، نظری و عملی
برقرار کردن امنیت برای یک شبکه درون یک ساختمان کار ساده
ای است . اما هنگامی که بخواهیم از نقاط دور رو ی داده های مشترک کار کنیم
ایمنی به مشکل بزرگی تبدیل می شود . در این بخش به اصول و ساختمان یک VPN برای سرویس گیرنده های ویندوز و لینوکس می پردازیم .
اصول VPN
فرستادن حجم زیادی از داده از یک کامپیوتر به کامپیوتر
دیگر مثلا” در به هنگام رسانی بانک اطلاعاتی یک مشکل شناخته شده و قدیمی
است . انجام این کار از طریق Email به دلیل محدودیت گنجایش سرویس دهنده Mail نشدنی است .
استفاده از FTP هم به سرویس دهنده مربوطه و همچنین ذخیره سازی موقت روی فضای اینترنت نیاز دارد که اصلا” قابل اطمینان نیست .
یکی از راه حل های اتصال مستقیم به کامپیوتر مقصد به کمک مودم است که در
اینجا هم علاوه بر مودم ، پیکر بندی کامپیوتر به عنوان سرویس دهنده RAS لازم
خواهد بود . از این گذشته ، هزینه ارتباط تلفنی راه دور برای مودم هم قابل
تامل است . اما اگر دو کامپیوتر در دو جای مختلف به اینترنت متصل باشند می
توان از طریق سرویس به اشتراک گذاری فایل در ویندوز بسادگی فایل ها را رد و
بدل کرد . در این حالت ، کاربران می توانند به سخت دیسک کامپیوترهای دیگر
همچون سخت دیسک کامپیوتر خود دسترسی داشته باشند . به این ترتیب بسیاری از
راه های خرابکاری برای نفوذ کنندگان بسته می شود .
شبکه های شخصی مجاری یا VPN ( Virtual private Network ) ها اینگونه مشکلات را حل می کند . VPN به
کمک رمز گذاری روی داده ها ، درون یک شبکه کوچک می سازد و تنها کسی که
آدرس های لازم و رمز عبور را در اختیار داشته باشد می تواند به این شبکه
وارد شود . مدیران شبکه ای که بیش از اندازه وسواس داشته و محتاط هستند می
توانند VPN را حتی روی شبکه محلی هم پیاده کنند . اگر چه نفوذ کنندگان می توانند به کمک برنامه های Packet sniffer جریان داده ها را دنبال کنند اما بدون داشتن کلید رمز نمی توانند آنها را بخوانند .
VPN چیست ؟
VPN دو کامپیوتر یا دو شبکه را به کمک یک شبکه دیگر که به
عنوان مسیر انتقال به کار می گیرد به هم متصل می کند . برای نمونه می توان ب
دو کامپیوتر یکی در تهران و دیگری در مشهد که در فضای اینترنت به یک شبکه
وصل شده اند اشاره کرد . VPN از نگاه کاربر کاملا” مانند یک شبکه محلی به نظر می رسد . برای پیاده سازی چنین چیزی ، VPN به هر کاربر یک ارتباط IP مجازی می دهد .
داده هایی که روی این ارتباط آمد و شد دارند را سرویس
گیرنده نخست به رمز در آورده و در قالب بسته ها بسته بندی کرده و به سوی
سرویس دهنده VPN می فرستد . اگر بستر این انتقال اینترنت باشد بسته ها همان بسته های IP خواهند بود .
سرویس گیرنده VPN بسته ها را پس از دریافت رمز گشایی کرده و پردازش لازم را روی آن انجام می دهد . در آدرس http://www.WOWN.COMW-baetengifanivpnani.gif شکل بسیار جالبی وجود دارد که چگونگی این کار را نشان می دهد .. روشی که شرح داده شد را اغلبب Tunneling یا تونل زنی می نامند چون داده ها برای رسیدن به کامپیوتر مقصد از چیزی مانند تونل می گذرند . برای پیاده سازی VPN راه های گوناگونی وجود دارد که پر کاربرد ترین آنها عبارتند از
Point to point Tunneling protocol یا PPTP که برای انتقال NetBEUI روی یک شبکه بر پایه IP مناسب است .
Layer 2 Tunneling protocol یا L2TP که برای انتقال IP ، IPX یا NetBEUI روی هر رسانه دلخواه که توان انتقال Datagram های نقطه به نقطه ( Point to point ) را داشته باشد مناسب است . برای نمونه می توان به IP ، X.25 ، Frame Relay یا ATM اشاره کرد .
IP Security protocol یا Ipsec که برای انتقال داده های IP روی یک شبکه بر پایه IP مناسب است .
پروتکل های درون تونل
Tunneling را می توان روی دو لایه از لایه های OSI پیاده کرد . PPTP و L2TP از لایه 2 یعنی پیوند داده استفاده کرده و داده ها را در قالب Frame های پروتکل نقطه به نقطه ( PPP ) بسته بندی می کنند . در این حالت می توان از ویژگی های PPP همچون تعیین اعتبار کاربر ، تخصیص آدرس پویا ( مانند DHCP ) ، فشرده سازی داده ها یا رمز گذاری داده ها بهره برد.
با توجه به اهمیت ایمنی انتقال داده ها درVPN ، دراین میان تعیین اعتبار کاربر نقش بسیار مهمی دارد . برای این کار معمولا” از CHAP استفاده می شود که مشخصات کاربر را در این حالت رمز گذاری شده جابه جا میکند . Call back هم
دسترسی به سطح بعدی ایمنی را ممکن می سازد . در این روش پس از تعیین
اعتبار موفقیت آمیز ، ارتباط قطع می شود . سپس سرویس دهنده برای برقرار
کردن ارتباط جهت انتقال داده ها شماره گیری می کند . هنگام انتقال داده ها
، Packet های IP ، IP X یا NetBEUI در قالب Frame های PPP بسته بندی شده و فرستاده می شوند . PPTP هم Frame های PPP را پیش از ارسال روی شبکه بر پایه IP به سوی کامپیوتر مقصد ، در قالب Packet های IP بسته بندی می کند . این پروتکل در سال 1996 از سوی شرکت هایی چون مایکرو سافت ، Ascend ، 3 com و Robotics US پایه گذاری شد . محدودیت PPTP در کار تنها روی شبکه های IP باعث ظهور ایده ای در سال 1998 شد .L2TP روی X.25 ،Frame Relay یا ATM هم کار می کند . برتری L2TP در برابر PPTP این است که به طور مستقیم روی رسانه های گوناگون WAN قابل انتقال است .
VPN-Ipsec فقط برای اینترنت
Ipsec برخلافPPTP و L2TP روی
لایه شبکه یعنی لایه سوم کار می کند . این پروتکل داده هایی که باید
فرستاده شود را همراه با همه اطلاعات جانبی مانند گیرنده و پیغام های وضعیت
رمز گذاری کرده و به آن یک IP Header معمولی اضافه کرده و به آن سوی تونل می فرستد .
کامپیوتری که در آن سو قرار دارد IP Header را جدا کرده ، داده ها را رمز گشایی کرده و آن را به کامپیوتر مقصد می فرستد .Ipsec را می توان با دو شیوه Tunneling پیکر
بندی کرد . در این شیوه انتخاب اختیاری تونل ، سرویس گیرنده نخست یک
ارتباط معمولی با اینترنت برقرار می کند و سپس از این مسیر برای ایجاد
اتصال مجازی به کامپیوتر مقصد استفاده می کند . برای این منظور ، باید روی
کامپیوتر سرویس گیرنده پروتکل تونل نصب شده باشد . معمولا” کاربر اینترنت
است که به اینترنت وصل می شود . اما کامپیوترهای درون LAN هم می توانند یک ارتباط VPN برقرا کنند . از آنجا که ارتباط IP از پیش موجود است تنها برقرار کردن ارتباط VPN کافی است . در شیوه تونل اجباری ، سرویس گیرنده نباید تونل را ایجاد کند بلکه این کار ار به عهده فراهم ساز (Service provider ) است . سرویس گیرنده تنها باید به ISP وصل شود . تونل به طور خودکار از فراهم ساز تا ایستگاه مقصد وجود دارد . البته برای این کار باید همانگی های لازم با ISP انجام بگیرد .ٍ
فرمت :WORD تعداد صفحه :40
سایت وب چیست؟
هر چند ممکن است شما یک کاربر کارآزموده و کار کشته در استفاده از اینترنت باشید و به راحتی در سایتهای مختلف گشت و گذار می کنید ، نامه های الکترونیک ارسال می کنید یا ...، اما هنگامی که می خواهید یک وب سایت را برپاکنید، یکی از اولین سوالاتی که به ذهن تان خطور می کند آن است که ، در واقع سایت وب چیست؟ امروزه سایت وب می تواند درباره هر چیزی باشد یا از تکنولوژی های مختلفی نیز تشکیل شده باشد.
سایت وب مجموعه ای از صفحات HTML است که می تواند تصاویر ، فایلهای انیمیشن ، فیلمها با دیگر عناصر چند رسانه ای را نشان دهد.همچنین می تواند مفاهیم خاصی را از یک بانک اطلاعاتی گرفته و به کاربر نشان دهد. سایتهای وب را می توان با اتصال به اینترنت و از طریق یک مرورگر مشاهده کرد. بازدیدکنندگان می توانند برای حرکت در داخل یک سایت و از یک صفحه به صفحه ای دیگر بر روی لینکهای فرامتنی با دکمه های هدایتگر کلیک کنند.
HTMLÛ چیست؟
اکثر صفحات وب با استفاده از زبانی نوشته می شوند که با نام Hyper Text Markup Language شناخته شده و به اختصار HTML نامیده می شود. HTML در یک صفحه وب مجموعه ای از راهنماهای خاص است که با عنوان برچسب Tag شناخته می شوند و به برنامه مرورگر اعلام می کند که چگونه مفاهیم و عناص تشکیل دهنده صفحه ، همانند متون و تصاویر را نشان دهد. برچسب ها در زبان HTML متون یا دیگر عناصر را در بر می گیرند. به عبارت دیگر برای آنکه به مرورگری اعلام کنید که باید عمل خاصی را در نمایش یک پاراگراف یا هر عنصر دیگری در صفحه انجام دهد باید آن برچسب را باز کنید (<tag>). سپس متن یا عنصر مورد نظر خود را معرفی کرده و در نهایت نیز برچسب را ببندید و انتهای دستور را به مرورگر اعلام کنید (<tag>).
برای مثال ، در صورتی که بخواهید کلمه Dreamweaver در متن زیر به طور برجسته و مشخص تر از سایر کلمات دیده شود ، می توانید از برچسب <B> بصورت زیر در کد HTML استفاده کنید:
<B>Dreamweaver</B> makes creating web pages easy
پس از باز کردن مرورگر و اجرای این صفحه با نتیجه زیر مواجه خواهید شد:
Dreamweaver makes creating web page easy
البته اگر اطلاعاتی در خصوص HTML داشته باشید و با دریم ویور کار می کنید و این برنامه تمامی کدهای مورد نیاز شما را پیاده سازی می کند ، یک توسعه دهنده متبحر تر و تواناتری خواهید شد. برای شروع می توانید به کدهایی که برنامه دریم ویور در هنگام طراحی یک صفحه وب برای شما می نویسد دقت کنید.همچنین می توانید به کدهای برنامه نویسان دیگر نیز مراجعه کنید و ببینید که چگونه آنها از تکنیکهای مختلف در شکل دهی صفحاتشان استفاده می کنند.
اگر به زبان HTML علاقه مند هستید یا می خواهید تجربه و اطلاعاتشان را در نحوه استفاده از این افزایش دهید ، میتوانید حالت Code را در دریم ویور فعال کنید.
Û چگونه یک وب سایت را در اینترنت راه اندازی کنیم؟
چگونه باید یک وب سایت وب ایجاد کرده و در اینترنت در دسترس دیگران قرار داد؟ برای اغلب افرادی که در ایجاد صفحات وب تازه کار هستند ، انجام چنین کاری مبهم و اسرار آمیز است. سایت چگونه و چه زمالنی زنده می شود؟
بررسی و توجه به دیاگرام و طرح صفحه بعد می تواند در توضیح این مطلب به شما کمک کند.
فرمت :WORD تعداد صفحه :26
wLayout چیست؟
در صفحات بعد چندین نمونه Layout جهت بازبینی اصلاح، update و پیگیری پروژه ارائه شده است.
نمونه هایی از نمایش اطلاعات پروژه:
امکان دسته بندی و مدیریت اطلاعات پروژه در قالب Layout های متعدد در حالت نمایش Bar chart و PERT از طرف P3 فراهم شده است. در حالت نمایش Bar chart صفحه به صورت ترکیبی از جدول اطلاعاتی فعالیتها و Bar chart به همراه مقیاس زمانی (timescale) می باشد. در حالیکه در Layout های PERT شما شبکه فعالیتها را به همراه جریان منطقی ارتباطات بین آنها ملاحظه می کنید. از جدول اطلاعات می توان برای حذف و اضافه کردن فعالیتها یا اصلاح اطلاعات موجود استفاده کرد. در Bar chart ارتباط فعالیت ها را به همراه مقیاس زمانی برای کنترل تاریخهای برنامه ملاحظه می کنید، در حالیکه شبکه PERT به منظور طراحی ساختار برنامه زمان بندی مورد استفاده قرار می گیرد، شما می توانید به کمک PERT ارتباط بین فعالیتها را ایجاد نموده و آنها را از نظر منطقی کنترل کنید، همچنین با تغییر مشخصه های نمایش شبه PERT آنرا برای ارائه به اعضای مسئول هر بخش از کارها آماده کنید.
فرمت :WORD تعداد صفحه :25
X500,X509 protocol
کلمات کلیدی:
API,WAN,LAN,DUI,DSA,DAP,DNS,DCE,LTU,RDN,VPN,IKE,ESP,AH,TCP/IP
Browser,Router
مقدمه:در ابتدا تعریف کلی راجع به پروتکل داشتم و بعد به تحلیل این دو پروتکل X500 و X509 پرداختم.
پروتکل: یک فرمت توافقی برای انتقال دیتابین دو دستگاه.
پروتکل موارد زیر را داراست:
· روش فشردگی و تراکم دیتا، در صورت وجود
· چطور دستگاه فرستنده نشان خواهد داد که فرستادن یک پیغام به پایان رسیده است.
· چطور دستگاه گیرنده نشان خواهد داد که کل پیغام را دریافت کرده است.
پروتکلهای استاندارد متنوعی وجود دارند که برنامهنویسها میتوانند از بین آنها انتخاب کنند. هر کدام مزیتهای خاص و معایب خاص خود را دارند، برای مثال بعضی سادهتر از بقیه هستند، بعضی قابل اعتمادترند و بعضی سریعتر میباشند.
از دیدگاه یک کاربر، تنها جنبه جالب در مورد پروتکل ها اینست که کامپیوتر یا دستگاه شما، اگر بخواهید با دیگر کامپیوترها ارتباط برقرار کنید، باید از دستگاههای درست حمایت کند. پروتکل می تواند یا در سخت افزار و یا در نرم افزار اجرا شود.
شاخص و کتاب راهنمای لازمه پروتکل شبکه:
ارتباطات شبکه توسط پروتکلهای شبکه تعریف شدهاند. یک پروتکل شبکه یک مجموعه از قوانین ساختار دیتا و قراردادهایی است که تعیین میکنند چطور کامپیوترها اطلاعات را در سطح شبکه منتقل کنند.
به عبارت دیگر پروتکل شبکه، یک طرز کار اجرایی استاندارد و فرمت است که دو دستگاه ارتباطی دیتا باید دانسته و بپذیرند و نیز برای اینکه بتواند با همدیگر صحبت کنند آن را بکار گیرند.
پروتکلهای شبکه توسط استانداردهای جهانی سازمانها و فروشندگان تکنولوژی در طول سالها تکامل تکنولوژی و پیشرفتها تعریف شدهاند. در کتاب راهنمایی که در پیش داریم ما پروتکل های شبکه را طبق اعمال کلیدی یا اصل/ ضامنهایشان سازماندهی کردهایم ما این پروتکل را خانواده پروتکل و لازمه پروتکل می خوانیم. یکی از مشهورترین خانواده پروتکل شبکه TCP/IP Suite است که پایه و اساس تکنیکی شبکه اینترنت میباشد.
X.500 - 1 پروتکل دسترسی به کتاب راهنما (DAP):
X.500 ، پروتکل دسترسی کتاب راهنما (DAP) توسط (X.500) LTU_T و همچنین ISO (ISO/IEC 9594) یک روش استاندارد برای توسعه راهنمای الکترونیکی عموم در یک سازمان میباشد بنابراین می تواند بخشی از یک راهنمای جهانی قابل دسترسی برای همه انسانها باشدکه قابل دسترسی با اینترنت است در ساختار کتاب راهنمای X.500 درخواستهای مراجعه کننده و پاسخهای دریافتی از یک یا کاربرهای بیشتر در سرویس راهنمای کاربر با پروتکل دسترسی به راهنما (DAP) میباشد که ارتباط بین موکل و کاربر را کنترل می کند.
فرمت :WORD تعداد صفحه :103
XML چیست و چرا دارای اهمیت فراوان است ؟ ( بخش اول )
تاکنون مقالات فراوانی در باره XML نوشته شده
است، اغلب مطالب عنوان شده صرفا" بر روی یک موضوع خاص تمرکز داشته و از
زاویه ای کاملا" اختصاصی و در عین حال محدود به بررسی تکنولوژی XML پرداخته و بندرت به موارد اساسی و خانواده بزرگ استاندارهای XML اشاره شده است. در این مقاله عناصر کلیدی مرتبط با تکنولوژی XML تشریح
و ارتباط آنها تبین و جایگاه هر یک از آنها برای پیاده کنندگان و طراحان
برنامه های اطلاعاتی تشریح می گردد. پس از مطالعه این مقاله ، خوانندگان
با استانداردهای کلیدی : XML,XSL,XML-Schema,DOM,SAX,Namespace,XLink بهمراه تکنولوژی های مربوطه آشنا خواهند شد.
تعریف اصطلاحات و واژه ها
در ابتدا لازم است با کلمات تشکیل دهنده XML یعنی Extensible ، Markup و Language آشنا شویم .Markup ، واژه ئی برای متادیتا است . متادیتا ، اطلاعاتی در رابطه با اطلاعات است . قدمت استفاده از Markup به
قبل از کامپیوتر بر می گردد . مثلا" در دنیای نشر از علائم خاصی در متن
های ویرایش شده استفاده تا به پردازنده متن ( انسان و یا ماشین ) اعلام شود
، چه نوع عملیاتی را در رابطه با اطلاعات می بایست انجام دهد. HTML یکی از زبان های کلاسیک نشانه گذاری است . مثلا" با افزودن تگ <Bold> به مرورگر اعلام می شود که به چه صورت می بایست اطلاعات نمایش داده شوند .
زبان (Language) ، به مجموعه ای
از کلمات معنی دار و با مفهوم که عده ای از آنها برای بیان خواسته ها ی
خود استفاده می نمایند ،اطلاق می گردد . ( مثلا" زبان فارسی و یا انگلیسی )
با کنار هم قرار دادن دو واژه اشاره شده ، با زبان نشانه گذاری مواجه
خواهیم شد . زبان نشانه گذاری ، به مجموعه ای از کلمات معنی دار و با
مفهوم که توسط عده ای (با آگاهی لازم انتخاب ) استفاده می گردد ، اطلاق می
گردد. HTML ، نمونه ای مناسب در این زمینه است . تمام افرادی که از تگ های HTML استفاده
می نمایند ، بدرستی نسبت به مفهوم و جایگاه هر یک از تگ ها آشنائی داشته و
با آگاهی کامل آنها را برای بیان خواسته های خود استفاده می نمایند. مثلا"
مشخص است که استفاده از تگ <H1> چه نوع
پیامدهائی را بدنبال خواهد داشت . تگ فوق ، توسط مولفین صفحات وب آگاهانه
انتخاب می گردد و مرورگرها نیز متناسب با تعاریف از قبل مشخص شده ، واکنش
مناسب خود را در رابطه با نحوه نمایش انجام خواهند داد. یک زبان بسط
پذیر(Extensible) ، زبانی است که دارای مکانیزم
لازم برای افزودن کلمات بگونه ای است که توسط سایر استفاده کنندگان نیز
قابل فهم باشد . در دنیای واقعی و در ارتباط با زبان های طبیعی ما هرگز
شاهد چنین وضعیتی نخواهیم بود . ( افزودن یک واژه با معنی مورد نظر خود و
استفاده از واژه با همان معنی توسط سایر استفاده کنندگان ) با توجه به
تعاریف ارائه شده ، یک زبان نشانه گذاری بسط پذیر ، می بایست یک زبان نشانه
گذاری با قابلیت افزودن کلماتی بیشتر باشد . در عمل زبان نشانه گذاری بسط
پذیر ، به سیستمی برای تعریف تمام زبا ن های نشانه گذاری با قابلیت توسعه
وضعیت موجود ، اطلاق می گردد .
SGML HTML و XML
SGML)Standard Generalize Markup Language) سرچشمه XML بوده و در سال 1988 استاندارد شده است . HTML)HyperText Markup Language) زبانی است که در ابتدا با استفاده از SGML تعریف گردید. HTML یک زبان نشانه گذاری است ، بنابراین انتظار داریم شامل مجموعه ای از تگ ها بمنظور کنترل قالب و رفتار اطلاعات در مستندات باشد . XML ، یک زبان نشانه گذاری مشابه HTML نمی باشد . XML ، زیرمجموعه ای از SGML است ( مکانیزمی برای تعریف زبان های نشانه گذاری ) . XML همانند SGML یک زبان نشانه گذاری بسط پذیر بوده اما بر خلاف SGML برای استفاده بر روی وب بهینه شده است .
مفاهیم اساسی
لازم است که مجددا" به این نکته مهم اشاره گردد که XML ، یک زبان نشانه گذاری نبوده و در مقابل مکانیزمی برای ایجاد زبان های نشانه گذاری اختصاصی است . XML ، شامل مجموعه ای از استانداردها ی متنوع با کاربردهای خاص است . XML ، یک زبان نشانه گذاری نبوده و در عین حال یک زبان برنامه نویسی هم نیست . از XML برای ارائه اطلاعات استفاده شده و بمنظور پردازش اطلاعات، می بایست برنامه هائی نوشته گردد .
از XML در موارد زیر می توان استفاده کرد :
● مبادله اطلاعات بین برنامه های نامتجانس ، بنگاه های تجاری و بانک های اطلاعاتی
● امکان فعال نمودن مدلی برای نمایش اطلاعات یکسان بر روی دستگاههای متفاوت با اهداف و خوانندگان گوناگون
● یک قالب ذخیره سازی مناسب برای داده ها
استانداردهای خانواده بزرگ XML
از واژه XML اغلب برای بیان یک استاندارد بین المللی استفاده می گردد . در برخی حالات واژه فوق برای بیان تمام استانداردهای مرتبط با XML نیز استفاده می گردد . اکثر کاربران با استانداردهای XML سرو کار ندارند. استانداردهای موجود اغلب توسط افرادیکه نرم افزار تولید و یا بر روی سندهای XML پردازشی
را انجام می دهند ، استفاده می گردد . شناخت استانداردهای موجود در این
زمینه مهم بوده و لازم است با جایگاه هر یک آشنا شویم . یکی از روش هائی که
می توان استانداردهای موجود را بدرستی سازماندهی و بخاطر سپرد ، توجه و
تمرکز بر اهدافی است که آنها دنبال می نمایند. جدول زیر استانداردهای موجود
بهمراه اهداف و قابلیت های هر یک را نشان می دهد.
فرمت :WORD تعداد صفحه :42
XSD چیست ؟
پس از عرضه XML ، مجموعه ای از تکتولوژی های دیگر در رابطه با آن و با هدفمندی خاصی مطرح و ارائه گردیده است . بهمین دلیل است که امروزه XML بعنوان خانواده ای بزرگ از سایر تکنولوژی ها در نظر گرفته می شود .XSD) XML Schema Definition) ، یکی از تکنولوژی های موجود در این زمینه است. در مجموعه مقالاتی که در این رابطه ارائه خواهد شد، به بررسی جایگاه XSD و نحوه ارتباط آن با XML خواهیم پرداخت . در این مقاله ، به بررسی ضرورت استفاده از XSD و معرفی برخی از ویژگی های آن اشاره خواهد شد .
چرا به Schema نیاز است ؟
یکی از مزایای مهم XML ،ارائه انعطاف و تسهیلات لازم برای طراحان و پیاده کنندگان در رابطه با تشریح ساختار داده ها است. سندهای XML ،
دارای مخاطبان خاص خود ( انسان و یا سایر برنامه های کامپیوتری ) بوده و
می بایست امکانات لازم از زاویه استفاده کننده نیز مورد توجه قرار گیرد .
در این رابطه می بایست مجوزهای لازم بمنظور ارائه هر یک از عناصر و یا
خصلتهای موجود در سند مشخص گردد.ترتیب عناصر و خصلت های موجود در یک سند XML نیز بسیار حائز اهمیت بوده و همواره مورد نیاز منابعی خواهد بود که بنحوی از سندهای XML بعنوان ساختاری برای تامین داده های خود استفاده می نمایند. همانگونه که اشاره شد، سندهای XML ممکن
است توسط انسان و یا سایر برنامه ها و نرم افزارها استفاده گردند. بدیهی
است با فراگیر شدن استفاده از داده ها با فرمتی که توسط سندهای XML مطرح می گردد ،انتظار حمایت از انواع داده ها که در سایر زبانهای برنامه نویسی نظیر Java، VB، C++ ، SQL وجود دارد ،بشدت مورد نیاز خواهد بود. پیاده کنندگان سندهای XML بدنبال یک راهکار مناسب برای تعریف نوع داده ها (Date ، String ، Integer) و سایر موارد مربوط به قانونمند نمودن ساختار داده ها در رابطه با یک سند XML بودند .بدین ترتیب تعریف Schema برای سندهای XML ، امری حیاتی و ضروری تلقی گردید .
Schema ، محتوای مجاز یک کلاس از اسناد XML را تشریح می کند. |
تاریخچه XML Schema
برای نوشتن سندهای XML ،در ابتدا از شکل ساده ای از زبان نشانه گذاری SGML استفاده می گردید .SGML ، صرفا" برای نشانه گذاری اسناد مورد استفاده قرار می گرفت . جایگاه استفاده از XML در ابتدا برای برنامه نویسان مشخص نبود و اکثر عرضه کنندگان مرورگرهای وب ، از تکنولوژی فوق حمایت نمی کردند . پس از مدت زمان کوتاهی، تکنولوژی XML جایگاه خاصی را در بین متقاضیان خصوصا" برنامه نویسان پیدا کرد . اکثر استفاده کنندگان به این نکته پی بردند که XML گزینه ای مناسب برای اکثر نیازهای آنان بوده و کاربرد آن بسیار فراتر از نشانه گذاری اسناد است .
در زمان عرضه XML 1.0 توسط کنسرسیوم وب ، از تکنولوژی DTD برای تشریح سندهای XML استفاده می گردید . گرامر استفاده شده در DTD ، پاسخگوی برخی از نیازهای جدید خصوصا" در رابطه با انتقال اطلاعات بود . در ادامه نیاز های جدیدی در رابطه با پردازش داده های موجود در اسناد XML مطرح
گردید . بمنظور ارائه قابلیت فوق برای منابع مصرف کننده ، می بایست
امکاناتی بمنظور تشریح مناسب داده ها ( ارتباط ، نوع داده و ... ) در اختیار برنامه نویسان قرار گیرد . بدین ترتیب برنامه نویسان قادر به تشخیص رفتار داده ها در یک سند XML و انجام پردازش های لازم در رابطه با داده های موجود در یک سند XML خواهند بود . بمنظورپاسخ مناسب به خواسته های فوق ، کنسرسیوم وب تصمیم به طراحی یک زبان توصیفی جدید با نام XML Schema گرفت . در این رابطه یک گروه کاری با همین نام تاسیس گردید . مهمترین هدف گروه فوق، ایجاد یک زبان توصیفی جدید با قابلیت استفاده توسط استفتاده کنندگان ، تولیدکنندگان و برنامه نویسان با توجه به طیف گسترده انتظارات هر گروه بود . گروه XML Schema کنسرسیوم وب ، فعالیت خود را از فوریه سال 1999 آغاز و پس از دو سال در 2001 موفق به طراحی زبان توصیفی شدند . تکنولوژی فوق با نام XML Schema Definition و یا XSD معرفی
گردید . در زمانیکه گروه فوق ، سرگرم طراحی زبان توصیفی خود بودند،
راهکارهای متفاوتی در این خصوص توسط سایر شرکت ها ارائه گردید . مثلا" شرکت
ماکروسافت تکنولوژی XDR را عرضه نمود . تکنولوژی استاندارد شده کنسرسیوم وب ، در مدت زمان کوتاهی پس از عرضه ، بعنوان گزینه ای مناسب برای تشریح ساختار داده ها ی موجود در یک سند XML ، مورد توجه عموم متقاضیان قرار گرفت .