الخلاصة

  • ينص الإصدار 21 على أن Publisher Parent يفكك Network Node Subscription إلى Component Subscriptions غير متداخلة، ويلزم قائمة حالة الاشتراك باحتواء Message Publisher ID واحد على الأقل.
  • قائمة الـAgents التي يعلنها الـParent إيصال بقراره في لحظة معينة، لكنها لا تثبت أن كل المكونات الضرورية اختيرت أو أن كل عملية أوصلت بياناتها بلا انقطاع.
  • يتطلب إثبات الاستمرارية سياق العقدة، ومجموعة الناشرين السارية، وهوية كل عملية، وعصر التسلسل، ومعرّف الرسالة عند الحاجة، ووقت الرصد، وتاريخ تغير حالة الاشتراك.

تصحيح للسلطة أثناء Last Call

رُفع draft-ietf-netconf-distributed-notif-21 في 6 سبتمبر 2026، بينما كانت وثيقة مجموعة NETCONF في IETF Last Call حتى 8 سبتمبر. وهي مستهدفة كـProposed Standard ومقدمة إلى IESG، لكنها ما زالت Internet-Draft قابلة للتغيير. ليست RFC ولا دليلاً على نشر تشغيلي.

كان تقييم IANA للإصدار 20 هو IANA - Not OK. أشار الخبير إلى مثال XML غير صالح وبيّن إجراءات التسجيل المستقبلية. أصلح الإصدار 21 علامات الاقتباس، وعدّل صياغة التسجيل، وصحح مسارات YANG الحساسة في قسم الأمن. فتحولت الحالة إلى Version Changed - Review Needed، أي إن مراجعة جديدة مطلوبة، لا أن التسجيل اكتمل.

أما التغيير الأهم فيصحح فاعل الجملة. يحافظ الـSubscriber على اشتراك العقدة لدى الـParent، ثم يقوم Publisher Parent بتفكيكه إلى اشتراكات مكونات. طالب البيانات يعرف ما يريد؛ والـParent يعرف الـAgents الموجودة وقدراتها. لذلك تقع سلطة اختيار التغطية داخل العقدة، ومعها مسؤولية تقديم تفسير قابل للتدقيق.

أضيف أيضاً min-elements 1 إلى قائمة الحالة message-publisher-id. لم تعد القائمة الفارغة حالة نموذجية مقبولة. لكن وجود اسم واحد لا يثبت أن القائمة كاملة.

معرّف الاشتراك يصف عقداً لا عملية واحدة

يمكن فصل الـCollector إلى Subscriber ومستقبل واحد أو أكثر. تصل الطلبات إلى الـParent وحده. يعرض الـParent قدرات إشعارات العقدة، ويبني اشتراكات مكونات غير متداخلة، وينقل الخصائص إلى الـAgents، ويحافظ على الحالة الكلية. وترث الـAgents معرّف الاشتراك ودورة حياته، ثم تجمع حصتها وتنشر مباشرة إلى المستقبلين.

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

تترك المسودة تنسيق Parent-Agent خارج نطاقها، وتجعل توزيع أجزاء مخطط YANG خاصاً بالتنفيذ. عدم التداخل يمنع التكرار بين المكونات المعلنة، لكنه لا يثبت شمول كل ما يعمل في العقدة.

ثلاث حقائق لا ينبغي دمجها

يرسل الـParent جميع إشعارات دورة حياة الاشتراك. تعرض subscription-started وsubscription-modified قائمة Publisher IDs الحالية، ويجب أن يتبع تغير التفكيك إعلان لقائمة جديدة. ينبغي حفظ هذه الرسائل كتصريحات محددة زمنياً عما اعتبره الـParent صالحاً.

هناك ثلاث مجموعات: ما أعلنه الـParent، وما رصده الـReceiver فعلاً، وما هو قيد التشغيل وينبغي أن يساهم وفق الجرد والإعداد. تطابق الأوليين يعني سماع كل الـAgents المعلنة فقط. ولا يكشف بطاقة خط أغفلها الإعلان، أو جزء مخطط أُسند إلى العملية الخطأ.

وضوح الطبقة الرمزية لا يحل محل الواقع التشغيلي. يصبح إعلان الـParent أقوى حين يطابق جرداً وقدرات وإعداداً مستقلاً. وينبغي أن يحتفظ كل اختلاف بمالكه وحدوده الزمنية بدلاً من أن يذوب في مؤشر صحة أخضر.

