250 likes | 491 Views
Web Services Discovery and Web Services Devices Profile. Toby Nixon Co-Chair, OASIS WS-DD TC toby.nixon@microsoft.com. Networked Device Standards. … there are so many to choose from!”. “The Great Thing about Standards is…. Industry Challenges.
E N D
Web Services Discovery andWeb Services Devices Profile Toby NixonCo-Chair, OASIS WS-DD TCtoby.nixon@microsoft.com
Networked Device Standards … there are so many to choose from!” “The Great Thing about Standards is…
Industry Challenges • Non-interoperable or gateways required • And often gateways not available • Proprietary physical interfaces • Tied to single physical layers • Non-standard link protocols • Platform- or runtime-specific • Not extendable • Limited opportunity for innovation • Not scalable • Limited, if any, development tools • Security
Web Services • Interoperable machine-to-machine interaction over a network • Programmatic interfaces • Messages formatted using XML (Extensible Markup Language) • Simple Object Access Protocol (SOAP) • Web Services Description Language (WSDL)
Benefits of Web Services Work on any physical network Standard protocols: TCP/UDP/IP, HTTP, XML Not platform- or runtime-specific Scalable from smallest device to the internet Extendable by vendors and orgs Excellent development tools from many vendors, and many trained developers Secure High performance Many infrastructure components available Leverage industry investments
UPnP – 1st Generation • Rolled out in 1999 – UPnP Forum created • 10th Anniversary is this fall • Web services were in their infancy • HTTP, XML, SOAP… not much else • UPnP is based on an early snapshot • But many benefits from just these basics, so industry moved ahead with UPnP adoption • Most adoption for NAT traversal and media sharing • UPnP supported in Windows since Windows ME
UPnP Status • UPnP Forum now has over 880 members • UPnP Forum was incorporated in January, 2009 • 72 UPnP specifications were published as ISO/IEC standards in December, 2008 • UPnP Device Architecture 1.0 • DCPs: Basic Device, AVv1, AVv2, Digital Security Camera, HVAC, Lighting, Internet Gateway, Printer, Scanner, QOSv1, QOSv2, RemoteUI, Device Security • New specifications not yet submitted to ISO/IEC • Done: UDA 1.1, Low Power, AVv3 and QOSv3 • Work in Progress: Remote Access, Content Sync, Device Management, Telephony, AVv4
DPWS – 2nd Generation • UPnP 2.0 was proposed in 2002 • Full alignment with Web Services architecture • Lightweight profile of Web Services specifications appropriate for embedded device applications • Work suspended because some specs not ready, including Discovery and Eventing • Work started on Devices Profile for Web Services, WS-Discovery, and WS-Eventing • BEA, Canon, Computer Associates, IBM, Intel, Lexmark, Microsoft, Ricoh, SoftwareAG, and TIBCO worked on various components • Industry workshops and plugfests • DPWS first published in 2004
How It Works Addressing – automatic assignment Discovery – automatically find devices Description – what can the device do? Control – invoke device functions Eventing – monitor device state Presentation – use device’s web interface Security – authentication, integrity, privacy
Addressing • Address assignment not detailed in DPWS • But typical implementations all work the same way • IPv4 • Attempt DHCP address assignment • If fails, use “Auto-IP” (RFC 3927) self-assigned local address (169.254/16) • Check periodically for DHCP server • Static IP addresses also permitted • IPv6 • Obtain address from DHCP or Router • Or use self-assigned Unique Local Address (RFC 4193)
Discovery • WS-Discovery • Being standardized in OASIS WS-DD along with DPWS • Device multicasts “Hello” when joins network • Client requests address using “Resolve” • Device responds using “ResolveMatch” • Clients can search using multicast “Probe” • Devices respond using “ProbeMatch” • Device multicasts “Bye” when leaving • WS-Discovery also defines “discovery proxy” server role for managed networks, scalability
Description • Client uses WS-Transfer to Get device description information • ThisModel: e.g. manufacturer name, model number • ThisDevice: user-assigned name, serial number, firmware version • Relationship: List of device types and services available on device, and their WS-Addressing EPRs • Client can use WS-MetadataExchangeGetMetadata to download WSDLs for services • Data types, Port types, Operations, Messages • Used more at development time rather than run time
Control Actions defined in the service WSDL are invoked using SOAP over HTTP Responses returned using SOAP over HTTP
Eventing • WS-Eventing • Being standardized in W3C WS-ResourceAccess WG • Clients Subscribe to event notifications • Address to deliver events • Desired duration of subscription • Optional filter expressing events of interest • Service sends SOAP messages to client to deliver event notifications • Client can Renew subscription, or Unsubscribe • Service can send SubscriptionEnd to terminate subscription before expiration
Presentation • Enables web interface to device • PresentationURL is included in ThisModel metadata element • Client uses browser (HTTP GET) to use device’s web interface • Metadata also includes • ManufacturerURL • ModelURL
Security • Optional • Secure devices must have X.509v3 certificate • Should be unique for each device instance • Based on SSL/TLS (https://) • Establish secure channel for description, control, and eventing for authentication, integrity, and confidentiality • Device can require either X.509 certification or username/password authentication of client • Multicast WS-Discovery messages authenticated and integrity-checked using Compact XML Signatures
DPWS – Subset of WS-* Suite Non-DPWS Workshop Member Sub Submitted Standard Infrastructure and Profiles Metadata WS-Federation WS-Management Devices Profile WS-Discovery Assurances WS-Secure Conversation UDDI WS-Trust WS-Atomic Transaction WS-Metadata Exchange WS-Security WS-Reliable Messaging WS-Coordination WS-Policy Messaging WS-Transfer WS-Enumeration WS-Eventing WSDL SOAP WS-Addressing MTOM XML Schema Foundation XML Infoset SOAP / UDP XML 1.0 XML Namespaces MIME SOAP / HTTP
DPWS Standardization • OASIS WS-DD TC • Web Services Discovery and Web Services Devices Profile Technical Committee • http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ws-dd • Co-proposed by CA, Canon, Lexmark, Microsoft, Nortel, Novell, Progress Software, Red Hat, Ricoh, Schneider Electric, Software AG, and WSO2 • DPWS, WS-Discovery, and SOAP-over-UDP • Not any specific device classes • First Meeting September, 2008 in Redmond • Quarterly face-to-face meetings, weekly calls • Original Goal: Completion by 2nd quarter 2009 • OASIS Final Approval vote is June 16-30, 2009
DPWS Standardization • WS-DD Charter Clarified May 7, 2009 • TC will continue in maintenance mode until closed • Update DPWS to refer to W3C Recommendation versions of WS-Eventing, WS-Transfer, and WS-MetadataExchange; profile as necessary • Update to WS-I Basic Profile 2.0 if available • Deferred issues, spec issues, errata • Further work on Security if needed • DPWS 1.2 completion dependent on completion of work in W3C WS-ResourceAccess WG
DPWS Stacks • Microsoft • Windows Vista and Windows 7 • Printers, Scanners, Conference room projectors • Discovery of computers and users • Windows Embedded CE 6.0 R2 • Windows XP Embedded • .net Micro Framework 3.0 • Biztalk Server 2008 • RFID readers • Other stacks • Levitate, Peerless, SOA4D, gSOAP, eSOL, DotVision, DPWS4J
DPWS Implementations • Printers and Scanners • Canon, HP, Xerox, Epson, Lexmark, Brother, Konica-Minolta, Fuji-Xerox, Toshiba, Ricoh, others • Projectors • Epson, NEC, Toshiba • Several others coming • Industrial and home control • Schneider, Hager, LeGrand, Beckhoff, Vantage • Exceptional Innovation • Audio, Video, home control, hotel control • Over 1000 deployments in USA • Disney Home of Tomorrow • Thousands of devices, 50K visitors in first week
Future DPWS Applications Point of Service Energy Management Network Infrastructure Healthcare Hospitality Factory Automation Mobile devices Automotive Many more…
What About Device Schemas? • OASIS WS-DD will not define device class specifications/schemas – outside of scope • No SIG or other organization for DPWS • Nothing like UPnP Forum for DPWS • No DPWS-specific certification or logo program • Individual device classes might have them • Any organization can reference DPWS • Device schema specifications should be prepared in the most appropriate existing industry organization • OASIS would be a great home for a device class when no other organization takes ownership • Your organization can start today!
Thanks! Questions?