الخلاصة

  • يعد RFC 4098 جهاز DUT متقارباً عندما ينهي إجراءات مستوى التحكم المطلوبة لحالة الاختبار. أما RFC 7747 فلا ينهي القياس حتى تكتمل كل تغييرات FIB وتسلك كل حركة التحويل المشمولة بالاختبار المسار المقترح الجديد.
  • كانت Susan Hares واحدة من خمسة مؤلفين في كل من وثيقتي RFC المعلوماتيتين. يصل سجلها بين القياسين، لكنه لا يجعلها صاحبة الاختراع الوحيدة ولا يمنحها سلطة على إجماع IETF أو تنفيذ بائع أو نتيجة شبكة تشغيلية.

التقارب اسم يحتاج إلى قيد

يسحب peer خارجي مساراً مستخدماً، فيستقبل موجه الاختبار UPDATE. يطبق BGP سياسة الاستيراد، ويختار best path جديداً، ويحدث Loc-RIB، ثم يعلن النتيجة إلى peers لاحقين. لهذه السلسلة نهاية يستطيع مراقب التحكم تحديدها.

لكن سلسلة ثانية قد تبقى مفتوحة. تنزل المعلومات من البرنامج إلى العتاد، وتتغير FIB وadjacencies على دفعات، وقد تستمر بعض prefixes على next hop قديم. تكون عملية BGP هادئة، فيما يرى tester فقداً أو تكراراً أو تغييراً في ترتيب الحزم.

لا تكذب إحدى الساعتين. كل واحدة تجيب عن سؤال مختلف. الخطأ هو أن تمنح نهاية التحكم حق الشهادة على forwarding لمجرد أن التقرير يستخدم كلمة واحدة.

نشر Howard Berkowitz وElwyn Davies وSusan Hares وPrakash Krishnaswamy وMichael Lepp وثيقة RFC 4098 في 2005. وهي تضبط مصطلحات قياس تقارب eBGP في مستوى التحكم لجهاز واحد. يتركز النظر أولاً على وصول معلومات التوجيه ومعالجتها ونشرها. يتقارب DUT عندما يؤدي كل إجراءات التحكم اللازمة استجابة لحالة الاختبار؛ وفي مثال تغيير أفضل مسار لبادئة واحدة، قد تكون إعادة إعلان المسار إلى downstream peers نقطة النهاية.

هذا قياس صحيح داخل حدوده. كما أن الوثيقة لم تدّع أنه يقيس forwarding. فقد وضعت iBGP، وبدء التحويل اعتماداً على معلومات تحكم متقاربة، وتفاعل عدة أجهزة ضمن أعمال لاحقة. المدى المعلن جزء من الدليل، لا نقص ينبغي ستره.

ما يدخل الاختبار يحدد السؤال

يسمي RFC 4098 route mixture التركيبة السكانية لمجموعة المسارات. فتوزيع أطوال AS path والصفات وأطوال prefixes، وطريقة route packing داخل UPDATEs، والفواصل بين وصول التحديثات، كلها تصنع الحمل. مجموعة بسيطة تكشف حداً معيناً؛ ومدخل يحاكي بيانات حية قد يجيب عن سؤال تشغيلي مختلف. ظل بناء mixture واقعي مشكلة بحث مفتوحة، ولم يصبح «full table» وصفاً كافياً.

تغير policy التجربة أيضاً. Minimal policy تقبل كل شيء لا تساوي مرشحات طويلة وتعديلاً للصفات واستبعاداً لعدد كبير من المسارات. ويتأثر الزمن بعدد peers وroutes لكل peer، وchurn، وflap damping، وتداخل البروتوكولات، وforwarded traffic، وtimers، وTCP، وauthentication.

لذلك لا تصلح عبارة «BGP تقارب في 200 ms» للمقارنة ما لم تحمل التركيبة والسياسة والحمل والوظائف المفعلة. رقمان من تجربتين مختلفتين لا يرتبان جهازين؛ إنما يرتبان سؤالين.

الحزم توقف الساعة الثانية

في 2016 نشر Rajiv Papneja وBill Parise وSusan Hares وDavid Lee وIlya Varlashkin وثيقة RFC 7747. تعرف تقارب FIB أو data plane بأنه اكتمال كل تغييرات FIB بحيث تسلك كل حركة التحويل بعد ذلك المسار المقترح الجديد. وتقول صراحة إن هذا يختلف عن تقارب control plane داخل العقدة، وإن طرق اختبار ذلك المستوى خارج نطاقها.

عبارة «كل الحركة» محصورة في حركة الاختبار المعروضة على المسارات المعلنة. لا تشمل كل حزمة في الإنترنت. يحيط الاختبار بجهاز BGP واحد في topology بسيطة من ثلاث أو أربع عقد لحالات iBGP وeBGP وeBGP multihop. تخدم البساطة قابلية التكرار، لكنها لا تمثل وحدها route reflectors موزعة أو recursive resolution أو tunnels أو line cards متعددة أو أنماط خدمة حقيقية.

يرسل tester الحزم أثناء الحدث ويستنتج الزمن من packet loss المرصود. لذلك يكون الفاصل بين حزمتين متتاليتين معروضتين على route معينة هو أعلى دقة ممكنة. إذا جاءت العينة كل عشرين ملي ثانية، فلا يستطيع log داخلي ذو منازل أكثر أن يخلق مشاهدة خارجية بين العينتين.

