الخلاصة

  • حجز RFC 3969 كل اسم لمعامل URI في SIP وSIPS لمنع التهجئة الواحدة من اكتساب معنيين متعارضين؛ ولم يثبت الحجز المزدوج انطباق المعامل على المخططين.
  • سمّى النص السياسة «Specification Required» ثم اشترط RFC ضمن مسار المعايير. وصف RFC 5727 ذلك بالتناقض وأوضح أن المقصود كان Standards Action.

تبدو خانتان مشغولتان في جدول واحد كأنهما وظيفتان. لكن RFC 3969 استخدم الخانتين لحماية هوية واحدة. كان كل اسم لمعامل URI يسجل لـSIP وSIPS معاً، ثم نبّه النص إلى أن بعض المعاملات قد لا تنطبق على أحد المخططين. تحجز الخانة الثانية الاسم من إعادة الاستخدام، ولا تشغّل السلوك.

بدأت المشكلة من RFC 3261. فقد سمح بتعريف معاملات وقيم جديدة، لكنه لم ينشئ لها سجل IANA. كان في وسع مصممي امتدادين مستقلين اختيار كلمة قصيرة واحدة لوظيفتين مختلفتين. قد تبقى الرسالة صحيحة من جهة الصياغة بينما يفسرها الطرفان بمعنيين متنافرين. أنشأ RFC 3969 في ديسمبر 2004 سطح التنسيق المفقود.

موضعان لحماية معنى واحد

بدأ السجل بسبعة أسماء: comp وlr وmaddr وmethod وtransport وttl وuser. أحال comp إلى RFC 3486، وأحالت البقية أولاً إلى RFC 3261. حمل كل صف الاسم، ومؤشراً إلى كون القيم محددة مسبقاً، ومراجع التعريف.

لم يكن Predefined Values: Yes قائمة مكتملة. اختار النص تسجيل القيم بالإحالة، ولذلك وجب على المنفذ قراءة جميع RFCs المشار إليها. في سجل معاملات SIP لدى IANA يحيل صف transport اليوم إلى RFC 3261 وRFC 7118. الصف خريطة حية إلى السلطة المعيارية، وليس جدول محلل ثابتاً.

اعتبر RFC 3969 الأسماء والقيم المسجلة كلمات محجوزة. ظل استعمال اسم محلي غير مسجل ممكناً، لكنه معرض للتصادم مع تعيين عام لاحق. ولم ينشئ السجل شجرة لامتدادات الموردين. كان RFC 3427 قد حذر من أن امتدادات SIP قد تزيد التعقيد أو تضر بالأمن، لذلك طلب المسار العام وثيقة RFC تشرح الصياغة والاستعمال المقصود والدلالة.

مع ذلك، لا تمنح سلطة الاسم سلطة التنفيذ. أوضح RFC 5630 لاحقاً معالجة SIPS وتوقعاته الأمنية، وشرح RFC 3263 اكتشاف الخوادم واختيار النقل. لا يحتوي الحجز المزدوج هذه الشروط، ولا يثبت أن إصداراً برمجياً بعينه نفذها.

اختلف اسم السياسة عن شرطها

استخدم القسم 4.2 مصطلح «Specification Required» من RFC 2434، لكنه اشترط في الجملة التالية تعريف المعامل في RFC من مسار المعايير. يمنح الشرطان سلطة القرار والمراجعة بطريقتين مختلفتين، ولذلك لا يمكن معاملتهما كمترادفين.

وثّق RFC 5727 الخلل في 2010 بدلاً من محوه. قال إن التناقض نتج من سوء فهم فئات سياسة التسجيل، وإن النية كانت Standards Action. تعرض صفحة IANA الحالية هذه القاعدة. ويجعل RFC 8126، الذي حدّث مفردات السياسات لاحقاً، دلالة هذه التسميات واضحة: إنها تحدد من يقرر وما الأدلة المطلوبة، وليست عناوين تحريرية.

لا يغني العرض الحالي عن سلسلة المصدر. تحفظ صفحة RFC Editor حالة الوثيقة، وتوفر صفحة التصويبات سجل البلاغات، ويعرض IETF Datatracker التاريخ الوثائقي. يقدم RFC 3986 الإطار العام للـURI، بينما أكد RFC 6648 لاحقاً أن التهجئة والبادئة لا تكفيان لاستنتاج النضج أو الأمن.

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

حجز RFC 3969 على نطاق واسع حتى لا ينقسم المعنى. لكن الاستنتاج من الحجز يجب أن يبقى ضيقاً. موضعان محميان يثبتان هوية واحدة، ولا يمنحان شهادتين على القدرة أو الأمن أو النجاح.

المصادر