Zum Inhalt springen

„Simple Service Discovery Protocol“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
Wikilink aus Weblink entfernt
 
(19 dazwischenliegende Versionen von 12 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Netzwerk-UDP-IP-Anwendungsprotokoll|SSDP}}
{{Netzwerk-UDP-IP-Anwendungsprotokoll|SSDP}}
Das '''Simple Service Discovery Protocol''' ('''SSDP''') ist ein [[Netzwerkprotokoll]], welches zur Suche nach [[Universal Plug and Play|UPnP]]-Geräten im Netzwerk dient. SSDP nutzt normalerweise den [[Port (Protokoll)|Port]] 1900 [[User Datagram Protocol|UDP]]<ref>http://www.iana.org/assignments/port-numbers</ref>. Die Firma [[Microsoft]] hat es zusammen mit ihrem Betriebssystem [[Microsoft Windows ME]] eingeführt.
Das '''Simple Service Discovery Protocol''' ('''SSDP''') ist ein [[Netzwerkprotokoll]], welches zur Suche nach [[Universal Plug and Play|Universal-Plug-and-Play]]-Geräten in einem Netzwerk dient. Die Firma [[Microsoft]] hat SSDP mit dem Betriebssystem [[Microsoft Windows ME]] eingeführt.


== Definition ==
Auf der UPnP-Seite ist zu lesen:
SSDP wurde in einem [[Internet Engineering Task Force|IETF]]-[[Internet-Draft]] beschrieben.<ref>https://datatracker.ietf.org/doc/html/draft-cai-ssdp-v1-03</ref> Von [[Internet Assigned Numbers Authority|IANA]] ist für SSDP der [[Port (Protokoll)|Port]] 1900 zugewiesen.<ref>https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=1900</ref> Als [[Transportprotokoll]] wird normalerweise [[User Datagram Protocol|UDP]] verwendet.
{{Zitat|Sobald ein UPnP-Gerät über eine IP-Adresse verfügt, muss es seine Existenz im Netzwerk an die Kontrollpunkte melden. Dies erfolgt via [[User Datagram Protocol|UDP]] über die [[Multicast]]-Adresse 239.255.255.250:1900 auf der Basis des SSDP-Protokolls. Ebenso können Kontrollpunkte nach UPnP-Geräten im Netzwerk suchen. In beiden Fällen enthält die "discovery message" nur die wichtigsten Angaben über das Gerät und seine Dienste, wie zum Beispiel den Gerätenamen, Gerätetyp und eine URL zur genauen Beschreibung des Gerätes.|UPnP Website}}

== Funktionsweise ==
Auf der UPnP-Seite ist zu lesen:
{{Zitat|Sobald ein UPnP-Gerät über eine IP-Adresse verfügt, muss es seine Existenz im Netzwerk an die Kontrollpunkte melden. Dies erfolgt via UDP über die [[Multicast]]-Adresse 239.255.255.250:1900 auf der Basis des SSDP-Protokolls. Ebenso können Kontrollpunkte nach UPnP-Geräten im Netzwerk suchen. In beiden Fällen enthält die ‚discovery message‘ nur die wichtigsten Angaben über das Gerät und seine Dienste, wie zum Beispiel den Gerätenamen, Gerätetyp und eine [[Uniform Resource Locator|URL]] zur genauen Beschreibung des Gerätes.|UPnP Website
}}


== Paketaufbau ==
== Paketaufbau ==
Ein SSDP Paket ist ein [[Hypertext Transfer Protocol|HTTP-Request]] mit der Methode "NOTIFY" (oder auch "M-SEARCH") welches über UDP verschickt wird. Der HTTP-Body ist leer, der HTTP-Header muss trotzdem mit einer Leerzeile abgeschlossen sein. Im HTTP-Header werden UPnP spezifische Attribute gesetzt:
Ein SSDP-Paket ist ein [[Hypertext Transfer Protocol|HTTP-Request]] mit der Methode "NOTIFY" (oder auch "M-SEARCH"), welches über UDP verschickt wird. Der HTTP-Body ist leer, der HTTP-Header muss trotzdem mit einer Leerzeile abgeschlossen sein. Im HTTP-Header werden UPnP-spezifische Attribute gesetzt:
* LOCATION enthält eine URL zur Beschreibung (Description).
* NTS (Notification Sub Type) hat den Wert "ssdp:alive" zum Anmelden oder "ssdp:byebye" zum Abmelden eines Geräts.
* NT (Notification Type) bestimmt die Eigenschaft des Geräts.
* NT (Notification Type) bestimmt die Eigenschaft des Geräts.
* NTS (Notification Sub Type) hat den Wert "ssdp:alive" zum Anmelden oder "ssdp:byebye" zum Abmelden eines Geräts.
* USN (Unique Service Name) enthält eine eindeutige ID des Geräts.
* USN (Unique Service Name) enthält eine eindeutige ID des Geräts.
* LOCATION enthält eine URL zur Beschreibung (Description)


Beispiel:
Beispiel:
<nowiki>NOTIFY * HTTP/1.1
<pre>NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
SERVER: Linux/2.6.15.2 UPnP/1.0 Mediaserver/1.0
CACHE-CONTROL: max-age=1800
CACHE-CONTROL: max-age=1800
LOCATION: http://192.168.0.10:8080/description.xml
LOCATION: http://192.168.0.10:8080/description.xml
NTS: ssdp:alive
NT: urn:schemas-upnp-org:service:ConnectionManager:1
NT: urn:schemas-upnp-org:service:ConnectionManager:1
NTS: ssdp:alive
SERVER: Linux/2.6.15.2 UPnP/1.0 Mediaserver/1.0
USN: uuid:550e8400-e29b-11d4-a716-446655440000::urn:schemas-upnp-org:service:ConnectionManager:1
USN: uuid:550e8400-e29b-11d4-a716-446655440000::urn:schemas-upnp-org:service:ConnectionManager:1
</pre>
HOST: 239.255.255.250:1900

