بروتوكول التطبيق المقيد

بروتوكول التطبيقات المقيدة ( CoAP ) هو بروتوكول تطبيقات إنترنت متخصص قائم على بروتوكول UDP ، مُصمم للأجهزة ذات الموارد المحدودة، كما هو مُحدد في RFC 7252 (المنشور عام 2014). يُمكّن هذا البروتوكول الأجهزة ذات الموارد المحدودة، والتي تُسمى "عُقدًا"، من التواصل مع شبكة الإنترنت الأوسع باستخدام بروتوكولات مماثلة. صُمم CoAP للاستخدام بين الأجهزة على نفس الشبكة ذات الموارد المحدودة (مثل الشبكات منخفضة الطاقة أو المعرضة لفقدان البيانات)، وبين الأجهزة والعُقد العامة على الإنترنت، وبين الأجهزة على شبكات ذات موارد محدودة مختلفة متصلة جميعها بالإنترنت. يُستخدم CoAP أيضًا عبر آليات أخرى، مثل الرسائل النصية القصيرة (SMS) على شبكات الاتصالات المتنقلة.

بروتوكول CoAP هو بروتوكول طبقة التطبيق، مصمم للاستخدام في أجهزة الإنترنت ذات الموارد المحدودة، مثل عقد شبكات الاستشعار اللاسلكية . صُمم CoAP ليُترجم بسهولة إلى HTTP لتسهيل التكامل مع الويب، مع تلبية متطلبات خاصة مثل دعم البث المتعدد ، وانخفاض الحمل الزائد، والبساطة. [ 1 ] [ 2 ] يُعدّ البث المتعدد، وانخفاض الحمل الزائد، والبساطة من العوامل المهمة لإنترنت الأشياء (IoT) والتواصل بين الأجهزة (M2M)، والتي غالبًا ما تكون مُدمجة وتتمتع بذاكرة ومصدر طاقة أقل بكثير من أجهزة الإنترنت التقليدية. لذلك، تُعدّ الكفاءة بالغة الأهمية. يمكن تشغيل CoAP على معظم الأجهزة التي تدعم بروتوكول UDP أو ما يُماثله.

قامت مجموعة عمل بيئات RESTful المقيدة ( CoRE ) التابعة لفرقة عمل هندسة الإنترنت ( IETF ) بالعمل الرئيسي على توحيد هذا البروتوكول. ولجعل البروتوكول مناسبًا لتطبيقات إنترنت الأشياء (IoT) وتطبيقات الاتصال بين الآلات (M2M)، أُضيفت إليه وظائف جديدة متنوعة.

مواصفة

تم تحديد جوهر البروتوكول في RFC 7252. وقد تم اقتراح العديد من الامتدادات، ولا سيما: 

  • RFC 7641 (2015) مراقبة الموارد في بروتوكول التطبيق المقيد 
  • RFC 7959 (2016) عمليات النقل على مستوى الكتل في بروتوكول التطبيقات المقيدة (CoAP) 
  • RFC 8323 (2018) بروتوكول التطبيقات المقيدة (CoAP) عبر TCP وTLS و WebSockets 
  • RFC 8974 (2021) الرموز الموسعة والعملاء عديمي الحالة في بروتوكول التطبيقات المقيدة (CoAP) 

تنسيقات الرسائل

يستخدم بروتوكول CoAP نوعين من الرسائل، الطلبات والاستجابات، باستخدام تنسيق رأس ثنائي بسيط. يرتبط CoAP افتراضيًا ببروتوكول UDP ، ويمكن ربطه اختياريًا ببروتوكول DTLS ، مما يوفر مستوى عالٍ من أمان الاتصالات. عند الربط ببروتوكول UDP، يجب أن تتسع الرسالة بأكملها ضمن حزمة بيانات واحدة. عند استخدامه مع بروتوكول 6LoWPAN كما هو محدد في RFC 4944، يجب أن تتسع الرسائل ضمن إطار IEEE 802.15.4 واحد لتقليل التجزئة.

