110 likes | 366 Views
GENA (General Event Notification Architecture). RTLAB 이 남 지 2003/01/08. Agenda. What is GENA? Protocol Stack GENA HTTP Methods Event Sequence. What is GENA?. Send and receive notifications using HTTP over TCP/IP and administratively-scoped multicast UDP Main component
E N D
GENA (General Event Notification Architecture) RTLAB 이 남 지 2003/01/08
Agenda • What is GENA? • Protocol Stack • GENA HTTP Methods • Event Sequence
What is GENA? • Send and receive notifications using HTTP over TCP/IP and administratively-scoped multicast UDP • Main component • Publisher and Subscriber
UPnP vendor HTTP GENA UPnP vendor HTTPMU (multicast) GENA SSDP UPnP Forum UPnP Forum UPnP Device Architecture UPnP Device Architecture TCP HTTPMU (multicast) IP UDP IP Protocol Stack Discovery Event
GENA HTTP Methods • SUBSCRIBE to notification • UNSUBSCRIBE • NOTIFY • Of device availability (discovery) • Of state variable changes
SUBSCRIBE /upnp/event/tvpicture1 HTTP/1.1 HOST: 155.230.14.177:5431 CALLBACK: <http://155.230.14.177:5432/> NT: upnp:event TIMEOUT: Second-1800 Root device Service (publisher) Subscription request Subscription(uuid:…) HTTP/1.1 200 OK DATE: Fri, 03 Jan 2003 01:04:59 GMT SERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0 SID: uuid:dafba47f-3159-4b23-8a52-b463e77a4454 TIMEOUT: Second-1800 Event Sequence -SUBSCRIBE C.P. (subscriber)
NOTIFY / HTTP/1.1 HOST: 155.230.14.177:5432 CONTENT-TYPE: text/xml CONTENT-LENGTH: 214 NT: upnp:event NTS: upnp:propchange SID: uuid:b4bec083-386b-41f4-9659-2ccfb8b75ac5 SEQ: 0 <e:propertyset xmlns:e="urn:schemas-upnp-org:event-1-0"> <e:property> <Power>0</Power> </e:property> <e:property> <Channel>1</Channel> </e:property> <e:property> <Volume>5</Volume> </e:property> </e:propertyset> Root device C.P. (subscriber) Service (publisher) Event message response HTTP/1.1 200 OK Event Sequence -NOTIFY
Root device SUBSCRIBEpublisher path HTTP/1.1HOST: publisher host:publisher portSID: uuid:subscription UUIDTIMEOUT: Second-requested subscription duration C.P. (subscriber) Service (publisher) Renewal request(uuid:…) Subscription(uuid:…) HTTP/1.1 200 OK DATE: Fri, 03 Jan 2003 01:04:59 GMT SERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0 SID: uuid:dafba47f-3159-4b23-8a52-b463e77a4454 TIMEOUT: Second-1800 Event Sequence –Renewing Subscription
Root device C.P. (subscriber) UNSUBSCRIBE /upnp/event/tvcontrol1 HTTP/1.1 HOST: 155.230.14.177:5431 SID: uuid:b4bec083-386b-41f4-9659-2ccfb8b75ac5 Service (publisher) Unsubscription request Unsubscription(uuid:…) HTTP/1.1 200 OK Event Sequence -UNSUBSCRIBE
NT • USN * • 1 • root device UUID • root device UUID • 2 • device type : device version • root device UUID and :: and device type : device version • 3 • upnp:rootdevice • root device UUID and :: and upnp:rootdevice Root Device • NT • USN * • 1 • embedded device UUID • embedded device UUID service Device • 2 • device type : device version • embedded device UUID and :: and device type : device version Device Service • NT • USN * • 1 • service type : service version • enclosing device UUID and :: and service type : service version • Three discovery messages for the root device. • Two discovery messages for each embedded device. • Once for each service.
Advertisement device - alive NOTIFY * HTTP/1.1 HOST: 239.255.255.250:1900 CACHE-CONTROL: max-age=1800 LOCATION: http://155.230.14.177:5431/tvdevicedesc.xml NT: upnp:rootdevice NTS: ssdp:alive SERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0 USN: uuid:Upnp-TVEmulator-1_0-1234567890001::upnp:rootdevice NOTIFY * HTTP/1.1 HOST: 239.255.255.250:1900 CACHE-CONTROL: max-age=1800 LOCATION: http://155.230.14.177:5431/tvdevicedesc.xml NT: uuid:Upnp-TVEmulator-1_0-1234567890001 NTS: ssdp:alive SERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0 USN: uuid:Upnp-TVEmulator-1_0-1234567890001 NOTIFY * HTTP/1.1 HOST: 239.255.255.250:1900 CACHE-CONTROL: max-age=1800 LOCATION: http://155.230.14.177:5431/tvdevicedesc.xml NT: urn:schemas-upnp-org:device:tvdevice:1 NTS: ssdp:alive SERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0 USN: uuid:Upnp-TVEmulator-1_0-1234567890001::urn:schemas-upnp-org:device:tvdevice:1