ایجاد یک منبع استاندارد برای درک کارکرد شبکه همواره یکی از نیازهای ضروری هم برای کاربران و هم برای سازندگان دستگاههای شبکه بوده است.
هدف نهایی ایجاد چنین استانداردی این بود که همگان بتوانند از یک منبع مشترک برای درک چگونگی ارتباط برقرار کردن کامپیوترها در شبکه استفاده کنند. مدل OSI به این دلیل ایجاد شد تا این نیازمندی را رفع کند.
در این مطلب از وبلاگ همروش قصد داریم از چیستی مدل OSI، اهمیت مدل OSI، تاریخچه آن و بررسی کامل ۷ لایه OSI صحبت کنیم.
مدل OSI چیست؟
مدل OSI مخفف کلمات Open System Interconnection به معنای مدل اتصال سیستمها یا سامانههای باز است که شامل هفت لایه میشود.
این هفت لایه شیوه برقراری ارتباط میان کامپیوترها از طریق یک شبکه را توضیح میدهند. در واقع OSI اولین سیستم استانداردی بود که برای ارتباطات شبکهای ایجاد شد و توسط بیشتر کامپیوترها و شرکتهای ارتباطاتی مورد استفاده قرار گرفت.
OSI برای اولین بار در سال ۱۹۸۳ معرفی شد و تاریخچه نسبتا مفصلی دارد که در ادامه به آن نیز خواهیم پرداخت.
همچنین این نکته را در نظر داشته باشید که اینترنت مدرن امروزی براساس این لایه پیش نمیرود. اما سوال اینجاست که با وجود این قضیه، چرا ما آن را مطالعه میکنیم و با ساختار آن آشنا میشویم؟ جواب این سوال به اهمیت آن برمیگردد.
چرا مدل OSI مهم است؟
اگرچه اینترنت کنونی براساس مدل OSI پیش نمیرود اما هنوز OSI برای حل کردن مشکلات و چالشهای شبکه یک گزینه بسیار مناسب است.
برای مثال اگر یک لپتاپ نمیتواند به شبکه متصل شود و یا اینکه یک وبسایت در نمایش محتوای خود به هزاران کاربر مشکل دارد، با پیروی کردن از مدل OSI در چنین شرایطی میتوانید منبع اصلی مشکل را پیدا کرده و آن را حل کنید.
زمانی که متوجه شدید منبع اصلی مشکل از کدام لایه (۷ لایه مدل OSI) سرچشمه میگیرد، میتوانید به صورت مستقیم روی آن لایه کار کرده و از کارهای اضافه دوری کنید.
تاریخچه مدل OSI
در ارتباط با تاریخچه OSI یکسری داستان و اختلافات وجود دارد که ممکن است در دقیق بودن این تاریخچه تناقضهایی بهوجود بیاید. اما رسمیترین موضوعی که در ارتباط با تاریخچه مدل OSI وجود دارد به این شرح است:
در اواخر دهه ۷۰، جهان متوجه شد که شدیدا به یک استاندارد برای برقراری ارتباطات شبکهای نیاز دارد.
محققان سه کشور فرانسه، بریتانیا و آمریکا در این بازه دو پروژه مختلف را برای استانداردسازی شروع کردند که در نهایت منجر به تهیه دو سند مختلف شد.
هر کدام از این پروژهها تلاش داشت تا فرایند متصل شدن کامپیوترها با همدیگر روی یک شبکه را به یک استاندارد کلی برای تمام سازندهها و فراهم کنندگان تبدیل کند.
نام این دو تیم ISO یا International Organization for Standardization و CCITT یا International Telegraph and Telephone Consultative Committee بود.
نتیجه تمام این تحقیقات، در سال ۱۹۸۳ با ادغام کردن دو سند مذکور به انجام رسید: ایجاد مدل ۷ لایهای OSI.
تقریبا ۱۰ سال بعد از این اتفاقات مدل TCP/IP به صورت کامل شکل گرفت که بعد از مدتی توانست به یک استاندارد همگانی تبدیل شود. اینترنت اکنونی که ما از آن استفاده میکنیم از این مدل بهره میگیرد. در ادامه این مقاله راجع به تفاوتهای این دو مدل صحبت خواهیم کرد.
تشریح مدل ۷ لایهای OSI
ٰمدل OSI براساس ۷ لایه انتزاعی ایجاد شده است که بهصورت موردی، قصد داریم آنها را بررسی کنیم.
برای اینکار از لایه آخر یعنی لایه هفتم شروع میکنیم. اما پیش از اینکه وارد فرایند معرفی آنها شویم، شما میتوانید شِمای کلی این لایهها را از طریق تصویر زیر به صورت کلی مشاهده کنید.
۷. لایه اپلیکیشن
این لایه تنها لایهای است که بهصورت مستقیم با دادههایی که از طرف کاربر ارسال میشود ارتباط دارد.
اپلیکیشنهایی مانند مرورگرها و کلاینتهای ایمیل برای ایجاد ارتباط در دنیای شبکهها، از این لایه استفاده میکنند. البته این نکته مهم را در نظر داشته باشید که خود این اپلیکیشنها بخشی از لایه اپلیکیشن نیستند. لایه اپلیکیشن تنها وظیفه دارد بستری فراهم کند (با استفاده از پروتکلها و دادهها) تا کاربر بتواند از طریق این اپلیکیشنها، به دادههای مرتبطی دست پیدا کنند.
پروتکلهایی که در این لایه وجود دارند HTTP، FTP، POP و SMTP (پروتکلی برای ارسال ایمیل) است.
۶. لایه نمایش
اصلیترین وظیفهای که این لایه بر عهده دارد فراهم کردن دادههای مورد استفاده لایه هفتم یعنی لایه اپلیکیشن است. جدای از این موضوع، لایه نمایش وظیفه دارد تا در انتقال، رمزنگاری و فشردهسازی دادهها نیز مشارکت داشته باشد.
در فرایند انتقال، لایه نمایش وظیفه دارد تا مطمئن شود که نوع داده ارسالی از کامپیوتر مبدا به کامپیوتر مقصد، از قالب درستی برخوردار بوده و همچنین لایه اپلیکیشن کامپیوتر مقصد میتواند آن اطلاعات را مشاهده کند.
در فرایند رمزنگاری، اگر ارتباط بین دستگاهها رمزنگاری شده باشد، لایه ششم وظیفه دارد تا فرایند رمزنگاری و رمزگشایی را انجام دهد.
در نهایت لایه نمایش وظیفه دارد تا دادههایی که بین دستگاهها منتقل میشود را برای سرعت هر چه بیشتر انتقال، فشردهسازی کند.
۵. لایه جلسه
وظیفه اصلی این لایه باز کردن و بستن ارتباطات میان دستگاههای متصل به شبکه است. زمان باز شدن و بسته شدن یک ارتباط میان دو دستگاه را جلسه یا Session میگویند. هر جلسه در این لایه نیاز است آنقدر باز باشد که دادههای مورد نظر بتوانند بین دستگاهها انتقال پیدا کنند.
برخی از اوقات جلسات به صورت کامل بسته نمیشوند، بلکه به صورت موقت ارتباط بین دو دستگاه تعلیق یا Suspend میشود تا از مصرف منابع اضافی جلوگیری شود.
یکی دیگر از وظایف اصلی این لایه، همگام کردن دادهها در یکسری مرحله است. به این معنا که شما وقتی یک فایل ۱۰۰ مگابایتی را از یک دستگاه به دستگاه دیگر ارسال میکنید، در هر ۵ مگابایت، یک نقطه به عنوان Checkpoint ایجاد میشود. در این صورت وقتی که ۵۷ مگابایت از داده ارسال شود و بعد شبکه از کار بیافتد، به محض راهاندازی دوباره شبکه، نیازی نیست که از ابتدا داده ارسال شود بلکه از ۵۵مین مگابایت ارسالی، فرایند ارسال داده آغاز به کار میکند.
۴. لایه انتقال
لایه چهارم وظیفه ایجاد یک ارتباط End-to-End بین دستگاهها را برعهده دارد. در این فرایند دادههای لایههای پیشین قطعه بندی میشوند که به هر کدام این قطعات Segment میگویند.
همچنین لایه انتقال در دستگاه مقصد وظیفه دارد تا این قطعات را به همدیگر متصل کرده و یک داده معنادار تحویل دهد.
دو وظیفه دیگر این لایه، کنترل جریان و کنترل خطا است. در فرایند کنترل جریان این لایه سرعت انتقال داده را کنترل میکند. همچنین در فرایند کنترل خطا، لایه انتقال روی فرایند ارسال و دریافت دادهها نظارت میکند.
۳. لایه شبکه
لایه شبکه مسئول تسهیل انتقال داده بین دو دستگاه متصل به اینترنت است. اگر دو دستگاه متصل به همدیگر از طریق یک شبکه مشترک کارهایشان را انجام دهند، وجود این لایه ضرورتی ندارد.
لایه شبکه Segmentهای مربوط به لایه انتقال را روی دستگاه ارسال کننده، به واحدهای کوچکتری به نام Packet تبدیل کرده و روی دستگاه گیرنده آنها را در کنار همدیگر قرار میدهد.
همچنین در این لایه بهترین مسیر فیزیکی برای انتقال داده پیدا و انتخاب میشود. به این عملیات در دنیای شبکه Routing گفته میشود.
پروتکلهای لایه شبکه شامل ICMP، IGMP و IPsec میشود.
۲. لایه پیوند داده
لایه پیوند داده تقریبا کارکردی شبیه به لایه شبکه دارد. در این لایه نیز فرایند انتقال داده آسانتر و بهینهتر میشود. در این لایه پاکتهای مربوط به لایه سوم دریافت شده و به قسمتهای کوچکتری به نام Frame تبدیل میشود. لایه پیوند در سمت ارسال کننده وظیفه تقسیم این دادهها را داشته و در سمت دریافت کننده این قطعات را بهم متصل میکند.
۱. لایه فیزیکی
این لایه شامل تمام لوازم فیزیکی میشود که در فرایند ایجاد و مدیریت شبکه کاربرد دارد. کابلها، سوئیچها، روترها و… . همچنین یکی از اصلیترین کارهایی که در این لایه انجام میشود تبدیل کردن دادهها به یک جریان بیتی خام (صفر و یک) است.
مزایا مدل OSI
مدل OSI برای کاربران و مهندسین شبکه سه مزیت اصلی دارد:
- تعیین الزامات سختافزاری و نرمافزاری مورد نیاز برای ایجاد شبکه مورد نظر.
- درک دقیق فرایند انتقال دادهها در شبکه.
- داشتن یک منبع قابل اعتماد برای حل مشکلات شبکه و پیدا کردن منبع اصلی مشکل.
همچنین مدل OSI برای سازندگان دستگاههای شبکه و طراحان نرمافزارهای مرتبط سه مزیت دارد:
- ایجاد دستگاه و نرمافزارهایی که براساس یک استاندارد یکپارچه و همگانی کار میکنند.
- تعریف و ایجاد محصولات براساس بخشهای مختلف یک شبکه.
- ارتباط برقرار کردن با کاربران براساس دستهبندی بخشهای مختلف OSI.
مدل OSI در مقابل مدل TCP/IP
مدل TCP/IP یکی دیگر از مدلهای اصلی برای استانداردسازی شبکه است که در اینترنت مدرن کاربردهای بسیار زیادی دارد. از کلیدیترین تفاوتهای این مدل با مدل OSI میتوان به موارد زیر اشاره کرد:
- در مدل TCP/IP لایههای ۵، ۶ و ۷ مدل OSI در یک لایه (لایه اپلیکیشن) قرار دارد.
- لایه ۱ و ۲ در مدل OSI به لایه دسترسی شبکه در TCP/IP تبدیل شده است. (البته این موضوع را در نظر بگیرید که تفاوتهایی در کاربرد این لایهها بین TCP/IP و OSI وجود دارد).
- TCP/IP یک مدل کارکردی است به این معنا که برای حل مشکلات ارتباطی منحصر به فردی ایجاد شده است. TCP/IP در اصل توسط وزارت دفاع آمریکا ایجاد شد. اما OSI یک مدل مستقل بوده و اصلیترین دلیل ایجاد آن، وجود یک منبع کامل برای تمام بخشهای شبکه است.
- در مدل TCP/IP بیشتر اپلیکیشنها از تمام لایهها استفاده میکند، اما اپلیکیشن از هر هفت لایه OSI استفاده نمیکند.
در پایان
مدل OSI یکی از مهمترین مدلهای استاندارد برای تشریح کارکرد شبکههای کامپیوتری است که جدای از اهداف آموزشی، برای بازه زمانی نسبتا طولانی، کاربردیترین مدل برای تشحریح عملکرد شبکههای کامپیوتری بوده است.
در این مطلب از وبلاگ همروش به صورت کامل با مدل OSI، اهمیت و تاریخچه آن آشنا شدیم و همچنین به صورت جزئیاتی ۷ لایه OSI را بررسی کردیم.