يبلغ طول أصغر رسالة CoAP أربعة بايتات، وذلك في حال حذف حقول الرمز المميز والخيارات والحمولة، أي إذا اقتصرت على رأس CoAP فقط. يلي الرأس قيمة الرمز المميز (من 0 إلى 8 بايتات)، والتي قد تليها قائمة بالخيارات بتنسيق مُحسَّن من النوع والطول والقيمة. تُعتبر أي بايتات تلي الرأس والرمز المميز والخيارات (إن وُجدت) حمولة الرسالة، والتي تُسبق بعلامة الحمولة (0xFF) المكونة من بايت واحد. ويُستدل على طول الحمولة من طول حزمة البيانات.

رسالة CoAP
إزاحة ثمانية بت0123
إزاحة البت012345678910111213141516171819202122232425262728293031
432الإصداريكتبطول الرمز المميزرمز الطلب/الاستجابةمعرف الرسالة
864رمز مميز (0-8 بايت)
1296
16128الخيارات (إن وجدت)
2016011111111الحمولة (إن وجدت)

رأس CoAP ذو الحجم الثابت

تعتبر البايتات الأربعة الأولى إلزامية في جميع حزم بيانات CoAP، فهي تشكل رأس الحزمة ذي الحجم الثابت.

يمكن استخراج هذه الحقول من هذه البايتات الأربعة في لغة C عبر وحدات الماكرو التالية:

#define COAP_HEADER_VERSION(data) ( (0xC0 & (data)[0]) >> 6 ) #define COAP_HEADER_TYPE(data) ( (0x30 & (data)[0]) >> 4 ) #define COAP_HEADER_TKL(data) ( (0x0F & (data)[0]) >> 0 ) #define COAP_HEADER_CLASS(data) ( ((data)[1] >> 5) & 0x07 ) #define COAP_HEADER_CODE(data) ( ((data)[1] >> 0) & 0x1F ) #define COAP_HEADER_MID(data) ( ((data)[2] << 8) | (data)[3] )

الإصدار (ver) (2 بت)

يشير إلى رقم إصدار بروتوكول CoAP.

النوع (2 بت)

يصف هذا نوع رسالة مخطط البيانات لسياق نوعي الرسائل للطلب والاستجابة.
  • طلب
    • 0  : قابل للتأكيد  : تتوقع هذه الرسالة رسالة تأكيد مقابلة.
    • 1  : غير قابل للتأكيد  : هذه الرسالة لا تتطلب رسالة تأكيد.
  • إجابة
    • 2  : الإقرار  : هذه الرسالة هي رد يؤكد استلام رسالة قابلة للتأكيد.
    • 3  : إعادة الضبط  : تشير هذه الرسالة إلى أنه تم استلام رسالة ولكن لم يتمكن من معالجتها.

طول الرمز المميز (4 بتات)

يشير إلى طول حقل الرمز المميز ذي الطول المتغير، والذي قد يتراوح طوله بين 0 و8 بايت.

رمز الطلب/الاستجابة (8 بتات)

01234567
فصلشفرة

تُشكّل البتات الثلاث الأكثر أهمية رقمًا يُعرف باسم "الفئة"، وهو مشابه لفئة رموز حالة HTTP . أما البتات الخمس الأقل أهمية فتُشكّل رمزًا يُقدّم تفاصيل إضافية حول الطلب أو الاستجابة. وعادةً ما يُرسل الرمز كاملًا بالشكل التالي class.code:

