پروتکل Ethernet (بخش دوم)

0

پروتکل Ethernet

 

مدل TCP/IP

مدل TCP/IP یا Transmission Control Protocol/Internet protocol که به نام­های دیگر مانند Internet protocol suit  یا Protocol Stack نیز معروف است، مدلی مفهومی و مجموعه­ای از پروتکل­ها است که در اینترنت و شبکه­های کامپیوتری مورد استفاده قرار می­گیرد.

مدل TCP_IP
مدل TCP_IP

علت نامگذاری این مدل به نام TCP/IP دو پروتکل اصلی مورد استفاده در این مدل یعنی پروتکل TCP و IP است. این مدل شامل چهار لایه کاربرد، انتقال، اینترنت و پیوند می­باشد که عملکرد این لایه­ها مشابه لایه­های مدل OSI می­باشد.

مقایسه مدل TCP/IP با مدلOSI

مقایسه مدل OSI با TCP_IP
مقایسه مدل OSI با TCP_IP
  • مدل مرجع OSI و مدل مرجع  TCP/IPنقاط مشترک زیادی دارند. هر دوی آن­ها مبتنی بر مجموعه­ای از پروتکل­های مستقل هستند و عملکرد لایه­ها نیز تا حدی شبیه یکدیگر است. مدل OSI ثابت کرده که بهترین ابزار برای توصیف شبکه­های کامپیوتری است، اماTCP/IP  در مقیاس وسیعی مورد استفاده قرار می­گیرد. این دو مدل تفاوت­هایی با هم دارند که در زیر به برخی از آنهااشاره می کنیم.

    قبل از ایجاد مدل OSI پروتکل­های آن طراحی و ابداع شد، در نتیجه این مدل وابستگی و تعامل خاصی با هیچ مجموعه پروتکلی ندارد اما در TCP/IP مسئله بر عکس بود و این خود باعث شده که مدل TCP/IP تنها برای شبکه­های تحت خود مناسب باشد.

    مدل OSI دارای هفت لایه است اما مدل TCP/IP چهار لایه دارد و از لایه presentation و لایه session در آن خبری نیست (شکل 5). شاید بزرگترین دستاورد مدل OSI روشن ساختن مفاهیم فوق و تفکیک آنها باشد. هر لایه سرویس­هایی در اختیار لایه­های بالاتر از خود قرار می­دهد. تعریف این سرویس­ها فقط می­گوید که یک لایه چه کارایی انجام می­دهد و هیچ حرفی در مورد نحوه انجام آن­ها و چگونگی استفاده از سرویس­ها نمی­زند.

    تعریف چگونگی دسترسی به سرویس­های یک لایه بر عهده واسط است. واسط پارامترهای ورودی لازم و نتیجه­ موردنظر را تعیین می­کند. حتی واسط هم نمی­گوید که یک لایه کار خود را چگونه انجام می­دهد. کاری را که یک لایه انجام می­دهد را پروتکل­های آن لایه تعریف می­کند. یک لایه مادامی که کار خود را درست انجام دهد، می­تواند از هر پروتکلی استفاده کند. تغییر پروتکل­های یک لایه هیچ تأثیری روی ارتباط آن با لایه­های بالاتر نخواهد گذاشت.

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

    همانطور که گفته شد، مدل OSI قبل از اختراع پروتکل­های آن طراحی و ابداع شد، این بدان معناست که مدل OSI وابستگی و تمایل خاصی به هیچ مجموعه پروتکلی ندارد، این مشخصه یک نقطه ضعف نیز دارد و آن این است که طراحان تجربه چندانی در زمینه موضوع کار ندارند و واقعاً نمی­دانند کدام عملکرد را باید در کدام لایه قرار دهند. برای مثال، لایه پیوند داده در ابتدا فقط برای شبکه­های نقطه­ به نقطه یا point to point طراحی شده بود و وقتی شبکه­های بزرگتر طراحی شدند، مجبور شدند یک زیر لایه به آن اضافه کنند. در مورد TCP/IP وضع برعکس بود و اول پروتکل­ها اختراع و توسعه داده شدند و سپس مدلی برای توصیف آن­ها ساخته شد.

    تفاوت دیگر در زمینه اتصال گرا (Connection-Oriented) و غیر اتصال گرا (Connection-Less) می­باشد. مدل OSI  از هر دو نوع ارتباط اتصال گرا و غیر اتصال گرا در لایه شبکه پشتیبانی می­کند ولی در لایه انتقال فقط از سرویس اتصال گرا پشتیبانی می­کند (چون این سرویس در معرض دید کاربران است). مدل TCP/IP در لایه شبکه فقط سرویس غیر اتصال­گرا دارد ولی در لایه انتقال از هر دو نوع ارتباط پشتیبانی می­کند و دست کاربر را برای انتخاب باز می­گذارد که به ویژه برای پروتکل­های ساده درخواست و پاسخ request-response بسیار مهم ا ست. مدلی که برای تشریح عملکرد پروتکل اترنت مناسب می­باشد و بیشتر مورداستفاده قرار می­گیرد، مدل TCP/IP است.

برخی از پروتکل¬های مهم TCP_IP در هر لایه
برخی از پروتکل¬های مهم TCP_IP در هر لایه

Encapsulation

  • برای یادگیری نحوه عملکرد اترنت باید ابتدا با مفهوم packet encapsulation  که در بخش قبلی نیز به آن اشاره شد و نحوه به کارگیری آن در پروتکل­های شبکه آشنا شویم. هر لایه در طبقه­بندی لایه­ها، وظیفه و کارکردی مشخص دارد. به عنوان مثال لایه فیزیکی وظیفه انتقال الکتریکی بیت­ها در طول رسانا را به عهده دارد. هر لایه­ از نتایج لایه پایین­تر خود (بدون وابستگی به آن) استفاده می­کند. برای توضیح مفهوم بسته­بندی بسته­ها، می­توان از مثالی که در شکل 7 آورده شده است و تطبیق دهنده لایه­های مورد استفاده توسط مرورگرهای اینترنتی با مدل TCP/IP است استفاده نمود.

مثالی از نحوه Encapsulation
مثالی از نحوه Encapsulation

اگر از لایه کاربرد شروع کنیم، مرورگر یک درخواست HTTP طبق فرمان­هایی که توسط نوع کاربرد مشخص می­شود صادر می­کند. این درخواست به لایه TCP منتقل می شود و یک بسته از نوع پروتکل TCP شامل یک بخش سرآیند (Header ) و یک بخش داده (payload) تشکیل می­شود. سرآیند شامل اطلاعات مربوط به پروتکل TCP مانند

اطلاعات ترتیب بسته­ها (packet sequencing information) اطلاعات بررسی بیت­ها (checksum) و آدرس پورت منبع و مقصد که معمولاً برای HTTP برابر 80 است، می­شود. در لایه IP یک بسته اطلاعاتی (IP datagram) ، به­ منظور نگهداری بسته دریافت شده از لایه  TCP تشکیل می­شود. بسته اطلاعاتی IP شامل سرآیند IP و داده IP می­شود. سرآیند IP شامل مواردی مانند نوع سرویس، اطلاعات بررسی بیت­ها، نوع پروتکل و آدرس IP منبع و مقصد می­باشد. در بخش داده IP بسته دریافتی از  TCPکه باید ارسال شود قرار می­گیرد. در لایه پیوند داده و لایه فیزیکی، بسته اطلاعاتی IP برای شبکه طبق پروتکل IEEE 802.3 ارسال می­شود. یک فریم از نوع MAC از بخش سرآیند و داده تشکیل شده است. سرآیند MAC شامل اطلاعاتی در مورد فریمMAC  مانند آدرس MAC  مقصد و طول فریم می­باشد. در بخش داده، بسته اطلاعاتی IP که باید فرستاده شود قرار می­گیرد. باید به این نکته دقت شود که آدرسی که هر پروتکل در فرایند بسته بندی استفاده می­کند با آدرس لایه­های دیگر متفاوت است، به عبارت دیگر هر لایه آدرس مخصوص به خود را استفاده می­کند. مثلاً در این مثال لایه  TCPاز شماره پورت استفاده می­کند که بستگی به نوع پروتکل لایه کاربردی (در این مثال HTTP) دارد. بسته­های IPاز آدرس IP استفاده می­کنند که به صورت استاتیک یا دینامیک به آدرس­های اینترنتی تخصیص پیدا می­کند و فریم­های MAC از آدرس سخت افزاری MAC استفاده می­کنند.

در ادامه در مورد پروتکل­های رایج مورد استفاده در هریک از لایه­های مدل TCP/IP توضیح داده شده است.

پروتکل¬های لایه کاربرد

  • لایه کاربرد فراهم کننده وا سط کاربری است. معمولاً زمانی که لایه کاربرد در بالای لایه­های سطح پایین (مانند TCP و UDP) استفاده می­شود، به آن یک شماره پورت اختصاص می­دهند. به عنوان مثال همانطور که گفته شد معمولاً به پروتکل HTTP شماره پورت 80 تخصیص داده می شود. در شکل 8 پروتکل­های رایج لایه کاربرد که در اینترنت استفاده می­شود نشان داده شده است.

    • HTTP (Hyper Text Transfer Protocol)
    • SMTP (Simple Mail Transfer Protocol)
    • FTP (File Transfer Protocol)
    • DNS (Domain Name System)
    • DHCP (Dynamic Host Configuration Protocol)
    • Telnet
    • SNTP (Simple Network Time Protocol)
    • SNMP (Simple Network Management Protocol)

پروتکل های لایه انتقال

  • لیست زیر شامل پروتکل­های رایج لایه انتقال که در اینترنت استفاده می­شود می­باشد.

    • TCP (Transmission control protocol)
    • UDP (User data gram protocol)
    • ICMP (Internet Control Message Protocol)

پروتکل های لایه شبکه

  • لایه شبکه مشخص کننده چگونگی هدایت بسته­ها در طول شبکه است که شامل کیفیت سرویس (Quality Of Service)، سرویس­ها، قوانین آدرس شبکه برای لایه انتقال و … می­باشد.

    لیست زیر شامل پروتکل­های رایج لایه شبکه که در اینترنت استفاده می­شود می­باشد.

    • IP (Internet Protocol)
    • ARP (Address Resolution Protocol )
    • RARP (Reverse Address Resolution Protocol)

پروتکل های لایه پیوند داده و فیزیکی

  • لایه فیزیکی فراهم کنندها انتقال جریان بیت­ها از طریق اتصالات فیزیکی است و دارای وظایفی مانند کد کردن، مالتی پلکس کردن، همزمان­سازی، بازیابی کلاک، تقسیم بندی و … می­باشد. وظیفه لایه پیوند داده اطمینان از انتقال مطمئن فریم­ها بدون وجود خطا است و وظایفی مانند ترتیب بندی فریم­ها، کنترل جریان فریم­ها و… می­باشد.  Ethernetیکی از رایج­ترین پروتکل­های لایه­های فیزیکی و پیوند داده است.

Choose your Reaction!
دیدگاه خود را بنویسید

آدرس ایمیل شما منتشر نخواهد شد.

redronic.com