الاستمرارية تخص كل عملية نشر

يمكن لكل push-update أو push-change-update حمل Message Publisher ID المحلي للعملية التي أصدرته. وتضيف مسودة غلاف الإشعار، اختيارياً، اسم المضيف ورقم تسلسل لكل عملية: عداد 32 بت يبدأ من 1، ويمر عبر الصفر بشكل ظاهر بعد 4,294,967,295. يشير وقت الرصد إلى لحظة مشاهدة القيمة، لا بالضرورة إلى حدوث الحدث أو ترميزه أو تسليمه.

تجيب الهوية عن «من»، ويكشف التسلسل فجوة داخل عصر العملية، ويساعد Message ID في تمييز التكرار، ويضع الوقت القياس في موضعه، ويبين تاريخ الحالة من كان متوقعاً. تفتح إعادة التشغيل عصراً جديداً؛ وقد تصل رسالة قديمة متأخرة؛ وقد تتصادم هوية محلية بين عقدتين. لذلك يجمع مفتاح الاستمرارية العقدة والعملية والعصر وفترة سريان حالة الـParent.

عنوان واحد قد يخفي سلطات متعددة

تظهر كل الـAgents للمستقبل من عنوان IP مصدر واحد. وفي UDP قد تشترك أيضاً في منفذ المصدر؛ أما HTTPS فيتطلب في هذه المعمارية منفذاً مخصصاً لكل عملية برمجية. الخماسية ونهاية TLS ومعرّف الاشتراك سياق توجيه، وليست دليلاً كاملاً على المنشأ.

تجمع مسودة نقل UDP بين Publisher ID وMessage ID، وقد تحتاج إلى IP أيضاً عند إعادة استخدام الهويات المحلية. كما تحذر من الاعتماد على تجزئة IP للرسائل الكبيرة. معرفة أي Agent غاب لا تكفي إذا كانت أكبر رسائله تضيع بصمت.

النشر المباشر يوزع محيط الأمن

يسمح النشر من معالجات الشبكة أو بطاقات الخط بتجاوز معالج التوجيه المركزي في مسار البيانات. لكنه يوزع أيضاً المصادقة والتخويل والمفاتيح وحدود المعدل والموارد. تظل وسائل النقل الآمنة في NETCONF أو RESTCONF وNACM مهمة، إلا أن الهويات الفعلية ونقاط الإنفاذ حقائق خاصة بكل نشر. قاعدة في الـParent لا تثبت أن كل Agent مباشر ينفذ السياسة نفسها.

تكشف Publisher IDs كذلك ترتيب العمليات الداخلي. وقد تظهر تغيرات القائمة إعادة تشغيل أو توسعاً أو إعادة إسناد. الرؤية نفسها التي تفيد التدقيق قد تساعد مهاجماً على رسم الجهاز أو تقليد رسالة مقنعة. ينبغي تضييق الوصول إلى الطوبولوجيا الخام من دون حذف الهوية من سجل الأدلة.

سؤال لم يُحسم بعد

تقول الصياغة إن إشعارات التحديث يجب أن تتضمن هوية الناشر، بينما تعرض شجرة YANG الحالية message-publisher-id لكل رسالة كحقل اختياري. والقيد الجديد بوجود عنصر واحد يخص قائمة حالة الاشتراك، ولا يسري تلقائياً على كل تحديث. ليس هذا حكماً نهائياً بوجود عيب، بل سؤال للمراجعة: متى يجب على الـReceiver رفض تحديث بلا مصدر أو عزله؟

ينبغي اختبار أربعة ثوابت منفصلة: القائمة غير فارغة، والهوية موجودة في كل تحديث، وتنتمي إلى المجموعة السارية، والمعالجة واضحة عند الإخفاق.

حدود الاستنتاج

تثبت المصادر نصوص الوثائق وتاريخها وحالة مراجعتها. ولا تثبت تبني بائع، أو مطابقة تنفيذ، أو طوبولوجيا منشورة، أو فقداً، أو تحسن زمن، أو حادثاً، أو استغلالاً. كما أن وثائق الغلاف وUDP وHTTPS ما زالت مسودات.

الخلاصة الدائمة أضيق: التفكيك والإعلان والإرسال والرصد والمطابقة أفعال مختلفة. ولا يستطيع معرّف واحد اختزالها من دون محو المسؤولية.

المصادر