پشته اصلی پروتکل اینترنت. پروتکل ها و استانداردهای شبکه معماری شبکه اصلی

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

پشته پروتکل مجموعه ای است که به صورت سلسله مراتبی از پروتکل های شبکه در سطوح مختلف سازمان یافته است که برای سازماندهی و اطمینان از تعامل گره ها در شبکه کافی است. در حال حاضر، شبکه ها از تعداد زیادی پشته پروتکل ارتباطی استفاده می کنند. محبوب ترین پشته ها عبارتند از: TCP/IP، IPX/SPX، NetBIOS/SMB، Novell NetWare، DECnet، XNS، SNA و OSI. همه این پشته ها، به جز SNA، در سطوح پایین تر - پیوند فیزیکی و داده - از پروتکل های استاندارد شده Ethemet، Token Ring، FDDI و برخی دیگر استفاده می کنند که امکان استفاده از تجهیزات مشابه در همه شبکه ها را فراهم می کند. اما در سطوح بالا x همه پشته ها بر اساس پروتکل های خود عمل می کنند. این پروتکل ها اغلب با لایه بندی توصیه شده توسط مدل OSI مطابقت ندارند. به طور خاص، عملکردهای لایه های جلسه و ارائه معمولاً با لایه برنامه ترکیب می شوند. این اختلاف به این دلیل است که مدل OSIدر نتیجه تعمیم پشته های موجود و واقعی استفاده شده ظاهر شد و نه برعکس.

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

یک نکته مهمدر عملکرد تجهیزات شبکه، به ویژه آداپتور شبکه، اتصال پروتکل ها است. این به شما امکان می دهد هنگام سرویس دهی یک آداپتور شبکه از پشته های پروتکل های مختلف استفاده کنید. به عنوان مثال، می توانید از پشته های TCP/IP و IPX/SPX به طور همزمان استفاده کنید. اگر هنگام تلاش برای برقراری ارتباط با گیرنده با استفاده از پشته اول، ناگهان خطایی رخ دهد، به طور خودکار تغییر استفاده از پروتکل از پشته بعدی رخ می دهد. نکته مهم در این مورد، ترتیب الزام آور است، زیرا به وضوح بر استفاده از یک یا آن پروتکل از پشته های مختلف تأثیر می گذارد.

صرف نظر از اینکه چند آداپتور شبکه در رایانه نصب شده است، اتصال را می توان "یک به چند" یا "چند به یک" انجام داد، یعنی یک پشته پروتکل را می توان به چندین آداپتور در یک زمان یا چندین پشته به یک آداپتور متصل کرد. .

NetWare یک سیستم عامل شبکه و مجموعه ای از پروتکل های شبکه است که در این سیستم برای تعامل با کامپیوترهای مشتری متصل به شبکه استفاده می شود. پروتکل های شبکه سیستم بر اساس پشته پروتکل XNS هستند. NetWare در حال حاضر از پروتکل های TCP/IP و IPX/SPX پشتیبانی می کند. Novell NetWare در دهه های 80 و 90 به دلیل کارایی بیشتر در مقایسه با سیستم عامل های عمومی محبوب بود. اکنون این یک فناوری منسوخ شده است.

پشته پروتکل XNS (پروتکل حمل و نقل اینترنتی خدمات شبکه Xerox) توسط زیراکس برای انتقال داده ها از طریق شبکه های اترنت توسعه یافته است. شامل 5 سطح

سطح 1 - رسانه انتقال - عملکردهای لایه های پیوند فیزیکی و داده را در مدل OSI پیاده سازی می کند:

* تبادل داده بین دستگاه و شبکه را مدیریت می کند.

* داده ها را بین دستگاه های موجود در یک شبکه مسیریابی می کند.

لایه 2 - کار اینترنتی - مربوط به لایه شبکه در مدل OSI است:

* تبادل داده بین دستگاه های واقع در شبکه های مختلف را مدیریت می کند (سرویس دیتاگرام را از نظر مدل IEEE ارائه می دهد).

* نحوه جریان داده ها از طریق شبکه را شرح می دهد.

لایه 3 - حمل و نقل - مربوط به لایه انتقال در مدل OSI است:

* ارتباط سرتاسری بین منبع داده و مقصد را فراهم می کند.

سطح 4 - کنترل - مربوط به سطوح جلسه و نماینده در مدل OSI است:

* نمایش داده ها را کنترل می کند.

* کنترل منابع دستگاه را مدیریت می کند.

سطح 5 - برنامه - مربوط به بالاترین سطوح در مدل OSI است:

* توابع پردازش داده را برای وظایف برنامه فراهم می کند.

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

TCP (پروتکل کنترل انتقال) یک پروتکل انتقال است که برای کنترل انتقال داده ها در شبکه ها با استفاده از پشته پروتکل TCP/IP طراحی شده است. IP (پروتکل اینترنت) یک پروتکل لایه شبکه است که برای ارائه داده ها روی یک شبکه ترکیبی با استفاده از یکی از پروتکل های انتقال مانند TCP یا UDP طراحی شده است.

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

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

نقطه ضعف پروتکل TCP/IP پیچیدگی مدیریت شبکه است. بله، برای عملکرد طبیعیشبکه به سرورهای اضافی مانند DNS، DHCP و غیره نیاز دارد که حفظ عملکرد آنها بیشتر زمان می برد. مدیر سیستم. Limoncelli T.، Hogan K.، Cheylap S. - مدیریت سیستم و شبکه. ویرایش دوم سال 2009. 944

پشته پروتکل IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) توسط Novell توسعه یافته و متعلق به آن است. برای نیازهای سیستم عامل Novell NetWare که تا همین اواخر یکی از موقعیت های پیشرو در بین سیستم عامل های سرور را اشغال می کرد، توسعه یافت.

پروتکل‌های IPX و SPX به ترتیب در لایه‌های شبکه و انتقال مدل ISO/OSI عمل می‌کنند و بنابراین کاملاً یکدیگر را تکمیل می‌کنند.

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

متأسفانه، پشته پروتکل IPX/SPX در ابتدا برای سرویس دهی به شبکه های کوچک طراحی شده است، بنابراین استفاده از آن در شبکه های بزرگ بی اثر است: استفاده بیش از حد از پخش در خطوط ارتباطی با سرعت پایین غیرقابل قبول است.

در لایه‌های پیوند فیزیکی و داده‌ای، پشته OSI از پروتکل‌های اترنت، Token Ring، FDDI و همچنین پروتکل‌های LLC، X.25 و ISDN پشتیبانی می‌کند، یعنی از تمام پروتکل‌های محبوب لایه پایین‌تر توسعه‌یافته خارج از پشته استفاده می‌کند. ، مانند اکثر پشته های دیگر. لایه شبکه شامل پروتکل شبکه اتصال گرا (CONP) و پروتکل شبکه بدون اتصال (CLNP) نسبتاً کم استفاده می شود. پروتکل های مسیریابی پشته OSI عبارتند از ES-IS (سیستم پایانی -- سیستم میانی) بین سیستم های پایانی و میانی و IS-IS (سیستم میانی -- سیستم میانی) بین سیستم های میانی. لایه انتقال پشته OSI تفاوت بین خدمات شبکه اتصال گرا و بدون اتصال را پنهان می کند تا کاربران بدون توجه به لایه شبکه زیربنایی کیفیت خدمات مورد نظر را دریافت کنند. برای ارائه این، لایه انتقال از کاربر می خواهد که کیفیت خدمات مورد نظر را مشخص کند. خدمات لایه برنامه انتقال فایل، شبیه سازی ترمینال، خدمات دایرکتوری و نامه را ارائه می دهند. از این میان، محبوب‌ترین آنها عبارتند از: سرویس دایرکتوری (استاندارد X.500)، پست الکترونیکی (X.400)، پروتکل ترمینال مجازی (VTP)، پروتکل انتقال فایل، دسترسی و مدیریت (FTAM)، پروتکل حمل و نقل و مدیریت کار (JTM) .

یک پشته پروتکل نسبتاً محبوب که به ترتیب توسط IBM و مایکروسافت با هدف استفاده در محصولات این شرکت ها توسعه یافته است. مانند TCP/IP، پروتکل‌های استاندارد مانند اترنت، Token Ring و سایر پروتکل‌ها در سطوح پیوند فیزیکی و داده‌ای پشته NetBIOS/SMB کار می‌کنند، که امکان استفاده از آن را در ارتباط با هر تجهیزات شبکه فعال می‌دهد. در سطوح بالا، پروتکل‌های NetBIOS (سیستم ورودی/خروجی پایه شبکه) و SMB (بلاک پیام سرور) کار می‌کنند.

پروتکل NetBIOS در اواسط دهه 80 قرن گذشته توسعه یافت، اما به زودی با پروتکل کاربردی تر NetBEUI (NetBIOS Extended User Interface) جایگزین شد، که امکان تبادل اطلاعات بسیار کارآمد را در شبکه هایی که شامل بیش از 200 رایانه نمی شود، داد.

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

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

با این حال، NetBEUI یک اشکال قابل توجه نیز دارد: کاملاً از مفهوم مسیریابی بسته خالی است، بنابراین استفاده از آن در شبکه های مرکب پیچیده منطقی نیست. Pyatibratov A.P., Gudyno L.P., Kirichenko A.A. کامپیوترها، شبکه ها و سیستم های مخابراتی مسکو 2009. 292

در مورد پروتکل SMB (Block Message Block)، از آن برای سازماندهی عملیات شبکه در سه سطح بالاتر - سطوح جلسه، ارائه و برنامه استفاده می شود. هنگامی که از آن استفاده می کنید، دسترسی به فایل ها، چاپگرها و دیگر منابع شبکه امکان پذیر می شود. این پروتکل چندین بار بهبود یافته است (سه نسخه منتشر شده است) که امکان استفاده از آن را حتی در سیستم عامل های مدرن مانند مایکروسافت ویستا و ویندوز 7 فراهم می کند. پروتکل SMB جهانی است و می تواند تقریباً با هر پروتکل حمل و نقل پشت سر هم کار کند. مانند TCP/IP و SPX.

پشته پروتکل DECnet (Digital Equipment Corporation net) شامل 7 لایه است. با وجود تفاوت در اصطلاح، لایه های DECnet بسیار شبیه به لایه های مدل OSI هستند. DECnet مفهوم معماری شبکه DNA (معماری شبکه دیجیتال) را که توسط DEC توسعه داده شده است، پیاده سازی می کند که بر اساس آن سیستم های محاسباتی ناهمگن (کامپیوترهای کلاس های مختلف)، که تحت سیستم عامل های مختلف کار می کنند، می توانند در اطلاعات توزیع شده جغرافیایی و شبکه های محاسباتی ترکیب شوند.

