الخلاصة

  • احتاجت بعض انتقالات CAS إلى استجابة خلال عشرات الأجزاء من الألف من الثانية، فوضع RFC 3064 البروتوكول منخفض المستوى والمؤقتات داخل بوابة الوسائط، وترك تحليل الأرقام والقرارات العليا لدى Call Agent.
  • حرّر rel ثم rlc الطرف الهاتفي وجعلا الجذع متاحاً من جديد، لكنهما لم يحذفا اتصالات شبكة الحزم؛ كان ذلك يتطلب DLCX وإثباتاً مستقلاً.

لم يكن زمن الدارة يتسع لمتحكم بعيد

حملت Channel Associated Signaling حالات الاستيلاء على الخط والرد والتعليق والتحرير قريباً من الدارة نفسها. وعندما يلزم التفاعل خلال عشرات المللي ثانية، فإن إحالة كل تبدل إلى Call Agent بعيد تجعل تأخير شبكة التحكم جزءاً من آلة الحالات الهاتفية.

اختار RFC 3064، المنشور في فبراير 2001، توزيعاً وظيفياً. تتولى بوابة الوسائط تفاصيل CAS ومؤقتاته وحدوده الزمنية كلما أمكن، بينما يتدخل Call Agent لفهم الأرقام واختيار الوجهة وإنشاء الاتصالات. منح القرب البوابة سلطة على الموعد القصير، لا سلطة على معنى المكالمة كله.

غطت الحزم الست واجهات مختلفة: MS لإشارات MF الأساسية، وDT لـ DTMF والنبضات، وBL لـ PBX/FXS، وDO لـ FXO، وMD لـ EANA/EAIN ضمن Feature Group D، وMO لخدمات المشغل. ما زال سجل IANA يثبت أسماء الإصدار صفر، لكنه لا يثبت تنفيذها في جهاز بعينه ولا استخدامها الآن.

أبقت الواجهة المشتركة الفروق الفيزيائية

أمكن لـ Call Agent استخدام مسار تحكم واحد سواء استعمل الجذع wink start أم immediate start. أخفت البوابة التسلسل المحلي وأرسلت حدث إعداد مشتركاً. لكن نوع الجذع ظل إعداداً داخل البوابة وخارج MGCP، وكان على المتحكم معرفة الحزمة واتجاه الخط.

وحفظت المصطلحات اتجاه المسؤولية. فالـ signal أمر من Call Agent إلى البوابة، أما event فهو واقعة ترصدها البوابة ثم تبلغ بها المتحكم. يثبت 200 OK قبول خطوة، ثم يصل operation complete عندما ينتهي إرسال الأرقام، وتأتي مراقبة الرد كواقعة أخرى.

لا يجوز إذاً تحويل قبول الأمر إلى إثبات بأن الأرقام اكتملت أو أن الطرف البعيد رد أو أن الصوت وصل أو أن شخصين تحدثا. والحالات المعلّمة بـ S قابلة للتدقيق، لكنها تجيب سؤالاً محدوداً: هل بدأت المكالمة؟ وهل صار الطرف الهاتفي idle ومتاحاً؟ صورة الحالة لا تعيد بناء كل أسبابها.

كان للتحرير موضوعان مختلفان

لم يكن rel مجرد on-hook؛ بل حرر موارد الطرف الهاتفي وأنهى إمكان الاستئناف. وقد يصدر أمراً من Call Agent أو حدثاً بسبب الطرف البعيد أو عطل محلي. أما rlc فيعلن أن موارد الجذع تحررت وأصبحت جاهزة لمكالمة أخرى.

ثم يرسم النص الحد الحاسم: لا يعني rel حذف الاتصالات. ولتحرير المكالمة كاملة، بما فيها اتصالات الحزم، كان على Call Agent تنفيذ DLCX إلى جانب rel أو بعده.

الجذع المتاح والاتصال المحذوف حالتان لكائنين مختلفين. قد يصبح الخط قابلاً لإعادة الاستخدام بينما يبقى اتصال في البوابة، أو يحذف الاتصال قبل اكتمال تحرير الدارة البعيدة. لذلك لا يستطيع إيصال rlc أن يحل محل نتيجة DLCX.

وتوضح حالة glare، حين يستولي الطرفان في الوقت نفسه على جذع ثنائي الاتجاه، سبب الحاجة إلى سياسة محلية. أمكن للبوابة تطبيق سلوك مضبوط لكل DS0 وإصدار تحرير غير عادي. وقد يكمل rlc انتقال الموارد من دون أن يمثل حرفياً on-hook بعيداً. إنه يصف وضع المورد، لا نية الإنسان.

كان RFC 3064 وثيقة Informational لا معيار إنترنت. ذكرت ملاحظة IESG أن البروتوكول كان آنذاك مستخدماً في منتجات عدة، ونبهت إلى أعمال Megaco وITU-T SG16 اللاحقة. تمنح الوثائق اللاحقة سياقاً تاريخياً، لكنها لا تثبت الانتشار الحالي ولا تغير العقد الأصلي بأثر رجعي.

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

المصادر