الخلاصة
- تضيف RFC 10035 قائمة
augmented-byللقراءة فقط إلى YANG Library كي يعلن الخادم الوحدات الموجودة في مجموعة الوحدات نفسها والتي تضيف عقداً مباشرة إلى وحدة أخرى. - تسد القائمة فجوة في الاكتشاف، لكنها لا تحسب الاعتماد المتعدي، ولا تثبت حداثة الجرد، ولا تحكم على التوافق الدلالي، ولا تأذن بإزالة وحدة أو ترقيتها.
السلسلة القصيرة ترسم الحد بدقة
يوضح مثال A وB وC معنى كلمة «مباشر». توفر A بنية أساسية. تستعمل B عبارة augment لإضافة حاوية إليها. ثم تضيف C ورقة إلى الحاوية التي تملكها B. تعلن مكتبة A عن B في augmented-by، وتعلن مكتبة B عن C. لا تصبح C معدّلاً مباشراً لـ A لمجرد أن مسارها يقع داخل شجرة بدأت في A.
هذا ليس نقصاً في البيانات، بل هو نطاق العلاقة التي عرّفتها الوثيقة. الوحدة المالكة للأب المباشر للعقدة المضافة هي طرف الحافة المباشرة. أما العلاقة بين C وA فهي نتيجة يستخرجها التطبيق. من يحتاج إلى الإغلاق الكامل عليه اجتياز الرسم؛ ومن يحتاج إلى أثر مسار بعينه عليه فحص شجرة المخطط.
ويمنع هذا التحديد خلط علاقات مختلفة. استيراد تعريفات، أو تضمين وحدة فرعية، أو إضافة عقد، أو تطبيق deviation ليست عمليات متطابقة. على أدوات الجرد والاختبار والقياس أن تميز بين ما أعلنه الخادم وما استنتجته هي.
النشر يكمل جزءاً مفقوداً من YANG Library
نشر RFC Editor الوثيقة RFC 10035 على مسار المعايير في IETF في أغسطس 2026. وتحمل وحدة ietf-yang-library-augmentedby تاريخ مراجعة 26 أغسطس 2026. كما سجلت IANA اسم الوحدة ومساحة أسماء XML والبادئة yanglib-aug.
كانت RFC 8525 تتيح للخادم وصف مخازن البيانات ومجموعات الوحدات والمراجعات والميزات والوحدات الخاصة بالاستيراد والانحرافات. وبذلك كان العميل يرى بعض علاقات التعديل العكسية عبر deviations. أما اكتشاف من يستعمل augment لإضافة عقد فكان يتطلب غالباً جلب النماذج وتحليلها معاً.
تضيف RFC 10035 قائمة augmented-by تحت كل وحدة في شجرة NMDA. وتضيفها أيضاً إلى شجرة modules-state القديمة المتوافقة مع البنية المرتبطة بـ RFC 7895. هذا يقلل العمل على التطبيقات التي تحتاج إلى معرفة المعدّلات من دون تنزيل المجموعة كلها.
لكن المنفعة محددة. الخادم يصرح بحقيقة يعرفها حين يركب المخطط المدعوم. ولا يكتسب بذلك معرفة بكيفية اعتماد كل تطبيق تجاري على العقد المضافة.
مجموعة الوحدات هي نطاق الدليل
كل قيمة في augmented-by هي مرجع إلى اسم وحدة في مجموعة الوحدات نفسها. يجب أن تكون الوحدة الأساسية والوحدة المعدّلة موجودتين في تلك المجموعة. ولا يجوز أن تكون المعدّلة مدخلة للاستيراد فقط، كما لا يجوز أن يعود المرجع بصورة مباشرة أو غير مباشرة إلى الوحدة التي يجري تعديلها.
تحمي هذه الشروط سلامة البنية: لا يعلن الخادم حافة ينقص طرفها، ولا يعرض وحدة خاملة وكأنها تغير المخطط المنفذ. لكنها لا تثبت أن الجامع قرأ المجموعة الصحيحة. تستطيع RFC 8525 وصف أكثر من مخزن بيانات وأكثر من اختيار للمخطط. وقد يغير تفعيل برمجيات أو استبدال جهاز أو إدخال وحدة محتوى المكتبة.
لذلك يجب أن تحفظ حزمة الدليل هوية الجهاز والطرف الموثق ومخزن البيانات واختيار المخطط أو مجموعة الوحدات وهوية المحتوى والمراجعات ووقت القراءة. وتشير الوثيقة إلى أن البيانات العكسية تزيد حجم المكتبة وأن على الخادم تحديثها عند إدخال وحدات جديدة. حافة صحيحة مأخوذة من نسخة قديمة تظل قديمة.
الجرد ليس حكماً بالتوافق
تقول الحافة إن وحدة تضيف عقداً مباشرة إلى مخطط وحدة أخرى. ولا تقول إن عميلاً محدداً يفهم تلك العقد، أو يستطيع تجاهلها، أو إن البيانات موجودة في المخزن المعني، أو إن مراجعة مقترحة تحافظ على المعنى نفسه.
يمكن لكتالوج أن يستعمل الحافة لجلب النماذج المناسبة. ويمكن لمحلل القياس أن يعثر على حقول ليست في الوحدة الأساسية. ويمكن لمنظومة اختبار أن توسع نطاق التحقق. مع ذلك، عليها مراجعة الإصدارات والميزات والانحرافات والاستيرادات والمسارات، ثم ربطها بالمستهلكين الحقيقيين.
تظهر المشكلة بوضوح عند الإزالة. وجود B بجوار A يحذر من أن B يعدّل A، لكنه لا يأذن بإلغاء B. قد تعتمد C على B مباشرة، وقد تحتوي الإعدادات على عقد أنشأتها B، وقد تستهلك اشتراكات تلك البيانات. قرار كهذا يحتاج إلى الإغلاق العكسي وسياق التشغيل، لا إلى الحافة الأولى فقط.
القراءة فقط لا تجعل الكشف بلا أثر
العقد الجديدة حالة تشغيلية وليست إعدادات قابلة للكتابة. قراءتها لا تغير الجهاز. لكن تركيب المخطط قد يكشف وحدات خاصة بمورد أو بمجال، وقدرات مفعلة، وأماكن ينبغي للعميل البحث فيها عن بيانات إضافية.
لهذا تربط RFC 10035 الوصول ببروتوكولات إدارة YANG الآمنة والمصادقة المتبادلة وضوابط مثل NACM. تثبت المصادقة من أجاب. وتحدد الصلاحية ما يستطيع ذلك المستخدم رؤيته. ولا يضمن أي منهما أن يرى مستخدم آخر أو مخزن آخر أو وقت لاحق الصورة نفسها.
ينبغي للأتمتة أن تحفظ شروط الرؤية هذه. مقارنة جرد ذي امتياز كامل بجرد مقيّد قد توهم بأن حافة اختفت، بينما الذي تغير هو الإذن. لا تصبح الغيبة دليلاً موثوقاً إلا إذا كان نطاق القراءة معلوماً أيضاً.
التنفيذات تثبت الإمكان ولا تثبت الانتشار
يسجل تقرير IESG أربعة تنفيذات واختباراً في فعالية IETF للبرمجة. وهذا دليل جيد على إمكان بناء الآلية والاستعلام عنها. لكنه لا يحدد الإصدارات الموجودة على كل جهاز، ولا يثبت أن كل خادم يحدّث القائمة ذرياً عند تغير المخطط.
يبدأ الاختبار التشغيلي بوحدات معلومة. فعّل معدّلاً مباشراً، ثم تحقق من ظهور الطرفين في المجموعة نفسها ومن إعلان الوحدة الأساسية عنه ومن تغير هوية المحتوى كما ينبغي. بعد ذلك أنشئ حالة من خطوتين وتحقق من عرض الحافتين المباشرتين بلا اختصار خاطئ.
الاختبارات السلبية ضرورية أيضاً. يجب ألا تظهر وحدة للاستيراد فقط كمعدّل نشط. وينبغي رفض الدورة أو التعامل معها بأمان. ولا يجوز لجامع قديم أن يجيز تغييراً. كما يجب ألا يستعيد مستخدم محجوب بيانات التركيب عبر مسار بديل.
السلطة موزعة على ثلاثة أدوار
للخادم سلطة التصريح بتركيب المخطط الذي يعرضه. وللتطبيق سلطة تحديد الرسم الذي يحسبه من التصريح. ولمالك الخدمة سلطة قبول الخطر وتنفيذ التغيير.
تحسن RFC 10035 التسليم بين الدورين الأولين، لأن كل مستهلك لم يعد مضطراً إلى إعادة بناء حافة أساسية من ملفات الوحدات. لكن حقيقة مشتركة للاكتشاف ليست موافقة مركزية. لا يعرف الخادم كل مسار عمل؛ ولا يعرف محرك الرسم نافذة الصيانة؛ ولا يعرف سجل المعايير هل جدد جهاز بعينه مكتبته.
السجل القابل للتدقيق يربط الطرف الموثق واختيار المخطط وهوية المحتوى بالمراجعات والحواف المباشرة، ثم بالإغلاق المحسوب والمسارات والمستهلكين، وأخيراً بالتغيير والاختبار والتراجع والنتيجة المرصودة. تحسنت نقطة البداية، ولم تنتقل مسؤولية بقية الطريق إلى الخادم.
المصادر
- RFC 10035 — YANG Library: Addition of the augmented-by List
- RFC 8525 — YANG Library
- RFC 7950 — The YANG 1.1 Data Modeling Language
- RFC 8342 — Network Management Datastore Architecture
- RFC 8341 — Network Configuration Access Control Model
- RFC 6241 — NETCONF
- RFC 8040 — RESTCONF
- IETF Datatracker — سجل وثيقة augmented-by
- تقرير IESG — augmented-by
- إعلان IETF — RFC 10035
- IANA — YANG Parameters
- IANA — XML Registry
- Lu Heng — Running-Code Primacy
- Lu Heng — Minimum Initial Specification
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