</nowiki>
== Multicast-Adressen ==
Die für das SSDP-Protokoll zur Verfügung stehenden Multicast-Adressen<ref>Devices and control points SHALL NOT send Global scoped, Organization-Local scoped, or Admin-Local scoped multicast messages. [https://openconnectivity.org/upnp-specs/UPnP-arch-DeviceArchitecture-v2.0-20200417.pdf UPnP Device Architecture 2.0]</ref> sind:
{| class="wikitable"
|+
!IP-Version
!Adresse
!Bereich
|-
|[[IPv4]]
|239.255.255.250
|site-local
|-
|[[IPv6]]
|ff02::c
|link-local
|-
|IPv6
|ff05::c
|site-local
|-
|}


== Siehe auch ==
== Siehe auch ==
* [[Universal Plug and Play]]
* [[Service Location Protocol]]
* [[Service Location Protocol]]
* [[Jini]]
* [[Jini]]
Zeile 30: Zeile 56:


== Weblinks ==
== Weblinks ==
* [https://openconnectivity.org/wp-content/uploads/2015/11/UPnP-arch-DeviceArchitecture.pdf UPnP Device Architecture 2.0 (PDF; 1,86 MB)]
* [ftp://ftp.pwg.org/pub/pwg/ipp/new_SSDP/draft-cai-ssdp-v1-03.txt IETF draft Revision 3]
* [https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-ssdp/152f6e6d-3628-45b5-9c39-a5c02b0fee2c SSDP: Networked Home Entertainment Devices (NHED) Extensions]
* [http://msdn.microsoft.com/de-de/library/ms818979.aspx Simple Service Discovery Protocol (SSDP) im MSDN]


== Einzelnachweise ==
== Einzelnachweise ==

Aktuelle Version vom 18. Februar 2024, 20:59 Uhr

SSDP im TCP/IP-Protokollstapel:
Anwendung SSDP
Transport UDP
Internet IP (IPv4, IPv6)
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI

Das Simple Service Discovery Protocol (SSDP) ist ein Netzwerkprotokoll, welches zur Suche nach Universal-Plug-and-Play-Geräten in einem Netzwerk dient. Die Firma Microsoft hat SSDP mit dem Betriebssystem Microsoft Windows ME eingeführt.

SSDP wurde in einem IETF-Internet-Draft beschrieben.[1] Von IANA ist für SSDP der Port 1900 zugewiesen.[2] Als Transportprotokoll wird normalerweise UDP verwendet.

Auf der UPnP-Seite ist zu lesen:

„Sobald ein UPnP-Gerät über eine IP-Adresse verfügt, muss es seine Existenz im Netzwerk an die Kontrollpunkte melden. Dies erfolgt via UDP über die Multicast-Adresse 239.255.255.250:1900 auf der Basis des SSDP-Protokolls. Ebenso können Kontrollpunkte nach UPnP-Geräten im Netzwerk suchen. In beiden Fällen enthält die ‚discovery message‘ nur die wichtigsten Angaben über das Gerät und seine Dienste, wie zum Beispiel den Gerätenamen, Gerätetyp und eine URL zur genauen Beschreibung des Gerätes.“

UPnP Website

Ein SSDP-Paket ist ein HTTP-Request mit der Methode "NOTIFY" (oder auch "M-SEARCH"), welches über UDP verschickt wird. Der HTTP-Body ist leer, der HTTP-Header muss trotzdem mit einer Leerzeile abgeschlossen sein. Im HTTP-Header werden UPnP-spezifische Attribute gesetzt:

  • LOCATION enthält eine URL zur Beschreibung (Description).
  • NT (Notification Type) bestimmt die Eigenschaft des Geräts.
  • NTS (Notification Sub Type) hat den Wert "ssdp:alive" zum Anmelden oder "ssdp:byebye" zum Abmelden eines Geräts.
  • USN (Unique Service Name) enthält eine eindeutige ID des Geräts.

Beispiel:

NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
CACHE-CONTROL: max-age=1800
LOCATION: http://192.168.0.10:8080/description.xml
NT: urn:schemas-upnp-org:service:ConnectionManager:1
NTS: ssdp:alive
SERVER: Linux/2.6.15.2 UPnP/1.0 Mediaserver/1.0
USN: uuid:550e8400-e29b-11d4-a716-446655440000::urn:schemas-upnp-org:service:ConnectionManager:1

Multicast-Adressen

[Bearbeiten | Quelltext bearbeiten]

Die für das SSDP-Protokoll zur Verfügung stehenden Multicast-Adressen[3] sind:

IP-Version Adresse Bereich
IPv4 239.255.255.250 site-local
IPv6 ff02::c link-local
IPv6 ff05::c site-local

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. https://datatracker.ietf.org/doc/html/draft-cai-ssdp-v1-03
  2. https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=1900
  3. Devices and control points SHALL NOT send Global scoped, Organization-Local scoped, or Admin-Local scoped multicast messages. UPnP Device Architecture 2.0