پروتکل IBM SNA (System Network Architecture) برای ارتباط از راه دور با کامپیوترهای بزرگ طراحی شده و شامل 7 لایه است. SNA بر اساس مفهوم ماشین میزبان است و دسترسی ترمینال از راه دور را به پردازنده های مرکزی IBM فراهم می کند. وجه تمایز اصلی SNA، توانایی هر ترمینال برای دسترسی به هر برنامه کاربردی کامپیوتر میزبان است. معماری شبکه سیستم بر اساس روش دسترسی مجازی مخابراتی (VTAM) در کامپیوتر میزبان پیاده سازی شده است. VTAM تمام پیوندها و پایانه های ارتباطی را مدیریت می کند و هر ترمینال به همه برنامه های کاربردی دسترسی دارد.

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

TCP/IP

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

پشته پروتکل شبکه TCP/IP دارای 4 سطح است:

  1. کانال (لینک).
  2. شبکه (اینترنت).
  3. حمل و نقل.
  4. کاربرد.

سطح کاربردی

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

  • HTTP؛
  • SMTP;

هر پروتکل نظم و اصول خود را برای کار با داده ها تعریف می کند.

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

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

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

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

سرتیتر

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

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

لایه حمل و نقل

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

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

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

UDP (User Datagram Protocol) دومین پروتکل محبوب است. همچنین وظیفه انتقال اطلاعات را بر عهده دارد. ویژگی متمایز آن در سادگی آن نهفته است. بسته ها به سادگی بدون ایجاد ارتباط خاصی ارسال می شوند.

TCP یا UDP؟

هر کدام از این پروتکل ها دامنه خاص خود را دارند. به طور منطقی با ویژگی های کار مشخص می شود.

مزیت اصلی UDP سرعت انتقال آن است. TCP یک پروتکل پیچیده با بررسی های زیاد است، در حالی که به نظر می رسد UDP ساده تر و در نتیجه سریعتر است.

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

به عنوان مثال، از UDP برای تماشای فیلم استفاده می شود. برای یک فایل ویدیویی، از دست دادن تعداد کمی از بخش ها حیاتی نیست، در حالی که سرعت بارگذاری مهم ترین عامل است.

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

لایه شبکه

لایه شبکه بسته هایی را از اطلاعات دریافتی تشکیل می دهد و یک هدر اضافه می کند. مهمترین بخش داده ها آدرس IP و MAC فرستنده و گیرنده است.

آدرس IP (آدرس پروتکل اینترنت) - آدرس منطقی دستگاه. حاوی اطلاعاتی درباره مکان دستگاه در شبکه است. ورودی مثال: .

آدرس MAC (آدرس کنترل دسترسی رسانه) - آدرس فیزیکی دستگاه. برای شناسایی استفاده می شود. در مرحله ساخت به تجهیزات شبکه اختصاص داده شده است. به صورت یک عدد شش بایتی ارائه می شود. مثلا: .

لایه شبکه مسئول موارد زیر است:

  • تعیین مسیرهای تحویل
  • انتقال بسته ها بین شبکه ها
  • اختصاص آدرس های منحصر به فرد

روترها دستگاه های لایه شبکه هستند. آنها راه را بین کامپیوتر و سرور بر اساس داده های دریافتی هموار می کنند.

محبوب ترین پروتکل در این سطح IP است.

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

انواع آدرس های IP

دو نوع آدرس IP در شبکه ها استفاده می شود:

  1. عمومی.
  2. خصوصی.

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

خصوصی (Private) در اینترنت استفاده نمی شود. در شبکه جهانی، چنین آدرس هایی منحصر به فرد نیستند. مثال - شبکه محلی. به هر دستگاه یک آدرس IP منحصر به فرد در یک شبکه داده شده اختصاص داده می شود.

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

IPv4

رایج ترین نسخه پروتکل اینترنت. مربوط به IPv6 است. فرمت ضبط چهار عدد هشت بیتی است که با نقطه از هم جدا شده اند. ماسک زیر شبکه از طریق علامت کسری نشان داده می شود. طول آدرس 32 بیت است. در اکثریت قریب به اتفاق موارد، زمانی که ما در مورددر مورد آدرس IP، منظور ما IPv4 است.

فرمت ضبط: .

IPv6

این نسخه برای حل مشکلات در نظر گرفته شده است نسخه پیشین. طول آدرس 128 بیت است.

مشکل اصلی که IPv6 حل می کند، فرسودگی آدرس های IPv4 است. پیش نیازها از اوایل دهه 80 شروع به ظاهر شدن کردند. علیرغم اینکه این مشکل در سالهای 2007-2009 وارد مرحله حاد شده است، پیاده سازی IPv6 بسیار آهسته در حال افزایش است.

مزیت اصلی IPv6 اتصال سریعتر به اینترنت است. دلیلش این است که این نسخه از پروتکل نیازی به ترجمه آدرس ندارد. مسیریابی ساده انجام می شود. این هزینه کمتر است و بنابراین دسترسی به منابع اینترنتی سریعتر از IPv4 فراهم می شود.

ورودی مثال: .

سه نوع آدرس IPv6 وجود دارد:

  1. Unicast.
  2. Anycast.
  3. چندپخشی.

Unicast نوعی IPv6 unicast است. هنگام ارسال، بسته فقط به واسط واقع در آدرس مربوطه می رسد.

Anycast به آدرس های چندپخشی IPv6 اشاره دارد. بسته ارسال شده به نزدیکترین رابط شبکه می رود. فقط توسط روترها استفاده می شود.

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

پوشش زیر شبکه

زیر شبکه ماسک زیر شبکه و شماره میزبان را از آدرس IP تعیین می کند.

به عنوان مثال، یک آدرس IP دارای یک ماسک است. در این حالت، فرمت ضبط به این صورت خواهد بود. عدد "24" تعداد بیت های موجود در ماسک است. هشت بیت برابر با یک اکتت است که می توان آن را بایت نیز نامید.

با جزئیات بیشتر، ماسک زیر شبکه را می توان در سیستم اعداد باینری به صورت زیر نشان داد: . دارای چهار اکتت است و ورودی شامل "1" و "0" است. اگر تعداد واحدها را جمع کنیم، مجموعاً "24" به دست می آید. خوشبختانه، شما مجبور نیستید با یک بشمارید، زیرا 8 مقدار در یک اکتت وجود دارد. می بینیم که سه مورد از آنها با یک پر شده است، آنها را جمع کرده و "24" به دست می آوریم.

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

بیایید به یک مثال کوچک نگاه کنیم. یک آدرس IP و یک ماسک زیر شبکه وجود دارد. می شمردیم و می نویسیم: . اکنون ماسک را با آدرس IP مطابقت می دهیم. آن اکتت های ماسکی که در آنها همه مقادیر برابر با یک (255) هستند، اکتت های مربوطه خود را در آدرس IP بدون تغییر می گذارند. اگر مقدار صفر (0) باشد، اکتت در آدرس IP نیز صفر می شود. بنابراین، در مقدار آدرس زیر شبکه دریافت می کنیم.

زیر شبکه و میزبان

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

میزبان آدرس رابط شبکه است ( کارت شبکه). از آدرس IP با استفاده از یک ماسک تعیین می شود. مثلا: . از آنجایی که سه اکتت اول زیرشبکه هستند، این کار را ترک می کند. این شماره میزبان است.

محدوده آدرس های میزبان از 0 تا 255 است. میزبان شماره "0" در واقع آدرس خود زیرشبکه است. و میزبان شماره "255" یک پخش کننده است.

خطاب به

سه نوع آدرس برای آدرس دهی در پشته پروتکل TCP/IP استفاده می شود:

  1. محلی.
  2. شبکه.
  3. نام های دامنه

آدرس های مک محلی نامیده می شوند. آنها برای آدرس دهی در فناوری های شبکه محلی مانند اترنت استفاده می شوند. در زمینه TCP/IP، کلمه "محلی" به این معنی است که آنها فقط در یک زیر شبکه عمل می کنند.

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

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

دامنه سطح اول نشان دهنده اطلاعات خاص. عمومی (.org، .net) با هیچ مرز سختی محدود نمی شود. وضعیت برعکس در مورد محلی ها (.us، .ru) است. آنها معمولاً موضعی هستند.

دامنه های سطح پایین همه چیز دیگری هستند. می تواند هر اندازه ای باشد و حاوی هر تعداد ارزش باشد.

به عنوان مثال، "www.test.quiz.sg" یک نام دامنه صحیح است، که در آن "sg" یک دامنه سطح اول محلی (بالا) است، "quiz.sg" یک دامنه سطح دوم، "test.quiz.sg" است. دامنه سطح سوم است. نام های دامنه ممکن است نام های DNS نیز نامیده شوند.

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

لایه پیوند داده

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

رایج ترین پروتکل ها:

  1. شبکه محلی کابلی.
  2. WLAN.

اترنت رایج ترین فناوری شبکه سیمی است.

WLAN - مبتنی بر شبکه محلی فناوری های بی سیم. دستگاه‌ها بدون اتصال کابل فیزیکی با یکدیگر تعامل دارند. نمونه ای از رایج ترین روش ها Wi-Fi است.

پیکربندی TCP/IP برای استفاده از آدرس IPv4 ثابت

یک آدرس IPv4 ثابت مستقیماً در تنظیمات دستگاه یا به طور خودکار هنگام اتصال به شبکه اختصاص داده می شود و دائمی است.

برای پیکربندی پشته پروتکل TCP/IP برای استفاده از آدرس IPv4 دائمی، دستور ipconfig/all را در کنسول وارد کنید و داده های زیر را پیدا کنید.

پیکربندی TCP/IP برای استفاده از آدرس IPv4 پویا

یک آدرس IPv4 پویا برای مدتی استفاده می شود، اجاره داده می شود و سپس تغییر می کند. هنگام اتصال به شبکه به طور خودکار به دستگاه اختصاص داده می شود.

برای پیکربندی پشته پروتکل TCP/IP برای استفاده از یک آدرس IP غیر دائمی، باید به ویژگی های اتصال مورد نظر بروید، ویژگی های IPv4 را باز کنید و کادرها را همانطور که نشان داده شده است علامت بزنید.

