خطوات الاستخدام
الخطوة 1: فهم الحزمة الداخلية (Inner Packet). الحزمة الداخلية هي حزمة البيانات الأصلية التي ترغب في إرسالها عبر نفق GRE. يمكن أن تكون هذه حزمة IP عادية أو أي بروتوكول آخر. في هذه الحاسبة، يتم إدخال حجم الحزمة الداخلية بالبايت (Byte). يجب أن يكون الإدخال عددًا صحيحًا موجبًا. هذا الحجم يشمل رأس IP الداخلي (20 بايت عادةً) والبيانات (Payload). على سبيل المثال، حزمة TCP/IP نموذجية قد تكون 1500 بايت.
الخطوة 2: إضافة حمل GRE الإضافي. يقوم نفق GRE بإضافة رأس GRE أساسي (4 بايت) ورأس IP خارجي جديد (20 بايت لـ IPv4 أو 40 لـ IPv6)، ويمكن أن تزيد خيارات النفق (مفتاح 4، تسلسل 4، مجمّع تدقيق 2) الرأس حتى 10 بايتات إضافية. بالحساب الافتراضي (بلا خيارات ومع IPv4 خارجي) يكون المجموع 24 بايت ثابتاً لا يتغير مع حجم الحزمة الداخلية. لذلك حجم الحزمة الكلي = حجم الحزمة الداخلية + (4 + الخيارات + رأس IP الخارجي).
الخطوة 3: تفسير النتيجة. الناتج هو الحجم الكلي للحزمة التي سترسل عبر الشبكة الفعلية (Outer Packet). هذا الحجم مهم لتحديد ما إذا كانت الحزمة ستمر عبر مسار الشبكة دون تجزئة (Fragmentation). إذا تجاوز الحجم الكلي الحد الأقصى لوحدة الإرسال (MTU) للمسار، فقد تحتاج إلى ضبط حجم الحزمة الداخلية أو تمكين تجزئة IP. استخدم هذه القيمة لحساب النفقات العامة (Overhead) بالنسبة المئوية أو لضبط إعدادات الشبكة.
أمثلة محلولة
تطبيقات عملية على الحمل الإضافي GRE بخطوات الحل كاملة.
الحل
الحل:
حجم الحزمة الداخلية = 1400 بايت.
حمل GRE الإضافي = 24 بايت (ثابت).
الحجم الكلي = 1400 + 24 = 1424 بايت.
النسبة المئوية للحمل الإضافي = (24 / 1424) × 100 ≈ 1.69%.
ملاحظة: هذا الحمل صغير نسبيًا. إذا كانت MTU للمسار 1500 بايت، فإن الحزمة الكلية (1424) أقل من 1500، لذا لن تحتاج إلى تجزئة. لكن إذا كان الحجم الداخلي 1476 بايت، يصبح الكلي 1500 بايت بالضبط، وهو حد MTU نموذجي. يجب أن تترك مساحة للبروتوكولات الأخرى مثل PPPoE إذا وجدت.
الحل
الحل:
حجم الحزمة الداخلية = 1500 بايت (حجم IP كامل بدون أي تعديل).
حمل GRE الإضافي = 24 بايت.
الحجم الكلي = 1500 + 24 = 1524 بايت.
نظرًا لأن معظم شبكات Ethernet تستخدم MTU بقيمة 1500 بايت، فإن الحزمة الكلية (1524) تتجاوز الـ MTU. لذلك، ستحدث تجزئة IP على مستوى الحزمة الخارجية. هذا قد يسبب مشاكل أداء وزيادة في استخدام المعالج. الحل الأمثل هو تقليل حجم الحزمة الداخلية عن طريق ضبط MSS (Maximum Segment Size) في اتصالات TCP لتكون أقل من 1460 بايت (1500 - 20 - 20 = 1460). مع GRE، نضيف 24 بايت أخرى، لذا يجب أن يكون MSS = 1500 - 20 (IP داخلي) - 20 (TCP) - 24 (GRE) = 1436 بايت. أو يمكن تفعيل Path MTU Discovery.
أمثلة محسوبة
قيم مُدخَلة ونتيجة محسوبة فعليًا بواسطة الحمل الإضافي GRE.
مرجع — حزمة داخلية 1400 بايت مع GRE/IPv4 بلا خيارات
- الحزمة الداخلية (بايت)
- 1,400
- بايتات خيارات GRE (0 إلى 10)
- 0
- نسخة IP الخارجية
- ipv4
مرجع — حزمة IP كاملة داخل نفق GRE (حالة التجزئة)
- الحزمة الداخلية (بايت)
- 1,500
- بايتات خيارات GRE (0 إلى 10)
- 0
- نسخة IP الخارجية
- ipv4
مرجع — أكبر حزمة داخلية لا تتجاوز MTU (حدّ مطابق)
- الحزمة الداخلية (بايت)
- 1,476
- بايتات خيارات GRE (0 إلى 10)
- 0
- نسخة IP الخارجية
- ipv4
مرجع — GRE فوق IPv6 بكل الخيارات الاختيارية
- الحزمة الداخلية (بايت)
- 1,400
- بايتات خيارات GRE (0 إلى 10)
- 10
- نسخة IP الخارجية
- ipv6