يمكنك العثور على أحدث رموز طلب/استجابة بروتوكول CoAP على، على الرغم من أن القائمة أدناه تقدم بعض الأمثلة:

  • الطريقة: 0.XX
    1. فارغ
    2. يحصل
    3. بريد
    4. يضع
    5. يمسح
    6. أحضر
    7. رقعة
    8. iPATCH
  • نجاح: 2.XX
    1. مخلوق
    2. تم الحذف
    3. صالح
    4. تم التغيير
    5. محتوى
    6. يكمل
  • خطأ من جانب العميل: 4.XX
    1. اقتراح غير جيد
    2. غير مصرح به
    3. خيار سيئ
    4. مُحرَّم
    5. غير موجود
    6. الطريقة غير مسموح بها
    7. غير مقبول
    8. كيان الطلب غير مكتمل
    9. صراع
    10. فشل الشرط المسبق
    11. حجم كيان الطلب كبير جدًا
    12. تنسيق المحتوى غير مدعوم
  • خطأ في الخادم: 5.XX
    1. خطأ في الخادم الداخلي
    2. لم يتم التنفيذ
    3. بوابة سيئة
    4. الخدمة غير متوفرة
    5. مهلة البوابات
    6. لا يدعم النظام استخدام البروكسي
  • رموز الإشارة: 7.XX
    1. غير مُعيّن
    2. مدير خدمة العملاء
    3. بينغ
    4. بونغ
    5. يطلق
    6. إجهاض

معرّف الرسالة (16 بت)

يستخدم للكشف عن تكرار الرسائل ومطابقة الرسائل من نوع التأكيد/إعادة التعيين مع الرسائل من نوع قابل للتأكيد/غير قابل للتأكيد.

رمز مميز

يحمل كل طلب رمزًا مميزًا (قد يكون فارغًا) تم توليد قيمته من قِبل العميل. يجب على الخادم إعادة إرسال قيمة كل رمز مميز إلى العميل في الاستجابة المقابلة دون أي تعديل. يُستخدم هذا الرمز كمعرّف محلي للعميل لمطابقة الطلبات والاستجابات، وخاصةً للطلبات المتزامنة.

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

خيار

تنسيق الخيارات
موضع البت
01234567
دلتا الخيارطول الخيار
خيار دلتا الموسع (لا شيء، 8 بت، 16 بت)
تم تمديد طول الخيار (لا شيء، 8 بت، 16 بت)
قيمة الخيار

دلتا الخيار:

  • من 0 إلى 12: بالنسبة للفرق بين 0 و12: يمثل هذا القيمة الدقيقة للفرق بين مُعرّف الخيار الأخير ومُعرّف الخيار المطلوب، دون أي قيمة إضافية للفرق.
  • 13: بالنسبة لقيمة دلتا من 13 إلى 268: قيمة دلتا الخيار الموسعة هي قيمة مكونة من 8 بتات تمثل قيمة دلتا الخيار مطروحًا منها 13
  • 14: بالنسبة لقيمة دلتا من 269 إلى 65804: قيمة دلتا الخيار الموسعة هي قيمة 16 بت تمثل قيمة دلتا الخيار مطروحًا منها 269
  • 15: محجوز لعلامة الحمولة، حيث يتم تعيين دلتا الخيار وطول الخيار معًا على 0xFF.

طول الخيار:

  • من 0 إلى 12: بالنسبة لطول الخيار بين 0 و12: يمثل هذا القيمة الدقيقة للطول، دون أي قيمة ممتدة لطول الخيار.
  • 13: بالنسبة لطول الخيار من 13 إلى 268: يمثل طول الخيار الممتد قيمة 8 بت تمثل قيمة طول الخيار مطروحًا منها 13
  • 14: بالنسبة لطول الخيار من 269 إلى 65804: يمثل طول الخيار الممتد قيمة 16 بت تمثل قيمة طول الخيار مطروحًا منها 269
  • 15: محجوز للاستخدام المستقبلي. من الخطأ تعيين حقل طول الخيار إلى 0xFF.

قيمة الخيار:

  • يتم تحديد حجم حقل قيمة الخيار بواسطة قيمة طول الخيار بالبايت.
  • يعتمد المعنى والتنسيق لهذا الحقل على الخيار المعني.

تطبيقات البروتوكول النشطة

