Microsoft UPnP Technology

Source: Internet
Author: User
Tags microsoft website
1.1 UPnP Introduction
Generic plug-and-play (UPnP) is an architecture that supports point-to-point plug-and-play for network devices in Microsoft Windows. The UPnP specification is designed to simplify the installation and management of devices and network services. UPnP uses a standard-based protocol mechanism without drivers to search and control devices and services. Generic plug-and-play devices can automatically configure network addressing, declare their presence on a network subnet, and allow the exchange of device and service descriptions. A Windows ME or later computer can be used as an UPnP control point to discover and control devices through web or application interfaces.

1.2 UPnP terminology

  • Operation-commands used to trigger a service to execute functions.
  • Control Point-retrieve the software for the "Universal plug-and-play" service and device instructions. It sends the operations to the service and receives events from the service.
  • Device-a container object for one or more services. It can be a physical device, such as a portable camera or a logical device, such as a computer that acts as a portable camera.
  • Event-a message sent from a device to a control point, which is used to make the reserved control point always know the status of the device.
  • Service-device functions that can be controlled through control points.
  • Reservation-a relationship between a control point and a service.

    1.3 five stage of UPnP

  • Found-The generic plug-and-play device uses the Simple Service Discovery Protocol (SSDP) to advertise its presence on the network to other devices and control points. The newly added Control Point uses SSDP to discover the "General plug-and-play" device on the network. Information exchanged between devices and control points is limited to some discovery messages. They provide basic information about devices and their services, and contain a description URL, which can be used to obtain other information about devices.
  • Description-By using the URL provided during the discovery process, the control point can receive information about the device's XML format, such as the manufacturer, model, and serial number. In addition, the description process can include a list of embedded devices, embedded services, and URLs used to access device functions.
  • Control-The URLs provided during the control point instructions are used to access the additional XML format information, this information describes the operations that the generic plug-and-play device service can respond to and the parameters of various operations. The Control Message adopts the XML format and uses the Simple Object Access Protocol (SOAP ).
  • Event-If a service is reserved for a control point, the Service sends an event message to the control point to announce a change in the device status. Event messages are in XML format and use the generic Event Notification structure (Gena ).
  • Display-If a generic plug-and-play device provides a display URL, you can use a browser to access interface control functions, devices, or service information, or any device-specific capabilities implemented by the manufacturer.

    1.4 how to add UPnP support in your application
    I wanted to compile a fake UPnP Device by myself. However, on the Microsoft website, WINXP has provided the COM component for UPnP development and supports UPnP control points and device development. If you are interested, refer to "Device Host API" and "control point API" under "Win32 and COM development> network communication> UPnP APIs" on msdn.
    In Linux, the open-source UPnP stack libupnp is also available, and an UPnP stack implementation is provided. At the same time, Intel SDK for UPnP Device is also relatively mature, the intel SDK for UPnP Device programming guide even provides demo programs for "writing a UPnP Device" and "writing a UPnP control point.

    After reading the UPnP architecture, it seems that UPnP is very similar to webservcie: both use the SOAP protocol to call the service on the Web server, however, in contrast, UPnP uses the multicast address 239.00000000255: 1900 use UDP multicast to automatically obtain the service list of the UPnP Device (control point can send M-search requests for retrieval, and device can also send notify messages to actively notify each control points ). another difference is that the control point under UPnP (as a client in the UPnP architecture) can pre-Customize (subscribe) messages related to the UPnP Device. When the internal status of the UPnP Device changes, it will notify the control points of interest (this is a bit like the connection point in COM ^_^ ).

  •  

    Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.