Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications
Session Overview Technology trends Challenges and requirements Solutions to date and the Universal Plug and Play Way Implementation Demo Call to action
Technology Trends Focus shifting from connectivity to services More devices/services will be networked Use your time efficiently Ubiquitous communications Anywhere, anything and intuitive, too Useful bandwidth available Home networking
Services Technologies converge, devices don’t Devices, PCs And Services Interconnect
Challenges Simplicity Robustness - “always on” Scalability- ad hoc/configured Interoperability, manageability, security Lightweight cost-effective technology Building networking applications Wide range of different devices and services...
Protocol Requirements “Automatic networking” Address assignment, naming, discovery, and service identification Scalability Work in serverless environments and leverage directory services, if available Dynamic ad hoc environments Flexibility Support device and service individuality Open standards-based Internet RFCs, public source
Solutions To Date Ad hoc (serverless, peer-to-peer) Manual IP address assignment, ARP No intuitive naming SLP, SMB, Salutation, “flood-ping” Configured (server-based) DHCP, BOOTP, RARP DNS, WINS Directory (LDAP, NDS, SLP, Salutation)
The Universal Plug And Play Way Works in both ad hoc and configured environments XML and XSL style sheets in the device define service and interaction
NIC TCP/IP stack NDIS XML Simple Service Discovery Universal Plug and Play provider WINSOCK LDAP Applications ADSI Client Components
Physical media Device functions HTTP (~20k) Simple Discovery (~4k) XML, XSL schema TCP/IP stack (~40k) TCP/IP stack (~40k) DHCPAutoNet Smart Object Components
1. DHCP broadcast (Timeout) 2. Assign AutoNet address 3. DNS name multicast 4. Announce service (Timeout - wait for requests) 5. Discover service 7. Response to discover 8. GetXMLschema 9. XML schema Universal Plug And Play In Action - Ad Hoc
1. DHCP broadcast 2. Address from DHCP server 3. Name unicast to DNS server 4. Announce service to listener 6. Directory updated by listener 5. Listener Get_HTTP XML 8. LDAP query directory 7. Device-specific negotiation Server Universal Plug And Play In Action - Configured
Packet Examples Announce HTTP packet data example ANNOUNCE * HTTP/1.1 HOST: * Location: description.xml Object-Class: printer Multicast UDP packet
Packet Examples Discover and response Discover DISCOVER (objectClass=printer) HTTP/1.1 HOST: 172.*.*.* Request-ID: 54 Response to discover HTTP/ Found Request-ID: 54 Location: Object-Class: printer
Axis Camera Example Implementation Network-attached surveillance camera Self-contained with TCP/IP and HTTP support UPnP with XML/XSL description Approx. 40 k bytes for UPnP needed
XML Schema Axis Camera Key elements Name spaces definitions Device description and functionality Support and purchasing information References to XSL style sheets for UI Refer to white paper for sample code, XML schema and XSL style sheets UpnP.doc
‘Device Browser’ Example 1Client runs Device Browser application, based on Internet Explorer 5.0 2Discover device 3Fetch description.xml from device 4Parse XML data to extract information 5Present device in view 6User selects device 7Present UI links referred by description.xml 8User selects UI 9Fetch and view the UI (style sheet)
Live Demo Showing UPnP Device discovery - ‘Device Browser’ Device interaction - XSL Style Sheets CameraPrinterCD tower PC Ethernet
Documentation Simple Service Discovery Protocol cai-ssdp-v1-00.txt cai-ssdp-v1-00.txt cai-ssdp-v1-00.txt Automatic Private IP Addressing ietf-dhc-ipv4-autoconfig-03.txt ietf-dhc-ipv4-autoconfig-03.txt ietf-dhc-ipv4-autoconfig-03.txt Multicast DNS (name resolution) manning-multicast-dns-01.txt manning-multicast-dns-01.txt manning-multicast-dns-01.txt
Documentation White paper ation/UpnP.doc ation/UpnP.doc ation/UpnP.doc Home Networking & Universal Plug and Play web sites
Call to Action UPnP is work in progress! Review your business opportunities with respect to UPnP Get to understand the principles and general requirements Study released documentation Keep an eye on More great news to come!