اسملغة البرمجةتم تطبيق إصدار CoAPالعميل/الخادمميزات بروتوكول CoAP المُطبقةرخصةوصلة
غطاءدارتRFC 7252عميلعمليات النقل على مستوى الكتل، والمراقبة، والبث المتعدد، والوساطة (جزئيًا)معهد ماساتشوستس للتكنولوجياhttps://github.com/shamblett/coap
أيوكواببايثون 3RFC 7252، RFC 7641، RFC 7959، RFC 8323، RFC 7967، RFC 8132، RFC 9176، RFC 8613، RFC 9528العميل + الخادمعمليات نقل على مستوى الكتل، ملاحظة (جزئية)معهد ماساتشوستس للتكنولوجياpypi.python.org/pypi/aiocoap
الكاليفورنيومجافاRFC 7252، RFC 7641، RFC 7959العميل + الخادمملاحظة، عمليات النقل على مستوى الكتل، البث المتعدد (منذ الإصدار 2.x)، DTLS (+ معرف اتصال DTLS 1.2)الدوري الإنجليزي الممتاز + دوري الدرجة الثانية الإنجليزيwww.eclipse.org/californium github.com/eclipse/californium​​
CoAPSharpسي شارب، دوت نتRFC 7252العميل + الخادمأساسي، مراقبة، كتلة، RDمعهد ماساتشوستس للتكنولوجياgithub.com/FemtomaxInc/coapsharp
FreeCoAPجRFC 7252العميل + الخادم + وكيل HTTP/CoAPالنواة، DTLS، عمليات النقل على مستوى الكتلةبي إس ديgithub .com /keith-cullen /FreeCoAP
Go-CoAPيذهبRFC 7252، RFC 8232، RFC 7641، RFC 7959العميل + الخادمالنواة، المراقبة، على مستوى الكتلة، البث المتعدد، TCP/TLSرخصة أباتشي 2.0github.com/plgd-dev/go-coap
جافا-كوبجافاRFC 7252، RFC 7641، RFC 7959، RFC 8323العميل + الخادمرخصة أباتشي 2.0github .com /PelionIoT /java-coap
libcoapجRFC 7252، RFC 7390، RFC 7641، RFC 7959، RFC 7967، RFC 8132، RFC 8323، RFC 8516، RFC 8613، RFC 8768، RFC 8974، RFC 9175، RFC 9177العميل + الخادمالنواة، المراقبة، البث المتعدد، عمليات النقل على مستوى الكتل، التصحيح/الجلب، OSCORE، (D)TLSرخصة BSD/GPLhttps://github.com/obgm/libcoap
libcoapyبايثوننفس الدعم الذي توفره مكتبة libcoapمعهد ماساتشوستس للتكنولوجياgithub.com/anyc/libcoapy
lobaro-coapجRFC 7252العميل + الخادمملاحظة، التحويلات على مستوى الكتلمعهد ماساتشوستس للتكنولوجياwww.lobaro.com/lobaro-coap
microCoAPyمايكرو بايثونRFC 7252العميل + الخادمجوهررخصة أباتشي 2.0github.com/insighio/microCoAPy
نانوكوبجRFC 7252العميل + الخادمالنواة، عمليات النقل على مستوى الكتل، DTLSإل جي بي إلapi.riot-os.org/group__net__nanocoap.html
عقدةجافا سكريبتRFC 7252،

RFC 7641، RFC 7959

العميل + الخادمالنواة، الملاحظة، الكتلةمعهد ماساتشوستس للتكنولوجياgithub.com/mcollina/node-coap
كيو تي كوابلغة سي++RFC 7252عميلالتحويلات الأساسية، والمراقبة، والتحويلات على مستوى الكتلرخصة جنو العمومية، تجاريhttps://doc.qt.io/qt-6/qtcoap-index.html
coap-rsالصدأRFC 7252العميل + الخادمخيار المراقبة، البث المتعدد، الأساسي، رمز استجابة " عدد كبير جدًا من الطلبات"معهد ماساتشوستس للتكنولوجياgithub.com/Covertness/coap-rs

