نویسنده : Arvan

مدل OSI چیست؟

linkedin

مدل OSI (Open Systems Interconnection)، نشان‌دهنده‌ی یکی از معماری‌های مورد استفاده در شبکه‌های کامپیوتری است. پیش از به وجود آمدن این مدل، هر ارایه‌کننده‌ی ابزارهای شبکه‌ای، مدل شبکه‌ای متناسب با محصولات خود ارایه می‌کرد. برای نمونه، کامپیوترهای تولید شده به‌وسیله‌ی شرکت IBM تنها قادر بودند با سایر کامپیوترهایی که ساخته‌ شده به‌وسیله‌ی این شرکت بودند، ارتباط برقرار کنند. به این ترتیب، ایراد اصلی این ساختار آن بود که بسته‌های یک شبکه، نمی‌توانستند در شبکه‌های دیگر جابه‌جا یا فهمیده شوند و هر شبکه با هر اندازه‌ای، باز هم یک شبکه‌ی ایزوله (isolated) محسوب می‌شد.

مدل OSI به عنوان اولین استاندارد تعریف شده در شبکه، سبب شد تا همه‌ی سازندگان دستگاه‌های شبکه مجبور به استفاده از استانداردهای مشترک شوند و از این رو دستگاه‌های متصل به شبکه‌ی اینترنت، فارغ از این‌که از چه سازنده‌ای باشند، بتوانند با یک‌دیگر به تبادل اطلاعات بپردازند.

مدل OSI بر پایه‌ی معماری لایه‌ای و از ۷ لایه‌ی مختلف ساخته شده است. اساس کار این معماری به این شکل است که هر لایه، بدون آن‌که از جزییات کار لایه‌ی پایین‌تر خود آگاه باشد، از نتیجه‌ی عملکرد آن استفاده می‌کند و به لایه‌ی بالا‌تر خود سرویس می‌دهد.

هر لایه، پروتکل‌های مخصوص به خود را دارد که اطلاعات را طبق استاندارد‌های آن پروتکل، درون بسته‌هایی قرار می‌دهد و هدر‌‌هایی را برای هر بسته مشخص می‌کند که اطلاعات لازم برای رسیدن بسته به مقصد را در خود دارند. هر یک از این بسته‌ها وقتی به مقصد می‌رسند، در همان لایه‌هایی که ایجاد شده‌اند، باز می‌شوند و محتویات‌ آن‌ها به لایه‌ی بعدی تحویل داده می‌شود.

 

لایه‌های مدل OSI

همان‌طور که بیان شد، این معماری از ۷ لایه تشکیل شده است. لایه‌های اول، لایه‌هایی مربوط به تبادل فیزیکی بسته‌ها هستند و لایه‌های بالاتر، بسته‌ها را به شیوه‌ی نرم‌افزاری انتقال می‌دهند. لایه‌های مدل OSI عبارت‌اند از:‌

۱- لایه فیزیکی (physical layer): وظیفه‌ی اصلی این لایه، انتقال بیت‌های داده است. این کار می‌تواند در طول یک سیم مسی یا با کمک فیبر نوری انجام شود. این لایه سیگنا‌ل‌های دریافتی را به‌شکل بیت‌های صفر و یک که برای کامپیوتر قابل فهم هستند، در می‌آورد و به لایه‌ی بالاتر خود می‌دهد.

۲- لایه‌ی پیوند داده (data link layer): کار اصلی این لایه، رساندن پیام‌‌های لایه‌ی فیزیکی به دست گیرنده است. از آن‌‌جایی که احتمال بروز خطا در لایه‌ی فیزیکی وجود دارد، این لایه بررسی می‌کند که آیا پیام رسیده همان پیام مدنظر فرستنده بوده ‌است یا نه. رساندن پیام‌ها به دست گیرنده، با mac address انجام می‌شود (در‌واقع هر دستگاه فیزیکی که در شبکه وجود دارد، آدرس MAC منحصر به فردی دارد که به کمک آن‌ می‌توان مقصد پیام‌ها را در این لایه تشخیص داد و پیام‌ها را به مقصد رساند). بسته‌های این لایه frame نام دارند و از رایج‌ترین پروتکل‌های این لایه، می‌توان پروتکل PPP را نام برد.

۳- لایه‌ی شبکه (network layer): مسیریابی در شبکه به کمک پروتکل معروف این لایه یعنی IP انجام می‌شود. بسته‌های این لایه، packet نام دارند و هدر‌های این packetها، آدرس‌های IP مبدا و مقصد را مشخص می‌کنند. یک مسیریاب یا router در شبکه، یک دستگاه لایه‌ی ۳ است که پس از آن‌که بسته‌‌ای را دریافت می‌کند، براساس مقصد تصمیم می‌گیرد که بهترین راه برای رسیدن این بسته به مقصد، کدام راه است و بسته را به روتر بعدی در این مسیر ارسال می‌کند. این کار تا زمانی که بسته به مقصد برسد، ادامه می‌یابد. مانند MAC address، هر دستگاه در شبکه آدرس IP منحصر به فرد خود را دارد.

۴- لایه‌ی انتقال (transport layer): وظیفه‌ی این لایه، ایجاد ارتباطی end-to-end بین مبدا و مقصد، هم‌چنین کنترل جریان و کنترل خطا است. ارتباط بین دو دستگاه در این لایه، مانند برقراری یک تونل مجازی بین این دو دستگاه است. پروتکل‌های این لایه درگیر مسیریابی نمی‌شوند. لازمه‌ی ایجاد هر ارتباط، وجود IP و پورت‌های مبدا و مقصد است. وجود IP‌ها برای عمل مسیریابی در لایه‌ی پایین‌تر ضروری است و به کمک پورت‌ها می‌توان مشخص کرد که چه برنامه‌هایی در لایه‌‌های بالاتر، این بسته را ارسال کرده‌اند. بسته‌های این لایه datagram نام دارند و پروتکل‌های اصلی این لایه، TCP و UDP هستند.

۵- لایه‌ی نشست (session layer): این لایه، سبب حفظ ارتباط بین ارسال‌کننده و دریافت‌کننده می‌شود و اگر این ارتباط قطع شود، شیوه‌ی شروع مجدد آن را تعیین می‌کند. هم‌چنین به کمک این لایه‌ می‌توان تا حدی امنیت ارتباط بین دو طرف را تامین کرد و کار‌هایی مانند authentication و authorization را بین گیرنده و فرستنده انجام داد.

۶- لایه‌ی نمایش (presentation layer): این لایه، اطلاعات دریافت شده از لایه‌ی بالایی خود را به زبانی قابل فهم برای لایه‌ی پایین‌تر خود ترجمه می‌کند. هم‌چنین، اگر اطلاعات به‌شکل رمزنگاری شده دریافت شوند، این لایه وظیفه‌ی رمز‌گشایی را برعهده دارد. از آن‌جایی که عملکرد این لایه را می‌توان به کمک لایه‌های دیگر پیاده‌سازی کرد، استفاده از این لایه خیلی رایج نیست.

۷- لایه‌ی کاربرد (application layer): بیش‌تر پیام‌هایی که در شبکه‌ی اینترنت مبادله می‌شوند، در این لایه تولید می‌شوند. درواقع قرار است برنامه‌های مختلف روی سیستم‌های مختلف، تبادل اطلاعات انجام بدهند که این تبادل به کمک همه‌ی لایه‌های قبلی نام‌ برده شده انجام می‌شود. پروتکل‌های آشنایی مانند HTTP و FTP (file transfer protocol) متعلق به این لایه هستند.

مطالب مرتبط