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

مفاهیم شبکه ، کدنویسان

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

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

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

شکل فوق نمایش دهنده ی پشته پروتکل استاندارد اینترنت ( TCP/IP ) در کنار مدل مرجع لایه بندی پروتکل ها یا ISO OSI است. پشته ی پروتکل استاندارد اینترنت از پنج لایه ی کاربرد (Application) ، انتقال (Transport) ، شبکه (Network) ، پیوند (Link) و فیزیکی(Physical) تشکیل شده است.

لایه ی کاربرد

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

لایه ی انتقال

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

لایه ی شبکه

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

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

لایه ی پیوند

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

لایه ی فیزیکی

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

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

شکل زیر نمایش دهنده ی مسیری است که داده ها در یک شبکه ی مثال طی می نمایند. داده ها مسیری رو به پایین را در پشته ی پروتکل پیاده سازی شده در سیستم انتهایی مبدأ، مسیری رو به بالا و سپس رو به پایین را در سوئیچهای بسته ای (سوئیچ لایه ی پیوند یا مسیریاب) حاضر در بین مسیر و مسیری رو به بالا را در پشته ی پروتکل پیاده سازی شده در سیستم انتهایی مقصد طی می نمایند.

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

مسیریابی بسته ها در شبکه - کدنویسان

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

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

در ادامه، لایه ی شبکه نیز سرآیند مخصوص به خود ( nH) را به segment لایه ی انتقال اضافه می کند و تشکیل یک دیتاگرام میدهد. دیتاگرام تولید شده وارد لایه ی پیوند شده و پس از دریافت سرآیند مخصوص لایه ی پیوند (lH) یک فریم را تولید می نماید. بدین ترتیب، در هر لایه از شبکه، یک بسته شامل دو بخش می باشد. یک بخش سرآیند اضافه شده توسط آن لایه است و بخش دیگر نیز، payload یا بار مفید بسته است که از لایه ی بالاتر وارد آن لایه شده است و به آن (PDU (Protocol Data Unit نیز گفته می شود.

برچسب ها

محصولات پیشنهادی


نظرات کاربران


نظرات برای آموزش مفاهیم شبکه های رایانه ای, مقالات فناوری و آموزشی | بدون نظر »

کاربر عزیز، لطفاً دیدگاه ارزشمند خود را از طریق فرم زیر برای ما ارسال کنید:

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


تماس با ما
  • شماره همراه : ۰۹۱۵۱۶۰۴۰۶۸
  • آی دی تلگرام : @mmoha94
  • پست الکترونیکی : mohammadi.sm@gmail.com
  • آدرس پستی : بیرجند، خیابان پیروزی، پیروزی ۹، پلاک ۲۸
کلیه حقوق متعلق به سایت کدنویسان است، انتشار و کپی برداری از مطالب این سایت غیرمجاز بوده و پیگرد قانونی دارد.