ما هو بروتوكول التحكم في الارتباط المنطقي والتكيف في الشبكات L2CAP

اقرأ في هذا المقال


يُعد بروتوكول التحكم في الارتباط المنطقي والتكيف “L2CAP” عبارة عن طبقة بروتوكول تعدد إرسال تمكن “Bluetooth” منخفضة الطاقة من مضاعفة ثلاث قنوات مختلفة، كما أنّه يتيح تجزئة وإعادة تجميع الحزم الأكبر مما يمكن أن يقدمه الراديو الأساسي، وفي راديو “Bluetooth” الكلاسيكي تقوم طبقة “L2CAP” أيضاً بإجراء العديد من العمليات الإضافية المعقدة.

ما هو بروتوكول L2CAP

بروتوكول التحكم في الارتباط المنطقي والتكيف “L2CAP”: هو بروتوكول مستخدم في معيار “Bluetooth” يوفر التكيف بين الطبقات العليا وطبقة النطاق الأساسي لمكدس “Bluetooth”، وتعمل مباشرة فوق واجهة تحكم المضيف “HCI” لتمرير إطارات البيانات من الطبقات العليا إلى “HCI” أو “Link Manager”.

  • “L2CAP” هي اختصار لـ “Logical Link Control Adaptation Protocol”.
  • “HCI” هي اختصار لـ “Human-computer interaction”.

أساسيات بروتوكول L2CAP

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

عندما تم تصميم “Bluetooth” منخفضة الطاقة لأول مرة لم تستخدم “L2CAP”، كما تم تصميم طبقة تكيف البروتوكول “PAL” لتكون مُضاعِف إرسال مُحسَّن للغاية ومُقيِّد بشدة بين بروتوكولين، وبدا “PAL” مثل بروتوكول السمة وطبقة إشارات وكان هذا سيئاً لسببين هُما المرونة والتطبيقات القديمة.

يمكن لـ “PAL” دعم نوعين فقط من الحزم وهي بروتوكول طبقة أعلى أو طبقة إشارات خاصة به، ولم يكن هناك تجزئة أو إعادة تجميع، ولم تكن هناك إمكانية لفصل البروتوكولات المختلفة وأحد مبادئ التصميم الأساسية لتصميم البروتوكول هو أن تقوم بطبقة البروتوكولات، وكل بروتوكول قائم بذاته وهذا يعني أنّه من الممكن التصميم.

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

تدعم واجهة تحكم المضيف “HCI” التجزئة وإعادة التجميع باستخدام بتات “البدء” و”المتابعة” في كل حزمة بيانات ومع ذلك لم يدعم “PAL” هذه الميزة الأساسية، وهذا يعني أنّ الحد الأقصى لحجم أي بيانات تطبيق في هذه الطبقة سيقتصر على “24 بايت” فقط من البيانات، وكان هذا التقييد الشديد هو السقوط النهائي لـ “PAL”.

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

وبدلاً من ذلك تمت كتابة ورقة حول التكاليف المختلفة لكل نهج توضح تكلفة إضافة “L2CAP”، وكان السبب هو أنّ عمر بطارية الجهاز الذي يبلغ عن شيء ما مرة واحدة في الثانية انخفض، لذلك قلل “L2CAP” من عمر بطارية الجهاز ولكن بالمقارنة مع “7 بايت” قبل حمولة الحزمة، و”3 بايت” من فحص التكرار الدوري “CRC” على كل حزمة واحدة سواء كانت تحمل بيانات أم لا ولم يكن الأمر كذلك انخفاض كبير.

في “L2CAP” هناك مفهوم بسيط للقناة، وL2CAP” وبعد كل شيء هي طبقة مضاعفة وللقيام بذلك لديها قنوات متعددة، والقناة هي سلسلة واحدة من الحزم من وإلى زوج واحد من الخدمات على جهاز واحد وبين جهازين يمكن أن يكون هناك عدة قنوات نشطة في نفس الوقت.

