![Page 1: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/1.jpg)
Implementing Universal Plug Implementing Universal Plug And Play In Smart Objects And Play In Smart Objects And Intelligent AppliancesAnd Intelligent Appliances
Bengt Christensson Bengt Christensson CTOCTOAxis Communications Axis Communications
![Page 2: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/2.jpg)
Session OverviewSession Overview
Technology trendsTechnology trends Challenges and requirementsChallenges and requirements Solutions to date and the Solutions to date and the
Universal Plug and Play WayUniversal Plug and Play Way ImplementationImplementation DemoDemo Call to actionCall to action
![Page 3: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/3.jpg)
Technology TrendsTechnology Trends
Focus shifting from connectivity Focus shifting from connectivity to servicesto services More devices/services will be networkedMore devices/services will be networked Use your time efficientlyUse your time efficiently
Ubiquitous communicationsUbiquitous communications Anywhere, anything and intuitive, tooAnywhere, anything and intuitive, too Useful bandwidth availableUseful bandwidth available Home networkingHome networking
![Page 4: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/4.jpg)
ServicesServices
Technologies converge, devices don’tTechnologies converge, devices don’t
Devices, PCs And Devices, PCs And Services InterconnectServices Interconnect
![Page 5: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/5.jpg)
ChallengesChallenges
SimplicitySimplicity Robustness - “always on”Robustness - “always on” Scalability- ad hoc/configuredScalability- ad hoc/configured Interoperability, manageability, securityInteroperability, manageability, security Lightweight cost-effective technologyLightweight cost-effective technology Building networking applicationsBuilding networking applications Wide range of different devices Wide range of different devices
and services...and services...
![Page 6: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/6.jpg)
Protocol RequirementsProtocol Requirements
““Automatic networking”Automatic networking” Address assignment, naming, discovery, Address assignment, naming, discovery,
and service identificationand service identification ScalabilityScalability
Work in serverless environments and Work in serverless environments and leverage directory services, if availableleverage directory services, if available
Dynamic ad hoc environmentsDynamic ad hoc environments FlexibilityFlexibility
Support device and service individualitySupport device and service individuality Open standards-basedOpen standards-based
Internet RFCs, public sourceInternet RFCs, public source
![Page 7: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/7.jpg)
Solutions To DateSolutions To Date
Ad hoc (serverless, peer-to-peer)Ad hoc (serverless, peer-to-peer) Manual IP address assignment, ARPManual IP address assignment, ARP No intuitive namingNo intuitive naming SLP, SMB, Salutation, “flood-ping”SLP, SMB, Salutation, “flood-ping”
Configured (server-based)Configured (server-based) DHCP, BOOTP, RARPDHCP, BOOTP, RARP DNS, WINSDNS, WINS Directory (LDAP, NDS, SLP, Salutation)Directory (LDAP, NDS, SLP, Salutation)
![Page 8: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/8.jpg)
The Universal Plug The Universal Plug And Play WayAnd Play Way Works in both ad hoc and Works in both ad hoc and
configured environmentsconfigured environments
Ad Hoc Configured
Address AutoNet DHCP
Naming Multicast DNS DNS
Discovery Simple Discovery Directory service
XML and XSL style sheets in the device XML and XSL style sheets in the device define service and interactiondefine service and interaction
![Page 9: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/9.jpg)
NICNIC
TCP/IP stackTCP/IP stack
NDISNDIS
XMLXMLSimple ServiceSimple ServiceDiscoveryDiscovery
Universal Universal Plug and Plug and Play Play providerprovider
WINSOCKWINSOCK
LDAPLDAP
ApplicationsApplications
ADSIADSI
Client ComponentsClient Components
![Page 10: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/10.jpg)
Physical mediaPhysical media
Device functionsDevice functions
HTTP (~20k)HTTP (~20k)SimpleSimpleDiscovery (~4k)Discovery (~4k)
XML, XSLXML, XSLschemaschema
TCP/IP stack (~40k) TCP/IP stack (~40k)
DHCPDHCPAutoNetAutoNet
Smart Object ComponentsSmart Object Components
![Page 11: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/11.jpg)
1. DHCP broadcast1. DHCP broadcast
(Timeout)(Timeout)
2. Assign AutoNet address2. Assign AutoNet address
3. DNS name multicast3. DNS name multicast
4. Announce service4. Announce service
(Timeout - wait for requests)(Timeout - wait for requests)
5. Discover service5. Discover service
7. Response to discover7. Response to discover
8. GetXMLschema8. GetXMLschema
9. XML schema9. XML schema
Universal Plug And Play In Action - Universal Plug And Play In Action - Ad HocAd Hoc
![Page 12: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/12.jpg)
1. DHCP broadcast1. DHCP broadcast
2. Address from DHCP server2. Address from DHCP server
3. Name unicast to DNS server3. Name unicast to DNS server
4. Announce service to listener4. Announce service to listener
6. Directory updated by listener6. Directory updated by listener
5. Listener Get_HTTP XML5. Listener Get_HTTP XML
8. LDAP query directory8. LDAP query directory
7. Device-specific negotiation7. Device-specific negotiation
Server
Server
Universal Plug And Play In Action - Universal Plug And Play In Action - ConfiguredConfigured
![Page 13: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/13.jpg)
Packet Examples Packet Examples AnnounceAnnounce
HTTP packet data exampleHTTP packet data exampleANNOUNCE * HTTP/1.1ANNOUNCE * HTTP/1.1
HOST: *HOST: *
Location: http://170.1.128.135/Location: http://170.1.128.135/description.xmldescription.xml
Object-Class: printerObject-Class: printer
Multicast UDP packetMulticast UDP packet
![Page 14: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/14.jpg)
Packet ExamplesPacket ExamplesDiscover and responseDiscover and response
DiscoverDiscoverDISCOVER (objectClass=printer)DISCOVER (objectClass=printer)
HTTP/1.1HTTP/1.1
HOST: 172.*.*.*HOST: 172.*.*.*
Request-ID: 54Request-ID: 54
Response to discoverResponse to discoverHTTP/1.1 302 FoundHTTP/1.1 302 Found
Request-ID: 54Request-ID: 54
Location: http://172.1.128.135/description.xmlLocation: http://172.1.128.135/description.xml
Object-Class: printerObject-Class: printer
![Page 15: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/15.jpg)
Axis Camera ExampleAxis Camera Example
ImplementationImplementation Network-attached Network-attached
surveillance camerasurveillance camera Self-contained with TCP/IP Self-contained with TCP/IP
and HTTP supportand HTTP support UPnP with XML/XSL UPnP with XML/XSL
descriptiondescription Approx. 40 k bytes for Approx. 40 k bytes for
UPnP neededUPnP needed
![Page 16: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/16.jpg)
XML Schema XML Schema Axis CameraAxis Camera
Key elementsKey elements Name spaces definitionsName spaces definitions Device description and functionalityDevice description and functionality Support and purchasing informationSupport and purchasing information References to XSL style sheets for UIReferences to XSL style sheets for UI
Refer to white paper for sample code, Refer to white paper for sample code, XML schema and XSL style sheets XML schema and XSL style sheets http://www.axis.com/products/documentation/ http://www.axis.com/products/documentation/ UpnP.docUpnP.doc
![Page 17: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/17.jpg)
‘‘Device Browser’ ExampleDevice Browser’ Example
1 Client runs Device Browser application, Client runs Device Browser application, based on Internet Explorer 5.0based on Internet Explorer 5.0
2 Discover deviceDiscover device3 Fetch description.xml from deviceFetch description.xml from device4 Parse XML data to extract informationParse XML data to extract information5 Present device in viewPresent device in view6 User selects deviceUser selects device7 Present UI links referred by description.xmlPresent UI links referred by description.xml8 User selects UIUser selects UI9 Fetch and view the UI (style sheet)Fetch and view the UI (style sheet)
![Page 18: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/18.jpg)
Live DemoLive Demo
Showing UPnPShowing UPnP Device discovery - ‘Device Browser’Device discovery - ‘Device Browser’ Device interaction - XSL Style SheetsDevice interaction - XSL Style Sheets
Camera Printer CD tower
PC
Ethernet
![Page 19: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/19.jpg)
DocumentationDocumentation
Simple Service Discovery ProtocolSimple Service Discovery Protocol httphttp
://search.ietf.org/internet-drafts/draft-cai-://search.ietf.org/internet-drafts/draft-cai-ssdp-v1-00.txtssdp-v1-00.txt
Automatic Private IP AddressingAutomatic Private IP Addressing httphttp://://wwwwww..ietfietf..orgorg//internetinternet-drafts/draft--drafts/draft-
ietfietf--dhcdhc-ipv4--ipv4-autoconfigautoconfig-03.-03.txttxt
Multicast DNS (name resolution)Multicast DNS (name resolution) httphttp://://search.search.ietfietf
.org/internet-drafts/draft-manning-multic.org/internet-drafts/draft-manning-multicast-dns-01.txtast-dns-01.txt
![Page 20: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/20.jpg)
DocumentationDocumentation
White paperWhite paper httphttp://://wwwwww
.axis.com/products/documentation/.axis.com/products/documentation/UpnPUpnP
.doc.doc
Home Networking & Universal Plug Home Networking & Universal Plug and Play web sitesand Play web sites http://www.microsoft.com/homenethttp://www.microsoft.com/homenet http://www.upnp.orghttp://www.upnp.org
![Page 21: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/21.jpg)
Call to ActionCall to Action
UPnP is work in progress!UPnP is work in progress! Review your business opportunities Review your business opportunities
with respect to UPnPwith respect to UPnP Get to understand the principles and Get to understand the principles and
general requirementsgeneral requirements Study released documentationStudy released documentation Keep an eye on Keep an eye on www.upnp.orgwww.upnp.org More great news to come!More great news to come!
![Page 22: Implementing Universal Plug And Play In Smart Objects And Intelligent Appliances Bengt Christensson CTO Axis Communications](https://reader035.vdocuments.net/reader035/viewer/2022062802/56649e9e5503460f94b9f401/html5/thumbnails/22.jpg)