روش های انتقال داده

داده ها از طریق رسانه فیزیکی به سه روش منتقل می شوند:

  • سیمپلکس.
  • نیم دوبلکس.
  • فول دوبلکس.

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

نمونه هایی از ارتباطات سیمپلکس:

  • پخش تلویزیونی.
  • سیگنال از ماهواره های GPS.

Half-Duplex یک ارتباط دو طرفه است. با این حال، تنها یک گره می تواند سیگنال را در یک زمان ارسال کند. با این نوع ارتباط، دو دستگاه نمی توانند همزمان از یک کانال استفاده کنند. یک کامل ممکن است از نظر فیزیکی غیرممکن باشد یا منجر به برخورد شود. گفته می شود که آنها بر سر رسانه انتقال اختلاف دارند. این حالت در هنگام استفاده از کابل کواکسیال استفاده می شود.

یک مثال از ارتباطات نیمه دوبلکس، ارتباط از طریق واکی تاکی در یک فرکانس است.

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

یک مثال از ارتباطات دوبلکس، ارتباط تلفنی از طریق شبکه تلفن همراه است.

TCP/IP در مقابل OSI

مدل OSI اصول انتقال داده را تعریف می کند. لایه های پشته پروتکل TCP/IP مستقیماً با این مدل مطابقت دارند. برخلاف TCP/IP چهار لایه، دارای 7 لایه است:

  1. فیزیکی.
  2. کانال (دیتا لینک).
  3. شبکه.
  4. حمل و نقل.
  5. جلسه.
  6. ارائه.
  7. کاربرد.

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

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

لایه انتقال بدون تغییر باقی می ماند. همان توابع را انجام می دهد.

لایه شبکه نیز بدون تغییر است. دقیقاً همان وظایف را انجام می دهد.

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

فیزیکی خود را نشان می دهد ارتباط فیزیکی- سیگنال های الکتریکی، کانکتورها و غیره در پشته پروتکل TCP/IP، تصمیم گرفته شد که این دو لایه را در یک لایه ترکیب کنیم، زیرا هر دو با رسانه فیزیکی سروکار دارند.

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

شکل 1 – نمودار تعمیم یافته اینترنت

اینترنت تبادل اطلاعات بین تمامی رایانه های متصل به آن را تضمین می کند. نوع کامپیوتر و سیستم عاملی که استفاده می کند مهم نیست.

سلول های اصلی اینترنت شبکه های محلی (LAN – Local Area Network) هستند. اگر یک شبکه محلی مستقیماً به اینترنت متصل باشد، هر ایستگاه کاری در این شبکه نیز می تواند به آن متصل شود. همچنین رایانه هایی وجود دارند که به طور مستقل به اینترنت متصل هستند. آنها نامیده می شوند کامپیوترهای میزبان(میزبان - مالک).

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

یکی از ویژگی های مهم اینترنت این است که در حین اتصال شبکه های مختلف، هیچ سلسله مراتبی ایجاد نمی کند - همه رایانه های متصل به شبکه دارای حقوق برابر هستند.

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

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

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

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

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

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

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

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

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

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

پروتکل TCP. طبق پروتکل TCP , داده های ارسال شده به بسته های کوچک "بریده" می شوند و پس از آن هر بسته علامت گذاری می شود تا حاوی داده های لازم برای مونتاژ صحیح سند در رایانه گیرنده باشد.

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

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

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

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

پشته پروتکل TCP/IP

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

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

پشته پروتکل TCP/IP شامل چهار لایه است:

  • سطح کاربردی
  • لایه حمل و نقل
  • لایه شبکه (لایه اینترنت)،
  • لایه پیوند

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

میز 1- مقایسه پشته پروتکل TCP/IP و مدل مرجع OSI

سطح کاربردی

لایه Application جایی است که اکثر برنامه های کاربردی شبکه در آن کار می کنند.

این برنامه ها پروتکل های ارتباطی خود را دارند، مانند HTTP برای WWW، FTP (انتقال فایل)، SMTP (ایمیل)، SSH (اتصال ایمن به یک ماشین راه دور)، DNS (نگاشت نام های نمادین به آدرس های IP) و بسیاری دیگر.

در بیشتر موارد، این پروتکل ها در بالای TCP یا UDP کار می کنند و به یک پورت خاص متصل می شوند، به عنوان مثال:

  • پورت HTTP به TCP 80 یا 8080،
  • پورت FTP به TCP 20 (برای انتقال داده) و 21 (برای دستورات کنترل)،
  • پرس و جوهای DNS در پورت 53 UDP (کمتر TCP)،

لایه حمل و نقل

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

پروتکل های مسیریابی خودکار که به طور منطقی در این لایه نشان داده شده اند (چون روی IP اجرا می شوند) در واقع بخشی از پروتکل های لایه شبکه هستند. به عنوان مثال OSPF (IP ID 89).

TCP (IP ID 6) - "تضمین شده" مکانیزم حمل و نقلاتصال از قبل برقرار شده است، برنامه را با یک جریان داده قابل اعتماد ارائه می دهد، اطمینان می دهد که داده های دریافتی بدون خطا هستند، درخواست مجدد داده در صورت از دست رفتن، و حذف تکراری داده ها. TCP به شما این امکان را می دهد که بار روی شبکه را تنظیم کنید و همچنین تأخیر داده ها را هنگام انتقال در فواصل طولانی کاهش دهید. علاوه بر این، TCP تضمین می کند که داده های دریافتی دقیقاً به همان ترتیب ارسال شده اند. این تفاوت اصلی آن با UDP است.

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

UDP معمولاً در برنامه‌هایی مانند پخش ویدیو و بازی‌های رایانه‌ای استفاده می‌شود، جایی که از دست دادن بسته قابل قبول است و تلاش مجدد دشوار یا غیرقابل توجیه است، یا در برنامه‌های کاربردی پاسخگوی چالش (مانند پرس‌وجوهای DNS) که در آن ایجاد یک اتصال منابع بیشتری نسبت به ارسال مجدد نیاز دارد.

هر دو TCP و UDP از شماره ای به نام پورت برای شناسایی پروتکل لایه بالایی خود استفاده می کنند.

لایه شبکه

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

ICMP و IGMP بالای IP قرار دارند و باید به لایه انتقال بعدی بروند، اما از نظر عملکردی پروتکل های لایه شبکه هستند و بنابراین نمی توانند در مدل OSI قرار بگیرند.

بسته های پروتکل شبکه IP ممکن است حاوی کدی باشند که نشان می دهد از کدام پروتکل لایه بعدی برای استخراج داده ها از بسته استفاده کنید. این عدد منحصر به فرد است شماره پروتکل IP. ICMP و IGMP به ترتیب 1 و 2 شماره گذاری شده اند.

لایه پیوند داده

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

نمونه‌هایی از پروتکل‌های لایه پیوند عبارتند از اترنت، وای‌فای، فریم رله، حلقه توکن، ATM و غیره.

لایه پیوند داده گاهی اوقات به 2 لایه فرعی تقسیم می شود - LLC و MAC.

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

کپسوله سازی

کپسوله‌سازی بسته‌بندی یا تودرتو کردن بسته‌های سطح بالا (احتمالاً از پروتکل‌های مختلف) در بسته‌های یک پروتکل (سطح پایین)، از جمله آدرس است.

به عنوان مثال، هنگامی که یک برنامه نیاز به ارسال پیام با استفاده از TCP دارد، دنباله اقدامات زیر انجام می شود (شکل 2):

شکل 2 - فرآیند کپسولاسیون

  • اول از همه، برنامه یک ساختار داده خاص را پر می کند که در آن اطلاعاتی در مورد گیرنده (پروتکل شبکه، آدرس IP، پورت TCP) نشان می دهد.
  • پیام، طول و ساختار آن را با اطلاعاتی در مورد گیرنده به کنترل کننده پروتکل TCP (لایه انتقال) منتقل می کند.
  • کنترل کننده TCP قطعه ای را تولید می کند که در آن پیام داده است و سربرگ ها حاوی پورت TCP گیرنده (و همچنین سایر داده ها) هستند.
  • کنترل کننده TCP بخش تولید شده را به کنترل کننده IP (لایه شبکه) منتقل می کند.
  • کنترل کننده IP بخش ارسال شده TCP را به عنوان داده تلقی می کند و قبل از آن با هدر آن (که به ویژه شامل آدرس IP گیرنده است که از همان ساختار داده برنامه گرفته شده است و شماره پروتکل بالایی را شامل می شود) قرار می گیرد.
  • کنترل کننده IP بسته دریافتی را به لایه پیوند داده ارسال می کند، که دوباره این بسته را به عنوان داده "خام" در نظر می گیرد.
  • کنترل کننده سطح پیوند، مشابه کنترل کننده های قبلی، هدر خود را به ابتدا اضافه می کند (که همچنین شماره پروتکل سطح بالایی را نشان می دهد، در مورد ما 0x0800 (IP) است) و در بیشتر موارد، جمع نهایی را اضافه می کند، بنابراین تشکیل یک قاب؛
  • سپس فریم دریافتی به لایه فیزیکی منتقل می شود که بیت ها را به سیگنال های الکتریکی یا نوری تبدیل کرده و به محیط انتقال می فرستد.

در سمت دریافت کننده، فرآیند معکوس (از پایین به بالا)، به نام decapsulation، انجام می شود تا بسته بندی داده ها را باز کرده و به برنامه ارائه دهد.

اطلاعات مربوطه:



2015-2020 lektsii.org -

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

لایه نمایشی به شکل ارائه اطلاعات به سطوح پایین تر، به عنوان مثال، رمزگذاری مجدد یا رمزگذاری اطلاعات سر و کار دارد.

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

لازم به ذکر است که برخی از شبکه ها خیلی زودتر از توسعه مدل OSI ظاهر شدند، بنابراین برای بسیاری از سیستم ها مطابقت بین لایه های مدل OSI بسیار مشروط است.

1.3. پشته پروتکل اینترنت

اینترنت برای انتقال هر نوع اطلاعاتی از منبع به گیرنده طراحی شده است. عناصر مختلف شبکه (شکل 1.1) - دستگاه های پایانه، دستگاه های سوئیچینگ و سرورها - در انتقال اطلاعات نقش دارند. گروه‌هایی از گره‌ها با استفاده از دستگاه‌های سوئیچینگ در یک شبکه محلی متحد می‌شوند؛ شبکه‌های محلی توسط دروازه‌ها (روترها) به هم متصل می‌شوند. دستگاه های سوئیچینگ از فناوری های مختلفی استفاده می کنند: اترنت، Token Ring، FDDI و غیره.

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

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

