الخلاصة
- يسمح RFC 3042 بإرسال بيانات لم يسبق إرسالها عند وصول كل واحدة من أول رسالتي ACK مكررتين متتاليتين، إذا سمحت نافذة المستقبل وحدّ البيانات قيد الإرسال.
- قد تولّد هذه البيانات تغذية راجعة كافية لبلوغ عتبة ACK المكرر الثالث القائمة أصلاً، لكن يجب ألا ترتفع
cwndبسببها.
في حالة النافذة الصغيرة التي يصفها RFC 3042، لا تتمثل المشكلة في المقطع المفقود وحده. قد لا تصل إلى المرسل إقرارات كافية لتشغيل قاعدة Fast Retransmit القائمة. فإذا كانت نافذة الازدحام cwnd ثلاثة مقاطع وضاع أحدها، فلن يعود في المثال أكثر من ACKين مكررين. وعندئذ قد لا يبقى سوى انتظار انتهاء مؤقت إعادة الإرسال.
نشر Mark Allman وHari Balakrishnan وSally Floyd الوثيقة في يناير 2001. وتقترح Limited Transmit أنه عندما تكون لدى المرسل بيانات جديدة سبق إعدادها ولم تُرسل بعد، فينبغي له إرسال مقطع جديد عند كل من أول ACKين مكررين متتاليين. لكن لا بد أن تسمح نافذة المستقبل المعلنة بذلك، وألا يتجاوز مجموع البيانات غير المؤكدة cwnd + 2 مقطعين. والحد الحاسم أن المرسل يجب ألا يغيّر cwnd بسبب هذين الإرسالين.
هذا الفصل هو جوهر التصميم. فـLimited Transmit يضيف مقداراً مضبوطاً من البيانات كي يواصل تدفق ACK، ولا يعلن زوال الازدحام أو يمنح المرسل نافذة أكبر. كما أنه لا يعيد فوراً إرسال المقطع المشتبه بفقدانه. إذا وصلت المقاطع الجديدة وما يتبعها من ACK، فقد يصل ACK مكرر إضافي وتُستكمل العتبة المألوفة المكونة من ثلاثة. عندها تكون قاعدة Fast Retransmit السابقة هي التي تسمح بإعادة الإرسال؛ أما RFC 3042 فيدعمها ولا يستبدلها.
للـACK المكرر أكثر من تفسير. فقد يعني أن المستقبل تلقى بيانات تقع بعد فجوة في الترتيب، وقد ينشأ أيضاً عن إعادة ترتيب الحزم. وإعادة إرسال المقطع القديم عند أول ACK مكرر تستجيب لإشارة أضعف. لذلك يفضّل RFC 3042 إرسال بيانات جديدة والإبقاء على إيقاع ACK، ويرى أن ذلك أكثر تحملاً لإعادة الترتيب. لكنه لا يحوّل الإشارة إلى دليل مادي يحدد موضع الضياع أو سببه.
للآلية شروط عملية: وجود بيانات جديدة في قائمة الانتظار، وسعة في نافذة المستقبل، وبقاء FlightSize عند cwnd + 2 مقطعين أو أقل. وعند استخدام SACK، لا يجوز إرسال بيانات جديدة استجابة إلى ACK مكرر لا يتضمن معلومات SACK جديدة؛ يصف RFC 2018 خيار SACK، بينما يحدد RFC 3042 هذا القيد. إذا لم يتحقق شرط، أو ضاع المقطع الإضافي أو ACK الناتج عنه، فلا ضمان لتجنب انتهاء المؤقت.
لاحقاً، أدرج RFC 5681 الإرسال عند أول ACKين مكررين في التسلسل الموحّد لـFast Retransmit وFast Recovery، وأبقى حد المقطعين ومنع تعديل cwnd. يوضح هذا التطور مكان الآلية في مواصفات TCP، لكنه لا يثبت سلوك تنفيذ حديث لم يخضع للقياس.
تكمن القيمة التاريخية لـRFC 3042 في نطاق ضيق: معالجة نقص التغذية الراجعة في بعض النوافذ الصغيرة من دون إعادة تصميم التحكم في ازدحام TCP. فالـACK المكرر الثالث، وإعادة إرسال المقطع، ثم ACK التراكمي الذي يحرز تقدماً في فضاء الترقيم، انتقالات منفصلة. ولا يثبت أي منها وحده السبب المادي للفقد أو اكتمال استلام التطبيق لبيانات نافعة.
المصادر
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
