الخلاصة
- فصل RFC 3340 بين معرّفات معاملات تنتهي دلالتها بانتهاء قناة BEEP، ومعرّفات مضمّنة في بيانات خدمة APEX يمكن أن تبقى بعد انفصال التطبيق الطالب.
- قد يتلقى تطبيق ثانٍ متصل بنقطة النهاية نفسها رد التطبيق الأول؛ فالاسم والمعرّف يربطان السجلين، لكنهما لا يثبتان ملكية الطلب أو استمرار القصد أو صلاحية التنفيذ.
يورد القسم 6.1.1 مثالاً لا يحتاج إلى استنتاج بعيد. يتصل تطبيق بشبكة المرحلات بصفته نقطة نهاية، ويرسل إلى خدمة بيانات تحتوي على معرّف معاملة، ثم ينفصل. بعد مدة يتصل تطبيق ثانٍ بصفته نقطة النهاية نفسها ويرسل طلباته الخاصة. عندئذ قد تصل إليه استجابة الخدمة لطلب التطبيق الأول، وفيها المعرّف الذي أنشأه التطبيق الأول.
ليس ضرورياً أن يكون التوجيه قد أخطأ. فالرد وصل إلى التطبيق الذي يمثل الاسم حالياً، والمعرّف يشير فعلاً إلى الطلب القديم. المشكلة أن صحة العنوان وصحة المطابقة لا تثبتان أن المستقبل الحالي هو صاحب الطلب السابق. الاسم مستمر، أما الاتصال والعملية والقصد فلها آجال مختلفة.
عمر القناة وعمر البيانات
عمل APEX فوق BEEP. في نمط نقطة النهاية مع المرحّل، وكذلك بين المرحلات، لا يكون معرّف المعاملة ذا معنى إلا خلال حياة قناة BEEP. عندما ينتهي الاتصال تختفي القناة ولا يبقى التطبيق متصلاً بشبكة المرحلات. لذلك لا يحمل معرّف عملية attach سلطته إلى قناة لاحقة.
أما الاتصال بخدمات APEX فكان يضع المعرّف داخل البيانات المنقولة. تستطيع الخدمة أن تواصل العمل وأن ترسل جوابها بعد انتهاء الاتصال الأصلي، ولذلك وصف RFC هذه المعرّفات بأنها قد تكون طويلة الأجل. ولتقليل الالتباس أوصى بأن تبدو القيم التي تنشئها التطبيقات غير قابلة للتنبؤ.
صعوبة التنبؤ تحسن سلامة المطابقة، لكنها ليست هوية. لا تكشف أي عملية أنشأت القيمة، ولا هل أُلغي الطلب، ولا هل قبل التطبيق اللاحق العمل المعلّق، ولا هل بقي التفويض صالحاً. يجب أن تبقى هوية نقطة النهاية وجيل الاتصال وصاحب الطلب ومستقبل الرد إيصالات منفصلة.
إقرار يصل قبل معالجة المستلمين
يرسم ترتيب عمل المرحّل حداً آخر. يتحقق المرحّل أولاً من أن عميل BEEP مخول للإرسال نيابة عن المصدر المعلن، ثم يعالج الخيارات العامة للبيانات، وبعد ذلك يعيد ok. لا تبدأ معالجة خيارات المصدر وكل مستلم إلا بعد هذا الإقرار.
إذا كان المستلم في نطاق إداري آخر، يعد معالجاً بعد إنشاء جلسة إلى المرحّل المختص وإرسال البيانات الجديدة والحصول على ok منه. وإذا كان محلياً، يجب أن تسمح سياسة الوصول بالاتصال، وأن تكون نقطة النهاية متصلة، وأن يعيد التطبيق ok بعد معالجته الخاصة. هذه حدود مختلفة. قبول مرحّل الدخول ليس جواب الخدمة، وحتى إقرار التطبيق لا يثبت نتيجة تجارية أو بشرية.
أتاح statusRequest دليلاً إضافياً، إذ ترسل المرحلات المعنية لاحقاً رسائل statusResponse عبر خدمة التقارير. وبضبط targetHop على all يمكن تتبع مرور البيانات في الشبكة. هذا المسار يضيف مشاهدات جديدة ولا يغيّر معنى الإقرار الأول. وقد يكشف معلومات عن البنية الداخلية؛ لذلك أشار RFC 3342 إلى إمكان تعطيل خيارات التوقيت إلا عند مداخل النطاق الإداري ومخارجه.
هوية مصادق عليها لا تعني تطبيقاً خالداً
استخدم APEX سجلات DNS SRV لاكتشاف المرحلات. وذكر RFC 3340 أن سلامة الترحيل تعتمد على DNS وعلى طريقة استخدام التطبيقات له، مع ضمان إضافي حين يطلب بادئ BEEP من الطرف المستمع إثبات هويته. يمكن للسياسة أن تسمح لطرف مصادق عليه بأن يتصل باسم نقطة نهاية معينة. وإذا كانت المصادقة من طرف إلى طرف مطلوبة، فينبغي توقيع المحتوى نفسه.
لكل دليل نطاق. فهو قد يثبت المرحّل أو الطرف أو حق استعمال الاسم أو سلامة البايتات. لكنه لا يثبت أن العملية المتصلة الآن هي التي أصدرت الطلب القديم. قد يكون الرد موقّعاً وأصيلاً تماماً، ومع ذلك لا يملك الجيل الجديد تفويضاً للعمل بموجبه.
يحتاج السجل المتين إلى حفظ الاسم المنطقي، والطرف المصادق عليه، والقناة، وجيل الاتصال، وهوية عبء العمل، والمعرّف وطريقة توليده، وبصمة الطلب، وإيصال الخدمة الدائم، وإقرارات المرحلات، وتقارير الحالة، وحدث الانفصال، والاتصال التالي، وبصمة الرد، وجيل المستقبل، وقرار الاستهلاك أو العزل، وحالة منع التكرار، والنتيجة المرصودة. تربط المفاتيح المشتركة هذه السجلات ولا تحل محلها.
كيف أصبح APEX جزءاً من التاريخ
نُشر RFC 3340 في يوليو 2002 ضمن مسار المعايير. وشكّل مع RFC 3341 وRFC 3342 وRFC 3343 عائلة تضم النواة وخدمة الوصول وحزمة الخيارات وخدمة الحضور. يسجل تاريخ IETF في 29 يوليو 2012 سبب إعادة تصنيف الوثائق الأربع إلى Historic. بحسب علم IETF، لم تُنشر تطبيقات لهذه المواصفات، وكانت وظائف APEX توفرها آنذاك XMPP المنشورة على نطاق واسع والمحددة في RFC 6120 وRFC 6121.
يثبت هذا السجل نتيجة اعتماد محددة ولا يثبت سبب كل قرار هندسي. لا يقول إن المعرّف طويل الأجل أدى إلى عدم الانتشار، ولا يوثق عيباً أو حادثاً. لذلك يجب فصل المصير التاريخي للمعمارية عن فائدة الحدود التي وصفتها. فما زالت قوائم الأعمال والاستدعاءات اللاحقة وهويات الخدمات الحديثة تبدّل المنفذ خلف اسم ثابت.
ليس كل رد متأخر باطلاً. قد يكون صادراً عن الخدمة الصحيحة، سليماً ومفيداً. لكنه يحتاج قبل التنفيذ إلى دليل آخر يربط الطلب القديم بالجيل الحاضر. يقول المعرّف «هذا جواب لذلك الطلب»، ولا يقول «أنت مخول لتنفيذه الآن».
المصادر
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
