در این جلسه، یکی از مهمترین پروتکلهای لایه شبکه در اینترنت یعنی پروتکل IP مورد بررسی قرار میگیرد. این پروتکل مسئول آدرسدهی و انتقال بستههای داده در شبکههای مبتنی بر TCP/IP است و نقش اساسی در ارتباط بین شبکههای مختلف ایفا میکند. همچنین نحوه هدایت بستهها در مسیر شبکه، ساختار جدولهای مسیریابی و برخی از مفاهیم عملی مرتبط با انتقال دادهها بررسی خواهد شد.
بررسی پروتکل IP در لایه شبکه اینترنت
پروتکل IP (Internet Protocol) در لایه شبکه پشته TCP/IP قرار دارد و وظیفه اصلی آن انتقال بستههای داده از مبدأ به مقصد در میان شبکههای مختلف است. در این پروتکل، دادهها به واحدهایی به نام «بسته» یا Packet تقسیم میشوند و هر بسته به طور مستقل در شبکه حرکت میکند.
یکی از ویژگیهای مهم پروتکل IP این است که یک پروتکل بدون اتصال (Connection-less) محسوب میشود. به این معنا که قبل از ارسال داده، هیچ اتصال از پیش تعیینشدهای بین فرستنده و گیرنده برقرار نمیشود. هر بسته به صورت مستقل ارسال میشود و ممکن است مسیر متفاوتی را در شبکه طی کند.
همچنین انتقال داده در IP به صورت Hop-by-Hop انجام میشود. به این معنا که هر مسیریاب بسته را دریافت کرده، آدرس مقصد را بررسی میکند و آن را به گام بعدی در مسیر ارسال میکند تا در نهایت بسته به مقصد برسد.
بررسی مفاهیم هدایت بستهها (Forwarding) و گام بعدی (Next Hop)
هدایت بستهها یا Forwarding فرآیندی است که طی آن یک مسیریاب تصمیم میگیرد بسته دریافتی را از کدام رابط شبکه به سمت مقصد ارسال کند. این تصمیم بر اساس اطلاعاتی انجام میشود که در جدول مسیریابی ذخیره شده است.
در این فرآیند، مفهوم «Next Hop» اهمیت زیادی دارد. Next Hop به مسیریاب بعدی در مسیر انتقال بسته اشاره میکند. هنگامی که یک بسته وارد مسیریاب میشود، مسیریاب با مراجعه به جدول مسیریابی مشخص میکند که بسته باید به کدام مسیریاب بعدی ارسال شود تا به مقصد نهایی نزدیکتر گردد.
بررسی ساختار جدول مسیریابی در پروتکل IP
جدول مسیریابی مجموعهای از اطلاعات است که در هر مسیریاب نگهداری میشود و برای تعیین مسیر مناسب انتقال بستهها مورد استفاده قرار میگیرد. این جدول شامل اطلاعاتی مانند آدرس شبکه مقصد، مسیر یا دروازه بعدی، رابط خروجی و معیارهای مربوط به انتخاب مسیر است.
مسیریاب با بررسی آدرس مقصد موجود در سربرگ IP، آن را با ورودیهای موجود در جدول مسیریابی مقایسه کرده و بهترین مسیر را انتخاب میکند. در بسیاری از موارد از روش «Longest Prefix Match» استفاده میشود تا دقیقترین مسیر ممکن انتخاب شود.
فرآیند هدایت بسته در IPv4
در فرآیند ارسال داده در شبکه مبتنی بر IPv4، بسته ابتدا در ماشین مبدأ ایجاد میشود. سیستم عامل مبدأ آدرس مقصد را بررسی کرده و مشخص میکند که آیا مقصد در همان شبکه محلی قرار دارد یا در شبکهای دیگر. اگر مقصد خارج از شبکه محلی باشد، بسته به مسیریاب پیشفرض (Default Gateway) ارسال میشود.
پس از آن، بسته در طول مسیر توسط مسیریابهای مختلف پردازش میشود. هر مسیریاب با بررسی آدرس مقصد در هدر IP و مراجعه به جدول مسیریابی خود، بسته را به گام بعدی ارسال میکند. در نهایت بسته به مسیریاب متصل به شبکه مقصد رسیده و از آنجا به میزبان مقصد تحویل داده میشود.
موارد دور انداختن بسته در مبدأ
در برخی شرایط ممکن است بسته حتی پیش از خروج از سیستم مبدأ حذف شود. برای مثال اگر آدرس مقصد نامعتبر باشد، اگر مسیر مناسبی در جدول مسیریابی وجود نداشته باشد، یا اگر محدودیتهایی مانند مقدار TTL باعث توقف بسته شود، سیستم ممکن است از ارسال بسته صرفنظر کند. این مکانیزمها برای جلوگیری از ایجاد حلقههای بیپایان در شبکه و کنترل ترافیک ضروری هستند.
مفهوم قطعهقطعهسازی بسته (Packet Fragmentation)
در برخی موارد ممکن است اندازه یک بسته IP از حداکثر اندازه قابل انتقال در یک شبکه فیزیکی بیشتر باشد. در چنین شرایطی بسته باید به قطعات کوچکتری تقسیم شود تا بتواند از آن شبکه عبور کند. این فرآیند «Fragmentation» نامیده میشود.
هر قطعه شامل بخشی از داده اصلی به همراه اطلاعات کنترلی لازم است تا در مقصد بتوان قطعات مختلف را مجدداً به یک بسته کامل بازسازی کرد. بازسازی بستهها معمولاً در سیستم مقصد انجام میشود. اگر یکی از قطعات در مسیر از بین برود، کل بسته ممکن است غیرقابل استفاده شود.
اجرای سناریوهای عملی در شبیهسازهای شبکه
برای درک بهتر مفاهیم مطرح شده، در این جلسه از ابزارهای شبیهسازی شبکه استفاده میشود. نرمافزارهایی مانند Cisco Packet Tracer و GNS3 امکان طراحی توپولوژیهای مختلف شبکه، پیکربندی مسیریابها و مشاهده نحوه انتقال بستهها در شبکه را فراهم میکنند.
با استفاده از این ابزارها میتوان فرآیند مسیریابی، انتقال بستهها و رفتار پروتکل IP را در یک محیط آزمایشگاهی شبیهسازی و تحلیل کرد.
استفاده از Wireshark برای ثبت و تحلیل بستههای IP
در بخش عملی این جلسه، نرمافزار Wireshark معرفی میشود که یکی از قدرتمندترین ابزارهای تحلیل ترافیک شبکه است. این نرمافزار امکان ثبت بستههای عبوری از شبکه و بررسی دقیق ساختار آنها را فراهم میکند.
با استفاده از Wireshark میتوان سربرگهای پروتکل IP، آدرسهای مبدأ و مقصد، مقدار TTL، اندازه بستهها و بسیاری از جزئیات دیگر را مشاهده و تحلیل کرد. این ابزار برای درک عملی نحوه انتقال دادهها در شبکه و بررسی عملکرد پروتکلها بسیار مفید است.
جمعبندی
در این جلسه دانشجویان با ساختار و عملکرد پروتکل IP در لایه شبکه آشنا شدند. مفاهیم هدایت بستهها، جدولهای مسیریابی و فرآیند انتقال داده در IPv4 مورد بررسی قرار گرفت. همچنین مفهوم قطعهقطعهسازی بستهها معرفی شد و در بخش عملی با استفاده از ابزارهای شبیهسازی شبکه و نرمافزار Wireshark نحوه تحلیل بستههای IP بررسی شد. این مباحث پایهای برای درک عملکرد واقعی شبکههای مبتنی بر اینترنت محسوب میشون