الخلاصة

  • حولت RFC 6690 روابط الويب ذات العلاقات المحددة في RFC 5988 إلى تمثيل موجز من نوع application/link-format. وسجلت /.well-known/core وفق إطار العناوين المعروفة نقطة بداية لاكتشاف الموارد.
  • يمكن أن يحدد الرابط نوع المورد rt والواجهة if وصيغة المحتوى ct وتقدير الحجم الأقصى sz. يستطيع العميل طلب قائمة مصفاة، لكن الخادم غير ملزم بتنفيذ التصفية.
  • تحدد القائمة وجهة الطلب التالي. تأتي القراءة أو نتيجة العمل من رد المورد المختار. أدرج CoAP لاحقاً اكتشاف الموارد في نموذج النقل للأجهزة المحدودة.

آلة بلا موظف استقبال

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

اختار المعيار باباً معروفاً هو /.well-known/core. يقدم الخادم الذي ينفذ المواصفة هذا المورد على المنفذ الافتراضي للبروتوكول المعني. يعود GET بتمثيل CoRE Link Format، وقد يكون بلا محتوى إن لم توجد روابط معلنة. يجمع المثال </sensors/temp>;rt="temperature-c";if="sensor" المسار والنوع والواجهة في وصف قصير. إذا ظهر رابط لمستشعر الضوء، ترسل الوحدة طلباً آخر إلى عنوانه.

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

خرج الرابط من رأس الرسالة

عرّفت RFC 5988 علاقة محددة النوع بين سياق وهدف. أخذت RFC 6690 صياغة شبيهة بحقل HTTP Link وجعلتها محتوى مورداً مستقلاً من نوع application/link-format. يوضع عنوان الهدف بين قوسين زاويين، وتأتي الخصائص بعده، وتفصل الفواصل بين وصف وآخر. تستطيع آلة صغيرة قراءة هذه اللغة دون بناء شجرة XML كبيرة. تطلب قائمة الإرشاد كمورد بدلاً من استخراجها من رأس استجابة أخرى.

تجيب الخصائص القصيرة عن أسئلة مختلفة. rt نوع دلالي يحدده التطبيق للمورد، كقراءة حرارة. if يصف واجهة التفاعل؛ يمكن لأنواع مختلفة استعمال الواجهة نفسها. يشير ct إلى صيغة المحتوى، ويقدر sz أكبر حجم للتمثيل الذي يعيده GET، ما يساعد جهازاً محدود الذاكرة على تخطيط النقل. لا يقصد بـrt الاسم المعروض للبشر؛ لهذا الغرض توجد خاصية title. الخصائص تساعد على اختيار وجهة، ورد الوجهة يثبت البيانات الراهنة.

إذا غابت rel لا تصبح العلاقة مجهولة؛ القيمة الافتراضية هي hosts. يعني ذلك أن خادم سياق الرابط يستضيف الهدف. قد تصف علاقة صريحة أو anchor ارتباطاً آخر، وقد يكون الهدف على خادم مختلف. جمع العناوين وحدها وإهمال السياق والعلاقة قد يجعل وصف مورد خارجي يبدو كأنه مورد محلي. هنا تحمل أحرف قليلة فرقاً في الجهة التي تدعي الاستضافة.

مكتب صغير لا يسرد المبنى كله

لا يفرض المعيار إدراج كل مستشعر دفعة واحدة في /.well-known/core. يقرر التطبيق أي روابط تظهر وكيف ترتب. يمكنه وضع مدخل المجموعة /sensors ثم ترك المجموعة تعرض أعضاءها من مقاييس الحرارة والضوء. بذلك لا يرسل الخادم الصغير دفتر عناوين المبنى كاملاً لكل من يسأل عن البداية.

يمكن للعميل تضييق سؤاله إلى GET /.well-known/core?rt=light-lux للبحث عن نوع مورد معين. تجيز RFC 6690 التصفية لكنها لا تفرض تنفيذها. القائمة الفارغة تستدعي التحقق من طريقة تعامل الخادم مع الشرط وما يعلنه لهذا العميل. قيم rt وif مفردات يختارها التطبيق، وليست سجلاً عالمياً لكل طراز جهاز.

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

للخريطة أيضاً أمين

اجتمعت هنا اتفاقات محدودة. قدمت RFC 5785 قاعدة العنوان المعروف، وقدمت RFC 5988 العلاقات بين الروابط، وصنعت RFC 6690 منها محتوى مقتضباً ومدخلاً مشتركاً. أدرجت RFC 7252 عام 2014 اكتشاف الموارد في CoAP. لم يُنشأ سجل مركزي لكل مستشعر في العالم. صار معروفاً من أين يبدأ السؤال عند كل خادم.

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

تثبت السجلات الرسمية الأربعة الصيغة والعنوان المسجل وخطوات الاكتشاف المقصودة. لإثبات استعمال مبنى بعينه يلزم سجل برنامج أجهزته المؤرخ، واستجابة /.well-known/core الفعلية، ثم التبادل مع المستشعر. وجدت وحدة التحكم في البداية عنوان الباب. قراءة الضوء تأتي من الجهاز خلفه.