The present invention relates to a solution for a universal plug and play (UPnP) control point and in particular for extending an UPnP control point with a web server.
Universal Plug and Play (UPnP) is gaining popularity among vendors of consumer electronics, computing, home automation, home security, appliances, printing, photography, computer networking, and mobile products.
UPnP is developed by the UPnP Forum for the sake of creating plug and play home networks where devices can be added or removed without manual network configuration. An UPnP enabled device is able to inform others of its capabilities and learn others capabilities, allowing one device to use the functionality of other devices. In an UPnP network there are Control Points and devices of various types. Control Points can locate and control devices on the network. A number of typical devices such as media server, media renderer, Internet gateway, printer and digital security camera have been standardized by the forum. For example, a control point might be a remote control that can set up a video stream from a DVD (media server) to a display (media renderer).
Another trend in consumer electronics is to facilitate access to content stored on and devices connected to the home network available also over the Internet. This is commonly referred to as place shifting. Today there exist a number of commercially available solutions, either in the form of software running on a PC (e.g. Orb or SoonR) or special purpose appliances (Sony LocationFree or SlingBox). A regular web browser is often used to retrieve the content when accessing over the Internet, but in some cases software special to the particular vendor needs to be installed on the external device that is used to access home content. A server on the Internet is used to maintain information about users and capabilities of used external devices.
UPnP provides ease of use and installation, but the use of it is limited to within a LAN segment.
Place shifting solutions such as the abovementioned are often not general in their nature but focus on specific and the most common applications such as access to files, streaming of media or access to Microsoft Outlook®. All these place shifting solutions require interaction between a web server hosted by the particular vendor, the place shifting device in the home network and the external device. This limits the amount of control over the service an Internet Service Provider or operator can impose and, since the connection often is encrypted, makes it hard if not impossible to make any guarantees of the quality of the service.
In some of the currently available solutions special software needs to be installed on the external device.
It is the object of the present invention to remedy at least some of these drawbacks of existing solutions.
The basic principle of this invention is to combine an UPnP control point with a web server that is made available over the Internet. This combined device is subsequently referred to as the UPnP extender. Devices connected to the LAN and their associated services are learnt using the UPnP protocol and presented on the UPnP extender. In this way the usability of UPnP is extended beyond the reach of the home LAN and to external devices that are not UPnP enabled since standard protocols like HTTP are used.
An UPnP control point within the UPnP extender learns about all UPnP enabled devices either by discovering all types of devices or only the types of the devices of interest. Content or services are identified and subsequently published on a web page. This web page is made accessible from an external network, e.g. the Internet. When a user is requesting any content or services via the web page, the type of terminal used is identified and the correct media format, e.g. a low bit rate encoded video stream for a mobile phone, is requested from the UPnP control point extender to internal services and transported to the terminal.
The present invention gives a solution to how devices and content maintained within a home LAN can be accesses from outside the home. In particular the following advantages can be identified:
When combined with a home VPN concept, this solution will also provide an ISP or operator with full control over the service.
The present invention is realized in a number of different aspects in which a first is provided: a control point in a network architecture having ability for automatically detecting a connected device, comprising a extender function and a user interface offering access to services obtainable from the extender in an internal network, characterized in that the extender comprises means to acquire information on available services and/or media content in a local area network, an interface for providing a communication interface between the local area network and a public area network and means for receiving from a user selection of an available service using the user interface.
The control point may further comprise means for discovering available services and available media content, where said means are arranged to use a common plug and play communication protocol.
The control point may further comprise means for determining optimal media content format by analysing configuration of a user device connecting from the public area network and comprising means for requesting media content in the determined media format from a media content storage facility in the local area network.
The control point may even further comprise a transport server arranged to change a media format supplied from a media content storage facility to a media format suitable for transport to the public area network.
The user interface may use at least one of Hyper Text Transfer Protocol, i.e. HTTP, Hyper Text Transfer Protocol over secure socket layer, i.e. HTTPS, and File Transfer Protocol, i.e. FTP.
The control point may further comprise means for being located at the local area network or means for being located at a service provider part of a network.
The automatically detectable device may be a universal plug and play, UPnP device.
Another aspect of the present invention, a method of providing access to local services and/or data content in a local area network from a public area network is provided, comprising the steps of:
Yet another aspect of the present invention, a computer program stored in a computer readable medium in an UPnP control point, for offering available services on a home network towards an external network is provided, comprising instruction sets for:
The computer program may further comprise an instruction set for authenticating access to the user interface display.
The computer program may further comprise an instruction set for providing an optimized format of data to be sent from the home network to the external network.
Still another aspect of the present invention, a method of providing access to a universal plug and play extender service is provided, comprising the steps of:
In the following, the invention will be described in a non-limiting way and in more detail with reference to exemplary embodiments illustrated in the enclosed drawings, in which:
In
The invention may be realized as software stored in a computer readable memory unit as shown above.
The operation of the invention will now be discussed in further detail below.
First, the UPnP control point is arranged to discover all devices connected to the home network or at least the devices of the types that are deemed interesting to provide over-the-web access to. This may be done by using the standardized UPnP methods of multicasting HTTP over UDP (HTTPMU) and the Simple Service Discovery Protocol (SSDP). When a device is discovered the UPnP control point retrieves the description of the device, each device holds a description of it in an appropriate protocol, e.g. using extended markup language (XML) or some other relevant protocol capable of providing information about devices.
The UPnP control point registers the UPnP services that are available and if there are services that match the list of interesting services maintained these are published on the web server. The services and the content provided may be sorted by either what type of device provides it (e.g. security camera) or by type of content (music, movies, etc). When a terminal logs in to the UPnP extender the type of terminal is identified through matching the received browser and operating system identification included in HTTP requests with a list of devices types and corresponding browser and OS. The matching type is stored for this session and is subsequently used when content is requested. When a request for e.g. a movie to be streamed to the external device the UPnP extender request it in the format that is most suited for the particular external device. This is useful for instance in order to provide suitable format of data depending on the type of display (e.g. resolution, size, and color) used in the user device connecting from the external network, type of processing power available in the user device, type and quality of connection (e.g. high speed or low speed connection 11 between the user device 5 and the infrastructure network 4). For instance, with reference to the streaming movie example given above, the extender may provide that the movie is streamed with appropriate bandwidth requirement and with suitable codec (e.g. suitable video coding: Mpeg 1-4 or higher with different implementations of these).
The UPnP may further be equipped with an UPnP transport proxy 15 that is able to change the format of the requested file or service to a file format commonly used in order to not exclude the use of a certain services to some devices.
Access to the UPnP extender from the Internet is protected through the use of SSL (HTTPS) and authentication of users in order to secure that access to content on the LAN and/or access to transported data are not given to unauthorized people or devices. It should be understood that other protocols for securing and protecting the communication may be used.
The operation of the extender may be summarized with reference to
30. discovering for available devices and/or services in the home network;
31. identifying services;
32. registering services on a user interface;
33. identifying and authenticating a user connecting to the UPnP services; and
34. handling communication and formatting changes between internal services towards the user located on the external network.
Independently of the location of the UPnP extender; within the home premises or at a service provider location; the extender can use UPnP or any other suitable protocol towards the Internet Gateway device in order to configure it for the correct port mappings, i.e. controlling where incoming requests should be directed depending on service request by the user from an external location.
Dynamic DNS (DynDNS) may be used in any of the exemplified embodiments of the invention to simplify access to the UPnP extender. In many cases the Internet connection from the home location is done using a dynamic Internet Protocol address (DHCP connection) which means that from time to time the IP address changes of the home location, e.g. when the gateway has been disconnected physically from the connection line or on a time basis. In order to connect to the UPnP services the user need to know the IP address of the home network which may be difficult in view of a changing IP address. However, the system may be arranged to inform a central address controller of any changes in the IP address making it possible to use a single address from any external device at all times and still get access to the UPnP extender. The central address controller will act as a domain name server, DNS, for the system. There are several commercially available DynDNS services available on public networks (for instance the Internet) which may be used by the system according to the present invention. In the case when the service provider hosts the extender, an address is normally provided as a normal DNS lookup entry; however, it should not be ruled out that a DynDNS service may be used also in this case for some circumstances.
The UPnP extender is equipped with software for discovering the types of devices and services available in the LAN and to translate the findings into a web interface or similarly easily accessible user interface reachable remotely. In the user interface, the user will be able to obtain access to the different services or data content available through the UPnP services. The UPnP protocol is equipped with protocol commands to be able to acquire this type of information and to inform an UPnP controller about available services. This is in accordance with DLNA (Digital Living Network Alliance) operations.
The user connects to the UPnP extender from a public network having connection with the local area network using an address (IP address or URL) and the extender optionally authenticates the user (or user device) in order to secure the content and/or services available on the LAN. The extender has either previously determined the available services/data content or will at this connection time perform such a discovery process and presents to the user a graphical interface (e.g. in a web interface) what is available. The user can then choose what services or data content that is of interest and access this using commonly available communication protocol commands (e.g. HTTP, HTTPS, or FTP). If the user is interested in data content, for instance media content (film, music or similar), the extender acquires information about the user device as discussed above and requests the media from for instance a media server in a format suitable for transport to the user device. The extender may also comprise a transport translation function, for changing the format to a suitable format for transport.
The introduction of the UPnP extender opens new venues of business opportunities for service providers (e.g. operators of broadband network links). The service providers (SP) may provide the UPnP extender device to the end user for some kind of payment or they can provide access to an UPnP extender located outside the home of the user (e.g. at a phone connection station for a xDSL modem based link, central router/server location of the service provider, or similar locations depending on access technology). The SP may for instance provide UPnP extender services using a monthly fee, a “per access” fee (i.e. for each active connection to the extender or similar), or an information amount counting fee (e.g. per MB of transferred data or similar). This can be made using pre paid services, direct purchase via a credit card or bank account, and/or invoiced on a regular basis (time or amount basis).
It should be noted that the word “comprising” does not exclude the presence of other elements or steps than those listed and the words “a” or “an” preceding an element do not exclude the presence of a plurality of such elements. The invention can at least in part be implemented in either software or hardware. It should further be noted that any reference signs do not limit the scope of the claims, and that several “means”, “devices”, and “units” may be represented by the same item of hardware.
The above mentioned and described embodiments are only given as examples and should not be limiting to the present invention. Other solutions, uses, objectives, and functions within the scope of the invention as claimed in the below described patent claims should be apparent for the person skilled in the art.
HTTP Hyper text Transfer Protocol
HTTPS Hyper Text Transfer Protocol over Secure Socket Layer (SSL)
HTTPMU HTTP over Multicast UDP
HTTPU HTTP over UDP
UPnP Universal Plug and Play
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SE07/00419 | 4/27/2007 | WO | 00 | 10/27/2009 |