توصيل وتشغيل عالمي

UPnP (اختصارًا لـ Universal Plug and Play ) هي مجموعة من بروتوكولات الشبكات القائمة على بروتوكول الإنترنت ، والتي تسمح للأجهزة المتصلة بالشبكة، مثل أجهزة الكمبيوتر الشخصية والطابعات وبوابات الإنترنت ونقاط وصول Wi-Fi والأجهزة المحمولة، باكتشاف وجود بعضها البعض على الشبكة بسلاسة [ 1 ] وإنشاء خدمات شبكية فعّالة. يُخصص UPnP بشكل أساسي للشبكات المنزلية [ 2 ] التي لا تستخدم أجهزة من فئة المؤسسات. رسميًا، الاختصاران UPnP وUPnP+ هما فقط العلامتان التجاريتان المسجلتان. [ 3 ]
يفترض بروتوكول UPnP أن الشبكة تعمل بنظام IP، ثم يستخدم بروتوكول HTTP فوق IP لتوفير وصف الأجهزة/الخدمات، والإجراءات، ونقل البيانات، وإشعارات الأحداث . يتم دعم طلبات البحث عن الأجهزة والإعلانات من خلال تشغيل HTTP فوق UDP ( المنفذ 1900) باستخدام البث المتعدد (المعروف باسم HTTPMU). كما تُرسل الاستجابات لطلبات البحث عبر UDP، ولكن باستخدام البث الأحادي (المعروف باسم HTTPU).
من الناحية النظرية، تُوسّع تقنية UPnP مفهوم التوصيل والتشغيل - وهي تقنية لتوصيل الأجهزة مباشرةً بالكمبيوتر - لتشمل الشبكات اللاسلكية المنزلية وشبكات المكاتب الصغيرة التي لا تتطلب أي إعدادات مسبقة [ 1 ] . تتميز أجهزة UPnP بخاصية التوصيل والتشغيل، حيث تقوم، عند اتصالها بالشبكة، بإنشاء إعدادات عمل تلقائية مع الأجهزة الأخرى، مما يُغني المستخدمين عن الحاجة إلى إعداد الأجهزة وإضافتها يدويًا عبر عناوين IP . [ 4 ]
يُعتبر UPnP بشكل عام غير مناسب للنشر في بيئات الأعمال لأسباب تتعلق بالاقتصاد والتعقيد والاتساق: فأساس البث المتعدد يجعله كثير الكلام، ويستهلك الكثير من موارد الشبكة على الشبكات التي تضم عددًا كبيرًا من الأجهزة؛ كما أن عناصر التحكم في الوصول المبسطة لا تتناسب جيدًا مع البيئات المعقدة.
ملخص
تتيح بنية UPnP الربط الشبكي بين الأجهزة الإلكترونية الاستهلاكية ، والأجهزة المحمولة ، وأجهزة الكمبيوتر الشخصية ، والأجهزة المنزلية المتصلة بالشبكة . وهي بروتوكول مفتوح المصدر وموزع ، يعتمد على معايير راسخة مثل مجموعة بروتوكولات الإنترنت (TCP/IP)، و HTTP ، و XML ، و SOAP . نقاط تحكم UPnP (CPs) هي أجهزة تستخدم بروتوكولات UPnP للتحكم في الأجهزة التي يتم التحكم بها عبر UPnP (CDs). [ 5 ]
تدعم بنية UPnP الشبكات بدون أي إعدادات مسبقة. يمكن لأي جهاز متوافق مع UPnP من أي مُصنِّع الانضمام إلى الشبكة ديناميكيًا، والحصول على عنوان IP، والإعلان عن اسمه، والإعلان عن إمكانياته عند الطلب، والتعرف على وجود وإمكانيات الأجهزة الأخرى. يُعدّ كل من بروتوكول تكوين المضيف الديناميكي (DHCP) وخوادم نظام أسماء النطاقات (DNS) اختياريين، ولا يُستخدمان إلا إذا كانا متوفرين على الشبكة. يمكن للأجهزة قطع الاتصال بالشبكة تلقائيًا دون ترك أي معلومات عن حالتها .
تم نشر بروتوكول UPnP كمعيار دولي مكون من 73 جزءًا ISO/IEC 29341 في ديسمبر 2008. [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ]
تشمل ميزات UPnP الأخرى ما يلي:
- استقلالية الوسائط والأجهزة
- يمكن تشغيل تقنية UPnP على العديد من الوسائط التي تدعم بروتوكول الإنترنت (IP)، بما في ذلك الإيثرنت [ 2 ] ، وFireWire ، والأشعة تحت الحمراء ( IrDA )، والأسلاك المنزلية ( G.hn )، والترددات اللاسلكية ( البلوتوث ، والواي فاي [ 2 ] ). لا يتطلب الأمر دعمًا خاصًا لبرامج تشغيل الأجهزة ؛ بل تُستخدم بروتوكولات الشبكة الشائعة.
- عنصر تحكم واجهة المستخدم (UI)
- بشكل اختياري ، تتيح بنية UPnP للأجهزة عرض واجهة المستخدم من خلال متصفح الويب (انظر العرض التقديمي أدناه).
- استقلالية نظام التشغيل ولغة البرمجة
- يمكن استخدام أي نظام تشغيل وأي لغة برمجة لبناء منتجات UPnP. تتوفر حزم UPnP لمعظم المنصات وأنظمة التشغيل في كل من أشكال المصادر المغلقة والمفتوحة. [ 2 ]
- التحكم في البرنامج
- كما تتيح بنية UPnP التحكم البرمجي التقليدي للتطبيقات. [ 2 ]
- قابلية التوسعة
- يمكن لكل منتج من منتجات UPnP أن يحتوي على خدمات خاصة بالجهاز تُضاف إلى البنية الأساسية. [ 2 ] بالإضافة إلى دمج الخدمات التي يُحددها منتدى UPnP بطرق متنوعة، يُمكن للموردين تعريف أنواع الأجهزة والخدمات الخاصة بهم. كما يُمكنهم توسيع نطاق الأجهزة والخدمات القياسية بإضافة إجراءات ومتغيرات حالة وعناصر بنية بيانات وقيم متغيرة مُحددة من قِبلهم.
بروتوكول
يستخدم بروتوكول UPnP تقنيات الإنترنت الشائعة . ويفترض أن الشبكة تعمل ببروتوكول الإنترنت (IP)، ثم يستخدم بروتوكولات HTTP و SOAP و XML فوق بروتوكول IP لتوفير وصف الأجهزة/الخدمات، والإجراءات، ونقل البيانات، والأحداث. ويتم دعم طلبات البحث عن الأجهزة والإعلانات من خلال تشغيل بروتوكول HTTP فوق بروتوكول UDP باستخدام البث المتعدد (المعروف باسم HTTPMU). كما تُرسل الاستجابات لطلبات البحث عبر بروتوكول UDP، ولكن باستخدام البث الأحادي (المعروف باسم HTTPU). يستخدم UPnP بروتوكول UDP لانخفاض تكلفته، حيث لا يتطلب تأكيد استلام البيانات أو إعادة إرسال الحزم التالفة. تم تقديم مواصفات HTTPU وHTTPMU في البداية كمسودة إنترنت ، ولكنها انتهت صلاحيتها في عام 2001؛ [ 12 ] وقد تم دمج هذه المواصفات لاحقًا في مواصفات UPnP الفعلية.
يستخدم بروتوكول UPnP منفذ UDP رقم 1900، وتُستمد جميع منافذ TCP المستخدمة من رسائل SSDP الخاصة بالحالة والاستجابة. [ 13 ]
معالجة
يُعدّ نظام عناوين IP أساس شبكات UPnP. يجب على كل جهاز تنفيذ عميل DHCP والبحث عن خادم DHCP عند اتصاله بالشبكة لأول مرة. في حال عدم توفر خادم DHCP، يجب على الجهاز تخصيص عنوان IP لنفسه. تُعرف عملية تخصيص عنوان IP في بنية أجهزة UPnP باسم AutoIP . في الإصدار 1.0 من بنية أجهزة UPnP [ 6 ]، تم تعريف AutoIP ضمن المواصفات نفسها؛ أما في الإصدار 1.1 [ 7 ] ، فيُشير AutoIP إلى معيار IETF RFC 3927. إذا حصل الجهاز على اسم نطاق أثناء عملية DHCP، على سبيل المثال، من خلال خادم DNS أو عبر إعادة توجيه DNS ، فيجب عليه استخدام هذا الاسم في عمليات الشبكة اللاحقة؛ وإلا، فيجب عليه استخدام عنوان IP الخاص به.
اكتشاف
بعد أن يُنشئ الجهاز عنوان IP، تكون الخطوة التالية في شبكة UPnP هي الاكتشاف. يُعرف بروتوكول اكتشاف UPnP باسم بروتوكول اكتشاف الخدمة البسيط (SSDP). عند إضافة جهاز إلى الشبكة، يسمح SSDP لهذا الجهاز بالإعلان عن خدماته لنقاط التحكم في الشبكة. ويتحقق ذلك عن طريق إرسال رسائل SSDP النشطة. عند إضافة نقطة تحكم إلى الشبكة، يُمكّن SSDP هذه النقطة من البحث بنشاط عن الأجهزة المطلوبة في الشبكة أو الاستماع بشكل سلبي إلى رسائل SSDP النشطة الواردة من الأجهزة. وتتمثل العملية الأساسية في رسالة اكتشاف تحتوي على بعض التفاصيل الأساسية حول الجهاز أو إحدى خدماته، مثل نوعه ومعرّفه ومؤشر (موقع الشبكة) لمعلومات أكثر تفصيلًا.
وصف
بعد أن يكتشف جهازًا ما، لا يزال لدى نقطة التحكم معلومات قليلة جدًا عنه. لكي تتمكن نقطة التحكم من معرفة المزيد عن الجهاز وقدراته، أو للتفاعل معه، يجب عليها استرجاع وصف الجهاز من الموقع ( عنوان URL ) الذي يوفره الجهاز في رسالة الاكتشاف. يُعبَّر عن وصف جهاز UPnP بصيغة XML . ويتضمن معلومات خاصة بالشركة المصنعة، مثل اسم الطراز ورقمه، والرقم التسلسلي ، واسم الشركة المصنعة، وعناوين URL (للعرض) لمواقع الويب الخاصة بالشركة المصنعة، وما إلى ذلك. كما يتضمن الوصف قائمة بأي خدمات مضمنة. لكل خدمة، يسرد مستند وصف الجهاز عناوين URL الخاصة بالتحكم، والأحداث، ووصف الخدمة. يتضمن وصف كل خدمة قائمة بالأوامر ، أو الإجراءات ، التي تستجيب لها الخدمة، والمعلمات، أو الوسائط ، لكل إجراء؛ كما يتضمن وصف الخدمة قائمة بالمتغيرات ؛ تُنمذج هذه المتغيرات حالة الخدمة أثناء التشغيل، ويتم وصفها من حيث نوع بياناتها ، ونطاقها، وخصائص الأحداث.
يتحكم
بعد الحصول على وصف الجهاز، يمكن لنقطة التحكم إرسال إجراءات إلى خدمة الجهاز. وللقيام بذلك، ترسل نقطة التحكم رسالة تحكم مناسبة إلى عنوان URL الخاص بالخدمة (المُدرج في وصف الجهاز). تُعبَّر رسائل التحكم أيضًا بلغة XML باستخدام بروتوكول الوصول إلى الكائنات البسيط (SOAP). وكما هو الحال في استدعاءات الدوال ، تُعيد الخدمة أي قيم خاصة بالإجراء استجابةً لرسالة التحكم. ويتم نمذجة تأثيرات الإجراء، إن وُجدت، من خلال تغييرات في المتغيرات التي تصف حالة تشغيل الخدمة.
إشعار بالحدث
من بين إمكانيات شبكة UPnP الأخرى ، خاصية إشعارات الأحداث . يُعرف بروتوكول إشعارات الأحداث المُعرّف في بنية جهاز UPnP باسم بنية إشعارات الأحداث العامة (GENA). يتضمن وصف UPnP للخدمة قائمة بالإجراءات التي تستجيب لها الخدمة، وقائمة بالمتغيرات التي تُمثل حالة الخدمة أثناء التشغيل. تُرسل الخدمة تحديثات عند تغيير هذه المتغيرات، ويمكن لنقطة تحكم الاشتراك لتلقي هذه المعلومات. تُرسل الخدمة التحديثات عبر رسائل الأحداث، التي تحتوي على أسماء متغير حالة واحد أو أكثر وقيمها الحالية. تُكتب هذه الرسائل أيضًا بلغة XML. تُرسل رسالة حدث أولية خاصة عند اشتراك نقطة تحكم لأول مرة؛ تحتوي هذه الرسالة على أسماء وقيم جميع المتغيرات التي تم رصدها ، وتُمكّن المشترك من تهيئة نموذج حالة الخدمة. لدعم سيناريوهات نقاط التحكم المتعددة، صُممت خاصية إشعارات الأحداث لضمان إطلاع جميع نقاط التحكم بالتساوي على آثار أي إجراء. لذلك، يتم إرسال جميع رسائل الأحداث إلى جميع المشتركين، ويتلقى المشتركون رسائل الأحداث لجميع المتغيرات "التي تم تغييرها"، ويتم إرسال رسائل الأحداث بغض النظر عن سبب تغيير متغير الحالة (سواء استجابةً لإجراء مطلوب أو لأن الحالة التي تقوم الخدمة بنمذجتها قد تغيرت).
عرض تقديمي
الخطوة الأخيرة في شبكات UPnP هي العرض. إذا كان للجهاز عنوان URL للعرض، فيمكن لنقطة التحكم استرداد صفحة من هذا العنوان، وتحميلها في متصفح الويب ، وبناءً على إمكانيات الصفحة، السماح للمستخدم بالتحكم في الجهاز و/أو عرض حالته. [ 14 ] وتعتمد إمكانية تحقيق كل من هذه الخطوات على الإمكانيات المحددة لصفحة العرض والجهاز.
معايير الصوت والفيديو
تُعدّ بنية UPnP AV امتدادًا صوتيًا ومرئيًا لبروتوكول UPnP، وتدعم مجموعة متنوعة من الأجهزة مثل أجهزة التلفاز، وأجهزة الفيديو، ومشغلات الأقراص المدمجة/أقراص الفيديو الرقمية، وأجهزة الاستقبال الرقمية ، وأنظمة الاستريو، ومشغلات ملفات MP3، وكاميرات الصور الثابتة، وكاميرات الفيديو، وإطارات الصور الإلكترونية، وأجهزة الكمبيوتر الشخصية. تُمكّن بنية UPnP AV الأجهزة من دعم تنسيقات متنوعة للمحتوى الترفيهي، بما في ذلك MPEG2 وMPEG4 وJPEG وMP3 و Windows Media Audio (WMA) والصور النقطية (BMP) وتنسيقات NTSC وPAL وATSC. كما تدعم أنواعًا متعددة من بروتوكولات النقل، بما في ذلك IEEE 1394 وHTTP وRTP وTCP/IP. [ 15 ]
في 12 يوليو 2006، أعلن منتدى UPnP عن إصدار النسخة الثانية من مواصفات الصوت والفيديو لبروتوكول UPnP، [ 16 ] بالإضافة إلى فئتي MediaServer (MS) الإصدار 2.0 و MediaRenderer (MR) الإصدار 2.0. وقد أُضيفت هذه التحسينات من خلال تعزيز إمكانيات فئتي أجهزة MediaServer وMediaRenderer، مما يُتيح مستوى أعلى من التوافق بين منتجات الشركات المصنعة المختلفة. وقد سوّقت شركة فيليبس بعض الأجهزة الأولى المتوافقة مع هذه المعايير تحت العلامة التجارية Streamium .
منذ عام 2006، نُشرت النسختان 3 و4 من بروتوكولات التحكم في أجهزة الصوت والفيديو UPnP. [ 17 ] وفي مارس 2013، نُشرت مواصفات محدّثة لبنية UPnP AV، تتضمن بروتوكولات التحكم المحدّثة في الأجهزة. [ 15 ] وصدرت بنية أجهزة UPnP 2.0 في أبريل 2020.
تمت الإشارة إلى معايير UPnP AV في المواصفات التي نشرتها منظمات أخرى، بما في ذلك إرشادات قابلية التشغيل البيني للأجهزة المتصلة بالشبكة الصادرة عن تحالف الشبكة الرقمية المنزلية [ 18 ] ، واللجنة الكهروتقنية الدولية IEC 62481-1 [ 19 ] ، وبروتوكول OpenCable للشبكات المنزلية الصادر عن مختبرات تلفزيون الكابل [ 20 ] .
مكونات الصوت والفيديو
بشكل عام، تتكون بنية الصوت/الفيديو UPnP من: [ 21 ]
- نقطة التحكم: جهاز يكتشف خوادم الوسائط وأجهزة عرض الوسائط، ثم يقوم بتوصيلها.
- خادم الوسائط: الخادم الذي يخزن المحتوى على الشبكة ليتم الوصول إليه بواسطة برامج عرض الوسائط
- جهاز عرض الوسائط: جهاز يقوم بعرض (تشغيل) المحتوى المستلم من خادم الوسائط.
خادم الوسائط
أخادم وسائط UPnP AV هو خادم UPnP ("الجهاز الرئيسي") الذي يوفر معلومات مكتبة الوسائط ويبث بيانات الوسائط (مثل الصوت والفيديو والصور والملفات) إلى عملاء UPnP على الشبكة. وهو عبارة عن نظام حاسوبي أو جهاز رقمي مشابه يقوم بتخزين الوسائط الرقمية، مثل الصور الفوتوغرافية والأفلام والموسيقى، ومشاركتها مع الأجهزة الأخرى.
توفر خوادم وسائط UPnP AV خدمة لأجهزة عملاء UPnP AV، والتي تسمى نقاط التحكم ، لتصفح محتوى الوسائط الخاص بالخادم وطلب من خادم الوسائط تسليم ملف إلى نقطة التحكم لتشغيله.
تتوفر خوادم وسائط UPnP لمعظم أنظمة التشغيل والعديد من منصات الأجهزة. يمكن تصنيف خوادم وسائط UPnP AV إلى نوعين: برمجيات وعتاد. يمكن تشغيل خوادم وسائط UPnP AV البرمجية على جهاز كمبيوتر شخصي ، بينما يمكن تشغيل خوادم وسائط UPnP AV العتادية على أي جهاز تخزين متصل بالشبكة (NAS) أو أي جهاز مخصص لتوصيل الوسائط، مثل مسجل الفيديو الرقمي (DVR ). في مايو 2008، كان عدد خوادم وسائط UPnP AV البرمجية يفوق عدد الخوادم العتادية.
مكونات أخرى
- نقطة تحكم خادم الوسائط UPnP - وهي عميل UPnP (جهاز "تابع") يمكنه اكتشاف خوادم UPnP تلقائيًا على الشبكة لتصفح وبث ملفات الوسائط/البيانات منها.
- UPnP MediaRenderer DCP – وهو جهاز "تابع" يمكنه عرض (تشغيل) المحتوى.
- UPnP RenderingControl DCP – التحكم في إعدادات MediaRenderer؛ مستوى الصوت، والسطوع، وRGB، والحدة، والمزيد.
- عميل/خادم واجهة المستخدم عن بعد UPnP (RUI) - الذي يرسل/يستقبل أوامر التحكم بين عميل UPnP وخادم UPnP عبر الشبكة (مثل التسجيل، والجدولة، والتشغيل، والإيقاف المؤقت، والإيقاف، وما إلى ذلك).
- Web4CE لواجهة المستخدم عن بُعد لتقنية UPnP [ 22 ] - معيار صممته لجنة الشبكات المنزلية R7 التابعة لجمعية الإلكترونيات الاستهلاكية ، وكان يُعرف سابقًا باسم CEA-2014-A، وفي أحدث نسخة منه يُعرف باسم ANSI/CTA-2014-B S-2025. يُعرف هذا المعيار باسم Web4CE ، وهو بروتوكول وإطار عمل قائم على الويب لواجهة المستخدم عن بُعد على شبكات UPnP والإنترنت . يسمح هذا المعيار لأجهزة الشبكة المنزلية المتوافقة مع UPnP بعرض واجهتها ( خيارات العرض والتحكم) كصفحة ويب لعرضها على أي جهاز آخر متصل بالشبكة المنزلية. هذا يعني أنه يمكن التحكم في جهاز الشبكة المنزلية من خلال أي طريقة اتصال قائمة على متصفح الويب لأجهزة الإلكترونيات الاستهلاكية على شبكة منزلية UPnP باستخدام الإيثرنت وإصدار خاص من لغة HTML يُسمى CE-HTML .
- جودة الخدمة (QoS) وظيفة خدمة مهمة (وإن لم تكن إلزامية) لاستخدامها مع بروتوكول UPnP AV (الصوت والفيديو). تشير جودة الخدمة إلى آليات التحكم التي تُعطي أولويات مختلفة لمستخدمين أو تدفقات بيانات مختلفة، أو تضمن مستوى أداء معينًا لتدفق البيانات وفقًا لطلبات التطبيق. نظرًا لأن بروتوكول UPnP AV يُستخدم غالبًا لبث الوسائط المتدفقة التي غالبًا ما تكون بيانات صوت/فيديو شبه فورية أو فورية، فمن الضروري تسليمها خلال فترة زمنية محددة وإلا سينقطع البث. تُعد ضمانات جودة الخدمة أساسية في حال محدودية سعة الشبكة، كما هو الحال في الشبكات العامة مثل الإنترنت .
- تتألف جودة الخدمة لبروتوكول UPnP من وظائف خدمة جهاز الاستقبال (جانب العميل/الواجهة الأمامية) وجهاز المصدر (جانب الخادم/الواجهة الخلفية). وتشمل هذه الوظائف فئات مثل: فئة حركة البيانات التي تحدد نوع حركة البيانات في تدفق البيانات (على سبيل المثال، الصوت أو الفيديو)؛ مُعرِّف حركة البيانات (TID) الذي يُحدد حزم البيانات على أنها تنتمي إلى تدفق بيانات فريد؛ مواصفات حركة البيانات (TSPEC) التي تحتوي على مجموعة من المعلمات التي تُحدد خصائص تدفق البيانات (على سبيل المثال، متطلبات التشغيل والجدولة)؛ تدفق البيانات (TS) وهو تدفق أحادي الاتجاه للبيانات يبدأ من جهاز المصدر وينتهي عند جهاز استقبال واحد أو أكثر.
- الوصول عن بعد - يحدد طرقًا لتوصيل مجموعات أجهزة UPnP التي لا تقع في نفس نطاق البث المتعدد.
اجتياز NAT
أحد حلول تجاوز NAT ، وهو بروتوكول التحكم في جهاز بوابة الإنترنت (UPnP IGD)، يُنفذ عبر UPnP. تُعرّف العديد من أجهزة التوجيه وجدران الحماية نفسها كأجهزة بوابة إنترنت، مما يسمح لأي نقطة تحكم UPnP محلية بتنفيذ مجموعة متنوعة من الإجراءات، بما في ذلك استرداد عنوان IPv4 الخارجي للجهاز، وحصر تعيينات المنافذ الموجودة، وإضافة تعيينات المنافذ أو إزالتها. بإضافة تعيينات المنافذ، يُمكن لوحدة تحكم UPnP الموجودة خلف IGD تمكين تجاوز IGD من عنوان خارجي إلى عميل داخلي.
توجد العديد من مشكلات التوافق نتيجةً لاختلاف تفسيرات مواصفات IGDv1 وIGDv2 الضخمة، والمتوافقة مع الإصدارات السابقة. من هذه المشكلات دمج عميل UPnP IGD مع أنظمة مايكروسوفت ويندوز وإكس بوكس الحالية المزودة بموجهات IGDv2 معتمدة. استمرت مشكلة التوافق منذ إطلاق عميل IGDv1 في ويندوز إكس بي عام 2001، ويؤدي عدم وجود حل بديل في موجه IGDv2 إلى استحالة تعيين منافذ الموجه. [ 23 ]
إذا اقتصر استخدام بروتوكول UPnP على التحكم في تعيينات منافذ الموجه وفتحاتها ، فهناك بروتوكولات بديلة أحدث وأبسط وأخف وزنًا، مثل PCP و NAT-PMP ، وكلاهما معتمد كمعيار RFC من قِبل فريق هندسة الإنترنت (IETF). لم تُسجّل حتى الآن أي مشكلات توافق معروفة بين مختلف العملاء والخوادم لهذه البدائل، إلا أن استخدامها لا يزال محدودًا. بالنسبة لأجهزة التوجيه المنزلية، فإن AVM ومشاريع برامج التوجيه مفتوحة المصدر OpenWrt و OPNsense و pfSense هي الوحيدة المعروفة حاليًا بدعمها لبروتوكول PCP كبديل لبروتوكول UPnP. وقد عانت تطبيقات AVM لبروتوكول UPnP IGDv2 وPCP في Fritz!Box من العديد من الأخطاء منذ إطلاقها، وفي كثير من الحالات، لا تعمل على الإطلاق. [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ]
مشاكل
المصادقة
لا يُطبّق بروتوكول UPnP، افتراضيًا، أي آلية مصادقة ، لذا يجب على تطبيقات أجهزة UPnP تطبيق خدمة حماية الجهاز الإضافية ، [ 29 ] أو خدمة أمان الجهاز . [ 30 ] يوجد أيضًا حل غير قياسي يُسمى UPnP-UP (التوصيل والتشغيل العالمي - ملف تعريف المستخدم) [ 31 ] [ 32 ] ، والذي يقترح إضافةً تسمح بآليات مصادقة المستخدم وتفويضه لأجهزة وتطبيقات UPnP. تفتقر العديد من تطبيقات أجهزة UPnP إلى آليات المصادقة، وتفترض افتراضيًا أن الأنظمة المحلية ومستخدميها جديرون بالثقة تمامًا. [ 33 ] [ 34 ]
عند عدم تفعيل آليات المصادقة، تصبح أجهزة التوجيه وجدران الحماية التي تعمل ببروتوكول UPnP IGD عرضةً للهجمات. على سبيل المثال، تستطيع برامج Adobe Flash التي تعمل خارج بيئة المتصفح المعزولة (أي التي تتطلب إصدارًا محددًا من Adobe Flash مع وجود مشكلات أمنية معروفة) توليد نوع معين من طلبات HTTP يسمح لموقع ويب خبيث بالتحكم في جهاز التوجيه الذي يُفعّل بروتوكول UPnP IGD عند زيارة شخص ما لهذا الموقع باستخدام جهاز توجيه مُفعّل عليه بروتوكول UPnP. [ 35 ] ينطبق هذا فقط على ميزة "اختراق جدار الحماية" في UPnP ؛ ولا ينطبق عندما لا يدعم جهاز التوجيه/جدار الحماية بروتوكول UPnP IGD أو عندما يكون مُعطّلاً عليه. كذلك، لا يمكن لجميع أجهزة التوجيه تعديل إعدادات خادم DNS بواسطة UPnP لأن جزءًا كبيرًا من المواصفات (بما في ذلك تكوين مضيف الشبكة المحلية) اختياري لأجهزة التوجيه المُفعّل عليها بروتوكول UPnP. [ 9 ] ونتيجة لذلك، يتم شحن بعض أجهزة UPnP مع إيقاف تشغيل UPnP افتراضيًا كإجراء أمني.
الوصول عبر الإنترنت
في عام 2011، طوّر الباحث دانيال غارسيا أداةً مصممةً لاستغلال ثغرةٍ في بعض حزم بروتوكولات UPnP لأجهزة IGD، والتي تسمح بطلبات UPnP من الإنترنت. [ 36 ] [ 37 ] وقد أُعلن عن الأداة في مؤتمر DEFCON 19، وهي تسمح بتوجيه طلبات ربط المنافذ إلى عناوين IP خارجية من الجهاز، وإلى عناوين IP داخلية خلف جدار الحماية NAT. وتنتشر هذه المشكلة على نطاق واسع في جميع أنحاء العالم، حيث تُظهر عمليات المسح ملايين الأجهزة المعرضة للخطر في وقت واحد. [ 38 ]
في يناير 2013، نشرت شركة الأمن "رابيد 7" في بوسطن تقريرًا [ 39 ] عن برنامج بحثي استمر ستة أشهر. قام فريق من الباحثين بمسح إشارات الأجهزة المزودة بتقنية UPnP والتي تُعلن عن إمكانية اتصالها بالإنترنت. استجابت نحو 6900 منتجًا مُهيأ للشبكات، تابعة لـ 1500 شركة، موزعة على 81 مليون عنوان IP، لطلبات البحث. 80% من هذه الأجهزة عبارة عن أجهزة توجيه منزلية، بينما تشمل الأجهزة الأخرى طابعات وكاميرات ويب وكاميرات مراقبة. وباستخدام بروتوكول UPnP، يُمكن الوصول إلى العديد من هذه الأجهزة والتحكم بها.
في فبراير 2013، رد منتدى UPnP في بيان صحفي [ 40 ] بالتوصية بإصدارات أحدث من حزم UPnP المستخدمة، وبتحسين برنامج الاعتماد ليشمل عمليات فحص لتجنب المزيد من هذه المشكلات.
التجسس على بروتوكول إدارة مجموعات الإنترنت (IGMP) وموثوقيته
غالبًا ما يكون UPnP هو تطبيق البث المتعدد المهم الوحيد المستخدم في الشبكات المنزلية الرقمية؛ لذلك، يمكن أن يظهر سوء تكوين شبكة البث المتعدد أو أوجه القصور الأخرى على أنها مشكلات UPnP بدلاً من مشكلات الشبكة الأساسية.
إذا تم تمكين خاصية التجسس على بروتوكول إدارة مجموعات الإنترنت (IGMP snooping) على جهاز التبديل، أو بشكل أكثر شيوعًا على جهاز التوجيه/التبديل اللاسلكي، فسوف يتداخل ذلك مع اكتشاف جهاز UPnP/DLNA (SSDP) إذا تم تكوينه بشكل غير صحيح أو غير مكتمل (على سبيل المثال بدون مُستعلم نشط أو وكيل IGMP)، مما يجعل UPnP يبدو غير موثوق به.
تشمل السيناريوهات النموذجية التي تمت ملاحظتها ظهور خادم أو عميل (مثل التلفزيون الذكي ) بعد التشغيل ثم اختفائه بعد بضع دقائق (غالبًا 30 دقيقة افتراضيًا) بسبب انتهاء صلاحية عضوية مجموعة IGMP.
ثغرة أمنية في ردود الاتصال
في 8 يونيو 2020، تم الإعلان عن ثغرة تصميم بروتوكول أخرى. [ 41 ] أطلق عليها مكتشفها اسم "CallStranger" [ 42 ] ، وهي تسمح للمهاجم بتعطيل آلية الاشتراك في الأحداث وتنفيذ مجموعة متنوعة من الهجمات: تضخيم الطلبات لاستخدامها في هجمات DDoS؛ والتعداد؛ وتسريب البيانات.
نشرت مؤسسة OCF تحديثًا لمواصفات البروتوكول في أبريل 2020. [ 43 ] ومع ذلك، نظرًا لصعوبة ترقية العديد من الأجهزة التي تعمل بنظام UPnP، فمن المرجح أن يظل CallStranger يشكل تهديدًا لفترة طويلة قادمة. [ 44 ] وقد أدى CallStranger إلى زيادة الدعوات الموجهة للمستخدمين النهائيين للتخلي عن UPnP بسبب الإخفاقات المتكررة في أمان تصميمه وتنفيذه. [ 45 ]
تاريخ
تم الترويج لبروتوكولات UPnP من قِبل منتدى UPnP (الذي تأسس في أكتوبر 1999)، [ 46 ] وهي مبادرة من قطاع صناعة الحواسيب تهدف إلى تمكين اتصال مباشر وموثوق بالأجهزة المستقلة وأجهزة الحاسوب الشخصية من مختلف الموردين. ضم المنتدى أكثر من 800 مورد يعملون في مجالات متنوعة، من الإلكترونيات الاستهلاكية إلى الحوسبة الشبكية. ومنذ عام 2016، تتولى مؤسسة الاتصال المفتوح (OCF) إدارة جميع جهود UPnP.
في خريف عام 2008، صادق منتدى UPnP على الإصدار UPnP 1.1، وهو الإصدار الذي خلف بنية أجهزة UPnP 1.0. [ 47 ] كان معيار ملف تعريف الأجهزة لخدمات الويب (DPWS) مرشحًا لخلافة UPnP، لكن منتدى UPnP اختار UPnP 1.1. تم اعتماد الإصدار الثاني من IGD. [ 48 ]
يحتوي معيار جهاز بوابة الإنترنت UPnP (IGD) [ 9 ] على خدمة WANIPConnection، التي توفر وظائف مشابهة لبروتوكول التحكم في المنافذ (PCP) المعياري الصادر عن IETF . وتتضمن مواصفات NAT-PMP قائمة بالمشاكل المتعلقة بـ IGDP [ 49 ] : 26-32، والتي دفعت إلى إنشاء NAT-PMP وخليفته PCP.
تم تحديد العديد من المعايير الإضافية لبنية جهاز UPnP:
- يُعرّف تحالف Wi-Fi مجموعة من
urn:schemas-wifialliance-org:device:WFADeviceخدمات "جهاز WFA" ( ) المتعلقة بنقطة الوصول اللاسلكية .- تُعدّ خدمة WFAWLANConfig مكونًا أساسيًا يُحدد طرقًا للاستعلام عن إمكانيات نقطة الوصول اللاسلكية وإنشاء اتصالات لاسلكية. [ 50 ] تُستخدم هذه الخدمة في نوعي AP-ER وUPnP-C من إعدادات Wi-Fi المحمية . [ 51 ]
انظر أيضاً
مراجع
- 1 2 "بنية الأجهزة العالمية للتوصيل والتشغيل" . upnp.org . تم الاطلاع عليه بتاريخ 22 مايو 2025 .
- 1 2 3 4 5 6 "OCF – معايير وبنية UPnP" . مؤسسة الاتصال المفتوح (OCF) . تم الاطلاع عليه بتاريخ 22 مايو 2025 .
- ↑ إرشادات استخدام شعار OCF – UPnP
- ↑ فيليميروفيتش، أندريا (13 يناير 2022). "ما هو UPnP (التوصيل والتشغيل العالمي)؟" . مدونة phoenixNAP . تم الاطلاع عليه بتاريخ 27 سبتمبر 2023 .
- ↑ "استخدام واجهة برمجة تطبيقات نقطة تحكم UPnP" . شبكة مطوري مايكروسوفت . 14 سبتمبر 2012. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- 1 2 "بنية جهاز UPnP الإصدار 1.0" (ملف PDF) . upnp.org . منتدى UPnP. 15 أكتوبر 2008.
- 1 2 "بنية جهاز UPnP الإصدار 1.1" (ملف PDF) . openconnectivity.org . منتدى UPnP. 15 أكتوبر 2008.
- ↑ "بنية جهاز UPnP الإصدار 2.0" (ملف PDF) . openconnectivity.org . OCF . 17 أبريل 2020.
- 1 2 3 "UPnP InternetGatewayDevice v1.0/v2.0" . openconnectivity.org . منتدى UPnP. 10 ديسمبر 2010.
- ↑ "معيار ISO/IEC الخاص ببنية أجهزة UPnP يجعل الشبكات بسيطة وسهلة" . المنظمة الدولية للتوحيد القياسي . 10 ديسمبر 2008. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ «مواصفات UPnP تُعتمد كمعيار دولي لتوافق الأجهزة الشبكية القائمة على بروتوكول الإنترنت» (ملف PDF) . منتدى UPnP . 5 فبراير 2009. مؤرشف من الأصل (ملف PDF) في 1 أبريل 2014. تم الاطلاع عليه في 11 سبتمبر 2014 .
- ↑ جولاند، يارون ي.؛ شليمر، جيفري س. (2 أكتوبر 2000). "رسائل UDP HTTP متعددة البث وأحادية البث" . اللجنة الفنية لمنتدى UPnP. مؤرشف من الأصل في 30 ديسمبر 2006. تم الاطلاع عليه في 11 سبتمبر 2014 .
- ↑ "كيف يؤثر جدار حماية ويندوز على إطار عمل UPnP في ويندوز إكس بي حزمة الخدمة 2" . مايكروسوفت . 23 مايو 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ stevewhims. "عرض تقديمي - تطبيقات Win32" . learn.microsoft.com . تم الاطلاع عليه بتاريخ 17 مايو 2026 .
- 1 2 "بنية UPnP AV" (ملف PDF) . منتدى UPnP . 31 مارس 2013. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "منتدى UPnP يُصدر مواصفات AV مُحسّنة ترتقي بالشبكة المنزلية إلى مستوى جديد" (ملف PDF) . منتدى UPnP . 12 يوليو 2006. تاريخ الاطلاع: 11 سبتمبر 2014 .
- ↑ "بروتوكولات التحكم بالأجهزة" . منتدى UPnP . تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "إرشادات التوافق التشغيلي للأجهزة المتصلة بشبكة DLNA" . تحالف الشبكة الرقمية المنزلية . مارس 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "إرشادات التوافق التشغيلي للأجهزة المنزلية المتصلة بشبكة DLNA - الجزء 1: البنية والبروتوكولات" . اللجنة الكهروتقنية الدولية . 23 أكتوبر 2013. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "مواصفات OpenCable للشبكات المنزلية 2.0 - بروتوكول الشبكات المنزلية 2.0، الإصدار 10" (ملف PDF) . مختبرات تلفزيون الكابل . 30 مايو 2013. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 11 سبتمبر 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ EDN (9 سبتمبر 2005). "كيف ستُمكّن تقنيتا DLNA وUPnP شبكات الفيديو المنزلية بسهولة" . EDN . تم الاطلاع عليه بتاريخ 27 سبتمبر 2023 .
- ↑ "ANSI/CTA-2014-B - بروتوكول وإطار عمل قائم على الويب لواجهة المستخدم عن بُعد على شبكات UPnP والإنترنت (Web4CE)" . لجنة شبكة المنزل CEA R7 . 1 يناير 2011. مؤرشف من الأصل في 29 أبريل 2013. تم الاطلاع عليه في 11 سبتمبر 2014 .
- ↑ "الكشف عن FDSSDP كعميل مايكروسوفت · miniupnp/miniupnp@8381867" . GitHub . تم الاطلاع عليه بتاريخ 18 سبتمبر 2023 .
- ^ 12 Fehler in der AVM UPnP IGD- und PCP-Implementation (aller FritzBoxen) .
- ↑ "لا يعمل بروتوكول UPnP مع جهاز FRITX!Box الخاص بي" . منتدى مجتمع Syncthing . 12 أبريل 2022. تم الاطلاع عليه بتاريخ 18 سبتمبر 2023 .
- ↑ "تُعيد الدالة UPNP_GetValidIGD عنوان IPv6 مؤقتًا، مما يتسبب في فشل الدالة UPNP_AddPinHole مع ظهور الخطأ 606 · المشكلة رقم 600 · miniupnp/miniupnp" . GitHub . تم الاطلاع عليه بتاريخ 18 سبتمبر 2023 .
- ↑ "يُظهر برنامج upnpc مدة خاطئة لإعادة توجيه المنفذ تتجاوز 120 ثانية · المشكلة رقم 222 · miniupnp/miniupnp" . GitHub . تم الاطلاع عليه بتاريخ 18 سبتمبر 2023 .
- ↑ "miniupnp.tuxfamily.org :: عرض الموضوع – إعداد إعادة توجيه المنفذ لا يعمل" . miniupnp.tuxfamily.org . تم الاطلاع عليه بتاريخ 18 سبتمبر 2023 .
- ↑ "حماية الجهاز الإصدار 1.0" . منتدى UPnP . مؤرشف من الأصل بتاريخ 17 أكتوبر 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "أمان الجهاز ووحدة التحكم الأمنية الإصدار 1.0" . منتدى UPnP . مؤرشف من الأصل بتاريخ 31 أغسطس 2014. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "UPnP-UP - التوصيل والتشغيل العالمي - ملف تعريف المستخدم" . مؤرشف من الأصل بتاريخ 10 ديسمبر 2013. تم الاطلاع عليه بتاريخ 1 يناير 2012 .
- ↑ ساليس، تياجو؛ ساليس، لياندرو؛ ألميدا، هيجو؛ بيركوسيتش، أنجيلو (نوفمبر 2010). "امتداد UPnP لتمكين مصادقة المستخدم وتفويضه في الأنظمة المنتشرة" . مجلة الجمعية البرازيلية للحاسبات . 16 (4): 261-277 . doi : 10.1007/s13173-010-0022-2 .
- ↑ إيستيب، توماس م. (4 يونيو 2014). "شوروول وUPnP" . تم الاسترجاع في 11 سبتمبر 2014 .
- ↑ "جهاز بوابة الإنترنت UPnP لنظام لينكس - الوثائق - الأمان" . تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "اختراق الإنترنت" . 12 يناير 2008. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ غارسيا، دانيال. "رسم خرائط UPnP" (ملف PDF) . تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ "ملاحظة الثغرات الأمنية رقم 357851 الصادرة عن مركز الاستجابة للطوارئ الحاسوبية الأمريكي (US-CERT)" . مركز الاستجابة للطوارئ الحاسوبية/مركز التحكم . 30 نوفمبر 2012. تم الاطلاع عليها بتاريخ 11 سبتمبر 2014 .
- ↑ "ملايين الأجهزة معرضة للخطر عبر بروتوكول UPnP - تحديث" . صحيفة ذا إتش. 30 يناير 2013. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ مور، إتش دي (29 يناير 2013). "ورقة بيضاء: ثغرات أمنية في التوصيل والتشغيل العالمي: افصل، لا تُشغّل" . مؤرشفة من الأصل في 30 يناير 2013. تم الاطلاع عليها في 11 سبتمبر 2014 .
- ↑ "منتدى UPnP يرد على ثغرة أمنية تم اكتشافها مؤخرًا في LibUPnP/MiniUPnP" (ملف PDF) . منتدى UPnP . 8 فبراير 2013. مؤرشف من الأصل (ملف PDF) في 7 ديسمبر 2013. تم الاطلاع عليه في 11 سبتمبر 2014 .
- ↑ "CERT/CC Vulnerability Note VU#339275" .
- ↑ "CallStranger CVE-2020-12695" . مؤرشف من الأصل بتاريخ 16 يونيو 2020. تم الاطلاع عليه بتاريخ 14 يونيو 2020 .
- ↑ "OCF – معايير وهندسة UPnP" .
- ↑ "CVE-2020-12695: ثغرة CallStranger في تقنية التوصيل والتشغيل العالمية (UPnP) تعرض مليارات الأجهزة للخطر" . 8 يونيو 2020.
- ↑ "عطّل خاصية UPnP على جهاز التوجيه اللاسلكي الخاص بك الآن" . لايف هاكر . ١٢ يونيو ٢٠٢٠. تم الاطلاع عليه بتاريخ ١٤ يونيو ٢٠٢٠ .
- ↑ "OCF – معايير وبنية UPnP" . مؤسسة الاتصال المفتوح (OCF) . تم الاطلاع عليه بتاريخ 27 سبتمبر 2023 .
- ↑ بودليندر، إم بي (فبراير 2005). "UPnP 1.1 - التصميم من أجل الأداء والتوافق". معاملات IEEE في الإلكترونيات الاستهلاكية . 51 (1): 69-75 . doi : 10.1109/TCE.2005.1405701 . S2CID 11792030 .
- ↑ "لجنة عمل بوابة منتدى UPnP: تحسينات IGD:2 مقارنةً بـ IGD:1" (ملف PDF) . منتدى UPnP . 10 مارس 2009. تم الاطلاع عليه بتاريخ 11 سبتمبر 2014 .
- ↑ إس. تشيشاير؛ إم. كروخمال (أبريل 2013). "RFC 6886: بروتوكول تعيين منافذ NAT (NAT-PMP)" . فريق عمل هندسة الإنترنت (IETF). doi : 10.17487/RFC6886 . تاريخ الاسترجاع: 8 أغسطس 2014 .
- ↑ "WFA WLANConfig Service 1.0 Service Template Version 1.01" (PDF) . يناير 2006. مؤرشف من الأصل (PDF) في 8 ديسمبر 2022.
- ↑ "مواصفات إعداد Wi-Fi المحمي الإصدار 2.0.8" (ملف PDF) . مؤرشف من الأصل (ملف PDF) بتاريخ 22 مارس 2021.
للمزيد من القراءة
روابط خارجية
- نظرة عامة ومقارنة لبروتوكولات تعيين المنافذ 2026+: حول UPnP IGD و PCP/NAT-PMP
- منتدى UPnP على موقع Wayback Machine (تمت أرشفته في 18-12-2015)
- معايير وبنية UPnP ، في مؤسسة الاتصال المفتوح
- بنية جهاز UPnP
- ISO/IEC 29341-1:2011
- الوسائط الرقمية
- إدارة نظام التشغيل ويندوز
- اتصالات وخدمات ويندوز
- محتوى الهاتف المحمول
- الخوادم (الحوسبة)
- خوادم الوسائط
- بروتوكولات الاكتشاف