گره ها، از دیدگاه شبکه، منابع و گیرنده های اطلاعات را نشان می دهند. چهار سطح پایین در مجموع مستقل از نوع اطلاعات ارسال شده هستند. هر برنامه شبکه ای که با لایه 4 ارتباط برقرار می کند با شماره پورت منحصر به فرد خود شناسایی می شود. مقادیر پورت از 0 تا 65535 را اشغال می کند. در این محدوده، شماره پورت 0-1023 برای برنامه های معروف شبکه اختصاص داده شده است، شماره پورت های 1024-49151 توسط توسعه دهندگان نرم افزارهای تخصصی استفاده می شود، شماره پورت های 49152-65535 به صورت پویا هستند. در طول جلسه ارتباط به کاربران برنامه های شبکه اختصاص داده می شود. مقادیر عددی اعداد درگاه پشته در آورده شده است.

لایه حمل و نقل (چهارم) از دو حالت ارتباطی پشتیبانی می کند

– با برقراری اتصال و بدون برقراری اتصال. هر حالت با شماره پروتکل خود (پروتکل) مشخص می شود. استانداردهای اینترنت از رمزگذاری هگزادسیمال استفاده می کنند. حالت اول توسط ماژول TCP استفاده می شود که دارای کد پروتکل 6 (در کد هگزادسیمال - 0x06) است و برای انتقال تضمینی اطلاعات استفاده می شود. برای انجام این کار، هر بسته ارسال شده با یک شماره دنباله ارائه می شود و باید تایید شود.

______________________________________________________________________________

طرف دریافت کننده در مورد دریافت صحیح آن حالت دوم توسط ماژول UDP بدون تضمین تحویل اطلاعات به گیرنده استفاده می شود (ضمانت تحویل توسط برنامه ارائه می شود). پروتکل UDP دارای کد 17 است (در کد هگزادسیمال 0x11 است).

کاربردی

نماینده

جلسه

DHCP (پورت = 67/68)

حمل و نقل

پروتکل = 0x0059

پروتکل = 0x0002

پروتکل = 0x0001

نوع پروتکل = 0x0806

نوع پروتکل = 0x0800

مجرا

مجرا

مجرا

فیزیکی

مجرا

کابل، جفت پیچ خورده اترنت، فیبر نوری

کابل فیزیکی، جفت پیچ خورده، فیبر نوری

فیزیکی

کابل، جفت پیچ خورده، فیبر نوری

فیزیکی

کابل، رادیو، فیبر نوری

برنج. 1.3. پشته اصلی پروتکل اینترنت

______________________________________________________________________________

لایه شبکه (سوم) حرکت اطلاعات را در قالب بسته ها بین شبکه ها (واسط های لایه پیوند) با استفاده از آدرس شبکه تضمین می کند. خانواده پروتکل لایه 3 توسط لایه های زیرین با نوع پروتکل (ARP - نوع 0x0806 یا IP - نوع 0x0800) شناسایی می شود. ترکیب "پروتکل - آدرس شبکه - شماره پورت" سوکت نامیده می شود. یک جفت سوکت - ارسال کننده و دریافت کننده - به طور منحصر به فرد اتصال برقرار شده را تعیین می کند. آدرس مقصد هر بسته‌ای که از لایه پیوند به ماژول IP می‌رسد برای فهمیدن اینکه بسته باید کجا ارسال شود: به برنامه خودش یا به رابط دیگری برای انتقال بیشتر از طریق شبکه منتقل می‌شود، تجزیه و تحلیل می‌شود.

سطح دوم (پیوند) بسته ها را در شبکه محلی با استفاده از فناوری های مختلف پردازش می کند: اترنت، Token Ring، FDDI و غیره. سطح اول تبدیل کدهای باینری به کدهای خطی را تضمین می کند که برای رسانه حمل و نقل مورد استفاده (کابل فلزی، خط ارتباطی فیبر نوری، کانال رادیویی) مناسب هستند.

سوالات بخش 1.3

1. چه چیزی امکانات لایه شبکه را برای پردازش بسته هایی که از لایه پیوند داده می آیند تعریف می کند؟

پاسخ. نوع پروتکل: 0x0806 – برای ARP و 0x0800 – برای IP.

2. چه چیزی ابزار لایه انتقال را برای پردازش بسته‌های ارسالی از لایه شبکه تعیین می‌کند؟

پاسخ. شماره پروتکل: 0x0006 - برای TCP و 0x0011 - برای UDP.

3. چه چیزی نوع کاربرد شبکه را برای پردازش دیتاگرام تعیین می کند؟

پاسخ. شماره پورت

4. مثال هایی از شماره پورت برای برنامه های کاربردی در سطح شبکه ارائه دهید.

پاسخ: پورت 80 – HTTP، پورت 23 – TELNET، پورت 53 – DNS.

1.4. پروتکل های دسترسی به اینترنت

برای دسترسی به اینترنت از خانواده ای از پروتکل ها با نام عمومی PPP (پروتکل نقطه به نقطه) استفاده می شود که عبارتند از:

1. پروتکل کنترل پیوند (LCP) برای هماهنگی پارامترهای تبادل بسته در لایه پیوند در بخش سرور دسترسی به شبکه میزبان (به ویژه برای هماهنگی اندازه بسته و نوع پروتکل احراز هویت).

2. پروتکل احراز هویت برای ایجاد مشروعیت کاربر (به طور خاص، با استفاده از پروتکل احراز هویت Challenge Handshake - CHAP).

3. پروتکل کنترل شبکه (IP Control Protocol - IPCP) برای پیکربندی پارامترهای تبادل شبکه (به ویژه تخصیصآدرس های IP).

پس از این، تبادل اطلاعات از طریق پروتکل IP آغاز می شود.

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

HDLC.

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

Yu.F.Kozhanov، Kolbanev M.O رابط ها و پروتکل های شبکه های نسل بعدی

______________________________________________________________________________

برنج. 1.4. ساختار میدان قاب HDLC

هر فریم ارسالی باید با ترکیب "پرچم" شروع و پایان یابد، که ساختار بیتی به شکل 01111110 (0x7e) دارد. از همان ترکیب پرچم می‌توان به عنوان بسته‌کننده برای یک فریم و بازکننده برای فریم بعدی استفاده کرد. ترکیبات "پرچم" باید توسط طرف گیرنده شناسایی شوند تا مرزهای فریم را تعیین کنند. برای اطمینان از انتقال اطلاعات مستقل از کد، لازم است از فیلدهای بعدی قاب تمام ترکیباتی که با کاراکترهای سرویس منطبق هستند حذف شوند (به عنوان مثال، ترکیب "پرچم").

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

که در حالت سنکرون نیز استفاده می شوددرج بایت یا درج بیت. در حالت اول، دنباله های بایت 0x7e ("پرچم") در فیلدهای فریم با دنباله های 2 بایتی 0x7d و 0x5e، 0x7d با 0x7d و 0x5d، 0x03 با 0x7d و 0x23 جایگزین می شوند. در حالت دوم، پس از تشکیل تمام فیلدهای فریم، اسکن بیت به بیت از محتویات هر فریم بین ترکیبات "پرچم" انجام می شود و پس از هر پنج "یک" مجاور، یک بیت "صفر" درج می شود. ” بیت ها هنگام رمزگشایی یک فریم در هنگام دریافت، یک اسکن بیت به بیت از محتویات قاب بین ترکیبات "پرچم" انجام می شود و بیت "صفر" پس از هر پنج بیت "یک" مجاور حذف می شود.

فیلد Address دارای مقدار ثابت 11111111 (0xff) و قسمت Control دارای مقدار ثابت 00000011 (0x03) است.

فیلد پروتکل مقدار 0xc021 برای پروتکل LCP، 0xc223 برای پروتکل CHAP، 0x8021 برای IPCP و 0x0021 برای پروتکل IP می گیرد.

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

دنباله بررسی فریم (FCS) روی انتقال به گونه ای شکل می گیرد که الف) هنگام ضرب اطلاعات بین پرچم ها در X16 و ب) مدول تقسیم بعدی 2 توسط چند جمله ای ایجاد کننده X16 + X12 + X5 + 1، نتیجه برابر با عدد ثابت 0xf0b8.

روند دسترسی مشترک PSTN به اینترنت شامل چندین مرحله است. مرحله اول از پروتکل LCP (Protocol = 0xc021) استفاده می کند که

از فرمت زیر استفاده می کند (شکل 1.5).

برنج. 1.5. فرمت قاب LCP

فیلد پروتکل مقدار 0xc021 را می گیرد. هر پیام با کد (کد)، شماره توالی (ID) و طول (طول) مشخص می شود. طول پیام شامل تمام فیلدها از کد تا FCS است. یک پیام ممکن است شامل چندین پارامتر باشد که هر کدام با نوع پارامتر (Type) مشخص می شود.

طول (طول) و داده (تاریخ).

(Configure-Nak)، 04 – امتناع پیکربندی (Configure-Reject)، 05 – درخواست قطع اتصال (Terminate-Request)، 06 – تایید قطع اتصال (Terminate-Ack).

نمودار کاملی از تعامل بین دستگاه ترمینال (Host)، سرور دسترسی به شبکه (NAS) و سرور احراز هویت، مجوز و حسابداری (AAA) هنگام سازماندهی دسترسی مشترک PSTN به اینترنت در شکل نشان داده شده است. 1.6.

______________________________________________________________________________

از شکل 1.6 مشخص است که در ابتدا میزبان از طریق پروتکل LCP (Protocol = 0xc021) درخواست اتصال با پارامترهای MTU=300, PFC=7 را داشته است، اما در نتیجه هماهنگی آنها با سرور دسترسی NAS (کد=02) ، پارامترهای MTU=200 (MTU - حداکثر اندازهبسته در بایت)، پروتکل احراز هویت - CHAP (Auth.prot=c223). تبادل هدرهای فشرده (PFC=7) توسط سرور دسترسی NAS رد شد (کد=04).

نوع = 3، آدرس IP = a.b.c.d، ماسک،

پروتکل = 0xc021، کد = 04،

پروتکل = 0xc021، کد = 01،

نوع = 1، MTU=300

پروتکل = 0xc021، کد = 03،

