gena (general event notification architecture)
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
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
Protocol Stack
UPnP vendor
UPnP Forum
UPnP Device Architecture
HTTP GENA
TCP
IP
UPnP vendor
UPnP Forum
UPnP Device Architecture HTTPMU (multicast)
GENA
SSDP
HTTPMU (multicast)
UDP
IP
Discovery Event
GENA HTTP Methods
SUBSCRIBE to notification UNSUBSCRIBE NOTIFY
Of device availability (discovery) Of state variable changes
Event Sequence - SUBSCRIBE
Subscription request
SUBSCRIBE /upnp/event/tvpicture1 HTTP/1.1HOST: 155.230.14.177:5431CALLBACK: <http://155.230.14.177:5432/>NT: upnp:eventTIMEOUT: Second-1800
Root device
Service(publisher)
C.P.
(subscriber)
Subscription(uuid:…)
HTTP/1.1 200 OKDATE: Fri, 03 Jan 2003 01:04:59 GMTSERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0SID: uuid:dafba47f-3159-4b23-8a52-b463e77a4454TIMEOUT: Second-1800
Event Sequence - NOTIFYNOTIFY / HTTP/1.1HOST: 155.230.14.177:5432CONTENT-TYPE: text/xmlCONTENT-LENGTH: 214NT: upnp:eventNTS: upnp:propchangeSID: uuid:b4bec083-386b-41f4-9659-2ccfb8b75ac5SEQ: 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>
Event message
HTTP/1.1 200 OK
response
Root device
Service(publisher)
C.P.
(subscriber)
Event Sequence – Renewing Subscription
Root device
Service(publisher)
C.P.
(subscriber)
Renewal request(uuid:…)
SUBSCRIBE publisher path HTTP/1.1HOST: publisher host:publisher portSID: uuid:subscription UUIDTIMEOUT: Second-requested subscription duration
Subscription(uuid:…)
HTTP/1.1 200 OKDATE: Fri, 03 Jan 2003 01:04:59 GMTSERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0SID: uuid:dafba47f-3159-4b23-8a52-b463e77a4454TIMEOUT: Second-1800
Event Sequence - UNSUBSCRIBE
Root device
Service(publisher)
C.P.
(subscriber)
Unsubscription request
UNSUBSCRIBE /upnp/event/tvcontrol1 HTTP/1.1HOST: 155.230.14.177:5431SID: uuid:b4bec083-386b-41f4-9659-2ccfb8b75ac5
Unsubscription(uuid:…)
HTTP/1.1 200 OK
Root Device
service Device
Device Service
•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
•Two discovery messages for each embedded device.
•NT •USN *
•1•embedded device UUID
•embedded device UUID
•2•device type : device version
•embedded device UUID and :: and device type : device version
•Once for each service.
•NT •USN *
•1•service type : service version
•enclosing device UUID and :: and service type : service version
•Three discovery messages for the root device.
Advertisement device - alive
NOTIFY * HTTP/1.1HOST: 239.255.255.250:1900CACHE-CONTROL: max-age=1800LOCATION: http://155.230.14.177:5431/tvdevicedesc.xmlNT: upnp:rootdeviceNTS: ssdp:aliveSERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0USN: uuid:Upnp-TVEmulator-1_0-1234567890001::upnp:rootdevice
NOTIFY * HTTP/1.1HOST: 239.255.255.250:1900CACHE-CONTROL: max-age=1800LOCATION: http://155.230.14.177:5431/tvdevicedesc.xmlNT: uuid:Upnp-TVEmulator-1_0-1234567890001NTS: ssdp:aliveSERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0USN: uuid:Upnp-TVEmulator-1_0-1234567890001
NOTIFY * HTTP/1.1HOST: 239.255.255.250:1900CACHE-CONTROL: max-age=1800LOCATION: http://155.230.14.177:5431/tvdevicedesc.xmlNT: urn:schemas-upnp-org:device:tvdevice:1NTS: ssdp:aliveSERVER: Linux/2.4.18-3 UPnP/1.0 Intel UPnP SDK/1.0USN: uuid:Upnp-TVEmulator-1_0-1234567890001::urn:schemas-upnp-org:device:tvdevice:1