دهکده آی تی » پروتکل TCP/IP



در چند مدت اخیر، عده ی زیادی از دوستان خواستار تخصصی تر شدن مطالب وبلاگ بودند. از این پست به بعد، این وبلاگ شاهد مطالب کاملن تخصصی هم خواهد بود تا دوستانی که در زمینه ی شبکه، اطلاعات دارند را هم راضی نگه دارد. به دلیل تخصصی شدن مطلب، ممکن است به یک موضوع بشود از زاویه های مختلفی نگاه کرد و نتایج مختلفی هم گرفت. بسیار بسیار خوشحال خواهم شد که دوستان متخصص، نظراتشونو از این وبلاگ دریغ نکنند. ضمن اینکه همان طور که بار ها گفته ام، ممکن است بنده هم در ارائه مطلب دچار اشتباه شوم. خواهشمندم اشتباهاتم را بیان کنید. در ضمن دوستانی که حاصل تلاش ما وبلاگ نویسان را کپی می کنند، لااقل یک لینک خشک و خالی را فراموش نکنند.

TCP/IP:
پروتکل های TCP/IP در سال 1970 برای استفاده در شبکه ی های Packet Switching وزارت دفاع امریکا توسعه پیدا کردند. این شبکه ها در آن زمان ARPANET نامیده می شدند که البته امروزه دیگر تبدیل به Internet شده است. این پروتکل ها از همان ابتدا با سیستم عامل های UNIX سازگار بودند. بر خلاف بسیاری از پروتکل ها، مانند (Novell’s Internetwork Packet Exchange(IPXکه وظایف مشابه ای دارند، پروتکل های TCP/IP توسط شرکت خاصی به وجود نیامده است و حاصل تلاش افراد و شرکت های زیادی است.

علاوه بر موضوعاتی که ذکر شد، هیچ گونه محدودیتی از جمله کپی رایت و یا Publishing restrictions از توسعه ی این پروتکل ها جلوگیری نمی کند. این ذات غیر مالکانه در استانداردTCP/IP،  به این معنیست که که این مجموعه پروتکل ها محدود به هیچ پلت فرم، سیستم عامل و یا سخت افزاری نیستند. در واقع توسعه ی بخش های محتلف این پروتکل با این هدف صورت گرفته است که به کامپیوتر ها قابلیت ارتباط با هر شبکه ای را بدهد.

استاندارد TCP/IP  توسط (Internet Engineering Task Force (IETF  در اسناد (Request For Comments (RFCs منتشر شده است. لیست RFCs شامل اسنادی است که مراحل مختلف توسعه ی استاندار های پروتکل را توصیف می کند. البته علاوه بر این اطلاعات، این اسناد شامل تاریخچه و تجارب مراحل توسعه پروتکل هم هستند! این نکته را هم فراموش نکنید که هر سندی در این لیست، دارای یک شماره است. بنابراین برای پیدا کردن سند مورد نظرتان، باید شماره ی آن را داشته باشید.

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

  1. Platform independence: پروتکل های جدا گانه، پشتیبانی از پلت فرم های مختلف را ساده تر می کند. ضمن اینکه برای توسعه و یا ویرایش استاندارد ها و یا API ها نیاز به ویرایش کل پروتکل نخواهد بود.
  2. Quality of service: داشتن چندین پروتکل جداگانه که در یک لایه کار می کنند، به برنامه های کاربردی این اجازه را می دهد که تنها پروتکل هایی که سرویس مورد نیاز را فراهم می کنند، انتخاب کنند.
  3. Simultaneous development: به این دلیل که پشته ی پروتکل های TCP/IP  به لایه ها و پروتکل های مختلفی تقسیم شده است، افرادی که بر عملکرد قسمت خاصی از لایه ها تخصص دارند، می توانند به صورت همزمان نسبت به توسعه پروتکل های TCP/IP  اقدام کنند.

TCP/IP Layers:

TCP/IP دارای 4 لایه است که در RFC 1122 تعریف شده اند. این لایه ها تقریبن با لایه های مدل OSI قابل قیاس هستند. در شکل زیر این موضوع کاملن مفهوم است.

OSI versus TCP/IP

      * لایه Link: مجموعه TCP/IP شامل لایه ی Physical مشخص و یا پروتکل LAN های پیچیده مانند اترنت نمی باشد. همچنین درست است از جهتی این لایه در راستای لایه ی Data-Link عمل می کند، اما با این حال، لایه ی Data-Link جزیی از مجموعه TCP/IP نمی باشد. پروتکل هایی مانند  Serial Line Internet Protocol - SLIP ، Point-to-Point Protocol  - PPP و یا Address Resolution Protocol - ARP در این لایه کار می کنند. فراموش نکنید که هر کدام از این پروتکل ها برای خودشان داستان بسیار مفصلی دارند!

      * لایه Internet: ابتدا باید این نکته را ذکر کنم که اسم این لایه را با اینترنت معمول اشتباه نگیرید. این Internet به Internetwrok اشاره می کند. این لایه دقیقن عملکردی مشابه عملکرد لایه یNetwrok در مدل OSI دارد. پروتکل معروف IP در این لایه کار می کند. Data encapsulation ( به فرایند اضافه کردن Header و Footer به بسته های ارسالی encapsulation گفته می شود که مثل بیشتر کلمات بهتر است ترجمه نشود) ، آدرس دهی، مسیر یابی و یکپارچه سازی پروتکل ها برای لایه ی بالایی Transport، از جمله کار های این لایه است! پروتکل های Internet Control Message Protocol - ICMP و Internet Group Message Protocol - IGMP دو پروتکل دیگر هستند که در این لایه کار می کنند. خیلی دوست دارم در آینده دو پست جدا و مفصل در مورد ICMP و ARP بنویسم.

      * لایه Transport: این لایه هم دقیقن عملکردی مشابه لایه ی همنام خودش در مدل OSI دارد. پروتکل های Transmission Control Protocol - TCP و User Datagram Protocol - UDP در این لایه کار می کنند.

      * لایه Application: این لایه به واقع می تواند شکل های مختلفی به خود بگیرد. بعضی از پروتکل های این لایه، مانند File Transfer Protocol - FTP می توانند خودشان به صورت مستقل عمل کنند و بعضی از پروتکل های دیگر، مانند HyperText Transfer Protocol - HTTP می توانند سرویسی را برای سایر برنامه ها فراهم آورند.

مبحث TCP/IP  بسیار بسیار وسیع است و امکان اینکه باز هم در این مورد مطلب تخصصی بنویسم، کم نیست. امیدوارم دوستان نهایت استفاده را از این پست ببرند.


از این مطلب پرینت بگیرید | لینک بازتاب | نظرات این مطلب را از طریق فید دنبال کنید.

مطالب مرتبط:

۱۲ نظر

  1. عرفان گفته:

    وب پر محتوایی داری …

    بهت تبریک میگم :)

  2. بریر حسینی سعادت گفته:

    سلام. من حقیقتش از این پست فنی شما چیزی نفهمیدم و دست گیرم نشد!!!

    ولی مسئله هک شدن شما باید جالب باشه و تجربه تون… (پس میرم اونو بخونمش!)

  3. MZ گفته:

    سلام جالب بود.
    لطفا درباره active directory هم مطالب اموزنده بنویسید.

  4. HK007 گفته:

    عــــرفان خیــلــــی جالب بود , منم بهت تبریگ میگـــم.

  5. محمد علی باقرزاده گفته:

    وبلاگ بسیار مفیدی دارید.

  6. شهاب گفته:

    سلام قربان
    آقا مرسی از این مطالب جامع من در کنفرانسم از مطالب جمع
    آوری شده شما استفاده کردم.

  7. سحر گفته:

    salam kasi midoneh maayebeh layeh bandiyeh protocolha chiyeh?

  8. مسعود گفته:

    من واقعا از مطالبی که قرار دادین استفاده میکنم و انرا در ارائه فردا کنفرانس خواهم داد

  9. سعید گفته:

    دمت گرم
    خیلی استفاده کردم

  10. مهدی عرفانیان گفته:

    دمت گرم رفیق
    اگه میتونی در مورد نرم افزارهای امنیتی و راه های نفوذ به شبکه اطلاعاتی در سایتت قرار بده ، طالبش زیاده…
    چاکرخاتیم…

  11. عسل میلان گفته:

    سلام دوست عزیز
    مطلبت برام جالب بود
    از این مطالبت برای پروژه ام استفاده کردم.

  12. زهرا گفته:

    واقعا عالی بود. مرسی

نظر شما