نوع = 1، MTU=200

پروتکل = 0xc021، کد = 01،

نوع = 1، MTU=200

پروتکل = 0xc021، کد = 02،

نوع = 1، MTU=200

پروتکل = 0xc021، کد = 01،

پروتکل = 0xc021، کد = 02،

نوع = 3، Auth.prot=0xc223، الگوریتم=5

پروتکل = 0xc223، کد = 01،

پروتکل = 0xc223، کد = 02،

Prot=UDP، کد=01،

Name=ABC، Value=W

Auth = 0، Attr = نام، Chall=V

Prot=UDP، کد=02،

IP-address=a.b.c.d، ماسک،

Prot=UDP, code=05, Data

پروتکل = 0x0021، ...

پروتکل =0x0021، ...

پروتکل = 0xc021، کد = 05،

1994، DS]. ماهیت روش احراز هویت این است که NAS یک عدد تصادفی V را به میزبان می فرستد و میزبان عدد W دیگری را برمی گرداند که توسط یک تابع شناخته شده قبلی با استفاده از نام و رمز عبور محاسبه شده است که توسط کاربر از طریق کامپیوتر وارد کامپیوتر می شود. کارت اینترنتی خریداری شده از ارائه دهنده به عبارت دیگر W=f(V، نام، رمز عبور). فرض بر این است که یک مهاجم (هکر) می تواند مقادیر V، Name و W ارسال شده از طریق شبکه را رهگیری کند و الگوریتم محاسبه تابع f را می داند. ماهیت تشکیل W این است که عناصر اولیه (بیت ها) عدد تصادفی V به طرق مختلف با عناصر رمز عبور ناشناخته برای مهاجم ترکیب می شوند. سپس متن رمزی به دست آمده فشرده می شود، مانند اضافه کردن بایت های مدول دو. این تبدیل تابع هضم یا تابع هش نامیده می شود و نتیجه یک هضم است. روش دقیق تولید هضم توسط الگوریتم MD5 تعیین شده و در شرح داده شده است. NAS با استفاده از پروتکل RADIUS مقدار واقعی W را از سرور AAA درخواست می کند و مقادیر Name و Challenge=V را برای آن ارسال می کند. سرور AAA بر اساس مقادیر V و Name دریافتی از NAS و رمز عبوری که در پایگاه داده دارد، از همان الگوریتم برای محاسبه W و ارسال آن به NAS استفاده می کند. NAS دو مقدار W دریافت شده از میزبان و از سرور AAA را مقایسه می کند: اگر مطابقت داشته باشند، پیامی در مورد احراز هویت موفقیت آمیز به میزبان ارسال می شود - Success (کد=03).

در مرحله سوم، پیکربندی رخ می دهد پارامترهای شبکهاز طریق پروتکل IPCP (با نام مستعار PPP IPC، پروتکل = 0x8021). میزبان آدرس های IP شبکه را از NAS درخواست می کند و NAS یک آدرس IP برای میزبان از استخر (محدوده) (IP-address=a.b.c.d) اختصاص می دهد، و

همچنین آدرس IP سرور DNS (IP-address=e.f.g.h) را گزارش می کند. NAS از طریق پروتکل RADIUS

یک اعلان (Code=04) به سرور AAA در مورد شروع شارژ می فرستد و تاییدیه (Code=05) را دریافت می کند.

در مرحله چهارم، کاربر یک جلسه ارتباطی با اینترنت را از طریق پروتکل IP (پروتکل = 0x0021) آغاز می کند.

پس از اتمام جلسه (مرحله 5)، کاربر از طریق پروتکل LCP (کد=05) پیغام شکست اتصال را به NAS ارسال می کند، NAS این پیام را تأیید می کند (کد=06)، اعلان پایان شارژ را به سرور AAA و تاییدیه را از آن دریافت می کند. همه دستگاه ها به حالت اولیه خود برمی گردند.

سوالات بخش 1.4

1. ترکیب و هدف خانواده پروتکل های PPP را نام ببرید.

پاسخ. LCP - برای مذاکره در مورد پارامترهای تبادل بسته، CHAP - برای ایجاد مشروعیت کاربر، IPCP - برای اختصاص یک آدرس IP.

2. آیا PPP تشخیص خطا و تحویل منظم بسته ها را فراهم می کند؟

پاسخ. تشخیص خطا - بله، تحویل منظم - خیر، این توسط پروتکل TCP ارائه شده است.

3. اطلاعات احراز هویت کاربر در کجا ذخیره می شود؟

پاسخ. روی نقشه اینترنت و روی سرور AAA.

4. آیا می توان قبل از برقراری ارتباط با سرور NAS آدرس IP کاربر را تعیین کرد؟

پاسخ: خیر. پس از احراز هویت موفق، NAS یک آدرس IP رایگان از محدوده آدرس اختصاص داده شده صادر می کند.

5. چه روش هایی برای محاسبه هزینه اتصال به اینترنت استفاده می شود؟ پاسخ: معمولاً به ازای حجم دریافتی، هزینه اشتراک یا هزینه ای دریافت می شود

از سوکت گرفته تا درایورهای دستگاه

مقدمه ای بر پروتکل ها

در حالی که مقدمه رسمی شبکه به مدل Open Systems Interconnection (OSI) اشاره دارد، این مقدمه به پشته شبکه اصلی لینوکس از یک مدل چهار لایه ای استفاده می کند که به مدل اینترنت معروف است (شکل 1 را ببینید).

شکل 1. مدل اینترنت پشته شبکه

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

در اصل، لایه های پشته شبکه تحت نام های قابل تشخیص تری قرار می گیرند. در لایه پیوند داده، اترنت، رایج ترین رسانه پرسرعت را خواهید یافت. پروتکل های لایه پیوند قدیمی شامل پروتکل های سریالی مانند پروتکل اینترنت خط سریال (SLIP)، SLIP فشرده (CSLIP) و پروتکل نقطه به نقطه (PPP) می باشند. رایج ترین پروتکل لایه شبکه، پروتکل اینترنت (IP) است، اما موارد دیگری نیز وجود دارند که نیازهای دیگری را برآورده می کنند، مانند پروتکل پیام کنترل اینترنت (ICMP) و پروتکل وضوح آدرس (ARP). در لایه انتقال، اینها پروتکل کنترل انتقال (TCP) و پروتکل دیتاگرام کاربر (UDP) هستند. در نهایت، لایه برنامه شامل بسیاری از پروتکل‌هایی است که ما با آنها آشنا هستیم، از جمله HTTP، یک پروتکل استاندارد وب، و SMTP (پروتکل انتقال ایمیل ساده)، یک پروتکل انتقال ایمیل.

معماری شبکه اصلی

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

شکل 2. معماری سطح بالا پشته شبکه لینوکس

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

رابط تماس سیستمی

رابط تماس سیستم را می توان از دو منظر توصیف کرد. هنگامی که یک تماس شبکه توسط کاربر برقرار می شود، از طریق یک فراخوانی سیستمی به هسته متصل می شود. این به عنوان یک فراخوانی به sys_socketcall در ./net/socket.c خاتمه می یابد، که سپس تماس را با هدف مورد نظر از حالت مولتی پلکس خارج می کند. دیدگاه دیگر در رابط تماس سیستم، استفاده از عملیات عادی فایل برای ورودی/خروجی شبکه (I/O) است. به عنوان مثال، عملیات خواندن و نوشتن معمولی را می توان بر روی یک سوکت شبکه (که توسط یک توصیفگر فایل به عنوان یک فایل عادی نشان داده می شود) انجام داد. بنابراین، در حالی که عملیات خاصی برای شبکه وجود دارد (ایجاد یک سوکت با یک تماس به سوکت، مرتبط کردن آن با یک دسته با یک تماس برای اتصال، و غیره)، تعدادی عملیات استاندارد فایل نیز وجود دارد که برای اشیاء شبکه اعمال می شود. آنها فایل های معمولی بودند. در نهایت، رابط فراخوانی سیستم وسیله ای برای انتقال کنترل بین یک برنامه کاربردی فضای کاربر و هسته فراهم می کند.

رابط آگنوستیک پروتکل

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

ارتباط از طریق پشته شبکه از طریق یک سوکت انجام می شود. ساختار سوکت در لینوکس struct sock است که در linux/include/net/sock.h تعریف شده است. این ساختار بزرگ شامل تمام حالت های لازم برای یک سوکت، از جمله پروتکل خاصی است که سوکت استفاده می کند و عملیاتی که می توان روی آن انجام داد.

زیرسیستم شبکه در مورد پروتکل های موجود از ساختار خاصی که قابلیت های آن را تعریف می کند اطلاع دارد. هر پروتکل دارای ساختاری به نام پروتو است (که در linux/include/net/sock.h یافت می شود). این ساختار عملیات جداگانه سوکت را که می توان از لایه سوکت به لایه انتقال انجام داد (به عنوان مثال نحوه ایجاد سوکت، نحوه برقراری اتصال به سوکت، نحوه بستن سوکت و غیره) تعریف می کند.

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

بخش پروتکل های شبکه تک تک پروتکل های شبکه موجود (مانند TCP، UDP و غیره) را تعریف می کند. آنها در ابتدای روز در تابع inet_init در linux/net/ipv4/af_inet.c مقداردهی اولیه می شوند (از آنجایی که TCP و UDP در خانواده پروتکل های inet هستند). تابع inet_init هر یک از پروتکل های داخلی را که از تابع proto_register استفاده می کنند، ثبت می کند. این تابع در linux/net/core/sock.c تعریف شده است و علاوه بر افزودن یک پروتکل به لیست پروتکل های معتبر، در صورت نیاز می تواند یک یا چند کش اسلب را اختصاص دهد.

می‌توانید ببینید که چگونه پروتکل‌های جداگانه خود را از طریق ساختار پروتو در فایل‌های tcp_ipv4.c، udp.c و raw.c در linux/net/ipv4/ شناسایی می‌کنند. هر یک از این ساختارهای پروتکل به عنوان یک نوع و پروتکل به یک inetsw_array نگاشت می شوند که پروتکل های داخلی را به عملیات آنها اختصاص می دهد. ساختار inetsw_array و اتصالات آن در شکل 3 نشان داده شده است. هر یک از پروتکل های این آرایه در ابتدای روز در inetsw با فراخوانی inet_register_protosw از inet_init مقداردهی اولیه می شود. تابع inet_init همچنین ماژول های مختلف inet مانند ماژول های ARP، ICMP، IP و ماژول های TCP و UDP را مقداردهی اولیه می کند.

