الخلاصة
- يجيز RFC 9831 في أنواع المقاطع I وJ وK إدراج حقل SRv6 SID بقيمة صفر عندما يريد المتحكم بيان سلوك النهاية أو بنية SID من دون تعيين SID نفسه.
- تثبت الراية S أن الحقل حاضر في الرسالة، ولا تثبت أن قيمته قابلة للتنفيذ؛ فعلى الرأس الأمامي حل مرجع العقدة أو المجاورة بمعطياته المحلية وقد يرفض الغياب أو التعارض.
- يحفظ الإثبات الجيد الرايات والقيمة الخام والسياق الطوبولوجي ومصدر الحل وSID الناتج وسبب التحقق والاختيار والتركيب وملاحظة الحزم كوقائع منفصلة.
الصفر هنا فعل لا فراغ
تميل أنظمة التشغيل إلى توحيد كل قيمة صفرية تحت معنى «غير موجود». لكن RFC 9831 يجعل معنى الصفر مرتبطاً بموضعه ونوع المقطع والرايات المحيطة به.
في الأنواع I وJ وK تعني الراية S أن حقل SID المؤلف من 128 بت موجود. ويستطيع المتحكم أن يضع فيه العنوان IPv6 الصفري إذا أراد نقل endpoint behavior أو SID structure من غير اختيار SID بعينه. وصلت البتات كلها؛ الذي لم يصل هو القرار النهائي، وقد تُرك عمداً للمستقبل المحلي.
غياب الحقل حالة أخرى. إذا غاب حقل SID فلا يجوز إدراج كتلة السلوك والبنية. أما إذا حضر بقيمة صفر فيمكن لتلك الكتلة أن تشرح المطلوب من القيمة التي سيحلها المستقبل. وإذا حمل قيمة غير صفرية يكون المرسل قد قدّم مرشحاً محدداً. هذه ثلاث حالات تختلف فيها حيازة القرار.
تحويل الغياب والقيمة الصفرية إلى null واحد يمحو التفويض. وتحويل الصفر والقيمة الفعلية إلى «الحقل موجود» يوهم بأن الأمر اكتمل. أقل سجل أمين يحتفظ بالرايتين S وB، وبالـ128 بت كما وصلت، وبنوع المقطع وعناوين العقد أو المعرّفات التي تمنحها معناها.
مسار صريح لا يعني قيمة محلية مجمّدة
يصف Segment List sub-TLV مساراً صريحاً إلى نقطة النهاية، ويصف كل Segment sub-TLV عنصراً مرتباً فيه. الصراحة هنا تحدد العناصر وتسلسلها، لكنها لا تشترط أن يصل كل عنصر في الصورة التي سيدفعها مستوى التمرير.
يصف النوعان C وD عقد IPv4 أو IPv6 كي تُحل إلى ملصقات SR-MPLS. وتصف E إلى H المجاورات بالعناوين ومعرّفات الواجهات. وتؤدي I إلى K المهمة المقابلة لعقد SRv6 ومجاوراته. ويضع RFC 9256 على الرأس الأمامي واجب تحويل هذه الأوصاف إلى label أو SID.
يسمح ذلك للمتحكم بأن يثبت معنى الخطوة من دون امتلاك كل تخصيص محلي متغير. تستطيع الشبكة المستقبلة تعديل الربط الداخلي مع بقاء المرجع. لكن التنفيذ يصبح معتمداً على ما يعرفه الرأس الأمامي في تلك اللحظة.
قد يستقبل رأسان الرسالة نفسها ويخرجان بنتيجتين مختلفتين. يرى أحدهما أصل البادئة والمجاورة الحالية، بينما يفتقد الآخر السجل أو يملك إصداراً أقدم. الإعلان المشترك يثبت المدخل، لا المخرج. لذلك يجب حفظ مصادر معلومات SR وإصدارها وزمنها والنتيجة بجانب الرسالة.
أربع رايات لا تعطي حكماً واحداً
تعلن A أن حقل SR Algorithm ذو معنى في الأنواع التي تنطبق عليها. إذا لم تُرفع A وجب على المرسل وضع الصفر وعلى المستقبل تجاهل الحقل. هذا الصفر لا يطلب من المستقبل اختيار خوارزمية؛ إنه لا يعلن خوارزمية أصلاً.
تعلن S وجود حقل SID، ولا تقول هل قيمته صفر، أو هل يمكن العثور عليها، أو هل تتوافق مع المرجع، أو هل ستُركب.
تعلن B وجود كتلة SRv6 endpoint behavior وSID structure للأنواع B وI وJ وK. لا تستقل هذه الكتلة عن حقل SID، لكنها تستطيع مرافقة حقل صفري. وبذلك تصف المتوقع من قيمة لم يحددها المستقبل بعد.
تطلب V من SR Policy Manager إجراء التحقق من SID. ليست V شهادة نجاح. عرض V=1 على أنه «متحقق منه» يحول طلب العمل إلى نتيجة لم تقع.
تقسم الرايات الأربع معنى الخوارزمية، ووجود الحقل، والسياق الإضافي، وواجب التحقق. جمعها في ضوء أخضر واحد يلغي الجهة التي اتخذت كل قرار.
يستطيع الرأس الأمامي أن يخالف المتحكم
يعرض RFC 9256 مفهوم SR-DB بوصفه مجموعة فكرية من المعلومات التي تساعد الحساب والتحقق؛ ولا يلزم التطبيق بإنشاء قاعدة فعلية بهذا الاسم. المطلوب هو سياق محلي يربط البادئة أو العقدة أو الواجهة أو زوج العناوين بـSID صالح حالياً.
يفشل التحقق إذا لم يجد الرأس SID مقدماً في معلوماته. ويفشل إذا قاد سياق نوع من C إلى K إلى SID آخر يخالف القيمة المقدمة. وقد يتعذر حل مقطع غير أول إلى label أو SID أصلاً. تشير الأسباب إلى نقص محلي، أو تعارض بين رؤيتين، أو خطوة غير مكتملة في المسار.
عبر المجالات، يعترف المعيار بحد المعرفة. إذا تعذر على الرأس التحقق من إمكانية بلوغ SID بعيد، يفرض RFC 9256 استخدام النوع A أو B لتلك SID، ويشترط دائماً إمكانية بلوغ SID الأولى. لا تُمنح أداة الحل المحلية علماً وهمياً بما وراء مجالها.
إذن لا يكتفي المستقبل بفك البتات. يحدد الحقول الفاعلة، ويراجع السياق، ويكمل القيمة أو يعارضها، ثم يحكم على القائمة. قد تثبت حماية جلسة BGP هوية الند، لكنها لا تثبت صحة عنوان عقدة أو واجهة أو behavior أو رؤية طوبولوجية.
سلامة الطول لا تثبت سلامة المسار
يحدد RFC 9831 أطوالاً دقيقة تبعاً لوجود SID وكتلة السلوك والبنية. تمنع هذه القواعد انزياح القراءة إلى الحقول التالية. وهي تغلق مسألة نحوية واحدة فقط.
يحدد النوع هل الحقل عقدة أو مجاورة أو label أو SRv6 SID. وتحدد الرايات ما يجب تفسيره. ثم يتحقق SRPM من القائمة كلها. ووفق RFC 9256 تصبح القائمة التي تخلط مقاطع SR-MPLS وSRv6 غير صالحة، حتى لو كان كل sub-TLV فيها صحيح الشكل بمفرده.
سبق أن وضع RFC 9830 التحقق الدلالي للمسار الصريح خارج BGP، ويقول RFC 9831 إن الإضافات لا تغير تشغيل SR Policy أو إدارة أعطالها. تناولت دراسة RFC 9830 السابقة الفرق بين حمل BGP وسلطة التمرير. أما هذه الدراسة فتقف داخل الوصف نفسه: قد يكون الحقل الحاضر طلباً من المستقبل لإتمام القرار، قبل اختيار المرشح أصلاً.
يسجل IANA القواعد ولا يبرمج العتاد
يسجل IANA أرقام أنواع C–H وI–K وموضعي A وS. تجعل هذه القواعد التطبيقات تقرأ الرقم نفسه بالنحو نفسه، وهو شرط للتشغيل البيني.
لكن الرقم المسجل لا يثبت أن موجهاً يدعم النوع، أو أن معلومات SR حديثة، أو أن معرف الواجهة ما زال يشير إلى الوصلة المقصودة، أو أن SID المحلول وصل إلى مستوى التمرير. كما أن صفة Experimental في RFC 9831 تثبت وجود تصميم منشور للتنفيذ والتقييم، لا انتشاراً أو نجاحاً.
قد تعني «مدعوم» أن المحلل يعرف Type J فقط. وتعني «محلول» أن السياق المحلي أنتج SID. وتعني «متحقق» أن القيمة والسياق اتفقا. و«نشط» تخص اختيار المرشح، و«مركب» تخص مستوى التمرير، و«مرصود» تحتاج إلى حزمة مضبوطة. لا يجوز أن تصبح هذه الكلمات مترادفات.
احتفظ بالقيمة الأصلية وبمن أكملها
يسجل المتحكم النية والترتيب والنوع وسياق العقدة أو الوصلة وA/S/B/V والأطوال والقيم الخام والإصدار والزمن. ويصرح هل أرسل SID غير صفري، أم استخدم الصفر لتفويض الحل، أم حذف الحقل.
يضيف الرأس مصادر معلومات SR وإصدارها والقيمة المحلولة والالتباس والزمن. ويضيف التحقق المطابقة أو الغياب أو المزج التقني وسبب الرفض. ثم تأتي صلاحية المرشح واختياره وتركيبه والحزمة ونتيجة الخدمة بلا اختصار.
بهذا الفصل يعود فشل التفويض إلى مالك المعلومات المحلية، ويعود تعارض SID المقدم إلى حد التسليم بين المرسل والمستقبل، ويعود فشل التركيب اللاحق إلى منصة التمرير. لا يحتاج الإصلاح إلى تخمين من كان يملك القرار.
المصادر
- https://datatracker.ietf.org/doc/rfc9831/
- https://datatracker.ietf.org/doc/rfc9831/history/
- https://datatracker.ietf.org/doc/rfc9831/referencedby/
- https://datatracker.ietf.org/doc/rfc9831/references/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://www.iana.org/assignments/bgp-parameters/bgp-parameters.xhtml
- https://www.rfc-editor.org/errata/rfc9831
- https://www.rfc-editor.org/info/rfc9831/
- https://www.rfc-editor.org/rfc/rfc2119.html
- https://www.rfc-editor.org/rfc/rfc8174.html
- https://www.rfc-editor.org/rfc/rfc8402.html
- https://www.rfc-editor.org/rfc/rfc8660.html
- https://www.rfc-editor.org/rfc/rfc8754.html
- https://www.rfc-editor.org/rfc/rfc8986.html
- https://www.rfc-editor.org/rfc/rfc9256.html
- https://www.rfc-editor.org/rfc/rfc9552.html
- https://www.rfc-editor.org/rfc/rfc9830.html
- https://www.rfc-editor.org/rfc/rfc9831.html
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
