Device And PC Integration With Discovery, Plug And Play, Publication, And Network Explorer Roland Ayala, Cameron Brodeur, and Aaron Cunningham Program.

Slides:



Advertisements
Similar presentations
Optimizing Device Drivers For Terminal Servers Plug And Play Device Redirection Framework Gaurav Daga Program Manager Windows Terminal Server Microsoft.
Advertisements

TU/e Service Discovery Mechanisms: two case studies / IC2002 Service Discovery Mechanisms: Two case studies Control point Device UPnP Terminal Domain Host.
TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
Web Services for Devices Install: Printers & Scanners
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.
Media Transfer Protocol Implementation Details
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
Auxiliary Display Platform in Longhorn Andrew Fuller Lead Program Manager Mobile PC microsoft.com Microsoft Corporation.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Implementations for UPnP Technology Ylian Saint-Hilaire Senior Engineer/Architect Intel DPG intel.com Intel Corporation Jack Unverferth.
IT:Network:Applications VIRTUAL DESKTOP INFRASTRUCTURE.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
Hussain Ali Department of Computer Engineering KFUPM, Dhahran, Saudi Arabia Microsoft Networking.
3.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 3: Introducing Active Directory.
Wireless Configuration for Simple and Secure Setup Scott Manchester Lead Program Manager microsoft.com Microsoft Corporation Younus Aftab Program.
UPnP™ Technologies in Windows® John Gehlsen Group Program Manager Windows Device Experience Group Microsoft Corporation.
Windows Media DRM Device Porting Kit Review Scott Plette Program Manager Media Technology Group microsoft.com Microsoft Corporation.
Created by the Community for the Community Building a RFID solution in BTS 09.
Rob Hwacinski Sr. Program Manager Lead Microsoft Corporation WEM206 Ashwin Kulkarni Sr. Product Manager Microsoft Corporation.
SP2 Mikael Nystrom. Agenda Översikt Installation.
Connect with life Praveen Srvatsa Director | AsthraSoft Consulting Microsoft Regional Director, Bangalore Microsoft MVP, ASP.NET.
Secure Startup Hardware-Enhanced Security Peter Biddle Product Unit Manager Windows Security Microsoft Corporation Stacy Stonich Program Manager Windows.
Rally Technologies Spring 2008, Redmond, Washington Network Connected devices with Windows SideShow™ Teague Mapes, Lead Developer,
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
New Document Lifecycle Opportunities N. Gregg Brown Lead Program Manager Digital Documents microsoft.com Microsoft Corporation.
Windows Server Licensing
Working with Drivers and Printers Lesson 6. Skills Matrix Technology SkillObjective DomainObjective # Understanding Drivers and Devices Install and configure.
Vision/Benefits/Introduction Randy Armstrong (OPC Foundation)
OFC 322 Building Office Research Web Services: Exposing Corporate Data Through Office Brian Jones Program Manager Authoring Services Martin Sawicki Lead.
Hands-On Microsoft Windows Server 2008
Crystal Hoyer Program Manager IIS Team Preview of features that will be announced at MIX09 Please do not blog, take pictures or video of session.
Damian Leibaschoff Support Escalation Engineer Microsoft Becky Ochs Program Manager Microsoft.
PCIe Trusted Configuration Space
Home API A Network-Independent Home Control Architecture Maurice Bizzarri Software Director Business Line Interconnectivity Philips Semiconductors.
Windows Longhorn Logo Program “To lead tomorrow, start today” Susanne Peterson Director Windows Client Business Group microsoft.com Microsoft.
Data Management Kelly Clynes Caitlin Minteer. Agenda Globus Toolkit Basic Data Management Systems Overview of Data Management Data Movement Grid FTP Reliable.
MCTS Guide to Microsoft Windows Server 2008 Applications Infrastructure Configuration (Exam # ) Chapter Four Windows Server 2008 Remote Desktop Services,
XML Registries Source: Java TM API for XML Registries Specification.
MediaServer:1 Device Template Version 1.01 Date: June 25, 2002 For UPnP™ Version 1.0 Status: Standardized DCP File from: MediaServer1.0.pdf Author: John.
Web Services On Devices In Windows Vista Dave Roth Program Manager Windows Device Experience Group Microsoft Corporation.
Wireless Vision – Longhorn And Beyond Christian Huitema Director, Wireless Networking Windows Networking and Device Technologies.
Network Topology: Connectivity Visualized Dennis Morgan Lead Program Manager Network Experience microsoft.com Microsoft Corporation.
Web Services For Devices: The.NET Vision Realized Rob Williams Program Manager Windows Device Experience Group microsoft.com Microsoft Corporation.
Plug And Play For Network Connected Devices Cameron Brodeur and Kristina Hotz Program Managers Windows Device Experience Group Microsoft Corporation.
Device Connectivity: Vision And Evolution
Bluetooth Techniques Chapter 15. Overview of Bluetooth Initially developed by Swedish mobile phone maker in 1994 to let laptop computers make calls over.
Microsoft Virtual Server: Overview and Roadmap Mike Neil Product Unit Manager Windows Virtualization microsoft.com Microsoft Corporation.
Enhanced Storage Architecture
PCs and Devices in Windows 7: What You Need to Know Cameron Brodeur Program Manager Device Foundation Platform Adam Lenart Software.
Error Management Solutions Synergy With WHEA John Strange Software Design Engineer Core OS microsoft.com Microsoft Corporation.
Jini Architecture Introduction System Overview An Example.
Network Location Awareness Vision And Scenarios Tracey Yao Program Manager Windows Wireless Networking microsoft.com Microsoft Corporation.
Kemal Baykal Rasim Ismayilov
ITI-510 Computer Networks ITI 510 – Computer Networks Meeting 6 Rutgers University Center for Applied Computer Technologies Instructor: Chris Uriarte.
The Next Generation Designed for Windows Logo Program: An Introduction Jon Morris Program Manager Windows Logo Program microsoft.com Microsoft.
Goodbye SMI - ACPI and Graphics Driver/System Firmware Interface Paul Blinzer Staff Engineer ATI Research, Inc.
NDIS 6.0 Roadmap and Value Statement
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Web Services On Devices: Rally Implementation
Understanding Wi-Fi Direct in Windows 8
Plug And Play For Network Connected Devices
Network Connected Devices
What's New in Visual Studio 2005
An Introduction to Software Architecture
Designed for powerful live monitoring of larger installations
Introducing MagicInfo 6
Presentation transcript:

Device And PC Integration With Discovery, Plug And Play, Publication, And Network Explorer Roland Ayala, Cameron Brodeur, and Aaron Cunningham Program Managers Networking and Devices Microsoft Corporation

Session Outline This session discusses how to turn a network connected device into a PnP device Overview Function Discovery (FD) Plug and Play (PnP) Extensions for Network Connected Devices (PnP-X) Network Explorer Demo Questions

Windows Connect Now The Windows Networking and Device Connectivity Platform Effortless “It Just Works” experience for users Simple protocols, APIs and DLLs for partners and developers Secure and Reliable Built-in security to enable higher user confidence Make reliability a fundamental part of the solution Foundation for the Future Continue enabling compelling new user experiences

Windows Connect Now Programs Access to Windows Connect Now Technologies Technical Guidance Consolidated Licensing Program

Devices Class APIs (Digital Still Cameras, Portable Media Players, Printers, etc.) Windows Connect Now Technologies IP Network (IPv4, IPv6) WCN Configuration Ethernet/Wireless qWAVE WS-D, UPnP Function Discovery Applications WMC, Media Renderers, MCE MTP/IP, RDP, other Network Topology Windows Connect Now Technologies PnP-X

Device Connectivity Options Wired busses USB 1.x and 2.0 IEEE 1394 Wireless Bluetooth Wireless USB over UWB IP connected x Ethernet

Historically: Dual Approach The IP “bus” is handled differently from other buses

Problems With The Dual Approach No single end-user experience The device experience depends on the connector selected Disparate programming models Well-understood experience when plugging into this port Undefined experience when plugging into this port Fuels device adoption Lowers support costs A PnP device IP devices limited in adoption Custom solutions for integrating with Windows A non-PnP device

The Future: Single Model Unification of IP and directly connected devices Users shouldn’t have to care about the bus

Benefits NCDs are simple to discover and use Installed and managed just like local, bus-attached devices Lower support costs Broader device adoption NCDs can be enumerated and accessed using standard Windows application programming interfaces (APIs) Increased utilization Improved end-user experience NCDs benefit from existing Windows assets for device management Windows PnP and device management infrastructure Windows Update

Problems To Solve Goal: Make the NCD a PnP device Problems to solve Discovery Association Security

Discovery Before a device can be installed, it must be discovered Network protocols replace the bus-specific electrical signals used for physically connected devices Metadata exchange Enough information about the device must be retrieved for installation purposes Hardware ID Class ID Friendly Name Etc.

Association With physical connections, the cable itself establishes the association For NCDs, the following questions apply: With which PC is the device associated? Can the device be associated with more than one PC?

Security Physical connections (cables) are inherently secure This is not the case for network connections PnP-X provides a platform for: Establishing trust Can the device be trusted? Is the PC authorized to access the device? Establishing a secure channel Encrypting the data path

Enabling A Single Model Through PnP The framework for enabling a single connectivity model already exists today: It’s Windows PnP (Plug and Play) An IP bus enumerator (IPBusEnum) enumerates NCDs A PDO is created for each enumerated device PnP handles the installation of the device like any other device The enabling components are collectively called PnP-X: PnP Extensions for NCDs PnP PCIUSB1394 PCMCIA IPBusEnum Class Drivers Physical Discovery Network Discovery

PnP-X Architecture Application PnP PCIUSB1394PCMCIA IPBusEnum Physical Discovery Function Discovery WS-DiscoSSDP … WCN Configuration WCN Config WS-DiscoSSDP Application PC Device TCP/IP NCD CIClass Installers PnP-X Components

Function Discovery (FD) FD is a new feature in Longhorn for resource discovery Provides a uniform API Utilizes a provider model for extensibility purposes “In-box” providers PnP SSDP (for UPnP devices) WS-Discovery (for WSD devices) Registry Third-party providers supported Aggregates results from multiple providers Resources can be discovered based on their function as opposed to how they are connected to the PC The PnP-X IPBus Enumerator depends on FD for discovering NCDs Provides protocol independence for PnP-X

FD Architectural Overview Function Discovery API Client PnPWS-DiscoverySSDPSDPRegistry… FD Providers

Why FD? NCDs come in several different flavors… WSD UPnP Bluetooth Ultra-wide Band (UWB) coming soon Other Each with their own protocols for discovery and metadata exchange A general solution requires an abstraction layer FD provides the necessary layer of abstraction PnP-X support for a new device protocol is enabled by writing an FD provider

FD Feature Overview Discovery Clients can query for devices by category Devices of the same type can be mapped into the same category regardless of how they are discovered For example, a pair of speakers, a Bluetooth headset, and a UPnP audio renderer can all be found in the “Audio endpoint” category Supports a flexible category hierarchy Categories can be defined to suit virtually any type of resource categorization For example, all network connected devices, all wireless devices, etc., or at an even higher level, “Devices near me” Interface IDs and properties can be used to constrain the query

FD Feature Overview Notifications Clients can register for notifications on a category A notification is sent when an instance is added to or removed from the category Asynchronous queries are implemented using notifications Activation Software objects associated with the resource can be instantiated and initialized through FD Application provides the ClassID and interface desired FD handles binding the object to the resource

The Function Instance (FI) The FI is the single unit of discovery in FD Manufactured by the providers in response to a query Properties FIs have properties exposed through IPropertyStore Properties can be used to get and set (where supported) information about the device Metadata Configuration data State data PnP-X requires that NCDs define certain properties in order to be supported Defined by the PnP-X Implementers Guide Examples include HardwareID, ClassID, FriendlyName, etc.

PnP-X Drilldown Cameron Brodeur

How PnP-X Uses FD Network Explorer queries “Qualified Devices” This results in 1+ discovery providers being queried The results are cross-referenced with a query of the association database Devices in the qualified devices category but not in the association database are presented to the user as “Installable” The user can select to “associate” a device Device entry made in the association database Function Discovery API IPBusEnum Association Database Association UI Qualified Devices FD Categories Network Discovery Providers

How PnP-X Uses FD IPBusEnum queries the association database Registers for notifications For each associated device, a PDO is created IPBusEnum maintains device presence Queries the qualified devices category to monitor presence When IPBusEnum receives an FD notification about a device removal from the qualified category, the PDO for the device is removed from PnP Function Discovery API IPBusEnum Association Database Association UI Qualified Devices FD Categories Network Discovery Providers

In-box Support Inbox support is provided for the following discovery protocols in Longhorn Web Services Discovery Protocol (WS-Discovery) Part of the Web Services for Devices suite of protocols Devices must support WS-Discovery as well as the Device Profile to be installable by PnP-X Simple Services Discovery Protocol (SSDP) Used by UPnP for device discovery Devices must support SSDP as well as Device Description to be installable by PnP-X Support for additional protocols can be enabled through the installation of a FD provider Must conform to the requirements in the PnP-X Implementers Guide

Device Description/ Metadata Exchange Phase Occurs after the user selects and chooses to install the device WS Devices Device must support the Device Profile for Web Services Retrieve the Metadata for the device Extract XML elements Create a series of Hardware IDs and Compatible IDs from the XML UPnP Devices Device must support the UPnP Description Phase Retrieve the Device Description document Extract XML elements Create a series of Hardware IDs and Compatible IDs from the XML

Example Create a device-specific Hardware ID and Compatible ID New devices will be able to explicitly define the Hardware ID and Compatible ID with new XML tags Microsoft/Laser_Printer_2000/1.0.34/urn-schemas-upnp-org:device:Printer: urn:schemas-upnp-org:device:Printer:1 Microsoft Laser Printer 2000 Microsoft B&W Laser Printer Laser Printer uuid:upnp-Microsoft_LaserPrinter-00045A0F79D6... Example Hardware ID from the above XML:

DevNode Creation IPBusEnum creates a PnP DevNode for the device Information discovered about the device during the Description Phase is stored in the DevNode property store, including IP Address Hardware IDs and Compatible IDs for the device Device UUID - GUID PnP installs a driver using the “standard” process Search driver packages (INF files) looking for the best match based on hardware and compatible IDs Invoke the specified class installer and optional coinstaller to carry out the installation process

Driver Installation Manufacturer can supply a kernel-mode or user-mode driver for the device Driver can be a class driver supplied by Microsoft Sample kernel mode driver supplied – umpass.sys Supports retrieval of persisted and dynamic properties using pass- through IOCTLs in the driver For proprietary devices or devices that are tied to a single application, the install process can simply install the application or service, with no driver

Communicating With Your Device Base-level functionality for an associated network connected device simply returns the IP address of the device Communication with network connected devices will go through existing network stacks.NET Framework Windows Services for Devices Application Programming Interfaces (WSDAPI) UPnP WinSock Protocol choice left up to the vendor

Network Explorer User interface for discovering computers and network-connected devices Publishing Use Function Discovery Platform to announce computer’s presence on the network Continue to announce presence using NetBIOS Master Browser to support down-level computers and devices Discovery Retrieve list of discovered computers and network-connected devices from Function Discovery Platform NetBIOS Provider for Function Discovery to enable discovery of down-level computers

Device Presentation In Network Explorer A manufacturer will be able to customize the presentation of its device in Network Explorer through Custom actions Custom icon Register Shell verbs and icons for devices using the same implementation as exists today for file extensions Consult PnP-X Implementer’s Guide for details

Call To Action Evaluate PnP-X for your NCDs Review the PnP-X Implementers Guide For Windows Server and UPnP devices, update your device to provide the information specified by the implementers guide For other devices, write an FD provider that conforms to requirements specified by the implementers guide Provide feedback to Microsoft

Windows Hardware & Driver Central (WHDC) Technical Communities Non-Microsoft Community Sites Microsoft Public Newsgroups Technical Chats and Webcasts Microsoft Blogs Community Resources

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.