شکل 3. ساختار آرایه پروتکل اینترنت

همبستگی سوکت و پروتکل

به یاد بیاورید که وقتی یک سوکت ایجاد می شود، یک نوع و یک پروتکل تعریف می کند، به عنوان مثال، my_sock = socket(AF_INET، SOCK_STREAM، 0). AF_INET یک خانواده آدرس اینترنتی را با یک سوکت جریان تعریف شده به عنوان SOCK_STREAM (همانطور که در اینجا در inetsw_array نشان داده شده است) مشخص می کند.

حرکت داده ها برای سوکت ها با استفاده از یک ساختار اساسی به نام بافر سوکت (sk_buff) انجام می شود. sk_buff حاوی داده های بسته و داده های حالت است که چندین لایه از پشته پروتکل را در بر می گیرد. هر بسته ارسال یا دریافت شده در sk_buff نمایش داده می شود. ساختار sk_buff در linux/include/linux/skbuff.h تعریف شده است و در شکل 4 نشان داده شده است.

شکل 4. بافر سوکت و اتصالات آن به سازه های دیگر

همانطور که می بینید، چندین ساختار sk_buff برای از این ارتباطرا می توان با هم پیوند داد. هر یک از آنها ساختار دستگاه (net_device) که بسته به آن ارسال یا دریافت می شود را مشخص می کند. از آنجایی که هر بسته در sk_buff نمایش داده می شود، سرصفحه های بسته به راحتی توسط مجموعه ای از اشاره گرها (th، iph و mac برای هدر Media Access Control (MAC) تعریف می شوند. توابع پشتیبانی: توابعی برای ایجاد، از بین بردن، شبیه سازی و مدیریت صف sk_buff وجود دارد.

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

رابط آگنوستیک دستگاه

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

اول از همه، درایورهای دستگاه می توانند با فراخوانی register_netdevice یا unregister_netdevice، خود را با هسته ثبت کرده و از ثبت خارج کنند. دستور فراخوان ابتدا ساختار net_device را پر می کند و سپس آن را برای ثبت ارسال می کند. هسته تابع init خود را فراخوانی می کند (در صورت تعریف)، چند بررسی سلامت انجام می دهد، یک ورودی sysfs ایجاد می کند و سپس یک دستگاه جدید را به لیست دستگاه اضافه می کند. لیست پیوندیدستگاه های فعال در هسته). ساختار net_device را می توان در linux/include/linux/netdevice.h یافت. برخی از توابع در linux/net/core/dev.c هستند.

تابع dev_queue_xmit برای ارسال sk_buff از لایه پروتکل به دستگاه استفاده می شود. sk_buff را برای ارسال احتمالی توسط درایور دستگاه مناسب (دستگاهی که توسط net_device یا نشانگر sk_buff->dev در sk_buff تعریف شده است) صف می کشد. ساختار dev حاوی متدی به نام hard_start_xmit است که تابع درایور را برای مقداردهی اولیه انتقال sk_buff ذخیره می کند.

دریافت بسته به طور سنتی با استفاده از netif_rx انجام می شود. هنگامی که یک درایور دستگاه سطح پایین بسته ای را دریافت می کند (که در داخل یک sk_buff اختصاص داده شده است)، sk_buff با استفاده از تماس با netif_rx به لایه شبکه می رود. این تابع سپس sk_buff را به یک سطح پروتکل بالاتر برای پردازش بیشتر با استفاده از netif_rx_schedule قرار می دهد. توابع dev_queue_xmit و netif_rx در linux/net/core/dev.c قرار دارند.

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

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

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

در حین مقداردهی اولیه، درایور دستگاه فضا را برای ساختار net_device اختصاص می دهد و سپس آن را با روتین های لازم مقداردهی اولیه می کند. یکی از آنها به نام dev->hard_start_xmit، مشخص می‌کند که چگونه لایه بالایی باید sk_buff را برای ارسال در صف قرار دهد. از sk_buff گذشت. نحوه عملکرد این تابع به سخت افزار بستگی دارد، اما به طور معمول بسته توضیح داده شده در sk_buff به چیزی منتقل می شود که "حلقه سخت افزار" یا "صف" نامیده می شود. ورود فریم، همانطور که در لایه مستقل از دستگاه توضیح داده شد، از رابط netif_rx یا netif_receive_skb برای درایور شبکه سازگار با NAPI استفاده می کند. درایور NAPI محدودیت هایی را بر روی قابلیت های سخت افزار زیربنایی اعمال می کند. برای جزئیات بیشتر به بخش مراجعه کنید.

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

برو جلو

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

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

TCP/IP

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

پشته پروتکل شبکه TCP/IP دارای 4 سطح است:

  1. کانال (لینک).
  2. شبکه (اینترنت).
  3. حمل و نقل.
  4. کاربرد.

سطح کاربردی

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

  • HTTP؛
  • SMTP;

هر پروتکل نظم و اصول خود را برای کار با داده ها تعریف می کند.

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

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

برای انتقال ایمیل استفاده می شود. عملیات SMTP شامل سه مرحله متوالی است:

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

سرتیتر

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

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

لایه حمل و نقل

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

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

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

UDP (User Datagram Protocol) دومین پروتکل محبوب است. همچنین وظیفه انتقال اطلاعات را بر عهده دارد. ویژگی متمایز آن در سادگی آن نهفته است. بسته ها به سادگی بدون ایجاد ارتباط خاصی ارسال می شوند.

TCP یا UDP؟

هر کدام از این پروتکل ها دامنه خاص خود را دارند. به طور منطقی با ویژگی های کار مشخص می شود.

مزیت اصلی UDP سرعت انتقال آن است. TCP یک پروتکل پیچیده با بررسی های زیاد است، در حالی که به نظر می رسد UDP ساده تر و در نتیجه سریعتر است.

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

به عنوان مثال، از UDP برای تماشای فیلم استفاده می شود. برای یک فایل ویدیویی، از دست دادن تعداد کمی از بخش ها حیاتی نیست، در حالی که سرعت بارگذاری مهم ترین عامل است.

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

لایه شبکه

لایه شبکه بسته هایی را از اطلاعات دریافتی تشکیل می دهد و یک هدر اضافه می کند. مهمترین بخش داده ها آدرس IP و MAC فرستنده و گیرنده است.

آدرس IP (آدرس پروتکل اینترنت) - آدرس منطقی دستگاه. حاوی اطلاعاتی درباره مکان دستگاه در شبکه است. ورودی مثال: .

آدرس MAC (آدرس کنترل دسترسی رسانه) - آدرس فیزیکی دستگاه. برای شناسایی استفاده می شود. در مرحله ساخت به تجهیزات شبکه اختصاص داده شده است. به صورت یک عدد شش بایتی ارائه می شود. مثلا: .

لایه شبکه مسئول موارد زیر است:

  • تعیین مسیرهای تحویل
  • انتقال بسته ها بین شبکه ها
  • اختصاص آدرس های منحصر به فرد

روترها دستگاه های لایه شبکه هستند. آنها راه را بین کامپیوتر و سرور بر اساس داده های دریافتی هموار می کنند.

محبوب ترین پروتکل در این سطح IP است.

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

انواع آدرس های IP

دو نوع آدرس IP در شبکه ها استفاده می شود:

  1. عمومی.
  2. خصوصی.

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

خصوصی (Private) در اینترنت استفاده نمی شود. در شبکه جهانی، چنین آدرس هایی منحصر به فرد نیستند. به عنوان مثال یک شبکه محلی است. به هر دستگاه یک آدرس IP منحصر به فرد در یک شبکه داده شده اختصاص داده می شود.

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

IPv4

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

فرمت ضبط: .

IPv6

این نسخه برای حل مشکلات نسخه قبلی در نظر گرفته شده است. طول آدرس 128 بیت است.

مشکل اصلی که IPv6 حل می کند، فرسودگی آدرس های IPv4 است. پیش نیازها از اوایل دهه 80 شروع به ظاهر شدن کردند. علیرغم اینکه این مشکل در سالهای 2007-2009 وارد مرحله حاد شده است، پیاده سازی IPv6 بسیار آهسته در حال افزایش است.

مزیت اصلی IPv6 اتصال سریعتر به اینترنت است. دلیلش این است که این نسخه از پروتکل نیازی به ترجمه آدرس ندارد. مسیریابی ساده انجام می شود. این هزینه کمتر است و بنابراین دسترسی به منابع اینترنتی سریعتر از IPv4 فراهم می شود.

ورودی مثال: .

سه نوع آدرس IPv6 وجود دارد:

  1. Unicast.
  2. Anycast.
  3. چندپخشی.

Unicast نوعی IPv6 unicast است. هنگام ارسال، بسته فقط به واسط واقع در آدرس مربوطه می رسد.

Anycast به آدرس های چندپخشی IPv6 اشاره دارد. بسته ارسال شده به نزدیکترین رابط شبکه می رود. فقط توسط روترها استفاده می شود.

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

پوشش زیر شبکه

زیر شبکه ماسک زیر شبکه و شماره میزبان را از آدرس IP تعیین می کند.

به عنوان مثال، یک آدرس IP دارای یک ماسک است. در این حالت، فرمت ضبط به این صورت خواهد بود. عدد "24" تعداد بیت های موجود در ماسک است. هشت بیت برابر با یک اکتت است که می توان آن را بایت نیز نامید.

با جزئیات بیشتر، ماسک زیر شبکه را می توان در سیستم اعداد باینری به صورت زیر نشان داد: . دارای چهار اکتت است و ورودی شامل "1" و "0" است. اگر تعداد واحدها را جمع کنیم، مجموعاً "24" به دست می آید. خوشبختانه، شما مجبور نیستید با یک بشمارید، زیرا 8 مقدار در یک اکتت وجود دارد. می بینیم که سه مورد از آنها با یک پر شده است، آنها را جمع کرده و "24" به دست می آوریم.

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

بیایید به یک مثال کوچک نگاه کنیم. یک آدرس IP و یک ماسک زیر شبکه وجود دارد. می شمردیم و می نویسیم: . اکنون ماسک را با آدرس IP مطابقت می دهیم. آن اکتت های ماسکی که در آنها همه مقادیر برابر با یک (255) هستند، اکتت های مربوطه خود را در آدرس IP بدون تغییر می گذارند. اگر مقدار صفر (0) باشد، اکتت در آدرس IP نیز صفر می شود. بنابراین، در مقدار آدرس زیر شبکه دریافت می کنیم.

