مدل هفتلایهای OSI از سازمان استاندارد جهانی ISO
معرفی هفتلایه مدل OSI
در این استاندارد کل وظایف و خدمات یک شبکه در هفتلایه تعریف شده است.
- لایه ۱: لایه فیزیکی Physical layer
- لایه ۲: لایه پیوند دادهها Data link layer
- لایه ۳: لایه شبکه Network Layer
- لایه ۴: لایه انتقال Transport Layer
- لایه ۵: لایه جلسه Session Layer
- لایه ۶: لایه ارائه نمایش Presentation Layer
- لایه ۷: لایه کاربرد Application Layer
طراحی لایهای شبکه را میتوان با برنامهنویسی ماجولار مقایسه کرد، بدین نحو که روالهای حل یک مسئله به اجرای کوچکتری شکسته میشود و برای آن زیر برنامه نوشته میشود.
در توابع صدا زننده این زیر برنامهها جزئیات درونی آنها اهمیت ندارد و بلکه فقط نحوه صدازدن آنها و پارامترهای موردنیاز ورودی به زیر برنامه و چگونگی برگشت نتیجه به صدا زننده، مهم است.
از لایههای پایینبهبالا، سرویسهای ارائه شده (باتکیهبر سرویسی که لایههای زیرین ارائه میکنند.) پیشرفتهتر میشود.
این مدل بهمنظور تعریف یک استاندارد جهانی و فراگیر ارائه شد و گمان میرفت که تمام شبکهها بر اساس این مدل در هفتلایه طراحی شوند، بهگونهای که در دهه هشتاد سازمان ملی علوم در آمریکا عنوان کرد که در آینده فقط از این استاندارد حمایت کرد، ولی در عمل، طراحان شبکه به این مدل وفادار نماندند.
مثلاً شرکت ناول مدل پنجلایهای خودش را بکار گرفت و در اینترنت مدل TCP/IP فراگیر شد. در اینجا به دلایل شکست مدل OSI نخواهیم پرداخت؛ زیرا پارهای از این عوامل از مسائل غیرعملی (همانند انتشار رایگان اصل برنامههای TCP/IP توسط دانشگاه برکلی) نشئت میگیرد و محل بحث و مناقشه است. در مجموع این مدل، مرجع بسیار کامل و مناسبی برای بحث در دروس دانشگاهی است.
در ادامه بهاختصار وظایف هر لایه در مدل OSI را تعریف خواهیم کرد.
۱ – لایه فیزیکی
وظیفه اصلی در لایه فیزیکی، انتقال بیتها بهصورت سیگنال الکتریکی و ارسال آن بر روزی کانال است. واحد اطلاعات در این لایه بیت است و بنابراین این لایه هیچ اطلاعاتی از محتوای پیام ندارد و تنها بیتهای ۰ و ۱ را ارسال یا دریافت میکند. پارامترهایی که باید در این لایه موردنظر باشند عبارتاند از:
- ظرفیت کانال فیزیکی و نرخ ارسال
- نوع مدولاسیون
- چگونگی کوپلاژ با خط انتقال
- مسائل مکانیکی و الکتریکی مانند نوع کابل، باند فرکانسی و نوع رابط (کانکتور) کابل.
در این لایه که تماماً سختافزاری است، مسائل مخابراتی در مقایسه بیتها، تجربه و تحلیل شده و طراحیهای لازم انجام میشود. طرح شبکه میتواند برای طراحی این لایه، از استانداردهای شناخته شده انتقال همانند RS-232 و RS-422 و RS -423 و… که سختافزار آنها موجود است. استفاده کند.
این لایه هیچ وظیفهای در مورد تشخیص و ترمیم خطا ندارد.
۲ -لایه پیوند داده ها
وظیفه این لایه آن است که با استفاده از مکانیزمهای کشف و کنترل خطا، دادهها را روی یک کانال انتقال که ذاتاً دارای خطا است بدون خطا و مطمئن به مقصد برساند. در حقیقت میتوان وظیفه این لایه را بیمه اطلاعات در مقابل خطاهای احتمالی دانست؛ زیرا ماهیت خطا بهگونهای است که قابلرفع نیست؛
ولی میتوان تدابیری اتخاذ کرد که فرستنده از رسیدن یا نرسیدن صحیح اطلاعات به مقصد مطلع شده و در صورت بروز خطا مجدد اقدام به ارسال اطلاعات کند؛ با چنین مکانیزمی یک کانال دارای خطا به یک خط مطمئن و بدون خطا تبدیل خواهد شد.
یکی دیگر از وظایف لایه پیوند دادهها آن است که اطلاعات ارسالی از لایه بالاتر را به واحدهای استاندارد و کوچکتری شکسته و ابتدا و انتهای آن از طریق نشانههای خاصی که Delimiter نامیده میشود، مشخص نماید. این قالب استاندارد که ابتدا و انتهای آن دقیقاً مشخص شده، فریم نامیده میشود؛ یعنی واحد اطلاعات در لایه دوم فریم است.
کشف خطا که از وظایف این لایه است میتواند از طریق اضافهکردن بیتهای کنترل خطا مثل بیتهای Parity chock و checksum و CRC انجام شود.
یکی دیگر از وظایف لایه دوم کنترل جریان یا بهعبارتدیگر تنظیم جریان ارسال فریمها بهگونهای است که یک دستگاه کند هیچگونه فریمی را بهخاطر آهسته بودن از دست ندهد.
یکی دیگر از وظایف این لایه آن است که وصول دادهها یا عدم رسید دادهها را به فرستنده اعلام کند.
در بخشهای قبل اشاره کردیم که بسیاری از شبکهها از کانال اشتراکی استفاده میکنند و ارسال همزمان دو ایستگاه منجر به تصادم (اختلاط سیگنال انتقال) و خرابی دادهها خواهد شد.
یکی دیگر از وظایف این لایه آن است که قراردادهایی را برای جلوگیری از تصادم سیگنال ایستگاههایی که از کانال اشتراکی استفاده میکنند، وضع کنند چرا که فرمان ارسال داده بر روی کانال مشترک از لایه دوم صادر میشود این قراردادها در زیرلایهای به نام MAS تعریف شده است.
وقتی یک واحد اطلاعاتی تحویل یک ماشین متصل به کانال فیزیکی در شبکه شد، وظیفه این لایه پایان مییابد از دیدگاه این لایه، ماشینهایی که به کانال فیزیکی در شبکه متصل نمیباشند، در دسترس نیستند.
کنترل سختافزار لایه فیزیکی به عهده این لایه است.
فراموش نکنید که وظایف این لایه نیز با استفاده از سختافزارهای دیجیتال انجام میشود.
۳- لایه شبکه
در این لایه اطلاعات بهصورت بستههایی سازماندهی میشود و برای انتقال مطمئن تحویل لایه دوم میشود. باتوجهبه آنکه ممکن است بین دو ماشین در شبکه مسیرهای گوناگونی وجود داشته باشد، لذا این لایه وظیفه دارد هر بسته اطلاعاتی را پس از دریافت به مسیری هدایت مند تا آن بسته بتواند به مقصد برسد.
در این لایه باید تدابیری اندیشیده شود تا ازدحام (ترافیک بیش از اندازه بستهها در یک مسیریاب یا مرکز سوئیچ) جلوگیری شده و از ایجاد بنبست ممانعت به عمل بیاورد.
هر مسیریاب میتواند بهصورت ایستا و غیرهوشمند بستهها را مسیریابی کند. همچنین میتواند بهصورت پویا و هوشمند برای بستهها مسیر انتخاب نماید. در این لایه تمام ماشینهای شبکه دارای یک آدرس جهانی و منحصربهفرد خواهند بود که هر ماشین بر اساس این آدرسها اقدام به هدایت بستهها به سمت مقصد خواهد رفت.
این لایه ذاتاً «بدون اتصال» است؛ یعنی پس از تولید یک بسته اطلاعاتی در مبدأ، بدون هیچ تضمینی در رسیدن آن بسته به مقصد، بسته شروع به طی مسیر در شبکه میکند. وظایف این لایه به سیستم نامهرسانی تشبیه شده است؛
یک پاکت محتوی نامه پس از آنکه مشخصات لازم بر روی آن درج شد، به صندوق پست انداخته میشود، بدون آنکه بتوان زمان دقیق رسیدن نامه و وجود گیرنده نامه را در مقصد، از قبل حدس زد در ضمن ممکن است نامه به هر دلیلی گم شود یا بهاشتباه در راهی بیفتد که مدتها در مسیر بماند و زمانی به گیرنده آن برسد که هیچ ارزشی نداشته باشد.
در این لایه تضمینی وجود ندارد وقتی بستهای برای یک ماشین مقصد ارسال میشود آن ماشین آماده دریافت آن بسته باشد و بتواند آن را دریافت کند. در ضمن هیچ تضمینی وجود ندارد وقتی چند بسته متوالی برای یک ماشین ارسال میشود به همان ترتیبی که بر روی شبکه ارسال شده، در مقصد دریافت شوند همچنین ممکن است که وقتی بستهای برای یک مقصد ارسال میگردد، به دلیل دیر رسیدن از اعتبار ساقط شده و مجدداً ارسال شود و هر دو بسته (جدید و قدیم) باهم برسند این مسائل در لایه بالاتر قابلحل خواهد بود.
هر چند وظایف این لایه میتواند بهصورت نرمافزاری پیاده شود؛ ولی برای بالاتر رفتن سرعت عمل شبکه، میتوان برای این لایه یک کامپیوتر خاص طراحی نمود تا در کنار سختافزار لایههای زیرین، بستهها را روی شبکه ردوبدل کند.
۴ – لایه انتقال
در این لایه بر اساس خدمات لایه زیرین، یک سرویس انتقال بسیار مطمئن و «اتصال گرا» ارائه میشود.
تمام مشکلاتی که در لایه شبکه عنوان شد در این لایه حلوفصل میشود.
قبل از ارسال بستهها، نرمافزار این لایه اقدام به ارسال یک بسته ویژه مینماید تا مطمئن شود که ماشین گیرنده آماده دریافت اطلاعات است.
جریان ارسال اطلاعات شمارهگذاری شده تا هیچ بسته ای گم نشود یا دو بار دریافت نشود.
ترتیب جریان بستهها حفظ میشود.
در این لایه پروسههای مختلفی که بر روی یک ماشین واحد اجرا شدهاند، آدرسدهی میشوند بهنحویکه هر پروسه بر روی یک ماشین واحد، بهعنوان یک هویت مستقل دادههای خود را ارسال یا دریافت نماید.
واحد اطلاعات درایت لایه قطعه است. از وظایف دیگر این لایه میتوان به موارد زیر اشاره کرد:
- تقسیم پیامهای بزرگ به بستههای اطلاعاتی کوچکتر
- بازسازی بستههای اطلاعاتی و تشکیل یک پیام کامل
- شمارهگذاری بستههای کوچکتر جهت بازسازی
- تعیین و تبیین مکانیزم و نامگذاری ایستگاههایی که در شبکهاند.
وظایف این لایه (و لایههای بعدی) با استفاده از نرمافزار پیادهسازی میشود و فقط بر روی ماشینهای نهایی (ماشینهای کاربران) وجود دارد و مراکز سوئیچ به وظایف این لایه احتیاجی ندارند (مگر در موارد خاص) این لایه در فصلی مجزا بررسی خواهد شد.
۵ – لایه جلسه
وظیفه این لایه فراهمآوردن شرایط یک جلسه (نشست) همانند ورود به سیستم از راه دور احراز هویت طرفین، نگهداری این نشست و توانایی ازسرگیری یک نشست در هنگام قطع ارتباط است.
در این لایه نیز واحد اطلاعات پیام است. وظایف این لایه را میتوان در موارد زیر خلاصه کرد:
- برقراری و مدیریت یک جلسه
- شناسایی طرفین
- مشخص نمودن اعتبار پیامها
- اتمام جلسه
- حسابداری مشتریها
۶- لایه ارائه نمایش
در این لایه معمولاً کارهایی صورت میگیرد که اگرچه بنیادی و اساسی نیستند ولیکن بهعنوان نیازهای عمومی تلقی میشوند. مثلاً:
- فشردهسازی فایل
- رمزنگاری برای ارسال دادههای محرمانه
- رمزگشایی
- تبدیل کدها به یکدیگر که دو ماشین از استانداردهای مختلفی برای متن استفاده میکنند
- مثل تبدیل متون EBCDIC به ASCII و بالعکس
7- لایه ی کاربرد
در این لایه، استاندارد مبادله پیام بین نرمافزارهای که در اختیار کاربر بوده و به نحوی با شبکه در ارتباطاند، تعریف میشود. لایه کاربرد شامل تعریف استانداردهایی نظیر انتقالنامههای الکترونیکی، انتقال مطمئن فایل، دسترسی به بانکهای اطلاعاتی راه دور، مدیریت شبکه و انتقال صفحات وب است.
در مدل لایهای شبکه، وقتی یک برنامه کاربردی در لایه آخر اقدام به ارسال یک واحد اطلاعات مینماید. سرآیند لازم به آن اضافه شده و از طریق صدازدن توابع سیستمی استاندارد به لایه زیرین تحویل داده میشود.
لایه زیر نیز پس از اضافهکردن سرآیند لازم، آن را به لایه پایین تحویل میدهید و این روند تکرار میشود تا آن واحد اطلاعات روی کانال فیزیکی ارسال شود. در مقصد پس از دریافت یک واحد اطلاعات از روی خط فیزیکی، تحویل لایه بالاتر شده و در هر لایه پس از تحلیل و پردازش لازم، سرآیند اضافه شده را حذف و به لایه بالاتر تحویل میدهد.