U.S. patent application number 11/912124 was filed with the patent office on 2008-12-18 for method and apparatus for making devices on a local network remotely-accessible.
Invention is credited to Kyung-Ju Lee, Yu-Kyoung Song.
Application Number | 20080313531 11/912124 |
Document ID | / |
Family ID | 37115348 |
Filed Date | 2008-12-18 |
United States Patent
Application |
20080313531 |
Kind Code |
A1 |
Song; Yu-Kyoung ; et
al. |
December 18, 2008 |
Method and Apparatus for Making Devices on a Local Network
Remotely-Accessible
Abstract
The present invention relates to method and apparatus for
enabling to request querying and/or controlling operations to a
device on a home network via Internet. In a method in accordance
with the present invention, a document of device list to show
devices is made out in browser-interpretable format (or in remote
UPnP-control point interpretable format) based on information
provided from a plurality of devices connected to a home network,
afterwards, a device searching message is transmitted periodically
toward the plurality of devices and the document is modified based
on responses to the message from the devices (or from a proxy on
the home network) The modified document is provided for an external
connection program, e.g., browser (or UPnP control point) to
interpret/process, as a result, changed list of devices on the home
network is displayed to a user.
Inventors: |
Song; Yu-Kyoung;
(Gyeonggi-do, KR) ; Lee; Kyung-Ju; (Kyunggi-do,
KR) |
Correspondence
Address: |
LEE, HONG, DEGERMAN, KANG & WAIMEY
660 S. FIGUEROA STREET, Suite 2300
LOS ANGELES
CA
90017
US
|
Family ID: |
37115348 |
Appl. No.: |
11/912124 |
Filed: |
April 19, 2006 |
PCT Filed: |
April 19, 2006 |
PCT NO: |
PCT/KR2006/001455 |
371 Date: |
July 9, 2008 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60673253 |
Apr 19, 2005 |
|
|
|
Current U.S.
Class: |
715/234 ;
709/206 |
Current CPC
Class: |
H04L 12/2809 20130101;
H04L 2012/285 20130101; H04L 12/2818 20130101; H04L 12/2803
20130101 |
Class at
Publication: |
715/234 ;
709/206 |
International
Class: |
G06F 17/00 20060101
G06F017/00; G06F 15/16 20060101 G06F015/16 |
Foreign Application Data
Date |
Code |
Application Number |
Jul 25, 2005 |
KR |
10-2005-0067502 |
Claims
1. A method for making a plurality of devices on a local network
accessible, comprising the steps of: (a) creating a document for a
device list based on information provided by the plurality of
devices, the document being written in a language that can be
interpreted by a browser; and (b) transmitting a device search
message to the plurality of devices periodically and modifying the
created document based on response to the message.
2. The method of claim 1, wherein the browser is a web browser or a
WAP browser.
3. The method of claim 1, wherein the step (b) writes the document
in a markup language.
4. The method of claim 1, wherein the step (b) modifies the created
document such that a device which responds to the device search
message for the first time but does not belong to the plurality of
devices is included in the device list.
5. The method of claim 1, wherein the step (b) modifies the created
document such that a device which does not respond to the
periodically transmitted device search message is removed from the
device list.
6. The method of claim 1, wherein the step (a) extracts
presentation information from a device description provided by each
of the plurality of devices and creates the document based on the
extracted presentation information.
7. The method of claim 6, wherein the presentation information
includes URL information.
8. The method of claim 1, further comprising the step of: (c)
making a request for interpreting/processing the modified document
to the browser.
9. The method of claim 1, wherein the response to the device search
message is made by all or some of the plurality of devices.
10. The method of claim 1, wherein the response to the device
search message is made by a proxy on the local network.
11. A method for making a plurality of devices on a local network
accessible, comprising the steps of: (a) creating device list
information for listing devices based on information provided by
the plurality of devices; (b) transmitting a device search message
to the plurality of devices periodically and modifying the created
device list information based on response to the device search
message from the plurality of devices; and (c) providing the device
list information in response to a device search from a remote
site.
12. The method of claim 11, wherein the device search is received
from a remote control point, which can communicate with the
plurality of devices using messages the format of which is the same
as that of messages exchanged on the local network.
13. An apparatus for accessing a plurality of devices on a local
network through a wide area network, comprising a control device
for communicating with the local network by connecting to the wide
area network, the control device including: a browser for
interpreting and processing a document written in a markup
language; and a control application for creating a document for a
device list in a format which the browser can interpret based on
information received from the plurality of devices through the wide
area network and for invoking the browser so that the browser
interprets and processes the created document, wherein the control
application transmits a device search message to the local network
periodically, modifies the created document based on response to
the device search message, and requests the browser to interpret
and process the modified document.
14. The apparatus of claim 13, wherein the browser is a web browser
or a WAP browser.
15. The apparatus of claim 13, wherein the control application
writes the document in a markup language.
16. The apparatus of claim 13, wherein the control application
modifies the created document such that a device which responds to
the device search message for the first time but does not belong to
the plurality of devices is included in the device list.
17. The apparatus of claim 13, wherein the control application
modifies the created document such that a device which does not
respond to the periodically transmitted device search message is
removed from the device list.
18. The apparatus of claim 13, wherein the control application
extracts presentation information from a device description
provided by each of the plurality of devices and creates the
document for the first time based on the extracted presentation
information.
19. The apparatus of claim 13, wherein the response to the device
search message is made by all or some of the plurality of
devices.
20. The apparatus of claim 13, wherein the response to the device
search message is made by a proxy on the local network.
21. An apparatus for making a plurality of devices on a local
network accessible through a wide area network, comprising a
gateway device for the local network for arbitrating data exchange
among the plurality of devices and assigning/maintaining network
addresses, wherein the gateway device transmits a device search
message to the plurality of devices periodically, creates or
modifies a document for a device list based on the response to the
device search message, and provides the document for a remote
device.
22. The apparatus of claim 21, wherein the gateway device creates
the document in a format which the user interface of the remote
device can interpret/process.
23. The apparatus of claim 21, wherein the gateway device extracts
presentation information from a device description provided by each
of the plurality of devices and creates the document for the first
time based on the extracted presentation information.
Description
1. TECHNICAL FIELD
[0001] The present invention relates to method and apparatus for
enabling remote query and control for a device on a home
network.
2. BACKGROUND ART
[0002] As an increasing number of electronic appliances such as
video or audio apparatuses or PCs have been used in a home and
digital techniques have become dominant in video and audio signal
processing, the need for communication between home electronic
appliances or communication with other networks is also increasing.
In addition, the demand for controlling home electronic appliances
through a single mobile apparatus such as a PDA is also
increasing.
[0003] To meet the demand, home networking technology has emerged
for connecting home electronic appliances such as digital TVs or
DVD players. The UPnP (Universal Plug and Play) is a key technology
required for implementing the home network.
[0004] FIG. 1 shows an exemplary UPnP network. According to the
UPnP specification, every home network requires an apparatus called
the IGD (Internet Gateway Device) 20, which assigns addresses to
elements or nodes 10, 11, 12 connected to the network and also acts
as a gateway to external networks, e.g., the Internet. The IGD 20
may be a stand-alone device or embedded within another apparatus
such as a PC or refrigerator.
[0005] Each UPnP network has a control point (CP) 10, which
discovers and controls devices connected to the UPnP network,
processes events, and enables remote query and control through the
provided user interface (UI). Precisely speaking, the control point
is a control application program executed on a device. However, the
device executing the control application program is also referred
to as the control point.
[0006] The control point 10 provides the UPnP discovery service at
startup, which finds electronic devices connected to the home
network by transmitting a search message to the home network and
obtains information regarding the found devices. The control point
10 then provides the obtained information for a user through a user
interface specially designed for the home network, thereby allowing
the user to request a certain service using the user interface.
[0007] The user of the home network may want to request remote
query or control for a device on the home network from outside the
home network. In this case, however, the user cannot access the
home network through the Internet simply by using the control point
10 at a remote location.
3. DISCLOSURE OF THE INVENTION
[0008] It is an object of the present invention to enable a general
web browser to make remote query and/or control for a device on a
home network.
[0009] It is another object of the present invention to provide a
method and apparatus for informing changes in a home network (e.g.,
addition or deletion of a device) through a general web
browser.
[0010] One method in accordance with the invention creates a
document for a device list based on information provided by a
plurality of devices in a language that can be interpreted by a
browser, invokes the browser to make the browser interpret/process
the created document, transmits a device search message to the
local network periodically, modifies the created document based on
the response to the message from the plurality of devices or a
proxy on the local network, and makes the modified document to be
interpreted/processed by the browser.
[0011] In another method in accordance with the invention, a
gateway device of a local network transmits a device search message
to a plurality of devices on the local network periodically,
creates or modifies a document for a device list based on the
response to the device search message, and provides the document
for an application program running on a remote device to make the
document to be processed by the application program.
[0012] In one embodiment, the browser is a web browser running on a
PC or a notebook.
[0013] In another embodiment, the browser is a WAP browser running
on a PDA or a cellular phone.
[0014] In one embodiment, the document is written in a markup
language such as html.
[0015] One embodiment of the invention extracts presentation
information (e.g., URL) from a device description provided by each
of the plurality of devices and creates the document a device list
based on the extracted presentation information.
[0016] In one embodiment, the application program is a UPnP-based
control point and the gateway device crates the document in a
format which can be processed by the user interface of the
application program.
[0017] In one embodiment, if there is a response to the device
search message from a device which does not belong to the plurality
of devices for the first time, the created document is modified
such that the device is included in the device list and the browser
or the application program is invoked so that the modified document
may be processed.
[0018] In one embodiment, the created document is modified such
that a device which does not respond to the periodically
transmitted device search message is removed from the device list
and the browser or the application program is invoked so that the
modified document may be processed.
4. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] FIG. 1 illustrates an exemplary UPnP home network;
[0020] FIG. 2 illustrates an exemplary home network in accordance
with one embodiment of the present invention;
[0021] FIGS. 3a and 3b illustrate exemplary formats of device
description and service description provided by UPnP devices;
[0022] FIG. 4a illustrates an exemplary document for listing
available devices, created based on device descriptions provided in
accordance with the present invention;
[0023] FIG. 4b illustrates an exemplary screen output according to
the document shown in FIG. 4a displayed by a browser;
[0024] FIGS. 5a and 5b illustrate exemplary screen output according
to an html document for control of a device and an html document
for a response to a particular action, displayed by the web
browser;
[0025] FIGS. 6a and 6b illustrate flow diagrams for transmitting a
device search message to the home network periodically and for
updating the document for listing devices based on the response to
the search message in accordance with one embodiment of the
invention; and
[0026] FIG. 7 illustrates a flow diagram for updating the document
for listing devices based on the response to a search message
transmitted periodically by the IGD of the home network in
accordance with another embodiment of the invention.
5. BEST MODE FOR CARRYING OUT THE INVENTION
[0027] In order that the invention may be fully understood,
preferred embodiments thereof will now be described with reference
to the accompanying drawings.
[0028] FIG. 2 shows an exemplary home network in accordance with
one embodiment of the present invention. The network enables a
remote access to a device on the network through a general web
browser.
[0029] A remote user has an Internet-accessible notebook computer
201 in which a general control application 200 in accordance with
the present invention is installed. The general control application
200 is also called the general control point. The notebook computer
201 has a public IP address for accessing the Internet. The user or
the general control application 200 knows the public IP address of
the IGD 100 of his/her home network. The IP address of the IGD 100,
which is assigned by an ISP (Internet Service Provider), may be a
dynamic IP address, in which case the user finds the dynamic IP
address thereof using an appropriate method. The method for finding
the dynamic IP address has no relevance to the present invention
and therefore the method is not described here.
[0030] The general control point 200 performs the discovery
procedure at startup by transmitting a search message, the header
of which contains the public IP address of the IGD 100. The search
message is received by the IGD 100 via the Internet and the IGD 100
notifies the home network of the search message after removing the
IP header thereof by an address conversion process.
[0031] Every device on the home network responds to the received
message to notify its existence. The IGD 100 appends a header
containing the IP address of the notebook computer 201 to each
response message, thereby allowing the response message to be
received by the general control point 200 via the Internet. In
another embodiment of the invention, the IGD 100 (or a proxy
implemented in the IGD 100) responds to the search message for the
home network devices based on the list of home network devices that
the IGD 100 or the proxy maintains. The general control point 200
registers the devices found in each of the response messages at its
own device list and requests each of the devices to provide device
description. Each device responsive to the request (or the IGD 100
as a proxy) provides device description as illustrated in FIG. 3a
and service description as illustrated in FIG. 3b for the general
control point 200.
[0032] In the case where a VPN client starts running on the
notebook computer 201, one of private IP addresses available for
devices on the home network is assigned to the notebook computer
201 by the IGD 100. As a result, the general control point 200 and
the general browser can communicate with devices on the home
network through the VPN client as if the general control point 200
were directly connected to the home network.
[0033] The general control point 200 parses the device description
received from each of the devices to extract presentation
information such as a URL (Universal Resource Locator) 301. Based
on the obtained information, the general control point 200 creates
a markup-language document for listing URLs associated with devices
(e.g., the html document as shown in FIG. 4a) and stores the
document in a file. The html document is assigned an appropriate
title (e.g., available home network devices) by the general control
point 200.
[0034] When the document is completed, the general control point
200 invokes the general web browser installed in the notebook
computer 201 with the document title as an input parameter. The web
browser interprets the document whose title is provided as the
input parameter and outputs the content thereof. FIG. 4b is the
screen output of the web document shown in FIG. 4a, displayed by
the web browser.
[0035] After the document is displayed as shown in FIG. 4b, the
devices on the home network can be monitored and/or controlled
through the web browser. If the user selects a device (e.g.,
electric light stand) from the output screen, the URL 401 in FIG.
4a is transmitted to the home network device having the URL (i.e.,
electric light stand). The electric light stand 103 then provides a
presentation page therefor (e.g., the document titled
lightUI.html), which will be displayed as shown in FIG. 5a by the
web browser. The presentation page enables the user to control the
power of the electric light stand 103. The buttons on the displayed
presentation page are linked to UPnP actions for queries or control
operations for the selected device. If the user selects an item on
the presentation page, the action associated with the selected item
is transmitted to the device and therefore the selected action for
query or control is executed.
[0036] If the user selects the button having `yes` thereon in FIG.
5a, the UPnP action for turning on the electric light stand 103 is
transmitted to the electric light stand 103. The electric light
stand 103 then turns on its power and transmits an html document
for indicating the result of the action back to the browser,
thereby allowing the user to get informed of the result of the
action through the web browser output as shown in FIG. 5b. The
control action for the electric light stand 103 is a mere example
of applying the principle of the present invention and thus more
sophisticated queries or control operations for other devices can
be performed through the web browser in the same manner.
[0037] Even after the web browser is invoked, the general control
point 200 transmits the search message at regular intervals to keep
informed of changes in the home network (e.g., the case where a new
device joins the home network or a registered device is removed
from the home network). To this end, the general control point 200
sets a timer to a predetermined value (S601) as shown in FIG. 6a.
If the timer expires (S602), the general control point 200
retransmits the search message to the home network (S603) and the
abovementioned procedure is repeated. Devices on the home network
responds to the search message to notify its existence as mentioned
before. In another embodiment of the invention, the IGD 100 (or a
proxy implemented in the IGD 100) responds to the search message
for the home network devices based on the list of home network
devices that the IGD 100 or the proxy maintains. In this case, the
IGD 100 or proxy implemented in the IGD 100 transmits a search
message to the home network periodically and keeps its own device
list up to date by updating the device list based on the responses
to the search message.
[0038] FIG. 6b is a flow diagram showing how the general control
point 200 processes response messages. If a response message is
received (S611), the general control point 200 examines whether the
address of the sender thereof is found in the device list which it
maintains. If the address is not found in the device list (S612),
the message was sent by a device newly connected to the home
network. If so, the general control point 200 updates its device
list so that the new device can be included therein. And the
general control point 200 requests the new device to provide its
device description, receives the requested device description,
obtains the URL of the presentation page for the new device, and
updates the document for listing devices connected to the home
network as shown in FIG. 4a based on the obtained information.
[0039] If a device registered in its device list does not respond
to the search message or a previously registered device is not
found in the list of devices provided by the IGD 100, the general
control point 200 determines that the device is removed from the
home network and removes the presentation URL for the device from
the document for listing devices. However, the general control
point 200 does not remove the presentation URL immediately after a
device does not respond to the search message. Instead, the general
control point 200 removes the presentation URL for the device if
the device does not respond to the search message more than N times
successively (e.g., 3 times in a row).
[0040] If the document listing devices is modified, the general
control point 200 re-invokes the web browser with the title of the
document as an input parameter (S613). Before re-invoking the web
browser, the general control point 200 may terminate the previously
invoked web browser using the process ID returned when the web
browser was invoked.
[0041] Alternatively, the general control point 200 may provide the
modified document for the previously invoked web browser so that
the web browser can display the content of the updated document in
the current browser screen without re-invoking the web browser.
[0042] The user may request remote query or control for a device on
the home network through a mobile phone 202 or PDA. When making the
document for listing devices on the network based on the device
descriptions received in the aforementioned manner, the general
control point executed in a mobile apparatus according to the
present invention makes the document appropriate for wireless
browsers (e.g., WAP document).
[0043] In another embodiment of the present invention, a remote
device 201, which is equipped with the function of a UPnP control
point, connects to the home network through a VPN client and acts
exactly as a local control point on the home network. The remote
device 201 may discover or control devices on the home network
through UPnP actions and the user of the remote device 201 can
utilize the same user interface as that of the local control point.
In this embodiment, the procedures shown in FIGS. 6a and 6b may be
executed by the IGD 100 or the proxy implemented in the IGD 100. In
other words, the IGD 100 or the proxy transmits the search message
to the home network periodically and updates the document for
listing devices as shown in FIG. 7 when there is a change in the
list of devices on the home network (S713).
[0044] The updated document for listing devices is certified by the
IGD 100 through the UPnP control point and provided for the UPnP
control point so that the content thereof is displayed by the user
interface. If a device search message is received from the remote
UPnP control point, the message is not transmitted to the devices
on the home network. Instead, the IGD 100 or the proxy implemented
in the IGD 100 responds to the search message based on its own
device list or provides the device list information.
[0045] The document for listing devices is initially created based
on the response messages and device description information
received from devices on the home network in such a way that the
document can be interpreted/processed by the user interface of the
UPnP control point.
[0046] The present invention allows a user of a home network to get
informed of changes in the home network through an external
wide-area network and enables remote query or control for the
devices on the home network in consideration for the changes,
thereby significantly improving the convenience of the home
network.
[0047] While the invention has been disclosed with respect to a
limited number of embodiments, those skilled in the art, having the
benefit of this disclosure, will appreciate numerous modifications
and variations therefrom. It is intended that all such
modifications and variations fall within the spirit and scope of
the invention.
* * * * *