• پروتکل انتقال داده tcp ip. پروتکل TCP-IP چیست؟

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

    می بینید که TCP/IP در لایه های سوم و چهارم مدل OSI قرار دارد. هدف از این کار واگذاری فناوری LAN به توسعه دهندگان است. هدف TCP/IP این است پیام رسانی V شبکه های محلیهر نوع و برقراری ارتباط با استفاده از هر برنامه شبکه.

    پروتکل TCP/IP با مرتبط شدن با مدل OSIدر دو پایین ترین لایه - لایه داده و لایه فیزیکی. این به TCP/IP اجازه می‌دهد تا زمینه مشترک تقریباً با هر فناوری شبکه و در نتیجه با هر پلتفرم رایانه‌ای را پیدا کند. TCP/IP شامل چهار لایه انتزاعی است که در زیر فهرست شده است.


    برنج. 3.1.

    • رابط شبکه. به TCP/IP اجازه می دهد تا به طور فعال با تمام مدرن ها تعامل داشته باشد فناوری های شبکهبر اساس مدل OSI
    • اینترنت. نحوه مدیریت IP را مشخص می کند ارسال پیام هااز طریق روترها در فضای شبکه مانند اینترنت.
    • حمل و نقل. مکانیسم تبادل اطلاعات بین رایانه ها را تعریف می کند.
    • کاربردی. برنامه های کاربردی شبکه را برای انجام وظایفی مانند حمل و نقل، ایمیل و غیره مشخص می کند.

    به دلیل پذیرش گسترده آن، TCP/IP به استاندارد اینترنت واقعی تبدیل شده است. کامپیوتری که روی آن پیاده سازی شده است فناوری شبکه، بر اساس مدل OSI (Ethernet یا Token Ring) قابلیت ارتباط با سایر دستگاه ها را دارد. در مبانی شبکه، ما به لایه های 1 و 2 هنگام بحث در مورد فناوری های LAN نگاه کردیم. اکنون به پشته OSI می رویم و می بینیم که چگونه یک کامپیوتر در اینترنت یا داخل ارتباط برقرار می کند شبکه خصوصی. این بخش پروتکل TCP/IP و تنظیمات آن را مورد بحث قرار می دهد.

    TCP/IP چیست؟

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

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

    به راحتی می توان دیتاگرام ها را با بسته ها اشتباه گرفت. دیتاگرام است واحد اطلاعات، در حالی که یک بسته یک شیء پیام فیزیکی است (ایجاد شده در لایه های سوم و بالاتر) که در واقع در سراسر شبکه ارسال می شود. اگرچه برخی این اصطلاحات را قابل تعویض می دانند، اما تمایز آنها در واقع در زمینه خاصی مهم است - البته نه در اینجا. درک این نکته مهم است که پیام به قطعات تقسیم می شود، از طریق شبکه منتقل می شود و دوباره در دستگاه گیرنده مونتاژ می شود.


    جنبه مثبت این رویکرد این است که اگر یک بسته در حین انتقال خراب شود، تنها آن بسته نیاز به ارسال مجدد دارد، نه کل پیام. نکته مثبت دیگر این است که هیچ میزبانی مجبور نیست به طور نامحدود منتظر بماند برای مدت طولانیتا زمانی که انتقال روی میزبان دیگر به پایان برسد، پیام خود را ارسال کند.

    TCP و UDP

    هنگام ارسال یک پیام IP از طریق شبکه، یکی از پروتکل های انتقال استفاده می شود: TCP یا UDP. TCP (پروتکل کنترل انتقال) نیمه اول مخفف TCP/IP است. پروتکل User Datagram Protocol (UDP) به جای TCP برای انتقال کمتر استفاده می شود پیام های مهم. هر دو پروتکل برای پیام رسانی صحیح در شبکه های TCP/IP استفاده می شوند. یک تفاوت قابل توجه بین این پروتکل ها وجود دارد.

    TCP یک پروتکل قابل اعتماد نامیده می شود زیرا با گیرنده ارتباط برقرار می کند تا تأیید کند که پیام دریافت شده است.

    UDP یک پروتکل غیرقابل اعتماد نامیده می شود زیرا حتی سعی نمی کند با گیرنده برای اطمینان از تحویل ارتباط برقرار کند.


    مهم است که به یاد داشته باشید که فقط از یک پروتکل می توان برای ارسال پیام استفاده کرد. به عنوان مثال، هنگام بارگذاری یک صفحه وب، TCP تحویل بسته ها را بدون دخالت UDP کنترل می کند. از سوی دیگر، پروتکل انتقال فایل بی اهمیت (TFTP) تحت کنترل پروتکل UDP پیام ها را دانلود یا ارسال می کند.

    روش حمل و نقل مورد استفاده بستگی به برنامه دارد - می تواند ایمیل، HTTP، برنامه مسئول باشد کار شبکه، و غیره. توسعه دهندگان برنامه های شبکهتا جایی که ممکن است از UDP استفاده کنید، زیرا این پروتکل ترافیک اضافی را کاهش می دهد. پروتکل TCP تلاش بیشتری را برای تحویل تضمین شده انجام می دهد و بسته های بسیار بیشتری را نسبت به UDP ارسال می کند. شکل 3.2 برنامه های شبکه را فهرست کرده و نشان می دهد که کدام برنامه ها از TCP و کدام از UDP استفاده می کنند. به عنوان مثال، FTP و TFTP تقریباً همین کار را انجام می دهند. با این حال، TFTP عمدتا برای دانلود و کپی برنامه های دستگاه شبکه استفاده می شود. TFTP می تواند از UDP استفاده کند زیرا اگر پیامی خراب شود، اتفاق بدی نمی افتد، زیرا پیام برای کاربر نهایی در نظر گرفته نشده است، بلکه برای مدیر شبکه است که سطح اولویت آن بسیار پایین تر است. مثال دیگر جلسه صوتی ویدیویی است که می تواند از پورت ها برای جلسات TCP و UDP استفاده کند. بنابراین، یک جلسه TCP برای تبادل داده ها هنگامی که یک اتصال تلفنی برقرار می شود، آغاز می شود مکالمه تلفنیاز طریق UDP منتقل می شود. این به سرعت پخش صدا و ویدئو مربوط می شود. اگر بسته ای گم شود، ارسال مجدد آن منطقی نیست، زیرا دیگر با جریان داده مطابقت نخواهد داشت.


    برنج. 3.2.
    فرمت دیتاگرام IP

    بسته های IP را می توان به دیتاگرام تقسیم کرد. قالب دیتاگرام فیلدهایی را برای محموله و داده های کنترل انتقال پیام ایجاد می کند. شکل 3.3 نمودار یک دیتاگرام را نشان می دهد.

    توجه داشته باشید. فریب اندازه فیلد داده در دیتاگرام را نخورید. دیتاگرام با داده های اضافی بارگذاری نمی شود. فیلد داده در واقع بزرگترین فیلد در دیتاگرام است.


    برنج. 3.3.

    مهم است که به یاد داشته باشید که بسته های IP می توانند طول های متفاوتی داشته باشند. در Networking Fundamentals گفته شد که بسته های اطلاعاتی در شبکه اترنت دارای حجم 64 تا 1400 بایت هستند. در شبکه Token Ring، طول آنها 4000 بایت است، در شبکه ATM - 53 بایت.

    توجه داشته باشید. استفاده از بایت ها در دیتاگرام می تواند شما را گیج کند، زیرا انتقال داده اغلب با مفاهیمی مانند مگابیت و گیگابیت در ثانیه همراه است. با این حال، از آنجایی که رایانه ها ترجیح می دهند با بایت های داده کار کنند، دیتاگرام ها نیز از بایت ها استفاده می کنند.

    اگر دوباره به فرمت دیتاگرام در شکل 3.3 نگاه کنید، متوجه خواهید شد که حاشیه های سمت چپ ثابت هستند. این اتفاق می افتد زیرا CPUاپراتور بسته باید بداند که هر فیلد از کجا شروع می شود. بدون استانداردسازی این فیلدها، بیت‌های نهایی یک هج‌پنج از 0s و 1s خواهند بود. در سمت راست دیتاگرام بسته هایی با طول متغیر قرار دارند. هدف از فیلدهای مختلف دیتاگرام به شرح زیر است.

    • VER. نسخه پروتکل IP مورد استفاده توسط ایستگاهی که پیام اصلی از آنجا منشا گرفته است. نسخه فعلی IP نسخه 4 است. این فیلد تضمین می کند که نسخه های مختلفدر بین فضا
    • HLEN. این فیلد طول هدر را به دستگاه دریافت کننده اطلاع می دهد تا CPU بداند که فیلد داده از کجا شروع می شود.
    • نوع خدمات کدی که نوع کنترل بسته را از نظر سطح سرویس (قابلیت اطمینان، تقدم، عقب‌نشینی و غیره) به روتر می‌گوید.
    • طول (طول). تعداد کل بایت های بسته، از جمله فیلدهای هدر و فیلد داده.
    • شناسه، frags و frags افست. این فیلدها به روتر می گویند که چگونه بسته را قطعه قطعه کند و مجدداً جمع کند و چگونه تفاوت در اندازه فریم را جبران کند که ممکن است هنگام عبور یک بسته از بخش های LAN با فناوری های مختلف شبکه (اترنت، FDDI و غیره) رخ دهد.
    • TTL. مخفف Time to Live عددی است که هر بار که یک بسته ارسال می شود یک عدد کاهش می یابد. اگر طول عمر صفر شود، بسته وجود ندارد. TTL از حلقه ها و سرگردانی بی پایان بسته های گم شده در اینترنت جلوگیری می کند.
    • پروتکل پروتکل انتقال مورد استفاده برای انتقال بسته. اغلب، این فیلد پروتکل TCP را مشخص می کند، اما می توان از پروتکل های دیگری نیز استفاده کرد.
    • جمع چک سرصفحه چک جمع عددی است که برای بررسی صحت پیام استفاده می شود. اگر چک جمع هاتمام بسته های پیام با مقدار صحیح مطابقت ندارند، این بدان معنی است که پیام مخدوش شده است.
    • آدرس IP منبع آدرس 32 بیتی میزبانی که پیام را ارسال کرده است (معمولاً یک رایانه شخصی یا سرور).
    • نشانی آی پی مقصد. آدرس 32 بیتی میزبانی که پیام به آن ارسال شده است (معمولاً یک رایانه شخصی یا سرور).
    • گزینه های IP برای آزمایش شبکه یا سایر اهداف خاص استفاده می شود.
    • لایه گذاری. تمام موقعیت های بیت استفاده نشده (خالی) را پر می کند تا پردازنده بتواند موقعیت بیت اول را به درستی در قسمت داده تعیین کند.
    • داده ها. محموله پیام ارسال شده به عنوان مثال، قسمت داده بسته ممکن است حاوی متن یک ایمیل باشد.

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

    به طور خلاصه، این مجموعه ای از قوانین است که بر "ارتباطات" رایانه ها بین خود از طریق یک شبکه حاکم است. حدود دوازده مورد از آنها وجود دارد و هر کدام از آنها قوانینی را برای انتقال یک نوع داده خاص تعریف می کنند. اما برای سهولت کار، همه آنها در به اصطلاح "پشته" ترکیب می شوند و آن را به نام مهمترین پروتکل می نامند - پروتکل TCP/IP (پروتکل کنترل انتقال و پروتکل اینترنت). کلمه "پشته" به این معنی است که همه این پروتکل ها مانند "پشته ای از پروتکل ها" هستند که در آن پروتکل لایه بالایی بدون پروتکل لایه پایین نمی تواند کار کند.

    پشته TCP/IP شامل 4 لایه است:

    1. کاربردی - پروتکل های HTTP، RTP، FTP، DNS. سطح بالا؛ مسئول کار برنامه های کاربردی، مثلا خدمات پستی، نمایش داده ها در مرورگر و موارد دیگر.

    2. حمل و نقل - پروتکل های TCP، UDP، SCTP، DCCP، RIP. این سطح از پروتکل ها تعامل صحیح رایانه ها با یکدیگر را تضمین می کند و یک هادی داده بین شرکت کنندگان مختلف شبکه است.

    3. شبکه - پروتکل IP. این لایه با دادن یک آدرس دیجیتالی منحصربفرد به رایانه های موجود در شبکه، شناسایی را فراهم می کند.

    4. کانال - پروتکل های اترنت، IEEE 802.11، اترنت بی سیم. پایین ترین سطح؛ با تجهیزات فیزیکی تعامل دارد، رسانه انتقال داده و ویژگی های آن را توصیف می کند.

    بنابراین، رایانه شما از پشته پروتکل "HTTP - TCP - IP - Ethernet" برای نمایش این مقاله استفاده می کند.

    نحوه انتقال اطلاعات از طریق اینترنت

    هر کامپیوتر در شبکه یک میزبان نامیده می شود و با استفاده از پروتکلی به همین نام، یک آدرس IP منحصر به فرد دریافت می کند. این آدرس به شکل زیر نوشته شده است: چهار عدد از 0 تا 255 که با نقطه از هم جدا شده اند، به عنوان مثال 195.19.20.203. برای ارتباط موفق شبکه، آدرس IP باید شامل شماره پورت نیز باشد. از آنجایی که اطلاعات نه توسط خود کامپیوترها، بلکه توسط برنامه ها رد و بدل می شود، هر نوع برنامه نیز باید آدرس مخصوص به خود را داشته باشد که در شماره پورت نمایش داده می شود. به عنوان مثال، پورت 21 برای FTP، پورت 80 برای HTTP است. تعداد کل پورت‌های کامپیوتر محدود و برابر با 65536 است که از 0 تا 65535 شماره‌گذاری شده‌اند. شماره پورت‌های 0 تا 1023 توسط برنامه‌های کاربردی سرور رزرو شده است، و جایگاه پورت‌ها از 1024 تا 65535 توسط پورت‌های سرویس گیرنده اشغال می‌شود، که برنامه‌ها می‌توانند به‌صورت دلخواه از آن‌ها استفاده کنند. "پورت های مشتری" به صورت پویا اختصاص داده می شوند.

    ترکیبی آدرس های IP و شماره پورتبه نام " سوکت". در آن، مقادیر آدرس و پورت با یک دو نقطه از هم جدا می شوند، به عنوان مثال، 195.19.20.203:110

    بنابراین، برای اینکه یک کامپیوتر راه دور با IP 195.19.20.203 ایمیل دریافت کند، فقط باید داده ها را به پورت 110 آن تحویل دهید. و از آنجایی که این پورت شبانه روز به پروتکل POP3 که مسئول دریافت ایمیل است گوش می دهد، پس بقیه موارد مربوط به فناوری است.

    تمام داده ها در شبکه برای راحتی به بسته ها تقسیم می شوند. یک بسته یک فایل 1-1.5 مگابایتی است که شامل داده های آدرس فرستنده و گیرنده، اطلاعات ارسال شده، به علاوه داده های سرویس است. تقسیم فایل ها به بسته ها می تواند تا حد زیادی بار روی شبکه را کاهش دهد، زیرا. مسیر هر یک از آنها از فرستنده تا گیرنده لزوماً یکسان نخواهد بود. اگر ترافیک در یک نقطه از شبکه رخ دهد، بسته ها قادر خواهند بود با استفاده از مسیرهای ارتباطی دیگر، آن را دور بزنند. این فناوری استفاده از اینترنت را به بهترین نحو ممکن ممکن می سازد: اگر بخشی از بخش حمل و نقل آن از بین برود، اطلاعات می تواند همچنان منتقل شود، اما به روش های دیگر. هنگامی که بسته ها به رایانه هدف می رسند، شروع به کامپایل کردن آنها در یک فایل واحد با استفاده از سربار آنها می کند. کل فرآیند را می توان با نوعی پازل بزرگ مقایسه کرد که بسته به اندازه فایل منتقل شده، می تواند به اندازه های واقعاً عظیمی برسد.

    همانطور که قبلا ذکر شد، پروتکل IP به هر یک از اعضای شبکه، از جمله سایت ها، یک آدرس عددی منحصر به فرد می دهد. با این حال، به خاطر سپردن میلیون ها آدرس IP از توان هر شخصی خارج است! بنابراین، سرویس نام دامنه DNS (سیستم نام دامنه) ایجاد شد که آدرس‌های IP عددی را به نام‌های الفبایی تبدیل می‌کند که به خاطر سپردن آسان‌تر است. به عنوان مثال، به جای اینکه هر بار عدد افتضاح 5.9.205.233 را تایپ کنید، می توانید تایپ کنید. نوار آدرسمرورگر www.site.

    وقتی آدرس سایت مورد نظر را در مرورگر تایپ می کنیم چه اتفاقی می افتد؟ بسته ای از رایانه ما با درخواست به سرور DNS در پورت 53 ارسال می شود. این پورت توسط سرویس DNS رزرو شده است که پس از پردازش درخواست ما، یک آدرس IP مربوط به نام سایت الفبایی عددی را برمی گرداند. پس از آن، کامپیوتر ما به سوکت 5.9.205.233:80 کامپیوتر 5.9.205.233 که میزبان پروتکل HTTP مسئول نمایش سایت ها در مرورگر است، متصل می شود و بسته ای را با درخواست دریافت صفحه www.site ارسال می کند. ما باید یک اتصال در پورت 80 برقرار کنیم، زیرا این پورت مربوط به وب سرور است. شما می توانید با میل شدید، پورت 80 را مستقیماً در نوار آدرس مرورگر - http://www.site:80 مشخص کنید. وب سرور درخواست دریافت شده از ما را پردازش می کند و چندین بسته حاوی آن را صادر می کند متن HTML، که توسط مرورگر ما نمایش داده می شود. در نتیجه صفحه اصلی را روی صفحه می بینیم

    پشتهTCP/ IP.

    پشته TCP/IP مجموعه ای از پروتکل های شبکه مرتب شده به صورت سلسله مراتبی است. این پشته از دو پروتکل اصلی - TCP (پروتکل کنترل انتقال) و IP (پروتکل اینترنت) نامگذاری شد. علاوه بر آنها، پشته شامل چندین ده پروتکل مختلف است. در حال حاضر، پروتکل های TCP/IP اصلی ترین پروتکل ها برای اینترنت و همچنین برای اکثر شبکه های شرکتی و محلی هستند.

    در سیستم عامل Microsoft Windows Server 2003، پشته TCP/IP به عنوان پشته اصلی انتخاب می شود، اگرچه پروتکل های دیگر پشتیبانی می شوند (به عنوان مثال، پشته IPX/SPX، پروتکل NetBIOS).

    پشته پروتکل TCP/IP دو ویژگی مهم دارد:

      استقلال پلت فرم، یعنی می توان آن را بر روی انواع مختلف پیاده سازی کرد سیستم های عاملو پردازنده ها؛

      باز بودن، یعنی استانداردهایی که پشته TCP / IP ساخته می شود، برای هر کسی در دسترس است.

    تاریخچه خلقتTCP/ IP.

    در سال 1967، آژانس پروژه های تحقیقاتی پیشرفته وزارت دفاع ایالات متحده (ARPA) توسعه یک شبکه کامپیوتری را آغاز کرد که قرار بود تعدادی از دانشگاه ها و مراکز تحقیقاتی را که دستورات آژانس را انجام می دادند، به هم مرتبط کند. این پروژه ARPANET نام داشت. تا سال 1972، شبکه 30 گره را به هم متصل کرد.

    در چارچوب پروژه ARPANET، پروتکل های اصلی پشته TCP / IP - IP، TCP و UDP - در سال های 1980-1981 توسعه و منتشر شد. یک عامل مهم در گسترش TCP / IP، پیاده سازی این پشته در سیستم عامل UNIX 4.2 BSD (1983) بود.

    در پایان دهه 1980، ARPANET بسیار توسعه یافته به عنوان اینترنت (شبکه های متصل به هم) شناخته شد و دانشگاه ها و مراکز تحقیقاتی را در ایالات متحده، کانادا و اروپا متحد کرد.

    در سال 1992 ظاهر شد سرویس جدیداینترنت - WWW (World Wide Web - World Wide Web)، بر اساس پروتکل HTTP. تا حد زیادی به دلیل WWW، اینترنت و به همراه آن پروتکل های TCP / IP در دهه 90 توسعه سریعی دریافت کردند.

    در آغاز قرن بیست و یکم، پشته TCP / IP نقش اصلی را در وسایل ارتباطی نه تنها برای شبکه های جهانی، بلکه برای شبکه های محلی به دست می آورد.

    مدلOSI.

    مدل تعامل سیستم های باز(OSI - Open Systems Interconnection) توسط سازمان بین المللی استاندارد (ISO - International Organization for Standardization) برای یک رویکرد یکسان در ساخت و اتصال شبکه ها ایجاد شد. توسعه مدل OSI در سال 1977 آغاز شد و در سال 1984 با تصویب استاندارد به پایان رسید. از آن زمان، این مدل مرجعی برای توسعه، توصیف و مقایسه پشته های پروتکل های مختلف بوده است.

    بیایید به طور خلاصه عملکردهای هر سطح را در نظر بگیریم.


    مدل OSI شامل هفت لایه است: فیزیکی، پیوند داده، شبکه، انتقال، جلسه، ارائه و برنامه.

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

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

      لایه شبکه (لایه شبکه) ترکیبی از شبکه های فعال در پروتکل های کانال و کانال های مختلف را ارائه می دهد. لایه های فیزیکی، به یک شبکه ترکیبی. در این حالت هر یک از شبکه های موجود در یک شبکه واحد فراخوانی می شود زیر شبکه(زیر شبکه). در سطح شبکه، دو وظیفه اصلی برای حل وجود دارد - مسیریابی(مسیریابی، انتخاب روش بهینه برای ارسال پیام) و خطاب به(در آدرس دهی، هر گره در شبکه ترکیبی باید یک نام منحصر به فرد داشته باشد). معمولاً عملکردهای لایه شبکه توسط یک دستگاه خاص اجرا می شود - روتر(روتر) و نرم افزار آن.

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

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

      لایه ارائه، تبدیل اطلاعات ارسال شده از یک رمزگذاری به رمزگذاری دیگر (به عنوان مثال، از ASCII به EBCDIC) را فراهم می کند.

      لایه برنامه رابط بین بقیه لایه های مدل و برنامه های کاربردی کاربر را پیاده سازی می کند.

    ساختارTCP/ IP. ساختار TCP/IP بر اساس مدل OSI نیست، بلکه بر اساس مدل خودش است که DARPA (دفاع ARPA - نام جدید آژانس پروژه های تحقیقاتی پیشرفته) یا DoD (وزارت دفاع - وزارت دفاع ایالات متحده) نامیده می شود. این مدل دارای چهار سطح می باشد. مطابقت مدل OSI با مدل DARPA و همچنین پروتکل های اصلی پشته TCP / IP در شکل نشان داده شده است. 2.2.

    لازم به ذکر است که سطح پایین مدل DARPA - سطح رابط های شبکه - به طور دقیق، عملکردهای کانال و سطوح فیزیکی را انجام نمی دهد، بلکه فقط اتصال (رابط) سطوح بالای دارپا را با فناوری های شبکه های موجود در شبکه ترکیبی (به عنوان مثال اترنت، FDDI، ATM) فراهم می کند.

    تمام پروتکل های موجود در پشته TCP/IP در اسناد RFC استاندارد شده اند.

    مستنداتRFC.

    استانداردهای رسمی تایید شده برای اینترنت و TCP/IP به عنوان اسناد RFC (درخواست نظرات - پیشنهاد کاری) منتشر می شوند. استانداردها توسط کل جامعه ISOC (انجمن اینترنت - جامعه اینترنتی، یک سازمان عمومی بین المللی) توسعه یافته است. هر عضو ISOC می تواند سندی را برای انتشار در RFC ارسال کند. علاوه بر این، این سند توسط کارشناسان فنی، تیم های توسعه و ویرایشگر RFC بررسی می شود و مطابق با RFC 2026 تصویب می شود. مراحل بعدیسطوح بلوغ نامیده می شود:

      پیش نویس(اینترنت پیش نویس) - در این مرحله کارشناسان با سند آشنا می شوند، اضافات و تغییرات ایجاد می شود.

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

      پیش نویس استاندارد(استاندارد پیش نویس) - یک سند در صورتی به پیش نویس استاندارد تبدیل می شود که حداقل دو توسعه دهنده مستقل مشخصات پیشنهادی را اجرا و با موفقیت به کار برده باشند. اصلاحات و بهبودهای جزئی همچنان در این مرحله مجاز هستند.

      استاندارد اینترنت(استاندارد اینترنت) - بالاترین مرحله تایید استاندارد، مشخصات سند به طور گسترده مورد استفاده قرار می گیرد و خود را در عمل ثابت کرده است. فهرستی از استانداردهای اینترنت در RFC 3700 آورده شده است. از هزاران RFC، تنها چند ده سند دارای وضعیت "استاندارد اینترنت" هستند.

    علاوه بر استانداردها، RFC ها می توانند توصیف مفاهیم و ایده های جدید شبکه، دستورالعمل ها، نتایج مطالعات تجربی ارائه شده برای اطلاعات و غیره باشند.

      تجربی(تجربی) - سندی حاوی اطلاعات در مورد تحقیق علمیو تحولاتی که ممکن است مورد علاقه اعضای ISOC باشد.

      اطلاعاتی(اطلاعاتی) - سندی که برای ارائه اطلاعات منتشر می شود و نیازی به تایید جامعه ISOC ندارد.

      بهترین تجربه مدرن(Best Current Practice) - سندی که برای انتقال تجربه پیشرفت‌های خاص مانند اجرای پروتکل در نظر گرفته شده است.

    وضعیت در عنوان سند RFC بعد از کلمه نشان داده شده است دسته بندی (دسته بندی). برای اسناد در وضعیت استانداردها (استاندارد پیشنهادی، پیش نویس استاندارد، استاندارد اینترنت)، نام مشخص شده است استانداردها مسیر، زیرا ممکن است سطح آمادگی تغییر کند.

    شماره های RFC به صورت متوالی تخصیص داده می شوند و هرگز مجدداً صادر نمی شوند. RFC اصلی هرگز به روز نمی شود. نسخه به روز شده با شماره جدید منتشر می شود. سند RFC منسوخ و جایگزین وضعیت می شود تاریخی(تاریخی).

    تمام اسناد RFC موجود در حال حاضر را می توان به عنوان مثال در وب سایت مشاهده کرد www.rfc-editor.org . در آگوست 2007، بیش از 5000 مورد وجود داشت. RFCهای اشاره شده در این دوره در پیوست I فهرست شده اند.

    مروری بر پروتکل های اصلی

    پروتکل IP (اینترنت پروتکل) – این پروتکل اصلی لایه شبکه است که مسئول آدرس دهی در چندین شبکه و انتقال بسته بین شبکه ها است. پروتکل IP است دیتاگرامپروتکل، یعنی تحویل بسته ها به میزبان مقصد را تضمین نمی کند. پروتکل لایه انتقال TCP وظیفه ارائه تضمین ها را بر عهده دارد.

    پروتکل ها پاره كردن (مسیریابی اطلاعات پروتکلپروتکل اطلاعات مسیریابی ) وOSPF (باز کن کوتاه ترین مسیر اولین – « کوتاه ترین مسیرها ابتدا باز می شوند" ) - پروتکل های مسیریابی در شبکه های IP.

    پروتکل ICMP (اینترنت کنترل پیام پروتکلپروتکل پیام کنترل در شبکه های ترکیبی) برای تبادل اطلاعات در مورد خطاها بین روترهای شبکه و گره منبع بسته طراحی شده است. با کمک بسته های ویژه، عدم امکان تحویل بسته، مدت زمان مونتاژ بسته از قطعات، مقادیر غیرعادی پارامتر، تغییر مسیر ارسال و نوع سرویس، وضعیت سیستم و ... را گزارش می کند.

    پروتکل ARP (نشانی وضوح پروتکل - پروتکل ترجمه آدرس) آدرس های IP را به آدرس های سخت افزاری شبکه های محلی تبدیل می کند. تبدیل معکوس با استفاده از پروتکل انجام می شود RAPR (ARP معکوس).

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

    UDP (کاربر دیتاگرام پروتکل – پروتکل دیتاگرام کاربر) انتقال داده را به روش دیتاگرام فراهم می کند.

    http (فرامتن انتقال پروتکل - پروتکل انتقال ابرمتن) - پروتکل تحویل سند وب، پروتکل اصلی سرویس WWW.

    FTP (فایل انتقال پروتکل - پروتکل انتقال فایل) - پروتکلی برای انتقال اطلاعات ذخیره شده در فایل ها.

    ترکیدن 3 (پست دفتر پروتکل نسخه 3 – پروتکل اداره پست) و SMTP (ساده ایمیل انتقال پروتکل - پروتکل انتقال نامه ساده) - پروتکل هایی برای تحویل ایمیل های دریافتی (POP3) و ارسال خروجی (SMTP).

    شبکه راه دور - یک پروتکل شبیه سازی ترمینال 1 که به کاربر امکان می دهد به ایستگاه های راه دور دیگر از دستگاه خود متصل شده و با آنها کار کند، گویی ترمینال راه دور اوست.

    SNMP (ساده شبکه مدیریت پروتکل - یک پروتکل ساده مدیریت شبکه) برای تشخیص سلامت دستگاه های مختلف شبکه طراحی شده است.

    برای تبادل اطلاعات بین رایانه ها استانداردهایی برای انتقال و پردازش اطلاعات ایجاد شد که به آنها پروتکل های شبکه می گفتند. رایج ترین پروتکل ها IP، ICMP، TCP، UDP، SMTP، POP/POP3، IMAP، HTTP/HTTPS و FTP هستند، اما پروتکل های کمتر شناخته شده دیگری مانند SSH، TELNET و غیره وجود دارند.

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

    IP، ICMP، TCP و UDP

    IP (پروتکل اینترنت) و TCP (پروتکل کنترل انتقال) دو پروتکل کاملاً متفاوت هستند که معمولاً با یکدیگر مرتبط هستند. معمولاً از ترکیب چندین پروتکل به طور همزمان استفاده می شود، زیرا عملکرد پروتکل های مختلف را می توان به گونه ای ترکیب کرد که راه حلی برای مشکل به دست آورد. در ترکیب، هر پروتکل عملیات را در سطح خود انجام می دهد.

    هنگام انتقال اطلاعات از طریق اینترنت، به قطعات کوچک تقسیم می شود - بسته های اینترنتی که مستقل از یکدیگر منتقل می شوند. این امر به طور قابل توجهی سرعت انتقال اطلاعات را افزایش می دهد زیرا قسمت های مختلف می توانند در مسیرهای مختلف منتقل شوند و پس از آن در محل دریافت مجدداً در یک کل واحد جمع می شوند. همچنین اقدامی برای جلوگیری از از دست رفتن اطلاعات در حین انتقال است. پروتکل TCP وظیفه ایجاد و مونتاژ مجدد بسته های اینترنتی را به ترتیب صحیح در مقصد بر عهده دارد و همچنین صحت اطلاعات را بررسی می کند. اگر برخی از بسته ها در حین انتقال گم شوند، دوباره ارسال می شوند.

    پروتکل اینترنت (IP) برای تحویل اطلاعات استفاده می شود آدرس مورد نظر. هر رایانه ای که اتصال اینترنتی دارد آدرس منحصر به فرد خود را دارد - . هر بسته ارسالی حاوی یک آدرس تحویل است. یک بسته اینترنت می تواند قبل از رسیدن به مقصد از مسیریاب های زیادی عبور کند. پروتکل اینترنت مسئول مسیریابی بسته به کامپیوتر مشخص شده است. IP ارتباط فیزیکی بین رایانه ها ایجاد نمی کند. می توان آن را همراه با پروتکل های دیگری که اتصال ایجاد می کنند استفاده کرد.

    برای انتقال اطلاعات کوچک می توانید استفاده کنید پروتکل UDP(پروتوکل دیتاگرام کاربر). همچنین در ارتباط با پروتکل اینترنت استفاده می شود، اما بسیار ساده تر از TCP است. برخلاف TCP، UDP تحویل بسته‌ها را به ترتیب صحیح تضمین نمی‌کند و ارسال بسته‌های از دست رفته را کپی نمی‌کند، بنابراین منابع سیستم کمتری مصرف می‌کند و سرعت انتقال بسیار بالاتر است. این در برنامه های کاربردی که نیاز به بزرگ استفاده می شود توان عملیاتیخطوط ارتباطی، یا زمان تحویل داده کوتاه، به عنوان مثال، برای ارتباطات صوتی یا تصویری.

    همچنین یک پروتکل کاملا متفاوت وجود دارد. سطح پایین– ICMP (پروتکل پیام کنترل اینترنت). عمدتاً برای اهداف تشخیصی یا خدماتی مانند گزارش خطاها و سایر موارد استثنایی که در حین انتقال داده رخ می دهد، مانند سرویس درخواستی در دسترس نیست یا میزبان یا روتر پاسخ نمی دهد، استفاده می شود.

    پروتکل های ایمیل - SMTP، POP، IMAP

    ارسال و دریافت ایمیل نیازمند پروتکل های خاص خود است. نامه معمولاً با استفاده از پروتکل انتقال نامه ساده (SMTP) ارسال می شود. همچنین برای انتقال نامه بین آنها استفاده می شود سرورهای پست الکترونیکی. هنگام تنظیم کلاینت های ایمیل (مثلاً Outlook Express)، باید آدرس را مشخص کنید سرورهای SMTP. کلاینت های ایمیل معمولاً از POP (پروتکل اداره پست) برای دریافت نامه از سرور صندوق پست استفاده می کنند. اداره پست). در حال حاضر ویرایش سوم (نسخه) آن در حال اجراست که POP3 (پروتکل پست ورژن 3 - پروتکل پست اداره، نسخه 3) نام دارد. برای اینکه بتوانید هنگام تنظیم ایمیل در سرویس گیرنده ایمیل دریافت کنید، باید آدرس سرور POP3 را مشخص کنید. آدرس‌های سرورهای SMTP و POP3 ممکن است مطابقت داشته باشند یا نباشند، آنها باید با ارائه‌دهنده ایمیل شما بررسی شوند. پروتکل های SMTP و POP3 به همراه پروتکل TCP برای انتقال و تحویل نامه از طریق اینترنت کار می کنند.

    همچنین یک پروتکل کاربردی تر، اما کمتر شناخته شده برای خواندن ایمیل وجود دارد - IMAP (پروتکل دسترسی به پیام اینترنتی - پروتکل دسترسی به ایمیل اینترنتی). این پروتکلبه شما این امکان را می دهد تا به نامه های ذخیره شده در صندوق پستی سرور بدون نیاز به دانلود آن دسترسی داشته باشید کامپیوتر محلی. هنگامی که نیاز به دسترسی به پیام های صندوق پستی از چندین رایانه دارید، این بسیار راحت است. IMAP همچنین در ارتباط با پروتکل TCP کار می کند.

    پروتکل های HTTP و HTTPS

    صفحات وب از زبان نشانه گذاری HyperText (HTML) استفاده می کنند. صفحات HTML با استفاده از استانداردی به نام پروتکل انتقال ابرمتن (HTTP) از طریق اینترنت منتقل می شوند. اساس HTTP فناوری «مشتری-سرور» است، یعنی کاربر برای درخواست اطلاعات، اتصال به سرور را آغاز می کند و سرور منتظر می ماند تا اتصال درخواست را دریافت کند، درخواست را پردازش می کند و پیامی را با نتیجه برمی گرداند. HTTP در ارتباط با پروتکل TCP کار می کند. آدرس هایی که از پروتکل HTTP استفاده می کنند با "http:" شروع می شوند.

    مرتبط با پروتکل HTTP پروتکل HTTPS(HTTP over TLS - HTTP over TLS). این رمزگذاری برای انتقال داده ها برای محافظت فراهم می کند اطلاعات محرمانه. URL هایی که از پروتکل HTTP استفاده می کنند با "https:" شروع می شوند.

    پروتکل انتقال فایل - FTP

    پروتکل انتقال فایل (FTP) برای انتقال فایل ها از طریق شبکه های کامپیوتری از یک کامپیوتر به کامپیوتر دیگر استفاده می شود. این فرصت را فراهم می کند کنترل سادهفایل ها روی یک کامپیوتر راه دور این یک پروتکل نسبتا قدیمی است که قبلاً عملیاتی شده بود وب جهانی(WWW - شبکه جهانی وب). در حال حاضر، عمدتاً برای آپلود فایل ها به سرورهای وب استفاده می شود، اما ذخیره سازی فایل نیز وجود دارد که از طریق پروتکل FTP کار می کند. این در ارتباط با پروتکل TCP کار می کند. URL هایی که از پروتکل FTP استفاده می کنند با "ftp:" شروع می شوند.

    برای کارکرد همزمان سرورها با استفاده از پروتکل ها SMTP, ترکیدن, IMAP, http, HTTPS, FTPو سایرین نیازی به کامپیوترهای جداگانه یا آدرس های IP ندارند. همه این سرورها را می توان روی یک کامپیوتر با یک آدرس IP نصب کرد. این به دلیل این واقعیت است که هر یک از پروتکل ها از پروتکل های خود استفاده می کند.


    مقدمه ای بر TCP/IP

    کار شبکه های اینترنتیمبتنی بر استفاده از خانواده پروتکل های ارتباطی TCP/IP است که مخفف عبارت Transmission Control Protocol/Intemet Protocol (Data Transfer Control Protocol/Internet Protocol) است. TCP/IP برای انتقال داده هم در اینترنت جهانی و هم در بسیاری از شبکه های محلی استفاده می شود.
    البته، برای استفاده از اینترنت به عنوان کاربر، نیازی به دانش خاصی از پروتکل‌های TCP/IP ندارید، اما درک اصول اولیه به شما کمک می‌کند تا مشکلات رایجی را که ممکن است به‌ویژه هنگام راه‌اندازی یک سیستم ایمیل ایجاد شود، عیب‌یابی کنید.
    TCP/IP نیز ارتباط نزدیکی با دو مورد دیگر دارد برنامه های کاربردی اساسیاینترنت: FTP و Telnet. در نهایت، دانستن برخی از مفاهیم اساسی اینترنت به شما کمک می کند تا به پیچیدگی این سیستم پی ببرید، همانطور که درک نحوه عملکرد یک موتور احتراق داخلی به شما کمک می کند تا به طراحی خودرو احترام بگذارید.
    TCP/IP یک موضوع نسبتاً پیچیده و گسترده است که در بسیاری از کتاب های مرجع و مقالات طولانی پوشش داده شده است. این بخش فقط مفاهیم اولیه را پوشش می دهد و جزئیات فنی را پوشش نمی دهد.

    TCP/IP چیست؟

    TCP/IP نام خانواده ای از پروتکل ها برای انتقال داده ها از طریق شبکه است. پروتکل مجموعه ای از قوانین است که همه شرکت ها باید به آن پایبند باشند تا از سازگاری سخت افزار و نرم افزار خود اطمینان حاصل کنند. این قوانین تضمین می‌کنند که یک ماشین تجهیزات دیجیتالی که TCP/IP را اجرا می‌کند، می‌تواند با یک کامپیوتر Compaq که TCP/IP را نیز اجرا می‌کند، ارتباط برقرار کند. تا زمانی که استانداردهای خاصی رعایت شود، فرقی نمی کند که سازنده نرم افزار یا سخت افزار برای عملکرد کل سیستم چه کسی باشد. ایدئولوژی سیستم های باز شامل استفاده از سخت افزار و نرم افزار استاندارد است. TCP/IP یک پروتکل باز است، به این معنی که تمام اطلاعات مربوط به پروتکل منتشر می شود و می توان آزادانه از آنها استفاده کرد.
    یک پروتکل نحوه ارتباط یک برنامه با برنامه دیگر را تعریف می کند. این ارتباط نرم‌افزاری مانند یک دیالوگ است: "من این اطلاعات را برای شما ارسال می‌کنم، سپس شما این را برای من باز می‌فرستم، سپس آن را برای شما ارسال می‌کنم. باید همه بیت‌ها را اضافه کنید و نتیجه کل را برگردانید، و اگر مشکلی وجود داشت، باید پیام مناسب را برای من ارسال کنید." این پروتکل نحوه کنترل انتقال اطلاعات را توسط بخش‌های مختلف بسته کامل مشخص می‌کند. گزارش نشان می دهد که آیا بسته حاوی یک پیام ایمیل، مقاله گروه خبری یا پیام خدمات است. استانداردهای پروتکل به گونه ای تنظیم شده اند که شرایط پیش بینی نشده احتمالی در نظر گرفته شود. این پروتکل همچنین شامل قوانین رسیدگی به خطا می باشد.
    اصطلاح TCP/IP شامل نام دو پروتکل است - پروتکل کنترل انتقال (TCP) و پروتکل اینترنت (IP). همانطور که بسیاری از کاربران به اشتباه معتقدند TCP/IP یک برنامه واحد نیست. در مقابل، TCP/IP به خانواده‌ای از پروتکل‌های مرتبط اشاره می‌کند که برای انتقال اطلاعات روی شبکه طراحی شده‌اند و در عین حال اطلاعاتی درباره وضعیت خود شبکه ارائه می‌دهند. TCP/IP است جزء نرم افزاریشبکه های. هر بخشی از خانواده TCP/IP وظیفه خاصی را انجام می دهد: ارسال ایمیل، ارائه خدمات ورود به سیستم از راه دور، انتقال فایل ها، مسیریابی پیام ها، یا رسیدگی به خرابی های شبکه. TCP/IP نامحدود است شبکه جهانیاینترنت. اینها پرکاربردترین پروتکل های شبکه در سرتاسر جهان هستند که هم در شبکه های بزرگ شرکتی و هم در شبکه های محلی با تعداد کم کامپیوتر استفاده می شوند.
    همانطور که اشاره شد، TCP/IP فقط یک پروتکل نیست، بلکه یک خانواده از آنهاست. چرا اصطلاح TCP/IP گاهی اوقات برای اشاره به سرویسی غیر از TCP یا IP استفاده می شود؟ معمولاً هنگام بحث درباره کل خانواده پروتکل های شبکه از نام عمومی استفاده می شود. با این حال، برخی از کاربران، زمانی که در مورد TCP / IP صحبت می کنند، فقط برخی از پروتکل های خانواده را در نظر می گیرند: آنها فرض می کنند که طرف مقابل در گفتگو می داند دقیقاً چه چیزی در حال بحث است. در واقع بهتر است هر یک از سرویس ها را به نام خودش صدا بزنید تا شفافیت بیشتری به موضوع داده شود.

    اجزای TCP/IP

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

    • TCP (پروتکل کنترل انتقال). پروتکلی که از انتقال داده ها بر اساس ارتباط منطقی بین کامپیوترهای فرستنده و گیرنده پشتیبانی می کند.
    • UDP (پروتکل دیتاگرام کاربر). پروتکلی که از انتقال داده ها بدون ایجاد ارتباط منطقی پشتیبانی می کند. این بدان معنی است که داده ها بدون ایجاد ارتباط بین رایانه های گیرنده و فرستنده ارسال می شوند. می توانید با ارسال نامه به آدرسی قیاس کنید، در صورتی که هیچ تضمینی وجود نداشته باشد که این پیام به مخاطب برسد، اگر اصلا وجود داشته باشد. ، (این دو ماشین به این معنا به هم متصل هستند که هر دو به اینترنت متصل هستند، اما از طریق یک ارتباط منطقی با یکدیگر ارتباط برقرار نمی کنند.)
    پروتکل های مسیریابی آدرس دهی داده ها را مدیریت و تعیین می کنند بهترین راه هابه مخاطب آنها همچنین می‌توانند پیام‌های بزرگ را به پیام‌های کوچک‌تر تقسیم کنند، که سپس به‌طور متوالی منتقل شده و در یک واحد واحد در رایانه مقصد مونتاژ می‌شوند.
    • IP (پروتکل اینترنت). انتقال واقعی داده را فراهم می کند.
    • ICMP (پروتکل پیام کنترل اینترنت). پیام‌های وضعیت IP، مانند خطاها و تغییرات در سخت‌افزار شبکه را که بر مسیریابی تأثیر می‌گذارند، مدیریت می‌کند.
    • RIP (پروتکل اطلاعات مسیریابی). یکی از چندین پروتکل که بهترین مسیر را برای ارسال پیام تعیین می کند.
    • OSPF (ابتدا کوتاهترین مسیر را باز کنید). یک پروتکل جایگزین برای تعریف مسیرها.
    پشتیبانی از آدرس شبکه راهی برای شناسایی یک ماشین با شماره و نام منحصر به فرد است. (برای جزئیات بیشتر در مورد آدرس به زیر مراجعه کنید)
    • ARP (پروتکل حل آدرس). آدرس‌های عددی منحصربه‌فرد ماشین‌های موجود در شبکه را مشخص می‌کند.
    • DNS (سیستم نام دامنه). آدرس های عددی را از نام ماشین ها تعیین می کند.
    • RARP (پروتکل Revere Address Resolution). آدرس ماشین‌های موجود در شبکه را مشخص می‌کند، اما برعکس ARP.
    سرویس های کاربردی برنامه هایی هستند که کاربر (یا رایانه) از آنها برای دسترسی به خدمات مختلف استفاده می کند.
    • BOOTP (پروتکل بوت) دستگاه شبکه را با خواندن اطلاعات بوت از سرور بوت می کند.
    • FTP (پروتکل انتقال فایل) فایل ها را بین رایانه ها انتقال می دهد.
    • TELNET دسترسی ترمینال خیابانی به سیستم را فراهم می کند. کاربر یک رایانه می تواند به رایانه دیگری متصل شود و احساس کند که روی صفحه کلید یک دستگاه از راه دور کار می کند.
    پروتکل‌های دروازه به انتقال پیام‌های مسیریابی و اطلاعات وضعیت شبکه از طریق شبکه و پردازش داده‌ها برای شبکه‌های محلی کمک می‌کنند.
    • EGP (پروتکل دروازه خارجی) برای انتقال اطلاعات مسیریابی برای شبکه های خارجی استفاده می شود.
    • GGP (پروتکل Gateway-to-Gateway) برای به دست آوردن اطلاعات مسیریابی بین دروازه ها عمل می کند.
    • IGP (پروتکل دروازه داخلی) برای انتقال اطلاعات مسیریابی برای شبکه های داخلی استفاده می شود.
    سایر پروتکل ها در دسته بندی های ذکر شده در بالا قرار نمی گیرند اما نقش مهمی در شبکه دارند.
    • NFS (سیستم فایل شبکه) به شما این امکان را می دهد که از دایرکتوری ها و فایل های یک کامپیوتر راه دور استفاده کنید که گویی در ماشین محلی وجود دارند.
    • NIS (سرویس اطلاعات شبکه) اطلاعاتی را در مورد کاربران چندین رایانه در یک شبکه نگهداری می کند و ورود به سیستم و بررسی رمزهای عبور را آسان می کند.
    • RPC (Remote Procedure Call) به برنامه های از راه دور اجازه می دهد تا به روشی ساده و کارآمد با یکدیگر ارتباط برقرار کنند.
    • SMTP (پروتکل انتقال نامه ساده) پروتکلی است که پیام های ایمیل را بین ماشین ها منتقل می کند.
    • SNMP (پروتکل مدیریت شبکه ساده) پروتکلی برای مدیریت است که پیام هایی را در مورد وضعیت شبکه و دستگاه های متصل به آن ارسال می کند.
    همه این سرویس ها با هم TCP/IP را تشکیل می دهند که خانواده قدرتمند و کارآمدی از پروتکل های شبکه است.
    ما همه این پروتکل ها را با جزئیات پوشش نمی دهیم زیرا جزئیات فنی برای کاربر نهایی بی ربط است. در عوض، ما به طور خلاصه برخی از جنبه های مهم پروتکل های TCP/IP را مورد بحث قرار خواهیم داد. اگر می‌خواهید درباره TCP/IP اطلاعات بیشتری کسب کنید، کتاب‌هایی را که به طور خاص به این موضوع اختصاص داده شده است، بررسی کنید.

    داستان کوتاه TCP/IP و اینترنت

    اینترنت همانطور که قبلا ذکر شد یک شبکه واحد نیست، بلکه مجموعه ای از شبکه های زیادی است که از طریق استفاده از پروتکل های رایج ارتباط برقرار می کنند. TCP/IP و اینترنت به قدری مرتبط هستند که معماری شبکه TCP/IP اغلب به عنوان معماری اینترنت شناخته می شود. اینترنت بر اساس اولین ARPANET (شبکه آژانس پروژه‌های تحقیقاتی پیشرفته) ظاهر شد که برای محققانی که روی پروژه‌های نظامی کار می‌کردند، توانایی برقراری ارتباط سریع با یکدیگر را فراهم می‌کرد. مرحله اولیهاین شبکه توسط Bolt، Beranek و Newinan (BBN) توسعه داده شد، شرکتی که تأثیر زیادی در راه توسعه شبکه داشت.
    ARPANET در سال 1971 شروع به کار کرد. از همان ابتدا، شبکه به طور مداوم مطابق با نیازهای کاربران ارتقا یافته است و عملکردهای فزاینده ای را برای آنها فراهم می کند. یکی از نیازهای مهم، توانایی انتقال فایل ها بین رایانه ها بود که در نهایت منجر به توسعه پروتکل انتقال فایل (FTP) شد.
    یکی دیگر از نیازهای مهم، پشتیبانی از دسترسی ترمینال از راه دور به سیستم بود که به کاربر یک سیستم اجازه می‌داد به ماشین دیگری در شبکه متصل شود و به گونه‌ای کار کند که گویی مال خودش است. برای این، Telnet و ورود ایجاد شدند - دو ابزار کمکی که دسترسی ترمینال از راه دور به سیستم را پیاده سازی می کنند.
    با افزایش تعداد کاربران و افزایش شدت استفاده از شبکه توسط کاربران از قبل متصل، ترافیک شبکه به طور قابل توجهی افزایش یافته است. در نتیجه، آشکار شد که نه تنها شبکه باید گسترش یابد، بلکه باید یک پروتکل ارتباطی بهبودیافته نیز ایجاد شود. پروتکل های TCP/IP در سال 1973 پیشنهاد شد و در نسخه استاندارد شده در سال 1982 به تصویب رسید. یکی از آزمایشگاه های تحقیقاتی که بر روی نرم افزار شبکه ها کار می کند در دانشگاه کالیفرنیا در برکلی (UCB) واقع شده است. این دانشگاه سال ها مرکز توسعه سیستم عامل یونیکس بوده و سهم زیادی در بهبود TCP/IP داشته است. در سال 1983، UCB نسخه ای از سیستم یونیکس را منتشر کرد که شامل TCP/IP به عنوان بخشی جدایی ناپذیر از سیستم عامل بود. TCP/IP به دلیل استفاده گسترده از یونیکس، به ویژه در شبکه های متصل به ARPANET در حال رشد، بسیار محبوب شد.
    همانطور که TCP/IP به اندازه کافی بالغ شد، پیشنهادهایی به بنیاد ملی علوم ارائه شد که منجر به باز شدن بودجه برای پروژه ای برای ایجاد یک شبکه علوم کامپیوتری به عنوان جایگزینی برای ARPANET پر بار شد. در سال 1984، این امر منجر به تقسیم شبکه به دو بخش شد. یک شبکه به نام MILNET به ارتش اختصاص داشت. بخش دیگری از ARPANET برای تحقیقات و سایر کاربردهای غیر نظامی داده شد.
    ARPANET زمانی تغییر کرد که پروژه ای برای ایجاد شبکه ای برای دسترسی در مقیاس بزرگ به ابررایانه ها تصویب شد که اجرای آن به دفتر محاسبات علمی پیشرفته (OASC، مرکز محاسبات علمی پیشرفته) سپرده شد. OASC شبکه دیگری را ایجاد کرد - NSFNET، که با استفاده از کانال های تلفن پرسرعت، شش ابر رایانه واقع در مناطق مختلف کشور را به هم متصل کرد. شبکه های دیگری نیز برای اشتراک دسترسی به ابررایانه ها و کانال های ارتباطی پرسرعت به این شبکه پیوسته اند. NFSNET به ستون فقرات اینترنت تبدیل شده است. در سال 1990، وزارت دفاع که ARPANET را ایجاد کرد، رسما لغو آن را به عنوان انجام وظایف خود اعلام کرد و اکنون منسوخ شده است.

    آدرس کامپیوتر عددی

    هر دستگاهی که به اینترنت یا هر شبکه TCP/IP دیگری متصل است باید به طور منحصر به فرد شناسایی شود. بدون شناسه منحصر به فرد، شبکه نمی داند چگونه پیام را به دستگاه شما برساند. اگر بیش از یک رایانه دارای شناسه یکسان باشند، شبکه نمی تواند پیام را آدرس دهی کند.
    در اینترنت، رایانه های موجود در شبکه با اختصاص یک آدرس اینترنتی یا به عبارت صحیح تر، یک آدرس IP شناسایی می شوند. آدرس های IP همیشه 32 بیتی هستند و از چهار قسمت 8 بیتی تشکیل شده اند. این به این معنی است که هر قسمت می تواند مقداری بین 0 تا 255 داشته باشد. این چهار قسمت در یک نماد ترکیب می شوند که در آن هر مقدار هشت بیتی با یک نقطه از هم جدا می شود. به عنوان مثال، 255.255.255.255 یا 147.120.3.28 دو آدرس IP هستند. وقتی در مورد یک آدرس شبکه صحبت می کنیم، معمولاً منظور ما یک آدرس IP است.
    اگر تمام 32 بیت از یک آدرس IP استفاده می شد، بیش از چهار میلیارد آدرس ممکن وجود داشت - بیش از اندازه کافی برای آینده. افزونه های اینترنتی! با این حال، برخی از ترکیبات بیت ها برای اهداف خاص رزرو شده اند، که تعداد آدرس های بالقوه را کاهش می دهد. علاوه بر این، چهار بیتی 8 بیتی بسته به نوع شبکه به روش های خاصی گروه بندی می شوند، به طوری که تعداد واقعی آدرس های ممکن حتی کمتر است.
    آدرس های IP بر اساس اصل لیست کردن میزبان ها در شبکه -1،2،3، ... اختصاص داده نمی شود. در واقع به نظر می رسد یک آدرس IP از دو قسمت تشکیل شده است: آدرس شبکه و آدرس میزبان در این شبکه. این ساختار آدرس IP به رایانه های موجود در شبکه های مختلف اجازه می دهد که تعداد یکسانی داشته باشند. از آنجایی که آدرس‌های شبکه متفاوت است، رایانه‌ها به طور منحصربه‌فرد شناسایی می‌شوند. بدون چنین طرحی، شماره گذاری به سرعت بسیار ناخوشایند می شود.
    آدرس های IP بسته به اندازه سازمان و نوع فعالیت آن تخصیص داده می شود. اگر این یک سازمان کوچک است، به احتمال زیاد رایانه های کمی (و بنابراین آدرس های IP) در شبکه آن وجود دارد. برعکس، یک شرکت بزرگ ممکن است هزاران کامپیوتر متصل در چندین شبکه محلی متصل به هم داشته باشد. برای ارائه حداکثر انعطاف پذیری، آدرس های IP بسته به تعداد شبکه ها و کامپیوترهای سازمان تخصیص داده می شوند و به کلاس های A، B و C تقسیم می شوند، کلاس های D و E نیز وجود دارند، اما برای اهداف خاصی استفاده می شوند.
    سه دسته از آدرس های IP به شما امکان می دهند بسته به اندازه شبکه سازمان خود آنها را توزیع کنید. از آنجایی که 32 بیت قابل قبول است اندازه کاملآدرس‌های IP، کلاس‌ها بسته به کلاس، چهار قسمت 8 بیتی آدرس را به یک آدرس شبکه و یک آدرس میزبان تقسیم می‌کنند. یک یا چند بیت در ابتدای آدرس IP برای شناسایی کلاس رزرو شده است.
    یک آدرس شبکه کلاس A فقط 7 بیت برای آدرس شبکه و 24 بیت برای آدرس میزبان دارد. این امکان شناسایی بیش از 16 میلیون میزبان مختلف را در یک زیرشبکه واحد فراهم می کند - بیش از اندازه کافی برای بزرگترین سازمان. البته فقط 128 (2 تا توان هفتم) شبکه کلاس A می تواند وجود داشته باشد.
    آدرس شبکه کلاس B دارای 14 بیت برای آدرس شبکه و 16 بیت برای آدرس میزبان است که امکان شناسایی شبکه های کلاس B بیشتری را فراهم می کند، اما میزبان های کمتری دارند. با این حال، 16 بیت می تواند بیش از 65000 میزبان را شناسایی کند. و در نهایت، شبکه های IP کلاس C می توانند حداکثر 254 هاست داشته باشند، اما می توانند تعداد زیادی از این شبکه ها را داشته باشند. اکثر شبکه ها به عنوان کلاس B یا C طبقه بندی می شوند، اگرچه مرکز اطلاعات شبکه اینترنت (InterNIC) حرف آخر را در مورد اختصاص یک کلاس شبکه می زند.
    نوع کلاسی که شبکه یک شرکت به آن تعلق دارد را می توان با شماره اول آدرس IP شناسایی کرد. قوانین زیر برای شماره 8 بیتی اول وجود دارد:

    • آدرس های کلاس A - اعداد بین 0 تا 127
    • آدرس های کلاس B - اعداد بین 128 و 191
    • آدرس های کلاس C - اعداد بین 192 و 223
    اگر آدرس IP دستگاه شما 147.14.87.23 است، پس می دانید که دستگاه شما در یک شبکه کلاس B است، شناسه شبکه 147.14 و شماره منحصر به فرد دستگاه شما در آن شبکه 87.23 است. اگر آدرس IP 221.132.3.123 باشد، دستگاه در یک شبکه کلاس C با شناسه شبکه 221.132.3 و شناسه میزبان 123 است.
    هر زمان که پیامی به هر کامپیوتر میزبان در اینترنت ارسال می شود، آدرس IP برای نشان دادن آدرس فرستنده و گیرنده استفاده می شود. البته لازم نیست خودتان تمام آدرس های IP را به خاطر بسپارید، زیرا یک سرویس TCP/IP ویژه به نام سیستم نام دامنه وجود دارد ( سیستم دامنهنام ها).

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

    برای ارسال سریع و کارآمد دیتاگرام ها، دروازه ها باید بدانند که در شبکه چه اتفاقی می افتد. آنها علاوه بر اطلاعات مسیریابی پیام، به اطلاعاتی در مورد پارامترهای زیرشبکه های متصل به شبکه بزرگتر نیاز دارند تا در صورت خرابی در برخی از قسمت های شبکه، مسیرها را تصحیح کنند.
    دو نوع دروازه وجود دارد: داخلی و خارجی. دروازه هایی که بر روی یک زیرشبکه کوچک قرار دارند می توانند به یک شبکه شرکتی بزرگتر ارتباط برقرار کنند. چنین دروازه‌هایی را خودمختار یا خودکفا می‌نامند، زیرا اتصالات بین این دروازه‌ها دائمی است و به ندرت تغییر می‌کند. این دروازه ها با استفاده از پروتکل دروازه داخلی - IGP (Internal Gateway Protocol) با یکدیگر ارتباط برقرار می کنند.
    شبکه های بزرگمانند اینترنت، ساختار ثابتی ندارند. با تغییر بسیاری از زیرشبکه های کوچک، تنظیمات دروازه دائماً در حال تغییر هستند. ارتباط بین چنین دروازه هایی از طریق یک پروتکل دروازه خارجی - EGP (پروتکل Extenor Gateway) انجام می شود.
    پروتکل دروازه دیگری وجود دارد که ممکن است نامش را شنیده باشید به نام پروتکل Gateway-to-Gateway یا GGP. بین دروازه های ویژه در ستون فقرات اینترنت استفاده می شود. چنین دروازه هایی به کل اینترنت به عنوان یک کل اشاره می کنند و انتقال ترافیک را در ستون فقرات پرسرعت شبکه تضمین می کنند.

    TCP و UDP

    همانطور که در ابتدای این فصل در مورد لایه های پروتکل بحث شد، لایه انتقال معماری TCP/IP یک سرویس تحویل پیام را ارائه می دهد. خانواده TCP/IP شامل دو پروتکل مجزا است که این سرویس را پیاده‌سازی می‌کنند: پروتکل کنترل انتقال (TCP) و پروتکل داده‌گرام کاربر پروتکل داده‌گرام کاربر (UDP). هر دو کاربرد گسترده ای پیدا کرده اند.
    تفاوت بین آنها در نحوه برقراری ارتباط بین دو کامپیوتر نهفته است. TCP یک ارتباط منطقی مستقیم برقرار می کند، به عنوان مثال، رایانه ها به طور مستقیم به یکدیگر متصل می شوند، و هر یک از آنها از وضعیت دیگری مطلع است. UDP تلاشی برای ایجاد چنین ارتباطی نمی کند. این پروتکل به سادگی یک آدرس IP به پیام تولید شده اضافه می کند و آن را به شبکه ارسال می کند.
    بدیهی است که TCP روش ارتباطی قابل اعتمادتری است، زیرا هر پیام دریافتی تایید می شود. با UDP، هیچ تضمینی وجود ندارد که پیامی واقعاً دریافت شود. برای تأیید دریافت پیام، UDP از طرحی استفاده می کند که در آن دستگاه گیرنده باید یک تأییدیه پیام دریافتی را ارسال کند و اگر چنین تأییدیه ای در مدت زمان معینی توسط فرستنده دریافت نشود، ارسال پیام تکرار می شود.
    ممکن است فکر کنید که همه مایلند از TCP برای ارسال پیام استفاده کنند، اما در واقع اکثر مردم به UDP متکی هستند. تصور کنید چه تعداد اتصال باید با همه ماشین‌های موجود در شبکه برقرار کنید - این یک رقم غول‌پیکر است و هر ثانیه اتصالات جدید ظاهر می‌شوند و اتصالات قدیمی ناپدید می‌شوند. استفاده از UDP ترافیک شبکه را تا حد زیادی ساده می کند.
    هر نوع سرویس TCP/IP برای پذیرش UDP یا TCP طراحی شده است. به عنوان مثال، Telnet و FTP از TCP استفاده می کنند زیرا اتصال باید همیشه بین دو کامپیوتر وجود داشته باشد. روش دیگر برای انتقال فایل ها، پروتکلی به نام Trivial FTP (TFTP) است که از UDP استفاده می کند (به «Trivial FTP» در ادامه این فصل مراجعه کنید).
    هر دو پروتکل (TCP و UDP) یک هدر به ابتدای پیام اضافه می کنند که لایه انتقال از بیشتر دریافت می کند. سطوح بالا. محتوا و ساختار هدر TCP با UDP متفاوت است، اما هر دو حاوی اطلاعات اولیه یکسانی در مورد اینکه چه کسی بسته و به چه کسی فرستاده است، اطلاعات نوع پیام خاص و آمار است.
    و در پایان، چند کلمه در مورد اصطلاح "داده‌گرام" مرتبط با TCP / IP. دیتاگرام یک پیام ترکیبی است که از تمام لایه ها به شبکه ارسال می شود. هنگام صحبت در مورد TCP / IP، استفاده از عبارت "داده گرام" به جای عبارت "پیام" صحیح تر است.

    پورت ها و سوکت های TCP

    برنامه های کاربردی که از TCP استفاده می کنند باید راهی برای ارتباط با یک سرویس خاص داشته باشند. برای این کار، شماره پورت مربوط به هر نوع سرویس وارد می شود. به عنوان مثال، Telnet از پورت شماره 23 استفاده می کند. شماره پورت تعیین می کند نوع خدمات، توسط یک ماشین از ماشین دیگر درخواست می شود، بنابراین وقتی یک ماشین درخواستی را به پورت 23 ماشین دیگر ارسال می کند، پاسخ به پورت 23 نیز خواهد رسید.
    پورت های TCP را با پورت های پشت کامپیوتر خود اشتباه نگیرید. به عنوان مثال، پورت های سریال دستگاه فیزیکی هستند، در حالی که پورت های TCP منطقی هستند. هنگام برقراری ارتباط با یک کامپیوتر، می توان از پورت فیزیکی آن استفاده کرد (یک خط داده می تواند به آن متصل شود)، اما سیستم سپس یک پورت TCP منطقی را برای هر نوع سرویس اختصاص می دهد.
    شماره پورت می تواند توسط مدیر مجدداً اختصاص داده شود، اما تغییر شماره پورت می تواند مشکلاتی ایجاد کند. اکثر سیستم ها از شماره پورت های استاندارد استفاده می کنند که در اسناد TCP/IP ذکر شده است. کاربران معمولیممکن است ندانید کدام پورت در چه زمانی استفاده می شود، اما نیازی به استفاده از آن نیست، زیرا تمام نسخه های ویندوز بسته های TCP/IP از شماره پورت های استاندارد استفاده می کنند. لیست پرکاربردترین پورت ها در زیر آمده است:

    هر نقطه ورود/خروج هر یک از لایه‌های TCP در هر ماشین به‌طور منحصربه‌فرد توسط یک جفت اعداد شناسایی می‌شود که در مجموع به عنوان شماره سوکت نامیده می‌شود که شامل یک آدرس IP و یک شماره پورت است. یک کامپیوتر می تواند از یک شماره سوکت برای برقراری ارتباط با کامپیوتر و شبکه دیگری استفاده کند زیرا آدرس های IP به طور منحصر به فرد همه رایانه های موجود در یک شبکه را شناسایی می کنند.
    هر ماشین در شبکه یک جدول کوچک دارد که استفاده از همه پورت ها را توصیف می کند. به آن جدول پورت می گویند. هنگامی که یک اتصال برقرار می شود، جدول پورت ها با شماره پورت دستگاه دیگری که از اتصال پشتیبانی می کند به روز می شود. بنابراین، هر دو ماشینی که در اتصال شرکت می کنند، شماره پورت ماشین دیگر را خواهند داشت که به آن اتصالات پورت (port binding) می گویند. یک پورت می تواند برای چندین اتصال به طور همزمان استفاده شود - به این حالت مالتی پلکسی گفته می شود.

    پروتکل IP

    پروتکل اینترنت (IP) پروتکل اصلی TCP/IP است. درک این نکته مهم است که اگرچه کلمه "اینترنت" در نام پروتکل ظاهر می شود، اما استفاده از آن را محدود نمی کند. IP پروتکل را تعریف می کند نه اتصال را.
    پروتکل اینترنت یک اتصال منطقی ایجاد نمی کند. این بدان معناست که IP هیچ کنترلی بر تحویل پیام ها به مقصد نهایی ندارد. آدرس های IP ماشین های مبدا و مقصد در هدر دیتاگرام گنجانده شده است و برای انتقال دیتاگرام بین دروازه ها استفاده می شود. این از اطلاعات مسیریابی که توسط دروازه نگهداری می شود برای نشان دادن محل ارسال دیتاگرام در هر مرحله استفاده می کند.
    هدف اصلی IP آدرس دهی دیتاگرام ها و انتقال آنها بین کامپیوترها است. اطلاعات مربوط به مقصد را تجزیه و تحلیل می کند و از آن برای تعیین بهترین مسیر استفاده می کند. IP هدر خود را به پیام دریافتی از لایه های بالاتر (TCP یا UDP) اضافه می کند.
    IP همچنین مشکل دیگری را حل می کند که مربوط به شکستن دیتاگرام های طولانی به چند قطعه کوچکتر و سپس مونتاژ مجدد آنها در مقصد است. دیتاگرام های بزرگ به دلایل مختلفی از جمله محدودیت اندازه پیام IP (تقریباً 64K) می توانند شکسته شوند. به طور معمول، شبکه نمی تواند مستقیماً چنین پیام بزرگی را ارسال کند، که نیاز به شکستن دیتاگرام به قطعات کوچک چند کیلوبایتی دارد.
    چندین اصطلاح فنی برای توصیف این فرآیند استفاده می شود:

    • تقسیم بندی فرآیند تقسیم یک دیتاگرام به چندین دیتاگرام کوچکتر است.
    • مونتاژ مجدد فرآیند ترکیب دیتاگرام های کوچک به یک دیتاگرام بزرگ اصلی است.
    • جداسازی - معکوس الحاق، فرآیند تقسیم کل دیتاگرام به چندین پیام کوچکتر برای برنامه های کاربردی مختلف.
    تمام این فرآیندهای IP بدون توجه شما انجام می شود. الگوریتم های ویژه ای برای بررسی اینکه پیام به درستی و به شکل اصلی بازیابی شده است و تمام قسمت های یک پیام بزرگ به درستی دریافت شده است پیاده سازی شده است. این اطلاعات را در هدر IP و مجموعه‌ای از شمارنده‌های ویژه ارائه می‌کند که IP برای منتظر ماندن تمام بخش‌های پیام استفاده می‌کند. یکی از مشکلات تقسیم کردن پیام‌های این چنینی این است که احتمال تحویل پیام‌های تکه‌تکه‌شده کمتر از پیام‌های غیرقطعی است. اکثر برنامه های کاربردی سعی می کنند تا جایی که ممکن است از تکه تکه شدن جلوگیری کنند.

    پروتکل ICMP

    خرابی شبکه ممکن است به دلیل مسیریابی اشتباه، گم شدن یا خراب شدن دیتاگرام رخ دهد. در عین حال، اطلاع رسانی فرستنده در مورد مشکلات به وجود آمده کمتر از پردازش موقعیت های اشتباه در خود شبکه اهمیت ندارد. برای انجام این کار، پروتکل پیام کنترل اینترنت (ICMP) ایجاد شد.
    ICMP یک سیستم گزارش خطا است که در پروتکل اینترنت تعبیه شده است. پیام های ICMP ممکن است به عنوان پیام های IP خاص در نظر گرفته شوند. به عبارت دیگر ICMP یک سیستم ارتباطی لایه IP است. پیام های ICMP همان هدر بسته های IP معمولی هستند و پردازش آنها در شبکه دقیقاً مانند پردازش دیتاگرام است. در بیشتر موارد، پیام های خطای ارسال شده توسط ICMP به فرستنده ای که آدرس IP او در هدر است بازگردانده می شود.
    پیام ICMP حاوی اطلاعاتی در مورد مشکل رخ داده و همچنین بخشی از پیام اصلی است. این قطعه برای شناسایی پیام خطا و همچنین حاوی برخی اطلاعات تشخیصی است.

    برنامه های کاربردی TCP/IP

    اکنون که می دانید چگونه TCP، UDP و IP بسته بندی و انتقال پیام را فراهم می کنند، می توانیم به خانواده پروتکل های TCP/IP که مستقیماً در برنامه های کاربردی استفاده می شوند نگاهی بیندازیم. برخی از رایج ترین پروتکل های مورد استفاده Telnet و FTP هستند. از جمله پروتکل های کاربردی اصلی نیز می توان به پروتکل انتقال نامه ساده (SMTP) اشاره کرد که برای انتقال پیام های ایمیل استفاده می شود. در نهایت، مجموعه ای از ابزارهای کمکی به نام Berkeley r-utilities، پس از دانشگاهی که در آن توسعه یافتند، وجود دارد.

    شبکه راه دور

    پروتکل Telnet (از کلمات telecommurncation network - telecommunication network) امکان ورود به سیستم از راه دور را فراهم می کند. این به کاربر یک رایانه اجازه می دهد تا به رایانه راه دور واقع در قسمت دیگری از شبکه وارد شود. در همان زمان، به نظر می رسد که کاربر در ترمینال یک کامپیوتر از راه دور کار می کند. اگر روی آن کار می کنید، Telnet می تواند مفید باشد کامپیوتر کندمی خواهید از منابع محاسباتی یک ماشین قدرتمندتر استفاده کنید و همچنین اگر رایانه راه دور نرم افزار مورد نیاز شما را دارد.
    قبل از توسعه Telnet، تنها راه دسترسی به منابع کامپیوتر دیگر از طریق اتصال مستقیم از طریق یک مودم یا از طریق پورت های شبکه اختصاصی بود که در کنار سادگی، تعدادی محدودیت قابل توجه نیز داشت.
    Telnet توسط یک برنامه (سرور) ویژه در حال اجرا بر روی رایانه ای که شما به آن متصل می شوید و درخواست های دریافتی را پردازش می کنید ارائه می شود. رایانه شما یک برنامه Telnet (Telnet-KAiiCHT) را اجرا می کند که به سرور دسترسی دارد. در فرآیند برقراری ارتباط، رایانه ها در مورد حالت شبیه سازی ترمینال در یک جلسه معین توافق می کنند. در اصل، یک ماشین از دیگری می پرسد که چه (ویژگی هایی که پشتیبانی می کند.
    برای شروع یک جلسه Telnet، باید نام دامنه یا آدرس IP رایانه راه دور را وارد کنید. استفاده از نام دامنه تنها در صورتی امکان پذیر است که سیستم بتواند با استفاده از سرویس DMS نام را به یک آدرس IP عددی حل کند.پس از برقراری ارتباط، سیستم خفه شده معمولاً نام کاربری و رمز عبور را می خواهد، اگرچه این بستگی به نوع سیستم عامل و نرم افزار Telnet نصب شده بر روی رایانه خفه شده دارد.
    دستورات Telnet بسته به کلاینت Tclnet که استفاده می شود متفاوت است، به خصوص هنگام کار با رابط کاربری گرافیکی مانند ویندوز. در بیشتر موارد، کلاینت Tclnet پنجره ای ایجاد می کند که در حالت کار می کند خط فرمان.
    هنگامی که اتصال برقرار شد، رایانه شما نقش یک ترمینال را در دستگاه راه دور بازی می کند. تمام دستوراتی که وارد می کنید در کامپیوتر راه دور اجرا می شوند. برای پایان دادن به جلسه، دستور مناسب را وارد کنید (برای سیستم های یونیکس - معمولاً خروج یا +.
    در حالی که در حالت ورود فرمان برای یک سیستم از راه دور هستید، می توانید در آن ادامه دهید حالت فرمان Telnet، معمولاً از میانبر صفحه کلید استفاده می کند +. در این حالت، شما عملکرد کلاینت Tclnet را کنترل می کنید، نه کامپیوتر راه دور.

    FTP

    برخلاف Telnet، FTP (پروتکل انتقال فایل) برای کار بر روی یک کامپیوتر راه دور طراحی نشده است، بلکه برای انتقال فایل ها بین رایانه های متصل به شبکه طراحی شده است. مانند Telnet، سرویس FTP مبتنی بر استفاده مشترک از دو برنامه است - برنامه سرور که به طور مداوم در حال اجرا است. زمینهو برنامه کلاینتی که باید روی رایانه خود اجرا کنید تا یک جلسه FTP شروع شود. پروتکل FTP به شما امکان می دهد فایل ها را در دو فرمت متنی و باینری انتقال دهید.
    برای ایجاد اتصال FTP، باید نام دامنه یا آدرس IP عددی رایانه ای را که برنامه سرور روی آن اجرا می شود، وارد کنید.
    پس از برقراری ارتباط با یک کامپیوتر از راه دور، به عنوان یک قاعده، باید به آن وارد شوید. (برخی از سرورهای FTP از آنچه دسترسی ناشناس نامیده می شود پشتیبانی می کنند که به همه کاربران اجازه می دهد آزادانه فایل های ذخیره شده در آنجا را کپی کنند.) در حالی که وارد یک رایانه راه دور هستید، همچنان به کار بر روی رایانه خود ادامه می دهید و دستوراتی را برای مرور فهرست ها و انتقال فایل ها به دستگاه از راه دور ارسال می کنید. این امر ضروری است تفاوت FTPدور از Telnet، زیرا با استفاده از Telnet اساساً روی یک رایانه از راه دور کار می کنید.
    اکثر کلاینت های FTP برای اجرا در حالت خط فرمان طراحی شده اند. با این حال، سرویس گیرندگان FTP برای ویندوز یک رابط گرافیکی در اختیار کاربر قرار می دهند که نیازی به وارد کردن دستورات در حالت خط فرمان را از بین می برد. تمام اقدامات با استفاده از منو، کادرهای محاوره ای و دکمه های گرافیکی انجام می شود. بنابراین، اتصال به یک کامپیوتر راه دور، مرور دایرکتوری ها و انتقال فایل ها فقط به انتخاب آیتم ها و دکمه های منوی مناسب نیاز دارد.
    به طور کلی، کار با یک سرور FTP نیاز به شناسه کاربری و رمز عبور دارد، اما بسیاری از سیستم ها امکان کپی آزادانه فایل های موجود بر روی آنها را توسط همه کاربران اینترنت فراهم می کنند. این سرویس FTP ناشناس نامیده می شود. برای کار با FTP ناشناس، نیازی نیست که کاربر ثبت نام شده سیستم باشید، بلکه فقط "ناشناس" را به عنوان نام کاربری (نام ورود) وارد کنید. در این صورت رمز عبور یا اصلا وارد نمی شود یا کلمه مهمان (مهمان) یا نام واقعی شما و یا آدرس ایمیل شما می تواند به عنوان رمز عبور وارد شود.

    FTP بی اهمیت

    پروتکل انتقال فایل بی اهمیت (TFTP، پروتکل انتقال فایل بی اهمیت) یکی از ساده ترین پروتکل هایی است که برای انتقال فایل ها استفاده می شود. تفاوت آن با FTP در این است که برای انتقال فایل ها نیازی به ثبت نام در رایانه راه دور ندارد. کاربر به سادگی یک درخواست انتقال فایل را وارد می کند و نام کامپیوتر راه دور را مشخص می کند. در همان زمان، TFTP پیام های UDP را تولید می کند که به یک ماشین راه دور ارسال می شود و با کمک آن فایل منتقل می شود. در پایان انتقال، برخی از نسخه های TFTP یک اعلان برای کاربر ارسال می کنند. توجه داشته باشید که بسیاری از نسخه های نرم افزار TCP/IP برای ویندوز از TFTP پشتیبانی نمی کنند.

    SMTP

    پروتکل انتقال ایمیل ساده (SMTP، پروتکل انتقال ایمیل ساده) از عملیات ایمیل در اینترنت و سایر شبکه ها پشتیبانی می کند. از آنجایی که نحوه ارسال ایمیل بین سیستم عامل ها متفاوت است، بسیاری از شبکه های محلی از SMTP استفاده نمی کنند، بلکه از آن برای ارسال نامه از طریق اینترنت استفاده می کنند.
    اینترنت (و همچنین اکثر شبکه های بزرگ شرکتی) بر اساس سیستم های یونیکس است که SMTP را به عنوان پروتکل استاندارد انتقال نامه می پذیرند. در سیستم های یونیکس، SMTP از طریق برنامه ای به نام sendmail پشتیبانی می شود. کاربران مستقیماً با sendmail تعامل ندارند، بلکه از برنامه های کاربردی مختلف برای کار با sendmail استفاده می کنند. پست الکترونیک. این برنامه ها به نوبه خود، پیام ها را با sendmail رد و بدل می کنند.
    بسته های ایمیل محیط ویندوزبر اساس استفاده از پروتکل های مختلف از جمله SMTP. بسیاری از سیستم های پست پیشرفته دارای پشتیبانی داخلی از SMTP هستند که به شما امکان می دهد پیام ها را با شبکه های جهانی TCP/IP مبادله کنید.