docs.rs/coap/

تطبيقات الوكيل

توجد تطبيقات بروكسي توفر وظائف بروكسي أمامي أو عكسي لبروتوكول CoAP، بالإضافة إلى تطبيقات تقوم بالترجمة بين بروتوكولات مثل HTTP و CoAP.

توفر المشاريع التالية وظائف الوكيل:

مشاريع تستخدم بروتوكول CoAP

اسملغة البرمجةتم تطبيق إصدار CoAPالعميل/الخادمميزات بروتوكول CoAP المُطبقةرخصةوصلة
كواب شلجافاRFC 7252عميلمراقبة، عمليات النقل على مستوى الكتل، DTLSرخصة أباتشي 2.0https://github.com/tzolov/coap-shell
نحاسجافا سكريبت (إضافة للمتصفح)RFC 7252عميلملاحظة، التحويلات على مستوى الكتلBSD ثلاثي البنودhttps://github.com/mkovatsc/Copper https://addons.mozilla.org/firefox/addon/copper-270430/

تطبيقات البروتوكول غير النشطة

اسملغة البرمجةتم تطبيق إصدار CoAPالعميل/الخادمميزات بروتوكول CoAP المُطبقةرخصةوصلة
لا يمكن أن يكونC++/CRFC 7252العميل + الخادمبي إس ديhttps://github.com/staropram/cantcoap
كانوبوسيذهبRFC 7252العميل + الخادمجوهررخصة أباتشي 2.0https://github.com/zubairhamed/canopus
تطبيق بروتوكول CoAP للغة GoيذهبRFC 7252العميل + الخادمالاشتراك الأساسي + المسودةمعهد ماساتشوستس للتكنولوجياhttps://github.com/dustin/go-coap
CoAP.NETسي شاربRFC 7252، coap-13، coap-08، coap-03العميل + الخادمالتحويلات الأساسية، والمراقبة، والتحويلات على مستوى الكتلBSD ثلاثي البنودhttps://github.com/smeshlink/CoAP.NET
CoAPthonبايثونRFC 7252العميل + الخادم + وكيل التوجيه + وكيل عكسيمراقبة، اكتشاف خادم البث المتعدد، تحليل تنسيق رابط CoRE، على مستوى الكتلةمعهد ماساتشوستس للتكنولوجياhttps://github.com/Tanganelli/CoAPthon
eCoAPجRFC 7252العميل + الخادمجوهرمعهد ماساتشوستس للتكنولوجياhttps://gitlab.com/jobol/ecoap
الإربيوم لـ ContikiجRFC 7252العميل + الخادمملاحظة، التحويلات على مستوى الكتلBSD ثلاثي البنودhttp://www.contiki-os.org/ (er-rest-example)
حيلةغايلRFC 7252، RFC 8323العميل + الخادمرخصة جنو العمومية 3.0 أو أحدثhttps://codeberg.org/eris/guile-coap
iCoAPأوبجكتيف سيRFC 7252عميلالتحويلات الأساسية، والمراقبة، والتحويلات على مستوى الكتلمعهد ماساتشوستس للتكنولوجياhttps://github.com/stuffrabbit/iCoAP
jCoAPجافاRFC 7252العميل + الخادمملاحظة، التحويلات على مستوى الكتلرخصة أباتشي 2.0https://code.google.com/p/jcoap/
LibNyociجRFC 7252العميل + الخادمالنواة، المراقبة، الحظر، DTLSمعهد ماساتشوستس للتكنولوجياhttps://github.com/darconeous/libnyoci
ميكروبابجRFC 7252العميل + الخادممعهد ماساتشوستس للتكنولوجياhttps://github.com/1248/microcoap
nCoapجافاRFC 7252العميل + الخادممراقبة، عمليات نقل البيانات على مستوى الكتل، تنسيق رابط CoRE، مسودة معرف نقطة النهايةبي إس ديhttps://github.com/okleine/nCoAP
قبعة روبيروبيRFC 7252العميل + الخادم (ديفيد)أساسي، مراقبة، كتلة، RDمعهد ماساتشوستس للتكنولوجيا، رخصة جنو العموميةhttps://github.com/nning/coap https://github.com/nning/david
مكتبة أجهزة Sensinode CجRFC 7252العميل + الخادمأساسي، مراقبة، كتلة، RDتجاريhttps://silver.arm.com/browse/SEN00
مكتبة أجهزة جافا Sensinodeجافا إس إيRFC 7252العميل + الخادمأساسي، مراقبة، كتلة، RDتجاريhttps://silver.arm.com/browse/SEN00
منصة سينسينود نانو سيرفيسجافا إس إيRFC 7252خادم سحابيأساسي، مراقبة، كتلة، RDتجاريhttps://silver.arm.com/browse/SEN00
SwiftCoAPسويفتRFC 7252العميل + الخادمالتحويلات الأساسية، والمراقبة، والتحويلات على مستوى الكتلمعهد ماساتشوستس للتكنولوجياhttps://github.com/stuffrabbit/SwiftCoAP
TinyOS CoapBlipnesC/Ccoap-13العميل + الخادمملاحظة، التحويلات على مستوى الكتلبي إس ديhttps://web.archive.org/web/20130312140509/http://docs.tinyos.net/tinywiki/index.php/CoAP
txThingsبايثون (تويستد)RFC 7252العميل + الخادمعمليات نقل على مستوى الكتل، ملاحظة (جزئية)معهد ماساتشوستس للتكنولوجياhttps://github.com/mwasilak/txThings/
YaCoAPجمعهد ماساتشوستس للتكنولوجياhttps://github.com/RIOT-Makers/YaCoAP

التواصل الجماعي لـ CoAP

في العديد من تطبيقات بروتوكول CoAP، من الضروري القدرة على مخاطبة عدة موارد CoAP كمجموعة واحدة، بدلاً من مخاطبة كل مورد على حدة (على سبيل المثال، تشغيل جميع مصابيح CoAP في غرفة بطلب CoAP واحد يتم تفعيله عن طريق تشغيل مفتاح الإضاءة). ولتلبية هذه الحاجة، طورت IETF امتدادًا اختياريًا لبروتوكول CoAP في شكل RFC تجريبي: الاتصال الجماعي لبروتوكول CoAP - RFC 7390 [ 3 ]. يعتمد هذا الامتداد على البث المتعدد لبروتوكول الإنترنت (IP multicast) لإيصال طلب CoAP إلى جميع أعضاء المجموعة. يوفر استخدام البث المتعدد مزايا معينة، مثل تقليل عدد الحزم اللازمة لإيصال الطلب إلى الأعضاء. ومع ذلك، فإن للبث المتعدد أيضًا قيودًا، مثل ضعف الموثوقية وعدم كفاءته في استخدام ذاكرة التخزين المؤقت. هناك طريقة بديلة للاتصال الجماعي لبروتوكول CoAP تستخدم البث الأحادي بدلاً من البث المتعدد، وتعتمد على وجود وسيط يتم من خلاله إنشاء المجموعات. يرسل العملاء طلباتهم الجماعية إلى الوسيط، الذي بدوره يرسل طلبات أحادية البث فردية إلى أعضاء المجموعة، ويجمع الردود منهم، ويرسل ردًا مجمعًا إلى العميل. [ 4 ]

حماية

