مدل OSI

مدل OSI

مقدمه

یکی از مهم ترین مباحث برای ورود به دنیای شبکه و درک تمامی مفاهیم ، داشتن تسلط کامل بر روی لایه های (Open System Interconnection) OSI است. دانستن این که چه فرایند هایی بر روی کامپیوتر مبداء و مقصد انجام می شود تا یک عکس ، ویدئو ، آهنگ ، فایل و… به سلامت جا به جا شود ضروری است. همچنین کمک می کند تا نحوه کار تجهیزات شبکه قابل فهم شود. مدل OSI یک مدل هفت لایه ای است که هر لایه وظایف مخصوص به خودش را دارد. در ادامه به به توضیح هر کدام از این لایه ها می پردازیم.

OSI یک مدل و مفهوم برای درک کارکرد شبکه است که توسط سازمان جهانی (ISO) تعریف شده است. ISO مخفف عبارتInternational Standardization Organization  است. عملکرد این لایه ها در لحظه ارسال از بالا به پایین است یعنی از لایه هفتم به اول فرایند ارسال انجام می شود.

 

لایه هفتم (Application)

در این لایه درخواست های کاربر برای ورود به شبکه دریافت می شود. خدمات و سرویس دهی ها به کاربر در این لایه انجام می شود  و تنها لایه ای است که با کاربر ارتباط مستقیم دارد. این لایه امکان ارتباط بر قرار کردن کاربر با شبکه توسط نرم افزار را به کاربر می دهد. برای مثال وقتی در مرورگرتان یک صفحه آنلاین را جستجو می کنید، در اصل در این لایه هستیم چرا که مرورگر از طریق پرتکل HTTP (Hyper Text Transfer Protocol) ارتباط را فراهم کرده است (پرتکل HTTP داخل لایه هفتم کار می کند). در این لایه پس از دریافت اطلاعات از کاربر، اطلاعات را به لایه پایینی خود یعنی لایه ششم ارسال می کند. از پرتکل های این لایه می توان به HTTP، FTP، DNS اشاره کرد.

نکته: اطلاعات را در لایه هفتم ، ششم و پنجم Data می نامند.

نکته:  به روش های استانداردی که برای برقرار کردن ارتباط بین دستگاه های شبکه استفاده می شود پرتکل (Protocol) گفته می شود. پرتکل مانند یک زبان مشترک برای ارتباط برقرار کردن کامپیوتر ها است. برای مثال پرتکل FTP یک پرتکل برای ارسال فایل ها و اسناد در بستر شبکه است.

 

لایه ششم (Presentation)

در این لایه Formatting انجام می شود یعنی اطلاعات در صورت ارسال به شبکه های خارجی و فواصل طولانی Compression )فشرده سازی( می شود. همچنین اطلاعات Encryption (رمزنگاری) و Decryption (رمزگشایی) نیز می شود. در این لایه اطلاعات به فرمت خاصی به طوری که برای لایه های پایین تر و بالاتر خود قابل فهم باشد تبدیل می کند. در این لایه اطلاعات بسته بندی نیز می شود.

پس انجام مراحل بالا Data یا همان اطلاعات به لایه پایینی خود یعنی لایه پنجم ارسال می شود. از پرتکل های این لایه می توان به SSL و TLS اشاره کرد که برای رمز نگاری از آن ها استفاده می شود.

 

لایه پنجم (Session)

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

در این لایه Check pointing نیز رخ می دهد یعنی  هر دو طرف (فرستنده و گیرنده) توافق می کنند که برای مثال هر 20 مگابایت یک پیغام بر مبنای رسیدن کامل آن 20 مگابایت برای فرستنده از سمت گیرنده ارسال می شود. این اتفاق برای این می افتد که از صحت کامل رسیدن بسته ها اطمینان حاصل کند.

 

لایه چهارم (Transport)

در این لایه نام اطلاعات از Data به Segment تغییر پیدا می کند. اطلاعاتی که از لایه های بالاتر آمده است ، تقسیم بندی شده و به بسته های کوچک تر تقسیم می شود (Segmentation) و روی هر قطعه یک عدد مبنی برsequence number قرار می گیرد. حال اگر بسته ای در حین ارسال گم شده یا بسته ای کم شده باشد، کامپیوتر گیرنده  با نگاه کردن به sequence number ها می توان بفهمد کدام بسته گم شده و دیگر نیاز به ارسال مجدد کل بسته نیست و تنها قسمت گم شده دوباره ارسال می شود. این اطلاعات تقسیم بندی شده هنگام رسیدن به مقصد اطلاعات به هم متصل می شوند (Reassembling).

در این لایه مشخص می شود که ارسال اطلاعات با پرتکل TCP ارسال شود یا با پرتکل UDP. TCP مخفف عبارت Transmission Control Protocol است. این نوع اتصال که به آن Connection Oriented نیز گفته می شود از صحت به سلامت رسیدن اطلاعات اطمینان حاصل می کند و برای هر بسته ای که ارسال کرده یک رسید (Acknowledge) مبنی بر این که آن بسته به سلامت رسیده است دریافت می کند.

همچنین در این مدل قبل از برقراری اتصال فرایندی به نام Three way handshake اتفاق می افتد که قبل از ارسال ،کامپیوتر ها آمادگی یک دیگر را برای ارسال بررسی می کنند. این اتفاق بدین صورت است که اول یک بسته از سمت کامپیوتر فرستنده با عنوان SIN ارسال می شود سپس کامپیوتر گیرنده پس از دریافت بسته SIN یک بسته با عنوان SIN-ACK به سمت کامپیوتر فرستنده ارسال می کند ، کامپیوتر فرستنده پس از دریافت بسته SIN-ACK ، یک بسته با عنوان ACK به کامپیوتر گیرنده ارسال می کند که این به معنی آمادگی هر دو کامپیوتر برای ارسال اطلاعات است.

 

OSI model- transport

 

TCP به دلیل فرایند هایی که برای تضمین به سلامت رسیدن بسته انجام می دهد یک اتصال کند است ولی کامل رسیدن بسته را به مقصد تضمین می کند.

UDP مخفف کلمه User Datagram Protocol است. این نوع اتصال که به آن Connection Less نیز گفته می شود ، هیچ رسیدی مبنی بر این که بسته به سلامت رسیده ارسال نمی کند و هیچ کدام از مراحل TCP را ندارد پس بسیار سریع تر از TCP است و هیچ تضمینی برای به سلامت رسیدن بسته ها به ما نمی دهد. از این پرتکل برای موارد حساس به زمان مانند ارتباطات ویدئویی ، ارتیاطات مبتنی بر VOIP ، بازی های ویدئویی ، ارسال و دریافت درخواست ها به DNS و… استفاده می شود.

پس انجام این فرایند ها Segment به لایه پایینی یعنی لایه سوم ارسال می شود.

 

لایه سوم (Network)

در این لایه نام اطلاعات از Segment به Packet تغییر پیدا می کند. در این لایه آدرس Logical یا همان IP بر روی بسته مشخص می شود و آدرس مبدا و مقصد در Header بسته ارسال شده گذاشته می شود. همچنین این لایه وظیفه Routing (پیدا کردن بهترین مسیر برای ارسال Packet) و تنظیمات مرتبط با پهنای باند مانند QOS صورت می گیرد.

 

نکته: QOS مخفف عبارت Quality Of Service است که می توان اولویت بندی کرد که کدام سرویس هنگام ارسال پهنای باند بیشتری را بگیرد یا می توان مقداری از پهنای باند را کامل برای یک سرویس خاص مانند VOIP قرار داد. (VOIP مخفف عبارت Voice Over Ip است. این سرویس این قابلیت را به ما می دهد که صدا را بر روی بستر اینترنت جا به جا کنیم. در واقع خدمات تلفن بر بستر اینترنت است.)

پس انجام فرایند های بالا Packet به لایه پایینی خود یعنی لایه دوم ارسال می شود.

 

لایه دوم (Data Link)

در این لایه نام اطلاعات از Packet به Frame تغییر پیدا می کند. در این بخش آدرس Physical یا همان MAC که آدرس کارت شبکه است بر روی بسته مشخص می شود و آدرس MAC مبدا و مقصد در Header بسته ارسال شده گذاشته می شود. همچنین LLC نیز مشخص می شود. (LLC مخفف عبارت Logical Link Control است که یک قسمتی از کارت شبکه است که به واسطه پرتکل هایش با سیستم عامل صحبت می کند.)

پس از انجام فرایند های بالا Data link به لایه پایینی خود یعنی لایه اول ارسال می شود.

 

لایه اول (Physical)

در این لایه نوع Media مشخص می شود. نوع اتصالات ، کابل ها (نوع سیگنال های ارسالی در صورت اتصال بی سیم) ، Topology و… مشخص می شود. همچنین در این لایه اطلاعات تبدیل به 0 و 1 شده و درون کابل جاری شده تا به مقصد برسد.

هنگامی که اطلاعات به مقصد می رسد همین فرایند به صورت برعکس در سمت کامپیوتر گیرنده اتفاق می افتد. یعنی اطلاعات به مقصد رسیده و از کابل به داخل کارت شبکه رفته ، سپس آدرس MAC و آدرس IP را برای این که اطمینان حاصل کند، که بسته دریافتی برای خودش است بررسی می کند ، سپس Reassembling (متصل شدن دوباره Segment ها به یکدیگر) انجام شده و اطلاعات به از طریق لایه هفتم (Application) به کاربر منتقل می شود.

 

نکته: در انتهای Header بسته یک بخشی به نام CRC (Cyclic Redundancy Check) اضافه می شود. این بخش یکسری عملیات ریاضی و محاسباتی را بر روی بسته انجام می دهد و به یک عددی می رسد و آن عدد را در بخش CRC می نویسد. حال هنگامی که کامپیوتر دریافت کننده بسته را می گیرد همان عملیات ریاضی را بر روی بسته انجام می دهد. اگر عدد بدست آمده با عددی که در بخش CRC ، Header بسته دریافت شده است مقایسه می کند. اگر هر دو عدد بدست آمده یکسان باشد به این معنی است که فایل تغییر پیدا نکرده است در هنگام جا به جایی ولی اگر اعداد با هم یکسان نباشد به این معنی است که فایل هنگام جا به جایی تغییری روی آن ایجاد شده.

نکته: به فرایندی که روی اطلاعات انجام می شود تا بسته ارسال شود Encapsulation و به فرایندی که روی اطلاعات هنگام دریافت بسته انجام می شود Decapsulation می گویند.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *