مقدمه
همه ما اصل طبقهبندی و عدم طبقهبندی IP و کاربرد آن در ارتباطات شبکه را میدانیم. قطعه قطعه کردن و سرهم کردن مجدد IP یک مکانیسم کلیدی در فرآیند انتقال بسته است. هنگامی که اندازه یک بسته از حد مجاز حداکثر واحد انتقال (MTU) یک لینک شبکه فراتر میرود، قطعه قطعه کردن IP بسته را برای انتقال به چندین قطعه کوچکتر تقسیم میکند. این قطعات به طور مستقل در شبکه منتقل میشوند و پس از رسیدن به مقصد، توسط مکانیسم سرهم کردن مجدد IP به بستههای کامل تبدیل میشوند. این فرآیند قطعه قطعه کردن و سرهم کردن تضمین میکند که بستههای با اندازه بزرگ میتوانند در شبکه منتقل شوند و در عین حال یکپارچگی و قابلیت اطمینان دادهها را تضمین کنند. در این بخش، نگاه عمیقتری به نحوه عملکرد قطعه قطعه کردن و سرهم کردن مجدد IP خواهیم داشت.
قطعه قطعه کردن و سرهم کردن مجدد IP
لینکهای داده مختلف، حداکثر واحدهای انتقال (MTU) متفاوتی دارند؛ برای مثال، لینک داده FDDI دارای MTU برابر با ۴۳۵۲ بایت و MTU اترنت ۱۵۰۰ بایت است. MTU مخفف Maximum Transmission Unit است و به حداکثر اندازه بستهای که میتواند از طریق شبکه منتقل شود، اشاره دارد.
FDDI (رابط داده توزیعشده فیبر) یک استاندارد شبکه محلی (LAN) با سرعت بالا است که از فیبر نوری به عنوان واسطه انتقال استفاده میکند. حداکثر واحد انتقال (MTU) حداکثر اندازه بستهای است که میتواند توسط یک پروتکل لایه پیوند داده منتقل شود. در شبکههای FDDI، اندازه MTU برابر با ۴۳۵۲ بایت است. این بدان معناست که حداکثر اندازه بستهای که میتواند توسط پروتکل لایه پیوند داده در شبکه FDDI منتقل شود، ۴۳۵۲ بایت است. اگر بستهای که قرار است ارسال شود از این اندازه بیشتر باشد، باید قطعه قطعه شود تا بسته به چندین قطعه مناسب برای اندازه MTU برای انتقال و مونتاژ مجدد در گیرنده تقسیم شود.
برای اترنت، MTU معمولاً ۱۵۰۰ بایت اندازه دارد. این بدان معناست که اترنت میتواند بستههایی تا اندازه ۱۵۰۰ بایت را ارسال کند. اگر اندازه بسته از حد MTU بیشتر شود، بسته برای انتقال به قطعات کوچکتر تقسیم شده و در مقصد دوباره سرهم میشود. سرهم کردن مجدد دیتاگرام IP تکه تکه شده فقط توسط میزبان مقصد قابل انجام است و روتر عملیات سرهم کردن را انجام نخواهد داد.
ما همچنین قبلاً در مورد بخشهای TCP صحبت کردیم، اما MSS مخفف Maximum Segment Size است و نقش مهمی در پروتکل TCP ایفا میکند. MSS به اندازه حداکثر بخش داده مجاز برای ارسال در یک اتصال TCP اشاره دارد. مشابه MTU، MSS برای محدود کردن اندازه بستهها استفاده میشود، اما این کار را در لایه انتقال، لایه پروتکل TCP انجام میدهد. پروتکل TCP دادههای لایه کاربرد را با تقسیم دادهها به چندین بخش داده منتقل میکند و اندازه هر بخش داده توسط MSS محدود میشود.
MTU هر لینک داده متفاوت است زیرا هر نوع لینک داده برای اهداف مختلفی استفاده میشود. بسته به هدف استفاده، MTU های مختلفی میتوانند میزبانی شوند.
فرض کنید فرستنده میخواهد یک دیتاگرام بزرگ ۴۰۰۰ بایتی را برای انتقال از طریق لینک اترنت ارسال کند، بنابراین دیتاگرام برای انتقال باید به سه دیتاگرام کوچکتر تقسیم شود. دلیل این امر این است که اندازه هر دیتاگرام کوچک نمیتواند از محدودیت MTU که ۱۵۰۰ بایت است، تجاوز کند. پس از دریافت سه دیتاگرام کوچک، گیرنده آنها را بر اساس شماره ترتیب و آفست هر دیتاگرام، در یک دیتاگرام بزرگ ۴۰۰۰ بایتی اصلی دوباره مونتاژ میکند.
در انتقال قطعه قطعه، از دست دادن یک قطعه، کل دیتاگرام IP را نامعتبر میکند. برای جلوگیری از این امر، TCP، MSS را معرفی کرد که در آن قطعه قطعه شدن به جای لایه IP، در لایه TCP انجام میشود. مزیت این رویکرد این است که TCP کنترل دقیقتری بر اندازه هر قطعه دارد که از مشکلات مرتبط با قطعه قطعه شدن در لایه IP جلوگیری میکند.
برای UDP، ما سعی میکنیم بسته دادهای بزرگتر از MTU ارسال نکنیم. دلیل این امر این است که UDP یک پروتکل انتقال بدون اتصال است که مکانیزمهای قابلیت اطمینان و ارسال مجدد مانند TCP را ارائه نمیدهد. اگر یک بسته داده UDP بزرگتر از MTU ارسال کنیم، توسط لایه IP برای ارسال تکه تکه میشود. هنگامی که یکی از تکهها از بین برود، پروتکل UDP نمیتواند دوباره ارسال کند و در نتیجه دادهها از بین میروند. بنابراین، برای اطمینان از انتقال مطمئن دادهها، باید سعی کنیم اندازه بستههای داده UDP را در MTU کنترل کنیم و از انتقال تکه تکه شده جلوگیری کنیم.
کارگزار بسته شبکه Mylinking™میتواند به طور خودکار انواع مختلف پروتکل تونل VxLAN/NVGRE/IPoverIP/MPLS/GRE و غیره را شناسایی کند، و میتواند بر اساس مشخصات کاربر و بر اساس خروجی جریان تونل با ویژگیهای داخلی یا خارجی تعیین شود.
○ میتواند بستههای برچسب VLAN، QinQ و MPLS را تشخیص دهد
○ میتواند VLAN داخلی و خارجی را شناسایی کند
○ بستههای IPv4/IPv6 قابل شناسایی هستند
○ میتواند بستههای تونل VxLAN، NVGRE، GRE، IPoverIP، GENEVE، MPLS را شناسایی کند
○ بستههای تکهتکه شده IP قابل شناسایی هستند (از شناسایی تکهتکه شدن IP پشتیبانی میکند و از سرهمبندی مجدد تکهتکه شدن IP پشتیبانی میکند تا فیلترینگ ویژگی L4 را روی تمام بستههای تکهتکه شده IP پیادهسازی کند. سیاست خروجی ترافیک را پیادهسازی کنید.)
چرا IP تکه تکه و TCP تکه تکه است؟
از آنجایی که در انتقال شبکه، لایه IP به طور خودکار بسته داده را قطعه قطعه میکند، حتی اگر لایه TCP داده را قطعه قطعه نکند، بسته داده به طور خودکار توسط لایه IP قطعه قطعه شده و به طور عادی ارسال میشود. پس چرا TCP به قطعه قطعه شدن نیاز دارد؟ آیا این کار زیادهروی نیست؟
فرض کنید یک بسته بزرگ وجود دارد که در لایه TCP قطعهبندی نشده و در حین انتقال از بین رفته است؛ TCP آن را دوباره ارسال میکند، اما فقط در کل بسته بزرگ (اگرچه لایه IP دادهها را به بستههای کوچکتر تقسیم میکند که هر کدام طول MTU دارند). دلیل این امر این است که لایه IP به انتقال قابل اعتماد دادهها اهمیتی نمیدهد.
به عبارت دیگر، در لینک انتقال به شبکه یک ماشین، اگر لایه انتقال، دادهها را قطعه قطعه کند، لایه IP آن را قطعه قطعه نمیکند. اگر قطعه قطعه شدن در لایه انتقال انجام نشود، قطعه قطعه شدن در لایه IP امکانپذیر است.
به عبارت ساده، TCP دادهها را به گونهای قطعهبندی میکند که لایه IP دیگر قطعه قطعه نشود و هنگامی که ارسال مجدد رخ میدهد، تنها بخشهای کوچکی از دادههای قطعه قطعه شده دوباره ارسال میشوند. به این ترتیب، کارایی و قابلیت اطمینان انتقال میتواند بهبود یابد.
اگر TCP قطعه قطعه شده باشد، آیا لایه IP قطعه قطعه نشده است؟
در بحث بالا، اشاره کردیم که پس از قطعه قطعه شدن TCP در فرستنده، هیچ قطعه قطعه شدنی در لایه IP وجود ندارد. با این حال، ممکن است دستگاههای لایه شبکه دیگری در سراسر لینک انتقال وجود داشته باشند که حداکثر واحد انتقال (MTU) کوچکتری نسبت به MTU در فرستنده داشته باشند. بنابراین، حتی اگر بسته در فرستنده قطعه قطعه شده باشد، هنگام عبور از لایه IP این دستگاهها دوباره قطعه قطعه میشود. در نهایت، تمام قطعات در گیرنده جمع میشوند.
اگر بتوانیم حداقل MTU را در کل لینک تعیین کنیم و دادهها را در آن طول ارسال کنیم، صرف نظر از اینکه دادهها به کدام گره منتقل میشوند، هیچ قطعه قطعه شدنی رخ نخواهد داد. این حداقل MTU در کل لینک، MTU مسیر (PMTU) نامیده میشود. هنگامی که یک بسته IP به یک روتر میرسد، اگر MTU روتر کمتر از طول بسته باشد و پرچم DF (قطعه قطعه نشود) روی ۱ تنظیم شده باشد، روتر قادر به قطعه قطعه کردن بسته نخواهد بود و فقط میتواند آن را رها کند. در این حالت، روتر یک پیام خطای ICMP (پروتکل پیام کنترل اینترنت) با نام "قطعه قطعه شدن مورد نیاز است اما DF تنظیم شده است" تولید میکند. این پیام خطای ICMP با مقدار MTU روتر به آدرس مبدا ارسال میشود. هنگامی که فرستنده پیام خطای ICMP را دریافت میکند، میتواند اندازه بسته را بر اساس مقدار MTU تنظیم کند تا دوباره از وضعیت قطعه قطعه شدن ممنوعه جلوگیری شود.
قطعه قطعه شدن IP یک ضرورت است و باید در لایه IP، به خصوص در دستگاههای میانی در لینک، از آن اجتناب شود. بنابراین، در IPv6، قطعه قطعه شدن بستههای IP توسط دستگاههای میانی ممنوع شده است و قطعه قطعه شدن فقط میتواند در ابتدا و انتهای لینک انجام شود.
درک اولیه از IPv6
IPv6 نسخه ۶ پروتکل اینترنت است که جانشین IPv4 محسوب میشود. IPv6 از طول آدرس ۱۲۸ بیتی استفاده میکند که میتواند آدرسهای IP بیشتری نسبت به طول آدرس ۳۲ بیتی IPv4 ارائه دهد. دلیل این امر این است که فضای آدرس IPv4 به تدریج در حال اتمام است، در حالی که فضای آدرس IPv6 بسیار بزرگ است و میتواند نیازهای اینترنت آینده را برآورده کند.
وقتی در مورد IPv6 صحبت میکنیم، علاوه بر فضای آدرس بیشتر، امنیت و مقیاسپذیری بهتری را نیز به همراه دارد، به این معنی که IPv6 میتواند تجربه شبکه بهتری را در مقایسه با IPv4 ارائه دهد.
اگرچه IPv6 مدت زیادی است که وجود دارد، اما استقرار جهانی آن هنوز نسبتاً کند است. این امر عمدتاً به این دلیل است که IPv6 باید با شبکه IPv4 موجود سازگار باشد، که مستلزم انتقال و مهاجرت است. با این حال، با اتمام آدرسهای IPv4 و افزایش تقاضا برای IPv6، ارائه دهندگان خدمات اینترنتی و سازمانهای بیشتری به تدریج IPv6 را اتخاذ میکنند و به تدریج عملکرد دوگانه پشته IPv6 و IPv4 را درک میکنند.
خلاصه
در این فصل، نگاهی عمیقتر به نحوه عملکرد قطعه قطعه شدن و سرهمبندی مجدد IP انداختیم. لینکهای داده مختلف، حداکثر واحد انتقال (MTU) متفاوتی دارند. هنگامی که اندازه یک بسته از حد MTU فراتر میرود، قطعه قطعه شدن IP، بسته را برای انتقال به چندین قطعه کوچکتر تقسیم میکند و پس از رسیدن به مقصد، آنها را با مکانیسم سرهمبندی مجدد IP به یک بسته کامل تبدیل میکند. هدف از قطعه قطعه شدن TCP این است که لایه IP دیگر قطعه قطعه نشود و فقط دادههای کوچکی که هنگام ارسال مجدد قطعه قطعه شدهاند، دوباره ارسال شوند تا کارایی و قابلیت اطمینان انتقال بهبود یابد. با این حال، ممکن است دستگاههای لایه شبکه دیگری در سراسر لینک انتقال وجود داشته باشند که MTU آنها ممکن است کوچکتر از MTU فرستنده باشد، بنابراین بسته همچنان در لایه IP این دستگاهها دوباره قطعه قطعه میشود. باید تا حد امکان از قطعه قطعه شدن در لایه IP، به ویژه در دستگاههای میانی در لینک، اجتناب شود.
زمان ارسال: 7 آگوست 2025