يحدد بروتوكول CoAP أربعة أوضاع أمان: [ 5 ]

  • NoSec، حيث يتم تعطيل DTLS
  • في حالة تفعيل بروتوكول DTLS، توجد قائمة بالمفاتيح المشتركة مسبقًا، ويتضمن كل مفتاح قائمة بالعُقد التي يمكن استخدامه للتواصل معها. يجب أن تدعم الأجهزة مجموعة تشفير AES.
  • يستخدم بروتوكول RawPublicKey، حيث يتم تفعيل DTLS ويستخدم الجهاز زوج مفاتيح غير متماثل بدون شهادة، ويتم التحقق من صحتها خارج النطاق. يجب أن تدعم الأجهزة مجموعة تشفير AES وخوارزميات المنحنى الإهليلجي لتبادل المفاتيح.
  • الشهادة، حيث يتم تمكين DTLS ويستخدم الجهاز شهادات X.509 للتحقق.

أُجريت أبحاثٌ حول تحسين بروتوكول DTLS من خلال تطبيق شركاء الأمان كموارد CoAP بدلاً من استخدام DTLS كغلاف أمان لحركة مرور CoAP. وقد أشارت هذه الأبحاث إلى تحسينات تصل إلى 6.5 أضعاف في التطبيقات المُحسَّنة. [ 6 ]

بالإضافة إلى DTLS، يحدد RFC8613 [ 7 ] بروتوكول أمان الكائنات للبيئات المقيدة RESTful ( OSCORE ) الذي يوفر الأمان لـ CoAP على مستوى التطبيق.

قضايا أمنية

على الرغم من أن معيار البروتوكول يتضمن أحكامًا للتخفيف من خطر هجمات تضخيم DDoS ، [ 8 ] إلا أن هذه الأحكام لا يتم تطبيقها عمليًا، [ 9 ] مما أدى إلى وجود أكثر من 580,000 هدف تقع في المقام الأول في الصين وهجمات تصل سرعتها إلى 320  جيجابت/ثانية. [ 10 ]

انظر أيضاً

مراجع

  1. RFC 7252، بروتوكول التطبيقات المقيدة (CoAP)
  2. " دمج شبكات الاستشعار اللاسلكية مع الويب " مؤرشف في 30 أغسطس 2017 على موقع Wayback Machine ، والتر، كوليتي 2011
  3. RFC 7390، التواصل الجماعي لـ CoAP
  4. " اتصالات جماعية مرنة تعتمد على البث الأحادي للأجهزة التي تدعم تقنية CoAP "، Ishaq, I.; هوبيكي، J .؛ فان دن أبيلي، ف.؛ روسي، J.؛ مورمان، آي . ديميستر، P. أجهزة الاستشعار 2014
  5. RFC 7252، بروتوكول التطبيقات المقيدة (CoAP)
  6. كابوسيل، أنجيلو؛ سيرفو، فاليريو؛ دي تشيكو، جيانلوكا؛ بيتريولي، كيارا (يونيو 2015). "الأمان كمورد لبروتوكول CoAP: تطبيق مُحسَّن لبروتوكول DTLS لإنترنت الأشياء". المؤتمر الدولي للاتصالات IEEE لعام 2015 (ICC) . IEEE. الصفحات 529-554 . doi : 10.1109/ICC.2015.7248379 . ISBN  978-1-4673-6432-4. S2CID 12568959 . 
  7. بالومبيني، فرانشيسكا؛ سيتز، لودفيج؛ سيلاندر، جوران؛ ماتسون، جون (2019). "أمن الكائنات لبيئات RESTful المقيدة (OSCORE)" . tools.ietf.org . doi : 10.17487/RFC8613 . S2CID 58380874. تاريخ الاسترجاع: 7 مايو 2021 . 
  8. «بروتوكول TLS 1.3 سينقذنا جميعًا، وأسباب أخرى تجعل إنترنت الأشياء لا يزال غير آمن»، داني جرانت، 24 ديسمبر 2017
  9. "عندما تعجز الآلات عن الكلام: قضايا الأمن والخصوصية في بروتوكولات بيانات الاتصال بين الآلات"، فيديريكو ماجي وراينر فوسيلر، 6 ديسمبر 2018
  10. "بروتوكول CoAP هو التطور الأبرز القادم لهجمات DDoS"، كاتالين سيمبانو، 5 ديسمبر 2018