زیر شبکه و میزبان

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

Host آدرس رابط شبکه (کارت شبکه) است. از آدرس IP با استفاده از یک ماسک تعیین می شود. مثلا: . از آنجایی که سه اکتت اول زیرشبکه هستند، باقی می ماند. این شماره میزبان است.

محدوده آدرس های میزبان از 0 تا 255 است. میزبان شماره "0" در واقع آدرس خود زیرشبکه است. و میزبان شماره "255" یک پخش کننده است.

خطاب به

سه نوع آدرس برای آدرس دهی در پشته پروتکل TCP/IP استفاده می شود:

  1. محلی.
  2. شبکه.
  3. نام های دامنه

آدرس های مک محلی نامیده می شوند. آنها برای آدرس دهی در فناوری های شبکه محلی مانند اترنت استفاده می شوند. در زمینه TCP/IP، کلمه "محلی" به این معنی است که آنها فقط در یک زیر شبکه عمل می کنند.

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

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

دامنه سطح بالا اطلاعات خاصی را نشان می دهد. عمومی (.org، .net) با هیچ مرز سختی محدود نمی شود. وضعیت برعکس در مورد محلی ها (.us، .ru) است. آنها معمولاً موضعی هستند.

دامنه های سطح پایین همه چیز دیگری هستند. می تواند هر اندازه ای باشد و حاوی هر تعداد ارزش باشد.

به عنوان مثال، "www.test.quiz.sg" یک نام دامنه صحیح است، که در آن "sg" یک دامنه سطح اول محلی (بالا) است، "quiz.sg" یک دامنه سطح دوم، "test.quiz.sg" است. دامنه سطح سوم است. نام های دامنه ممکن است نام های DNS نیز نامیده شوند.

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

لایه پیوند داده

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

رایج ترین پروتکل ها:

  1. شبکه محلی کابلی.
  2. WLAN.

اترنت رایج ترین فناوری شبکه سیمی است.

WLAN یک شبکه محلی مبتنی بر فناوری های بی سیم است. دستگاه‌ها بدون اتصال کابل فیزیکی با یکدیگر تعامل دارند. نمونه ای از رایج ترین روش ها Wi-Fi است.

پیکربندی TCP/IP برای استفاده از آدرس IPv4 ثابت

یک آدرس IPv4 ثابت مستقیماً در تنظیمات دستگاه یا به طور خودکار هنگام اتصال به شبکه اختصاص داده می شود و دائمی است.

برای پیکربندی پشته پروتکل TCP/IP برای استفاده از آدرس IPv4 دائمی، دستور ipconfig/all را در کنسول وارد کنید و داده های زیر را پیدا کنید.

پیکربندی TCP/IP برای استفاده از آدرس IPv4 پویا

یک آدرس IPv4 پویا برای مدتی استفاده می شود، اجاره داده می شود و سپس تغییر می کند. هنگام اتصال به شبکه به طور خودکار به دستگاه اختصاص داده می شود.

برای پیکربندی پشته پروتکل TCP/IP برای استفاده از یک آدرس IP غیر دائمی، باید به ویژگی های اتصال مورد نظر بروید، ویژگی های IPv4 را باز کنید و کادرها را همانطور که نشان داده شده است علامت بزنید.

روش های انتقال داده

داده ها از طریق رسانه فیزیکی به سه روش منتقل می شوند:

  • سیمپلکس.
  • نیم دوبلکس.
  • فول دوبلکس.

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

نمونه هایی از ارتباطات سیمپلکس:

  • پخش تلویزیونی.
  • سیگنال از ماهواره های GPS.

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

یک مثال از ارتباطات نیمه دوبلکس، ارتباط از طریق واکی تاکی در یک فرکانس است.

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

به عنوان مثال، ارتباط تلفنی از طریق شبکه تلفن همراه است.

TCP/IP در مقابل OSI

مدل OSI اصول انتقال داده را تعریف می کند. لایه های پشته پروتکل TCP/IP مستقیماً با این مدل مطابقت دارند. برخلاف TCP/IP چهار لایه، دارای 7 لایه است:

  1. فیزیکی.
  2. کانال (دیتا لینک).
  3. شبکه.
  4. حمل و نقل.
  5. جلسه.
  6. ارائه.
  7. کاربرد.

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

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

لایه انتقال بدون تغییر باقی می ماند. همان توابع را انجام می دهد.

لایه شبکه نیز بدون تغییر است. دقیقاً همان وظایف را انجام می دهد.

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

فیزیکی نشان دهنده اتصال فیزیکی واقعی - سیگنال های الکتریکی، اتصال دهنده ها و غیره است. در پشته پروتکل TCP/IP، تصمیم گرفته شد که این دو لایه را در یک لایه ترکیب کنیم، زیرا هر دو با رسانه فیزیکی سروکار دارند.

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

پشته های پروتکل زیادی وجود دارد که به طور گسترده در شبکه ها استفاده می شود. اینها پشته هایی هستند که استانداردهای بین المللی و ملی هستند و پشته های اختصاصی که به دلیل رواج تجهیزات یک شرکت خاص گسترده شده اند. نمونه‌هایی از پشته‌های پروتکل محبوب شامل پشته IPX/SPX Novell، پشته TCP/IP مورد استفاده در اینترنت و بسیاری از شبکه‌های مبتنی بر یونیکس، پشته OSI سازمان استاندارد بین‌المللی، پشته DECnet شرکت Digital Equipment و چندین مورد دیگر است.

پشته های پروتکل به سه سطح تقسیم می شوند:

    حمل و نقل؛

    کاربردی.

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

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

    DDP(DatagramDeliveryProtocol) پروتکل انتقال داده اپل مورد استفاده در AppleTalk.

    IP(پروتکل اینترنت - پروتکل اینترنت). یک پروتکل پشته TCP/IP که اطلاعات آدرس دهی و مسیریابی را فراهم می کند.

    IPX(InternetworkPacketeXchange) در NWLink یک پروتکل NovelNetWare که برای مسیریابی و ارسال بسته ها استفاده می شود.

    NetBEUI(NetBIOSExtendedUserInterface – توسعه یافته رابط کاربریسیستم ورودی/خروجی شبکه اصلی) . این پروتکل که به طور مشترک توسط IBM و مایکروسافت توسعه داده شده است، خدمات حمل و نقل را برای آنها فراهم می کند NetBIOS.

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

پروتکل های حمل و نقل خدمات زیر را برای انتقال مطمئن داده ها بین رایانه ها ارائه می دهند. در زیر محبوب ترین پروتکل های حمل و نقل آورده شده است.

    ATP(AppleTalkProtocol – AppleTalk Transaction Protocol) و NBP(NameBindingProtocol – Name binding protocol). پروتکل های جلسه و انتقال AppleTalk.

    NetBIOS (سیستم ورودی/خروجی شبکه اصلی) . NetBIOS ارتباطی بین رایانه ها برقرار می کند و NetBEUIخدمات داده را برای این اتصال ارائه می دهد.

    SPX(SequencedPacketeXchange – تبادل پی در پی بسته) در پروتکل NWLink.NovelNetWare برای اطمینان از تحویل داده ها استفاده می شود.

    TCP(TransmissionControlProtocol – Transmission Control Protocol) پروتکلی از پشته TCP/IP که مسئول تحویل قابل اعتماد داده است.

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

پروتکل های برنامه مسئول نحوه ارتباط برنامه ها هستند. در زیر محبوب ترین پروتکل های کاربردی آورده شده است.

    خبرگزاری فرانسه(پروتکل Apple Talk File Protocol - Apple Talk File Protocol). کنترل از راه دورفایل های مکینتاش

    FTP(پروتکل انتقال فایل - پروتکل انتقال فایل). یک پروتکل پشته TCP/IP که برای ارائه خدمات انتقال فایل استفاده می شود.

    NCP(NetWare Core Protocol - NetWare Basic Protocol). پوسته مشتری NovelNetWare و redirectors.

    SNMP(SimpleNetworkManagementProtocol) یک پروتکل پشته ای TCP/IP که برای مدیریت و نظارت بر دستگاه های شبکه استفاده می شود.

    HTTP(پروتکل HyperTextTransfer) - پروتکل انتقال ابرمتن و سایر پروتکل ها.

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

توسعه معماری و پروتکل های اینترنت در مدل TCP/IP توسط جامعه بین المللی باز طراحان IETF انجام می شود.

داستان

پشته پروتکل TCP/IPبر اساس NCP (پروتکل کنترل شبکه) توسط گروهی از توسعه دهندگان به رهبری Vinton Cerf در سال 1972 ایجاد شد. در جولای 1976، وینت سرف و باب کان برای اولین بار انتقال داده را با استفاده از TCP بیش از سه نشان دادند. شبکه های مختلف. بسته مسیر زیر را دنبال کرد: سانفرانسیسکو - لندن - دانشگاه کالیفرنیای جنوبی. این بسته تا پایان سفر خود 150 هزار کیلومتر را بدون از دست دادن حتی یک ذره طی کرده بود. در سال 1978، سرف، جان پستل و دنی کوهن تصمیم گرفتند دو تابع مجزا در TCP ایجاد کنند: TCP و IP (پروتکل اینترنت انگلیسی،پروتکل کار اینترنتی). TCP مسئول شکستن پیام به دیتاگرام و اتصال آنها در نقطه ارسال نهایی بود. IP مسئول انتقال (با کنترل دریافت) دیتاگرام های فردی بود. اینگونه بود که پروتکل اینترنت مدرن متولد شد. و در 1 ژانویه 1983، ARPANET به پروتکل جدیدی روی آورد. این روز به عنوان تاریخ تولد رسمی اینترنت در نظر گرفته می شود.

لایه های پشته TCP/IP

پشته پروتکل TCP/IP شامل چهار لایه است:

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

توزیع پروتکل ها بر اساس سطوح مدل TCP/IP
کاربردی
(سطح کاربردی)
به عنوان مثال HTTP، RTSP، FTP، DNS
حمل و نقل

لایه حمل و نقل

سطح شبکه (اینترنت).

لایه پیوند داده

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

هنگام طراحی پشته پروتکل در سطح پیوند، کدگذاری مقاوم در برابر نویز در نظر گرفته می شود - تشخیص و تصحیح خطاها در داده ها به دلیل تأثیر نویز و تداخل در کانال ارتباطی امکان پذیر است.

