مدل OSI چیست؟
مدل اتصال متقابل سیستمهای باز (OSI) یک چارچوب مفهومی است که عملکردهای ارتباطات شبکه را به هفت لایه تقسیم میکند. ارسال داده از طریق یک شبکه پیچیده است زیرا فناوریهای مختلف سختافزاری و نرمافزاری باید به طور منسجم در سراسر مرزهای جغرافیایی و سیاسی کار کنند. مدل داده OSI یک زبان جهانی برای شبکههای کامپیوتری فراهم میکند، بنابراین فناوریهای مختلف میتوانند با استفاده از پروتکلهای استاندارد یا قوانین ارتباط، با یکدیگر ارتباط برقرار کنند. هر فناوری در یک لایه خاص باید قابلیتهای مشخصی را ارائه دهد و عملکردهای خاصی را برای مفید بودن در شبکه انجام دهد. فناوریهای موجود در لایههای بالاتر از انتزاع بهره میبرند زیرا میتوانند از فناوریهای سطح پایینتر بدون نگرانی در مورد جزئیات پیادهسازی زیربنایی استفاده کنند.
چرا مدل OSI مهم است؟
لایههای مدل اتصال متقابل سیستمهای باز (OSI) هر نوع ارتباط شبکه را در بین اجزای نرمافزاری و سختافزاری در بر میگیرد. این مدل به گونهای طراحی شده است که به دو سیستم مستقل اجازه میدهد از طریق رابطها یا پروتکلهای استاندارد بر اساس لایه عملیاتی فعلی، با یکدیگر ارتباط برقرار کنند.
مزایای مدل OSI در زیر آمده است.
درک مشترک از سیستمهای پیچیده: مهندسان میتوانند از مدل OSI برای سازماندهی و مدلسازی معماریهای پیچیده سیستمهای شبکهای استفاده کنند. آنها میتوانند لایه عملیاتی هر جزء سیستم را بر اساس عملکرد اصلی آن جدا کنند. توانایی تجزیه یک سیستم به بخشهای کوچکتر و قابل مدیریت از طریق انتزاع، درک آن را به عنوان یک کل برای افراد آسانتر میکند.
تحقیق و توسعه سریعتر: با مدل مرجع OSI، مهندسان میتوانند کار خود را بهتر درک کنند. آنها هنگام ایجاد سیستمهای شبکهای جدید که نیاز به برقراری ارتباط با یکدیگر دارند، میدانند که برای کدام لایه (یا لایهها) فناوری در حال توسعه هستند. مهندسان میتوانند سیستمهای شبکهای را توسعه دهند و از یک سری فرآیندها و پروتکلهای تکرارپذیر بهره ببرند.
استانداردسازی انعطافپذیر: مدل OSI پروتکلهای مورد استفاده بین سطوح را مشخص نمیکند، بلکه وظایفی را که پروتکلها انجام میدهند، مشخص میکند. این مدل توسعه ارتباطات شبکه را استاندارد میکند تا افراد بتوانند به سرعت سیستمهای بسیار پیچیده را بدون دانش قبلی از سیستم درک، ایجاد و تجزیه کنند. همچنین جزئیات را انتزاع میکند، بنابراین مهندسان نیازی به درک هر جنبه از مدل ندارند. در برنامههای مدرن، سطوح پایینتر شبکه و پروتکلها برای سادهسازی طراحی و توسعه سیستم، انتزاع میشوند. تصویر زیر نشان میدهد که چگونه مدل OSI در توسعه برنامههای مدرن استفاده میشود.
هفت لایه مدل OSI کدامند؟
مدل اتصال متقابل سیستمهای باز (OSI) توسط سازمان بینالمللی استانداردسازی و دیگران در اواخر دهه ۱۹۷۰ توسعه یافت. این مدل در اولین شکل خود در سال ۱۹۸۴ به عنوان ISO 7498 منتشر شد و نسخه فعلی آن ISO/IEC 7498-1:1994 است. هفت لایه مدل در زیر آمده است.
-
لایه فیزیکی: لایه فیزیکی به محیط ارتباطی فیزیکی و فناوریهای انتقال داده از طریق آن محیط اشاره دارد. در هسته خود، ارتباط داده انتقال سیگنالهای دیجیتال و الکترونیکی از طریق کانالهای فیزیکی مختلف مانند کابلهای فیبر نوری، کابل کشی مسی و هوا است. لایه فیزیکی شامل استانداردهایی برای فناوریها و معیارهایی است که ارتباط نزدیکی با کانالها دارند، مانند بلوتوث، NFC و سرعت انتقال داده.
-
لایه پیوند داده: لایه پیوند داده به فناوریهای مورد استفاده برای اتصال دو دستگاه در یک شبکه که لایه فیزیکی از قبل وجود دارد، اشاره دارد. این لایه فریمهای داده را که سیگنالهای دیجیتال محصور شده در بستههای داده هستند، مدیریت میکند. کنترل جریان و کنترل خطای داده اغلب از تمرکزهای اصلی لایه پیوند داده هستند. اترنت نمونهای از یک استاندارد در این سطح است. لایه پیوند داده اغلب به دو زیرلایه تقسیم میشود: لایه کنترل دسترسی به رسانه (MAC) و لایه کنترل پیوند منطقی (LLC).
-
لایه شبکه: لایه شبکه با مفاهیمی مانند مسیریابی، ارسال و آدرسدهی در یک شبکه پراکنده یا چندین شبکه متصل از گرهها یا دستگاهها سروکار دارد. لایه شبکه همچنین ممکن است کنترل جریان را مدیریت کند. در سراسر اینترنت، پروتکل اینترنت نسخه ۴ (IPv4) و IPv6 به عنوان پروتکلهای اصلی لایه شبکه استفاده میشوند.
-
لایه انتقال: تمرکز اصلی لایه انتقال اطمینان از رسیدن بستههای داده به ترتیب صحیح، بدون از دست دادن یا خطا است، یا در صورت لزوم میتوان آنها را به طور یکپارچه بازیابی کرد. کنترل جریان، همراه با کنترل خطا، اغلب در لایه انتقال مورد توجه است. در این لایه، پروتکلهای رایج مورد استفاده شامل پروتکل کنترل انتقال (TCP)، یک پروتکل مبتنی بر اتصال تقریباً بدون از دست دادن، و پروتکل دادهنگار کاربر (UDP)، یک پروتکل بدون اتصال با از دست دادن است. TCP معمولاً در مواردی استفاده میشود که همه دادهها باید دست نخورده باشند (به عنوان مثال اشتراک فایل)، در حالی که UDP زمانی استفاده میشود که حفظ همه بستهها اهمیت کمتری دارد (به عنوان مثال پخش ویدئو).
-
لایه جلسه: لایه جلسه مسئول هماهنگی شبکه بین دو برنامه جداگانه در یک جلسه است. یک جلسه شروع و پایان یک اتصال برنامه یک به یک و تداخلهای همگامسازی را مدیریت میکند. سیستم فایل شبکه (NFS) و بلوک پیام سرور (SMB) پروتکلهای رایج مورد استفاده در لایه جلسه هستند.
-
لایه نمایش: لایه نمایش عمدتاً با نحو خود داده برای ارسال و مصرف برنامهها سروکار دارد. به عنوان مثال، زبان نشانهگذاری فرامتن (HTML)، نشانه گذاری شیء جاوااسکریپت (JSON) و مقادیر جدا شده با کاما (CSV) همه زبانهای مدلسازی برای توصیف ساختار داده در لایه نمایش هستند.
-
لایه کاربرد: لایه کاربرد با نوع خاص برنامه و روشهای ارتباط استاندارد آن سروکار دارد. به عنوان مثال، مرورگرها میتوانند با استفاده از پروتکل انتقال ابرمتن امن (HTTPS) و HTTP ارتباط برقرار کنند و سرویس گیرندههای ایمیل میتوانند با استفاده از POP3 (پروتکل اداره پست نسخه ۳) و SMTP (پروتکل انتقال ایمیل ساده) ارتباط برقرار کنند.
همه سیستمهایی که از مدل OSI استفاده میکنند، همه لایهها را پیادهسازی نمیکنند.
ارتباط چگونه در مدل OSI اتفاق میافتد؟
لایهها در مدل اتصال متقابل سیستمهای باز (OSI) به گونهای طراحی شدهاند که یک برنامه میتواند از طریق یک شبکه با برنامه دیگری در دستگاه دیگر، صرف نظر از پیچیدگی برنامه و سیستمهای زیربنایی، ارتباط برقرار کند. برای انجام این کار، از استانداردهای و پروتکلهای مختلفی برای ارتباط با لایه بالا یا پایین استفاده میشود. هر یک از لایهها مستقل هستند و فقط از رابطها برای ارتباط با لایه بالا و پایین خود آگاه هستند.
با زنجیر کردن همه این لایهها و پروتکلها، ارتباطات داده پیچیده میتواند از یک برنامه سطح بالا به برنامه دیگر ارسال شود. این فرآیند به شرح زیر عمل میکند:
- لایه کاربرد فرستنده ارتباط داده را به لایه پایینتر بعدی منتقل میکند.
- هر لایه سربرگها و آدرسدهی خود را به دادهها اضافه میکند قبل از اینکه آن را ارسال کند.
- ارتباط داده به لایهها پایین میرود تا در نهایت از طریق محیط فیزیکی منتقل شود.
- در انتهای دیگر محیط، هر لایه داده را مطابق با سربرگهای مربوطه در آن سطح پردازش میکند.
- در انتهای گیرنده، داده به لایه بالا میرود و به تدریج باز میشود تا برنامه در انتهای دیگر آن را دریافت کند.
جایگزینهای مدل OSI کدامند؟
مدلهای مختلف شبکه در گذشته استفاده میشدند، مانند تبادل بسته ترتیبی/تبادل بسته اینترنت (SPX/IPX) و سیستم ورودی/خروجی پایه شبکه (NetBIOS). امروزه، جایگزین اصلی مدل اتصال متقابل سیستمهای باز (OSI) مدل TCP/IP است.
مدل TCP/IP: مدل TCP/IP از پنج لایه مختلف تشکیل شده است:
- لایه فیزیکی
- لایه پیوند داده
- لایه شبکه
- لایه انتقال
- لایه کاربرد
در حالی که لایههایی مانند لایه فیزیکی، لایه شبکه و لایه کاربرد به نظر میرسد مستقیماً با مدل OSI مطابقت دارند، این دقیقاً درست نیست.
در واقع، مدل TCP/IP دقیقاً با ساختار و پروتکلهای اینترنت مطابقت دارد.
مدل OSI همچنان یک مدل شبکهبندی محبوب برای توصیف نحوه عملکرد شبکهبندی از یک دیدگاه کلی برای اهداف آموزشی باقی مانده است. با این حال، مدل TCP/IP اکنون بیشتر در عمل استفاده میشود.
نکتهای در مورد پروتکلها و مدلهای اختصاصی:
توجه به این نکته مهم است که همه سیستمها و برنامههای مبتنی بر اینترنت از مدل TCP/IP یا مدل OSI پیروی نمیکنند. به طور مشابه، همه سیستمها و برنامههای شبکهای مبتنی بر آفلاین از مدل OSI یا هر مدل دیگری استفاده نمیکنند.
هر دو مدل OSI و TCP/IP استانداردهای باز هستند. آنها به گونهای طراحی شدهاند که هر کسی میتواند از آنها استفاده کند یا آنها را بیشتر توسعه دهد تا نیازهای خاص را برآورده کند.
سازمانها همچنین استانداردهای داخلی و اختصاصی خود، از جمله پروتکلها و مدلها، را طراحی میکنند که منبع بسته هستند و فقط برای استفاده در سیستمهای خودشان هستند. گاهی اوقات، آنها ممکن است متعاقباً آنها را برای قابلیت همکاری و توسعه بیشتر جامعه به صورت عمومی منتشر کنند. نمونهای از آن s2n-tls، یک پروتکل TLS است که در ابتدا یک پروتکل اختصاصی آمازون وب سرویس (AWS) بود اما اکنون منبع باز است.