|
Using UPnP to Respond to Inquiries
by Edward F. Steinfeld
Start ý UPnP
Overview ý Functions ý Device
Addressing, Discovery, and Description ý Control,
Event Messaging, and Presentation ý UPnP
Forum ý Software Tools ý Hardware
ý Easier Deployment ý Sources
and PDF
DEVICE ADDRESSING
The addressing layer is where control
points and devices get their IP address. The addresses can come from
a DHCP server or can use Auto IP to assign an IP address. Auto IP
is a draft Internet Engineering Task Force (IETF) standard, Dynamic
Configuration of Ipv4 Link-Local Addresses. Vendors can deliver UPnP
on a variety of physical networks. The only requirement is that the
network support IP.
DEVICE DISCOVERY
Searching for devices on the network
or advertising "you are here" is the function of the discovery
layer. When a device is added to a network, it advertises its presence
by sending a multicast variant of HTTP (HTTPMU). UPnP starts with
IP (see Figure 3). UDP is used for discovery because it is multicast,
and TCP is used for description, control, and events.
|
|
| Figure 3ýSome UPnP protocol
stacks may be unfamiliar to network device implementers. To
have automatic discovery and description, new protocols such
as GENA, SSDP, and SOAP are used. |
A control point will answer using a unicast
variant of HTTP (HTTPU). A device uses HTTPMU to send a broadcast
to the network that "Iým here," and a control point uses
HTTPMU to send "Whoýs there?" Both use GENA (General Event
Notification Architecture, an extension to HTTP) and SSDP (Simple
Device Discovery Protocol). GENA and SSDP are defined by the IETF.
HTTPMU is not part of the HTTP standard; it was created for use in
UPnP.
In Photo 1, a control point (the laptop)
was added to the network. To find out what UPnP nodes exist, the control
point sends out an HTTPMU and each UPnP-enabled device responds with
an HTTPU reply.
DEVICE DESCRIPTION
After a control point discovers a device,
it can obtain a description from the device. The information sent
by the device is expressed in extensible markup language (XML). XML
is used throughout the UPnP implementation.
A description includes a device type,
URLs for control and eventing, icons, a URL for presentation, as well
as the manufacturerýs name, serial number, product code, and other
similar information. Device types are defined by the UPnP Forum. Each
device type has one or more templates to define the content and presentation
of data.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ýCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |