120 likes | 289 Views
Universal Plug and Play. UPnP dient zur universellen Ansteuerung von Geräten (Stereoanlagen, Router, Drucker, Haussteuerungen) über ein IP -basierendes Netzwerk
E N D
UPnP dient zur universellen Ansteuerung von Geräten (Stereoanlagen, Router, Drucker, Haussteuerungen) über ein IP-basierendes Netzwerk • Wurde ursprünglich von der Firma Microsoft eingeführt (ab Windows ME). Heute bestimmt das UPnP-Forum diesen Standard und zertifiziert Geräte • Diese Technologie baut auf den Internetstandards UDP/TCP/IP, XML, SOAP und lässt sich in folgenden 5 Schritten grob erklären: Was ist UPnP?
UPnP baut auf dem Transport-Layer 4 (UDP, TCP) auf. UPnP ist ein Standard mit vorgegebenen Schnittstellen. Somit lassen sich Geräte von unterschiedlichen Herstellern miteinander «Plug-n-Play». • Die UPnP-Achtitektur umfasst mehrere Protokolle aus dem ApplikationsLayer 7: Layer Übersicht
Der UPnP Discovery-Mechnismus funktioniert via UDP Nachrichten. Dabei kommt das SSDP (Simple Service Discovery Protokol) zum Einsatz • ControlPointhält Ausschau nach UPnP-fähigen Geräten im Netzwerk: «M-Search» ControlPoint sendet UDP-Anfrage (M-Search) auf der Multicast Adresse 239.255.255.250:1900 ... 1 Discovery Request
Jedes Device beantwortet die M-Search Anfrage des ControlPoints mittels UDP-Unicast «HTTP 200 OK» • Diese Antwort enthält 2 wichtige Angaben über das Device. • «USN» (Unique Service Name) enthält eine eindeutige ID des Geräts • «LOCATION» bestimmt den Zielpfad, wo sich die Beschreibungsdatei des Geräts befindet HTTP 200 OK HTTP 200 OK HTTP 200 OK 1 Discovery Response
Ein Device kann von sich aus «Werbung» machen. Normalerweise tut das ein Device, sobald es am Netzwerk angeschlossen wird. • Das Device kann jedoch auch nach regelmässigen Abständen selbständig von sich Reden lassen. • Eine solcher «NOTIFY» Request wird ebenfalls mit UDP-Multicast auf der SSDP-Adresse 239.255.255.250:1900 ins Netzwerk gepostet. «Notify» 1 Discovery Notify
Nach Bekanntmachung eines Device, fordert der ControlPoint über TCP(Http) das «description.xml» File an. Diese Beschreibungsdatei enthält Informationen über Struktur und Zugriffspunkte auf dem Device. • Ein Beispiel eines «description.xml» description.xml 2 Description
Der ControlPoint weiss nun, welche Aktionen auf einem Device ausgeführt werden können. Diese Information stammt aus dem «description.xml» Action «Play» • Der ControlPoint kann nun eine dieser Aktionen an das Device posten. Dieser Aufruf wird mittels TCP(Http) und SOAP(Simple Object Access Protocol) übermittelt • Die folgende SOAP-Nachricht (Envelope) ruft eine Aktion namens «Play» auf einem Device (z.B. Musikanlage) auf. Was dieses mit dem Aufruf dann macht, ist ihm überlassen, vielleicht Musik abspielen? 3 Control
Damit ein ControlPoint nicht andauernd ein Device befragen muss nur um eine Statusvariable abzufragen, wurde für UPnP sog. Events geschaffen. • Ein ControlPoint kann sich über einen beliebigen Event beim Device anmelden. Danach sendet das Device eine Meldung falls eine Änderung geschieht. • Kommuniziert wird mittels TCP(Http) und GENA-Protokoll (General Event Notification Architecture) Events An-/Abmelden Event Notification 4 Eventing
Devices besitzen oft ein integriertes Webserver dessen Pfad über das <presentationURL>-Tag im «description.xml» bekannt gegeben wird. • Im Windows-Netzerk-Browser kann man z.B. direkt auf die Presentations-Webpage eines UPnP-Gerätes zugreifen. Presentation 5 Presentation
Demonstration... • Mehr Informationen findest du unter folgenden Adressen: • - http://www.upnp.org • - http://www.cybergarage.org(Ciberlink UPnP Implementation) Vielen Dank für deine Aufmerksamkeit..