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

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

پشته پروتکل مجموعه ای از پروتکل های شبکه با سطوح مختلف سازمان یافته به صورت سلسله مراتبی است که برای سازماندهی و اطمینان از تعامل گره ها در یک شبکه کافی است. در حال حاضر، شبکه ها از تعداد زیادی پشته پروتکل ارتباطی استفاده می کنند. محبوب ترین پشته ها عبارتند از: 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) توسط زیراکس برای انتقال داده از طریق شبکه های اترنت توسعه یافته است. شامل 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 را پیاده سازی می کند که بر اساس آن سیستم های محاسباتی ناهمگن (رایانه های کلاس های مختلف) که تحت سیستم عامل های مختلف کار می کنند می توانند در اطلاعات توزیع شده جغرافیایی و شبکه های محاسباتی ترکیب شوند.

پروتکل SNA (System Network Architecture) از IBM برای ارتباط از راه دور با کامپیوترهای بزرگ طراحی شده است و شامل 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. نام های دامنه

آدرس های مک محلی نامیده می شوند. آنها برای آدرس دهی در فناوری های LAN مانند اترنت استفاده می شوند. در زمینه 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 - ارتباط دو طرفه کامل. دستگاه ها می توانند همزمان ارسال و دریافت کنند. آنها در مورد رسانه انتقال تضاد ندارند. این حالت در هنگام استفاده از فناوری 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، تصمیم گرفته شد که این دو لایه را در یک لایه ترکیب کنیم، زیرا هر دو با رسانه فیزیکی کار می کنند.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

پروتکل های زیربنایی اینترنت پشته پروتکل 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 به پورت UDP (که کمتر TCP است) 53،

لایه حمل و نقل

پروتکل های لایه حمل و نقل می توانند مشکل تحویل پیام بدون تضمین را حل کنند ("آیا پیام به مقصد رسید؟")، و همچنین ترتیب صحیح رسیدن داده ها را تضمین می کند. در پشته 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 قرار دارند و باید به لایه بعدی - transport - بروند، اما از نظر عملکردی پروتکل های لایه شبکه هستند و بنابراین نمی توان آنها را در مدل 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 (Port=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 - IPCP) برای پیکربندی پارامترهای ارتباطی شبکه (به ویژه، تخصیصآدرس های IP).

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

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

HDLC.

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

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

______________________________________________________________________________

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

هر فریم ارسالی باید با یک ترکیب "پرچم" (Flag) شروع و به پایان برسد که ساختار بیتی به شکل 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 بایت باشد.

دنباله بررسی (Frame Check Sequence, FCS) روی انتقال شکل می گیرد به طوری که الف) هنگام ضرب اطلاعات بین پرچم ها در X16 و b) سپس تقسیم مدول 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 نشان داده شده است. 1.6.

______________________________________________________________________________

شکل 1.6 نشان می دهد که ابتدا میزبان با استفاده از پروتکل LCP (پروتکل = 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=Name، Chall=V

Prot=UDP، کد=02،

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

Prot=UDP, code=05, Data

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

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

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

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

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

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

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

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

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

سوالات بخش 1.4

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

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

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

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

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

پاسخ. در کارت اینترنت و روی سرور AAA.

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

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

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

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

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

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

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

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

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

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

حالا بیایید به معماری پشته شبکه لینوکس برویم و ببینیم که چگونه مدل اینترنت را پیاده سازی می کند. شکل 2 نمای سطح بالایی از پشته شبکه لینوکس است. در بالا سطح فضای کاربر یا سطح کاربردی A که کاربران پشته شبکه را تعریف می کند. در زیر آمده است دستگاه های فیزیکی، که اتصال به شبکه ها (شبکه های سریال یا پرسرعت مانند اترنت) را فراهم می کند. در مرکز یا فضای هسته، - زیرسیستم شبکه که تمرکز این مقاله است. بافرهای سوکت (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 برای کنترل دسترسی رسانه یا هدر 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 از لایه پروتکل به دستگاه استفاده می شود. برای ارسال احتمالی توسط درایور دستگاه مناسب (دستگاهی که توسط net_device یا نشانگر sk_buff->dev در sk_buff مشخص شده است) 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. نام های دامنه

آدرس های مک محلی نامیده می شوند. آنها برای آدرس دهی در فناوری های LAN مانند اترنت استفاده می شوند. در زمینه 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 - Extended رابط کاربریسیستم ورودی/خروجی اصلی شبکه) . این پروتکل که به طور مشترک توسط IBM و مایکروسافت توسعه داده شده است، خدمات حمل و نقل را برای آنها فراهم می کند NetBIOS.

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

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

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

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

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

    TCP(TransmissionControlProtocol) یک پروتکل پشته ای TCP/IP که مسئول تحویل مطمئن داده ها است.

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

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

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

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

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

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

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

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

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

داستان

پشته پروتکل TCP/IPبر اساس NCP (پروتکل کنترل شبکه) توسط گروهی از توسعه دهندگان به رهبری وینتون سرف در سال 1972 ایجاد شد. در جولای 1976، وینت سرف و باب کان برای اولین بار انتقال داده با استفاده از TCP را بیش از سه نشان دادند. شبکه های مختلف. این بسته مسیر زیر را طی کرد: سانفرانسیسکو - لندن - دانشگاه کالیفرنیای جنوبی. این بسته در پایان سفر خود 150000 مایل را بدون از دست دادن حتی یک ذره طی کرده بود. در سال 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 مسائل مربوط به لایه 1 OSI (لایه فیزیکی) را پوشش می دهد یا اینکه لایه سخت افزاری زیر لایه پیوند فرض می شود. .

چندین نویسنده سعی کرده‌اند لایه‌های 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 Management Framework یا ISO 8648 Internal Layer Network (IONL) در نظر گرفته نمی شود. هنگام بررسی اسناد IONL و Management Framework، ICMP و IGMP به عنوان پروتکل های کنترل لایه برای لایه شبکه تعریف می شوند. به طور مشابه، IONL چارچوبی برای "موجودات همگرایی وابسته به زیرشبکه" مانند ARP و RARP فراهم می کند.

پروتکل های IETF را می توان به صورت بازگشتی کپسوله کرد، همانطور که پروتکل های تونل زنی مانند 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)- گفتگوی کنترل کننده شبکه ارتباط بین سیستم های ارتباطی را برقرار، حفظ و هماهنگ می کند.

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

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

  • مدیریت گفتگو. لایه جلسهبه دو سیستم اجازه می دهد تا وارد گفتگو شوند. امکان تبادل پیام بین دو فرآیند را فراهم می کند. در این مورد، حالت ها ممکن است: یا نیمه دوبلکس (یک مسیر در همان زمان)، یا کامل دوبلکس (دو مسیر در همان زمان). به عنوان مثال، مکالمه بین ترمینال و پردازنده مرکزی ممکن است نیمه دورو باشد.
  • هماهنگ سازی. لایه جلسهبه یک فرآیند اجازه می دهد تا نقاط بازرسی (نقاط همگام سازی) را به جریان داده اضافه کند. به عنوان مثال، اگر سیستم یک فایل 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 سلسله مراتب دیجیتال Plesiochronous
PPP پروتکل نقطه به نقطه پروتکل ارتباطی نقطه به نقطه


 بالا