في حالة استخدام “Bluetooth” منخفض الطاقة ويتم دعم القنوات الثابتة فقط. القناة الثابتة هي قناة موجودة بمجرد توصيل الجهازين ولا توجد متطلبات تكوين للقنوات الثابتة، حيث لا تزال المرونة المعززة للمستقبل موجودة لإضافة قنوات موجهة للاتصال إذا اعتبرت ضرورية، وكل معرف قناة في “Blue-tooth” هو رقم “16 بت”، ومعرف القناة “0x0000” محجوز ويجب عدم استخدامه مطلقاً معرف القناة “0x0001” هو قناة ثابتة لإشارات “Bluetooth” الكلاسيكية.

  • “PAL” هي اختصار لـ “Programmable Array Logic”.
  • “CRC” هي اختصار لـ “Cyclic redundancy check”.

وظائف بروتوكول L2CAP

  • التكيف بين إطارات الطبقة العليا وإطارات الطبقة السفلية من مكدس بروتوكول “Bluetooth”.
  • دعم رابطين لطبقة النطاق الأساسي هُما روابط متزامنة موجهة للاتصال “SCO” لحركة مرور الصوت في الوقت الفعلي باستخدام النطاق الترددي المحجوز، وارتباطات اتصال غير متزامن أقل “ACL” لحركة المرور بأفضل جهد.
  • مضاعفة بروتوكولات الطبقة العليا ممّا يسمح لهم باستخدام الروابط التي توفرها الطبقات السفلية.
  • تجزئة وإعادة تجميع حزم البيانات للطبقة العليا التي تكون أكبر من سعة الطبقة الراديوية تحتها.
  • إدارة المجموعة.
  • جودة الخدمة “QoS” لبروتوكولات الطبقة العليا.

ملاحظة:“SCO” هي اختصار لـ “synchronous Connection-oriented”.

ملاحظة:“QoS” هي اختصار لـ “Quality of service”.

ملاحظة:“ACL” هي اختصار لـ “access control list”.

أنواع قنوات بروتوكول L2CAP

يوفر “L2CAP” أنواع مختلفة من القنوات المنطقية التي يتم نقلها عبر “ACL” بين المسؤول والفرع:

1- قناة بدون اتصال

تُستخدم هذه القنوات أحادية الاتجاه عادةً للبث من المسؤول إلى التابع.

2- قناة مهيأة للاتصالات

  • كل قناة من هذا النوع ثنائية الاتجاه وتدعم مواصفات تدفق “QoS” لكل اتجاه.
  • تتبع مواصفات التدفق هذه “RFC 1363” وتحدد متوسط ​​أو ذروة معدل البيانات والحد الأقصى لحجم الاندفاع والكمون و”jitter“.

3- قناة إرسال الإشارات

  • يستخدم هذا النوع الثالث من القنوات المنطقية لتبادل رسائل الإشارات بين كيانات “L2CAP”.
  • يمكن تحديد كل قناة من خلال معرف القناة “CID” الخاص بها.
  • تستخدم قنوات الإرسال دائماً قيمة “CID” بقيمة 1، ويتم حجز قيمة “CID” البالغة 2 للقنوات غير المتصلة.
  • بالنسبة للقنوات المهيأة للاتصال يتم تعيين “CID” فريد “> = 64” ديناميكياً في كل طرف من أطراف القناة لتحديد الاتصال.

ملاحظة:“CID” هي اختصار لـ “Configuration, Installation and Distribution”.

أنواع الحزم في بروتوكول L2CAP

  • يشير حقل الطول إلى طول الحمولة بالإضافة إلى “PSM” لوحدات “PDU” غير المتصلة.
  • يحتوي “CID” على وظيفة تعدد الإرسال / إلغاء الإرسال المتعدد.
  • بالنسبة لوحدات “PDU” غير المتصلة، يلزم وجود حقل معدد بروتوكول / خدمة “PSM” لتحديد مستلم الطبقة الأعلى للحمولة.
  • بالنسبة لوحدات “PDU” المهيأة للاتصال، يقوم “CID” بالفعل بتنفيذ هذه الوظيفة.
  • تحتوي حمولة وحدة “PDU” للإشارة على أمر واحد أو أكثر.
  • يحتوي كل أمر على رمزه الخاص وعلى سبيل المثال لرفض الأمر وطلب الاتصال واستجابة قطع الاتصال ومعرف يطابق الطلب مع رده.
  • يشير حقل الطول إلى طول حقل البيانات لهذا الأمر.

ملاحظة:“PDU” هي اختصار لـ “power distribution unit” و”PSM” هي اختصار لـ “Printing Systems Manager”.


شارك المقالة: