عندما نواجه بطء في سرعة الإنترنت، فإننا نلجأ دائمًا تقريبًا إلى إعادة تشغيل جهاز التوجيه (Router). في بعض الحالات، قد ينجح ذلك. في بعض الأحيان، نعتقد تلقائيًا أن مزود خدمة الإنترنت (ISP) يقوم بتقييد (throttling) الإنترنت؛ وهذا أيضًا ليس صحيحًا دائمًا. قد نكون ببساطة نواجه مشكلة فريدة تتسبب في تجربة إنترنت سيئة، على الرغم من أن سرعة الاتصال تبدو رائعة في جميع اختبارات السرعة.
هذا بالضبط ما حدث لي، وفي النهاية، لم يكن الحل كما توقعت. كل ما احتجت إليه هو مواءمة وحدة الإرسال القصوى (Maximum Transmission Unit (MTU)) مع حدود الاتصال الفعلية الخاصة بي. بمجرد أن تمكنت من فعل ذلك، اختفى التأخير.
روابط سريعة
تحدد MTU الحد الأقصى لحمولة IP التي يمكن أن تعبر الرابط سليمة
تحدد قواعد التجزئة والحجم الزائد للرأس حجم الحزمة الفعلي
تمثل MTU أكبر حزمة بيانات بالبايت يمكن أن يسمح بها جهاز متصل بالشبكة دون تجزئتها. عادة ما يتم تعيين هذا الرقم على 1500 بايت لمعظم شبكات إيثرنت (Ethernet). الرقم 1500 ليس رقمًا عشوائيًا. يفترض جهاز التوجيه (Router) الخاص بك أنه آمن بناءً على قيود تصميم إطار إيثرنت (Ethernet) منذ عقود، والتي لا يزال العديد منها مستخدمًا حتى اليوم.
ومع ذلك، فإن 1500 بايت ليست مجرد حجم البيانات الخاصة بك وحدها، لأن الحزم تحمل بشكل طبيعي بيانات إضافية تمثل الحمل الزائد للبروتوكول. في حركة مرور TCP العادية، يشتمل الحمل الزائد عادةً على 20 بايت لرأس IPv4 و 20 بايت أخرى لرأس TCP. مع أخذ ذلك في الاعتبار، فإن ما لديك فعليًا هو بدل أقصى قدره 1460 بايت لحزمتك في بيئة MTU تبلغ 1500. وهذا يفسر 1460 بايت من الحد الأقصى لحجم مقطع TCP (Maximum Segment Size (MSS)) على الشبكات القياسية.
تبدأ المشاكل عندما تكون الحزمة أكبر من بيئة MTU التي يجب أن تمر عبرها. الطريقة الوحيدة التي يمكن أن تمر بها بنجاح هي إذا قام جهاز التوجيه (Router) بتجزئة الحزمة إلى أجزاء أصغر. هذه العملية تستهلك الكثير من الموارد، وتتطلب المزيد من عمل وحدة المعالجة المركزية (CPU) ومساحة التخزين المؤقت لأن كل جزء يتم تخصيص رأس IP خاص به، ويجب إعادة تجميعها جميعًا في الوجهة. العملية نفسها لا تقلل من عرض النطاق الترددي؛ إلا أنها تزيد من تعقيد وحساسية تسليم الحزم.
غالبًا ما تقلل مسارات الإنترنت الحقيقية من MTU القابلة للاستخدام إلى أقل من 1500
يقلل التغليف وتقنيات الوصول من مساحة الحمولة المتاحة
قد تفترض أن قيمة 1500 تعمل في كل مكان، ولكن هذا غير صحيح. 1500 بايت هي أكبر من وحدة الإرسال القصوى (MTU) المستخدمة في العديد من الاتصالات السكنية. يعتبر بروتوكول النقطة إلى النقطة عبر الإيثرنت (PPPoE) معيارًا شائعًا لبعض عمليات نشر الألياف والعديد من خيارات خط المشترك الرقمي (DSL). تقلل تكلفته الإضافية البالغة 8 بايت من وحدة الإرسال القصوى (MTU) الفعالة إلى 1492، مما يجبر على التجزئة إذا كان جهاز التوجيه الخاص بك مضطرًا لدفع حزم 1500 بايت عبر نفق 1492.
طالما أن بياناتك يجب أن تكون مغلفة في تغليف إضافي، فسوف يؤثر ذلك فعليًا على مساحة الحمولة الفعلية الخاصة بك. على سبيل المثال، تقدم شبكة VLAN علامة 4 بايت. على الرغم من أن هذه العلامة ضرورية لتحديد الشبكة الظاهرية لحركة المرور، إلا أنها لا تزال تقلل من الحمولة. يؤدي ترجمة عنوان الشبكة على مستوى شركة الاتصالات (CGNAT) و DS-Lite أيضًا إلى نفس التأثير. في حالة DS-Lite، فإن نقل حركة المرور عبر شبكة مزود خدمة الإنترنت عن طريق تمرير حركة مرور IPv4 داخل حزم IPv6 يضيف حمولة رأسية إضافية. تجعل شبكات VPN الحزمة الأصلية الخاصة بك حمولة لحزمة جديدة، مع طلب الحزمة الجديدة رأسًا جديدًا.
كل هذه الحالات تشبه إضافة تغليف إضافي إلى صندوق يحتوي بالفعل على تغليفه الخاص دون زيادة حجم المسار الذي يجب أن يمر عبره الصندوق. لن يمر إلا إذا تم تقسيمه.
على شبكات الهاتف المحمول، يصبح الأمر أكثر تعقيدًا لأن LTE و 5G تاريخيًا لديهما خط أساس أقل من 1500 بايت المستخدمة بواسطة Ethernet. اعتمادًا على تنفيذ شركة الاتصالات الخاصة بك، تتراوح قيم MTU بين 1420 و 1480. بشكل عام، يساوي حد الاتصال أصغر MTU في أي مكان على طول المسار، وطالما أن جهاز التوجيه لا يمكنه احترام هذا الحد، فستحصل إما على تجزئة أو إسقاط صامت للحزم، وهو سبب محتمل لبطء الإنترنت.
آليات الضبط التلقائي لـ MTU لا تمنع الفشل دائمًا
اكتشاف MTU للمسار، وتصفية ICMP، وسلوك الثقب الأسود
يوجد حل للضبط التلقائي لمنع التجزئة يعمل بشكل رائع، على الأقل على الورق. يطلق عليه اكتشاف MTU للمسار (PMTUD). إليك كيفية عمله: قد تقوم الأجهزة بتعيين بت “عدم التجزئة” عند إرسال الحزم. يؤدي هذا البت إلى قيام جهاز التوجيه المستقبِل بالرد برسالة ICMP Type 3 Code 4، “التجزئة مطلوبة”، إذا تجاوز حجم الحزمة MTU للمصب.
المشكلة هي أنه، من الناحية العملية، تقوم العديد من جدران الحماية بحظر ICMP افتراضيًا. لذلك، يتم إسقاط الحزم الكبيرة، وتتسبب تصفية جدار الحماية في عدم معرفة المرسل أن الحزم كانت كبيرة جدًا. يؤدي إسقاط الحزم إلى قيام TCP بإعادة الإرسال وإنشاء مؤقتات تراجع أسية. يسمى هذا الوضع بالثقب الأسود MTU، حيث تفشل الحزم الكبيرة باستمرار على الرغم من أن حركة المرور تبدو وكأنها تتدفق.
تحاول أنظمة التشغيل الحديثة التخفيف من بعض حالات الفشل عن طريق تنفيذ RFC 4821 Packetization Layer Path MTU Discovery (PLPMTUD) كوسيلة لسبر حجم الحزمة دون الحاجة إلى الاعتماد على ICMP. في بعض الحالات، لا يتم التعامل مع التجزئة بشكل جيد من قبل أجهزة التوجيه ومعدات ISP ونقاط نهاية VPN. لا تظهر هذه في نتائج اختبار السرعة، ولكن التأثير الحقيقي هو أن تباين زمن الوصول يستمر في التراكم.
إذا كان جهاز التوجيه الخاص بك يطبق تثبيت MSS، فقد يخفي عدم تطابق MTU بدلاً من إصلاحه، وهذا هو السبب في أن الأعراض يمكن أن تكون غير متسقة وليست ثابتة.
قياس وتصحيح MTU يعيد تدفق الحزم النظيف من طرف إلى طرف
طالما أنك تفهم العمليات الحسابية، فمن السهل العثور على MTU الصحيح. إذا كنت بحاجة إلى الاختبار باستخدام الأمر ping، لاحظ أن ترويسة IPv4 تبلغ 20 بايت، ويضيف ICMP 8 بايت، ليصبح إجمالي حجم الترويسة 28 بايت. لذا، بدءًا بحمولة تبلغ 1472 بايت، عندما تضيف 28 بايت من IPv4 و ICMP، يصبح المجموع 1500. قلل حجم الحمولة من هذه النقطة حتى تصل إلى قيمة لا تنتج عنها تجزئة. سيكون MTU القابل للاستخدام هو 28 بالإضافة إلى أعلى حمولة ناجحة.
إليك أمر Windows:
ping 8.8.8.8 -f -l 1472
أستخدم -f لتعيين بت “عدم التجزئة” (Don’t Fragment bit) و -l للإشارة إلى حجم الحمولة. الهدف هو الاستمرار في خفض حجم الحمولة حتى تحصل على رد نجاح ثابت. فيما يلي أمر Linux المكافئ:
ping -M do -s 1472 8.8.8.8
على نظام macOS، يختلف الأمر قليلاً نظرًا لأن علامات التجزئة لا تتم معالجتها بنفس الطريقة عبر الإصدارات. ستحصل على فحص أكثر موثوقية لمسار MTU بالاعتماد على أدوات مثل mtr عبر Homebrew.
اختبر دائمًا MTU مقابل عناوين IP متعددة للوجهة، وليس فقط 8.8.8.8، حيث يمكن أن توجد ظروف الثقب الأسود على مسارات معينة وليس غيرها.
بعد معرفة القيمة الثابتة التي يجب أن تكون عليها، من الأفضل تعيين MTU في واجهة WAN الخاصة بجهاز التوجيه (Router) الخاص بك حتى لا تضطر إلى تكوين جميع أجهزتك بشكل فردي. فيما يلي جدول يعرض تقديرات تقريبية قد تتوقعها على أنواع الاتصال المختلفة:
| نوع الاتصال | MTU النموذجي الذي يجب أن تتوقعه |
|---|---|
| إيثرنت قياسي (كابل / ألياف ضوئية مباشرة، بدون PPPoE) | 1500 |
| PPPoE (DSL أو بعض مزودي خدمة الإنترنت عبر الألياف الضوئية) | 1492 |
| اتصال مزود خدمة الإنترنت الموسوم بـ VLAN | 1496-1500 (يعتمد على تطبيق مزود خدمة الإنترنت) |
| شبكات LTE / 4G / 5G المحمولة | ~1420-1480 (يختلف حسب شركة الاتصالات) |
| IPSec VPN (وضع النفق) | 1380-1460 (يعتمد على الشفرة والتغليف) |
| WireGuard (الأصل MTU 1500) | ~1412 |
| OpenVPN (وضع UDP) | 1300–1450 (يعتمد بشكل كبير على الإعدادات) |