تسجل صيغة التقرير عدد الحزم المعروضة والمحولة، وفقد الاتصال، وفقد التقارب، والحزم خارج الترتيب، والنسخ المكررة. وتكرر ذلك للحدث الأول وreversion event. الانتقال السريع إلى البديل مع عودة بطيئة ليس دليلاً متناظراً على الاستمرارية.

دفتر الشروط أهم من المتوسط

يتطلب RFC 7747 حالة ابتدائية دقيقة وخطوات معلنة. ينبغي تعطيل optional parameters واستخدام defaults ما لم يحدد الاختبار غير ذلك. يبدأ baseline بسياسة minimal، وتوثق أي policy إضافية. وتحافظ دورات الحالة الواحدة على interface media وthroughput نفسيهما.

يشمل التقرير topology والحدث والروابط المتوازية وeBGP/iBGP sessions وneighbors وعدد routes وunique/non-unique routes وIGP وroute mixture وpacking وpolicy ووظائف أمن التوجيه. ثم يضيف packet size وoffered load وsampling interval وfailure indication وhold time وMRAI وMAOI وkeepalive وConnectRetry ومعلمات TCP.

تستحق التجربة التكرار لأن timer expiration وCPU scheduling وغيرهما يضيفان تبايناً. لكن المتوسط لا يكون مشروعاً إلا إذا بقيت كل parameters ثابتة. وينبغي أن يصاحبه عدد trials والتشتت وحد الدقة. خلط إعدادات مختلفة ثم حساب متوسط لا يحولها إلى عينة أكبر.

هذا الدفتر هو أيضاً وسيلة ربط الساعتين. يحمل trigger معرف حدث واحد؛ وتوضح Adj-RIB-In ما وصل، وتوضح policy ما سُمح به، وتبين Loc-RIB والإعلانات نهاية عمل التحكم، وتبين سجلات FIB ما بُرمج، وتبين packet sequence النتيجة الخارجية. رسمان بلا join صحيح قد يصفان حدثين مختلفين.

قياس الصندوق الأسود جاء من سياق آخر

يستخدم RFC 7747 طريقة rate-derived من RFC 6412. ويتناول RFC 6412 وRFC 6413 تقارب data plane في link-state IGP، ويطوران black-box measurement خارج DUT وطرائق loss-derived وrate-derived وroute-specific. لا يفرضان سلوكاً معيارياً على BGP. إسهامهما هنا منهجي: لا تجعل العملية الداخلية تصادق وحدها على أثرها الخارجي.

يوفر RFC 1242 مصطلحات benchmarking عامة، ويصف RFC 2544 مختبراً يرسل فيه tester الحركة عبر DUT ويتحقق من الحزم المستلمة. هذا النسب يساعد على ضبط المقارنة، لكنه لا يجعل نتيجة المختبر SLA ولا يجعل RFC 2544 وحده اختباراً لتقارب BGP.

أما RFC 4271 فيقدم قاعدة البروتوكول: يتبادل BGP reachability information، ويعالج UPDATEs، ويحفظ Adj-RIB-In وLoc-RIB وAdj-RIB-Out، ويطبق policy على مستوى AS. تشرح هذه السجلات معرفة التحكم وقراره. ولا تملك أن تتحدث بدلاً من FIB أو الحزم.

موضع Susan Hares من دون تضخيم

يعرف الملف الحالي في IETF Datatracker Susan Hares، ويذكر اسم Sue Hares أيضاً، ويعرض صورة عامة لها. ويسجل أنها chair في IDR وsecretary في BGP Directorate، ويعد سبعة عشر RFC من بينها RFC 4098 وRFC 7747.

يدعم ذلك قولاً محدوداً: شاركت Hares في عملين جماعيين يفصلان، عبر أحد عشر عاماً، نهاية عمل التوجيه عن نهاية أثره في التحويل. ولا يدعم أنها صممت الطريقتين وحدها أو خططت مبكراً للوثيقة اللاحقة أو تتحكم في consensus أو vendors أو operators.

يصنع المؤلفون والمراجعون والمجتمع الطريقة العامة. يقرر البائع كيف ينتقل state إلى FIB. يختار المختبر المدخل والأداة. يكتب المشغل policy. ويتحمل مالك الخدمة loss. إظهار هذه السلطات يحفظ قيمة العمل أكثر من سرد بطولة فردية.

سجل يمكن إعادة تشغيله

يبدأ السجل من withdrawal أوannouncement أوlink failure أوreset معلوم الزمن. ويربط به routes والصفات المستلمة، وإصدار policy وselection reason، ونهاية processing والpropagation، وتغييرات FIB، ثم الحزم المعروضة والمفقودة والمكررة والمعاد ترتيبها مع sampling interval. ويكرر المسار عند reversion.

قد يكون الفرق بين الساعتين كبيراً، وقد يقل عن دقة الأداة. في الحالة الثانية، الصياغة الصحيحة هي «لم يُفصل الفرق عند هذه cadence»، لا «انتهيا معاً». غياب القدرة على القياس حقيقة عن الأداة وليس برهاناً على تطابق الطبقتين.

إذا لم تملك قاعدة البيانات إلا خانة convergence_time واحدة، فالخلل في نموذج السجل. يثبت UPDATE وصوله، وتثبت RIB اختيارها، ويثبت FIB acknowledgement ما تعرفه implementation، وتثبت الحزم ما رُصد في population معلنة. تصبح السلسلة موثوقة حين ترتبط من دون أن تستولي طبقة على سلطة التالية.

المصادر