مقایسه با مدل OSI

سه لایه بالایی در مدل OSI، یعنی لایه برنامه، لایه ارائه و لایه جلسه، در مدل TCP/IP که فقط یک لایه کاربردی بالای لایه انتقال دارد، به طور جداگانه متمایز نمی شوند. اگرچه برخی از برنامه های کاربردی پروتکل OSI خالص، مانند X.400 نیز آنها را ترکیب می کنند، هیچ الزامی وجود ندارد که پشته پروتکل TCP/IP باید یک معماری یکپارچه را در بالای لایه انتقال پوشش دهد. به عنوان مثال، پروتکل برنامه NFS از طریق پروتکل بازنمایی داده های خارجی (XDR) عمل می کند، که به نوبه خود از طریق پروتکل تماس رویه از راه دور (RPC) عمل می کند. RPC انتقال داده های قابل اعتمادی را فراهم می کند تا بتواند با خیال راحت از بهترین انتقال UDP استفاده کند.

نویسندگان مختلف مدل TCP/IP را به روش‌های مختلف تفسیر کرده‌اند و موافق نیستند که لایه پیوند یا کل مدل TCP/IP نگرانی‌های OSI Layer 1 (لایه فیزیکی) را در بر می‌گیرد یا فرض می‌کند که لایه سخت‌افزار زیر لایه پیوند است.

چندین نویسنده سعی کرده‌اند لایه‌های 1 و 2 مدل OSI را در مدل TCP/IP بگنجانند، زیرا معمولاً در استانداردهای مدرن (مانند IEEE و ITU) به آن‌ها اشاره می‌شود. این اغلب منجر به یک مدل پنج لایه می شود که در آن لایه ارتباطی یا لایه دسترسی به شبکه به لایه های 1 و 2 مدل OSI تقسیم می شود.

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

به عنوان مثال، لایه های جلسه و ارائه بسته OSI در لایه کاربردی بسته TCP/IP گنجانده شده اند. عملکرد لایه جلسه را می توان در پروتکل هایی مانند HTTP و SMTP یافت و در پروتکل هایی مانند Telnet و پروتکل شروع جلسه (SIP) مشهودتر است. عملکرد لایه جلسه نیز با شماره گذاری پورت برای پروتکل های TCP و UDP، که لایه انتقال در مجموعه TCP/IP را در بر می گیرد، پیاده سازی می شود. توابع لایه ارائه در برنامه های TCP/IP با استاندارد MIME برای تبادل داده پیاده سازی می شوند.

تضادها همچنین در مدل اصلی OSI، ISO 7498، مشهود است، زمانی که ضمائم آن مدل، مانند چارچوب مدیریت ISO 7498/4 یا سازمان داخلی لایه شبکه ISO 8648 (IONL) مورد توجه قرار نگیرد. هنگامی که اسناد IONL و Management Framework بررسی می شوند، ICMP و IGMP به عنوان پروتکل های کنترل لایه برای لایه شبکه تعریف می شوند. به طور مشابه، IONL چارچوبی برای "اشیاء همگرایی وابسته به زیرشبکه" مانند ARP و RARP فراهم می کند.

پروتکل‌های IETF را می‌توان به صورت بازگشتی کپسوله کرد، همانطور که پروتکل‌های تونل‌سازی مانند General Routing Encapsulation (GRE) مشهود است. GRE از همان مکانیزمی استفاده می کند که OSI برای تونل زنی در لایه شبکه استفاده می کند. در مورد نحوه قرار دادن مدل TCP/IP در مدل OSI اختلاف نظر وجود دارد زیرا لایه ها در این مدل ها یکسان نیستند.

علاوه بر این، مدل OSI از یک لایه اضافی - "Internetworking" - بین پیوند داده و لایه های شبکه استفاده نمی کند. نمونه ای از پروتکل های بحث برانگیز ARP یا STP است.

در اینجا نحوه قرارگیری پروتکل های TCP/IP به طور سنتی در مدل OSI آمده است:

توزیع پروتکل ها بر اساس سطوح مدل OSI
TCP/IP OSI
7 کاربردی کاربردی به عنوان مثال HTTP، SMTP، SNMP، FTP، Telnet، SSH، SCP، SMB، NFS، RTSP، BGP
6 نمایندگی به عنوان مثال XDR، AFP، TLS، SSL
5 جلسه به عنوان مثال ISO 8327 / CCITT X.225، RPC، NetBIOS، PPTP، L2TP، ASP
4 حمل و نقل حمل و نقل به عنوان مثال TCP، UDP، SCTP، SPX، ATP، DCCP، GRE
3 شبکه شبکه به عنوان مثال ICMP، IGMP، CLNP، OSPF، RIP، IPX، DDP، ARP
2 مجرا مجرا به عنوان مثال اترنت، حلقه نشانه, HDLC , PPP , X.25 , فریم رله , ISDN , ATM , SPB , MPLS
1 فیزیکی به عنوان مثال کابل های برق، ارتباطات رادیویی، کابل های فیبر نوری، اشعه مادون قرمز

به طور معمول، در پشته TCP/IP، 3 لایه بالای مدل OSI (برنامه، ارائه و جلسه) در یک برنامه ترکیب می شوند. از آنجایی که چنین پشته ای یک پروتکل یکپارچه انتقال داده را ارائه نمی دهد، عملکردهای تعیین نوع داده به برنامه منتقل می شود.

توصیف مدل TCP/IP در ادبیات فنی

یادداشت

  1. مدل های OSI و TCP/IP. پایگاه دانش osLogic.ru
  2. مدل های شبکه TCP/IP و OSI. سیسکو یادگیری
  3. واسیلیف A. A.، Telina I. S.، Izbachkov Yu. S.، پتروف V. N. سیستم های اطلاعاتی: کتاب درسی برای دانشگاه ها. - سنت پترزبورگ. : پیتر، 2010. - 544 ص. - شابک 978-5-49807-158-9.
  4. اندرو کروچیک، وینود کومار، نومان لاغاری و دیگران.برنامه نویسی شبکه دات نت برای حرفه ای ها / ترنس. از انگلیسی V. Streltsov. - م.: لری، 1384. - 400 ص. - شابک 1-86100-735-3. - شابک 5-85582-170-2.

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

لایه انتقال وظایف زیر را انجام می دهد:

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

    در حالت بدون اتصال، لایه انتقال برای انتقال دیتاگرام های منفرد بدون تضمین تحویل قابل اعتماد آنها استفاده می شود. حالت اتصال گرا برای تحویل مطمئن داده ها استفاده می شود.

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

لایه جلسه SL- کنترلر گفتگوی شبکه تعاملات بین سیستم های ارتباطی را ایجاد، حفظ و هماهنگ می کند.

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

وظایف لایه جلسه به شرح زیر است:

  • مدیریت گفتگو. لایه جلسهبه دو سیستم اجازه می دهد تا وارد گفتگو شوند. امکان تبادل پیام بین دو فرآیند را فراهم می کند. در این حالت، حالت های زیر امکان پذیر است: یا نیمه دوبلکس (یک مسیر در یک زمان) یا تمام دوبلکس (دو مسیر به طور همزمان). برای مثال، دیالوگ بین ترمینال و پردازنده مرکزی ممکن است نیمه دوبلکس باشد.
  • هماهنگ سازی. لایه جلسهبه یک فرآیند اجازه می دهد تا نقاط بازرسی (نقاط همگام سازی) را به جریان داده اضافه کند. به عنوان مثال، اگر سیستم یک فایل 2000 صفحه ای ارسال می کند، مطلوب است که پس از هر 100 صفحه، نقاط بازرسی درج شود تا اطمینان حاصل شود که هر ماژول 100 صفحه به طور مستقل دریافت و شناسایی می شود. در این صورت اگر در حین ارسال صفحه 523 تخلفی رخ دهد، تنها صفحه ای که مورد نیاز است و پس از آن مجددا ارسال می شود. بازیابی سیستم- صفحه 501 (صفحه اول صد پنجم)

لایه نمایشیبه شکل ارائه اطلاعات به سطوح پایین تر، به عنوان مثال، رمزگذاری مجدد یا رمزگذاری اطلاعات سر و کار دارد.

وظایف لایه ارائه عبارتند از:

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

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

نمونه هایی از خدمات ارائه شده توسط لایه برنامه:

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

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

پشته پروتکل Internet2 قبل از مدل OSI توسعه داده شد. بنابراین، لایه‌های موجود در پشته پروتکل اینترنت با لایه‌های مربوطه در مدل OSI مطابقت ندارند. پشته پروتکل اینترنت از پنج لایه تشکیل شده است: فیزیکی، پیوند داده، شبکه، حمل و نقل و برنامه. چهار لایه اول استانداردهای فیزیکی، رابط شبکه، کار اینترنتی و توابع حمل و نقل را ارائه می کنند که با چهار لایه اول مدل OSI مطابقت دارد. سه لایه بالایی در مدل OSI در پشته پروتکل اینترنت توسط یک لایه منفرد به نام لایه برنامه نمایش داده می شود. 1.3.

برنج. 1.3.

ARP پروتکل حل آدرس پروتکل یافتن آدرس
دستگاه خودپرداز حالت انتقال ناهمگام حالت انتقال ناهمگام
BGP پروتکل دروازه مرزی پروتکل مسیریابی لبه
DNS سیستم نام دامنه سیستم نام دامنه
شبکه محلی کابلی شبکه اترنت شبکه اترنت
FDDI رابط داده های توزیع شده فیبر رابط داده های توزیع شده فیبر نوری
HTTP پروتکل انتقال ابر متن پروتکل انتقال ابرمتن
FTP انتقال فایلپروتکل پروتکل انتقال فایل
ICMP پروتکل پیام کنترل اینترنت پروتکل پیام کنترل
IGMP پروتکل مدیریت گروه اینترنتی پروتکل مدیریت گروه اینترنت (کاربر).
IP پروتکل اینترنت پروتکل اینترنت
NFS سیستم فایل شبکه پروتکل دسترسی به شبکه سیستم های فایل
OSPF ابتدا کوتاهترین مسیر را باز کنید پروتکل ترجیحی کوتاهترین کانال را باز کنید
PDH سلسله مراتب دیجیتال Plesiochronous سلسله مراتب دیجیتال Plesiochronic
PPP پروتکل نقطه به نقطه پروتکل ارتباطی نقطه به نقطه


 بالا