What is UPnP and DLNA?

Detailed information about Smart TV features such as Universal Plug and Play (UPNP) and Digital Living Network Alliance (DLNA)


Universal Plug and Play (UPnP) Architecture overview

The Universal Plug and Play (UPnP) concept is a plug-and-play extension that is a technology for dynamically connecting devices to each other without the need for physical device configuration or user intervention. The UPnP architecture allows device-to-device networking of electronic devices such as mobile phones, personal computers, Smart TVs (Connected TV) and other type of home network appliance. It involves a lot of standards and technologies such as:

  • Internet Protocol Suite – TCP/IP
  • Hypertext Transfer Protocol – HTTP
  • Extensible Markup Language – XML
  • Simple Object Access Protocol – SOAP

The UPnP is based on a client-server concept, where UPnP control points (clients) search for UPnP servers (devices) that provide different standard services. The UPnP specification consists mainly of six phases:

Addressing

This point is related to device IP address assignment. To be part of the network, the device must have a unique IP address assigned. This can be achieved using a lookup into Dynamic Host Configuration Protocol (DHCP) server or assign an IP address using AutoIP.

Discovery

After device addressing, the next step into UPnP networking is device discovery. The discovery protocol or the Simple Service Discovery Protocol (SSDP). The device advertise its services to the network using SSDP alive messages. A control point can actively search for devices of interest or listen passively to Discovery Service messages. The discovery messages contain essential specifics about the device or one of its services: its type, identifier, and a pointer (network location) to more detailed information.

Description

Once a control point finds a device, it must retrieve its capabilities and services. The control point requests the device description via the location URL. The UPnP Device Description is in XML (eXtensible Markup Language), which includes information like: vendor, model name, serial number, URL, etc.

The device description XML gives an important information about the device such as a list of supported services. Each UPnP service has an URL for control and events listening.

Control

 In order to interact with discovered device, the control point sends suitable messages for invoking actions on services. These control messages are in XML format using the Simple Object Access Protocol (SOAP).

Event notification

 A control point may register itself as a service to get notifications for any device state changes. This protocol is popular as General Event Notification Architecture (GENA). The service sends events notifications to all registered control points at any change of a state variable. Event messages are in XML format and contain the names of one or more status variables and their current value.

Presentation

A device may provide an adapted user interface (UI) using an Uniform Resource Location (URL). Applications use such a URL to manage the device. So a control point may connect to this URL and use it to display a specific HTML page in a web browser and depending on the capabilities of the page to allow user to view device status and control its services.

UPnP AV Architecture

The UPnP AV architecture is an audio and video extension of UPnP. It is trying to define a standard for interaction between multimedia devices. This standard extension is supported by variety of devices such as: TVs, VCRs, CD/DVD players/jukeboxes, set-top boxes, stereos systems, MP3 players, still image cameras, personal computers and so on.

Goals of Universal Plug and Play AV Architecture

The main goals of UPnP AV Architecture can be defined as following:

  • To support arbitrary transfer protocols and content formats.
  • To enable the AV content to flow directly between devices without any intervention from the control point.
  • Enable control points to remain independent of any particular transfer protocol and content format. This allows control points to transparently support new protocols and formats.
  • Scalability, i.e. support of devices with very low resources, especially memory and processing-power as well as full-featured devices.
  • Synchronized playback to multiple rendering devices.
  • Access Control, Content Protection, and Digital Rights Management 

Normally in UPnP scenario the involved devices do not not interact directly with each another. The coordination between the devices is performed by the control point and not the devices themselves. The control point coordinates and synchronize the communication between devices in order to provide synchronized end-user effect. The most of AV scenario involve exchange of media content between devices. The AV control point uses UPnP to configure and setup the involved devices, but the media data is exchanged using out of bound non UPnP connection. So the control point is not directly involved during the content transfer.

UPnP AV Components

In the UPnP AV architecture, there are three main components:

  • the control point
  • MediaServer (DMS) – the source of the media content
  • MesiaRenderer (DMR) – the sink of the content

What is DLNA?

The Digital Living Network Alliance (DLNA) is an industry wide standard for sharing media content between devices. It is founded by a group of organisations some of which consumer electronics manufacturers, which desired to create a standard enabling all DLNA devices to exchange media over a home network. Nowadays many multimedia devices such as TVs, Phones, Hi-Fi systems, MP3 players, Network Attached Storages (NAS), etc are compatible with this standard and many users can take advantage of DLNA capabilities. Users having DLNA compatible devices are able to remotely control them and watch their favorite photos, movies and also to listen favorite songs, while sitting comfortably in their sofa.

What is the relation between UPnP and DLNA

The relation between UPnP and DLNA is that the digital network alliance is delivered from Universal Plug and Play protocol in order to normalize media interoperability. The DLNA puts some additional restrictions such as media formats and adding some additional features such as Digital Rights Management (DRM).

Note that in most cases adding Digital Living Network Alliance support to existing devices is impossible. The existing electronic products either have a build-in DLNA capabilities or don’t support it at all. Of course this is not true for devices such as personal computers, smart phones and other devices like these, since they allow installation of additional software applications to extend their ability.

A video DLNA explanation:

One of the most common DLNA Devices are:

  • Digital Media Controller (DMC) – discovers Digital Media Servers (DMS) in the network and instruct digital media renderers (DMR) to play the content. Similar to UPnP AV, the content transfer is using an out-of-bound connection out of the DMC.  
  • Digital Media Server (DMS) – this is the source of media content and makes it available to networked digital media players (DMP) and digital media renderers (DMR). As examples for such devices are Personal Computers and network-attached storage (NAS).
  • Digital Media Renderer (DMR) – play content as instructed by a digital media controller (DMC). Such devices are Smart TVs, audio players, video displays, etc.

DeviceOnline Media Streamer

Our DeviceOnline application combines some of the features of Digital Media Controller  and Digital Media Server. It is a tiny app, but is easy to use and capable to stream variety media content to different kind of media renders.  Our aim is to provide fast and reliable media sharing software.

References