Sharing media among remote access clients in a universal plug and play environment
First Claim
1. A universal plug and play (UPnP) remote access server (RAS) to enable remote communications between UPnP remote access clients (RACs) connected thereto, the UPnP RAS comprising:
- a processor;
a computer readable storage medium to store instructions which, when executed by the processor, cause the processor to;
establish a first remote access transport (RAT) channel with a first remote UPnP device that initiates communication therewith;
in response to establishing the first RAT channel with the first remote UPnP device;
synchronize discovery information with the first remote UPnP device, wherein the synchronizing includes (i) receiving the discovery information from the first remote UPnP device and (ii) transmitting a local branch of discovery information to the first remote UPnP;
add the discovery information received from the first remote UPnP device to a first remote branch of discovery information;
establish a second RAT channel with a second remote UPnP device that initiates communication therewith; and
in response to establishing the second RAT channel with the second remote UPnP device;
determine whether to synchronize the discovery information for the first remote UPnP device with the second remote UPnP device based on a number of remote users allowed to access the first remote UPnP device specified by a user of the first remote UPnP device;
in response to determining that the discovery information for the first remote UPnP device is to be synchronized with the second remote UPnP device, synchronize the discovery information with the second remote UPnP device, wherein the synchronizing includes (i) receiving the discovery information from the second remote UPnP device and (ii) transmitting the first remote branch of discovery information and the local branch of discovery information to the second remote UPnP device, wherein the second remote UPnP device can discover the first remote UPnP device based on the first remote branch of discovery information provided thereto and can access the first remote UPnP device using the second RAT channel from the second remote UPnP device and the first RAT channel to the first remote UPnP device;
add the discovery information received from the second remote UPnP device to a second remote branch of discovery information; and
transmit the second branch of discovery information to the first remote UPnP device.
4 Assignments
0 Petitions
Accused Products
Abstract
In general, in one aspect, the disclosure describes a Universal Plug and Play (UPnP) Remote Access Server (RAS) to provide a communication channel between UPnP Remote Access Clients (RACs) connected thereto. The UPnP RAS maintains local discovery information for UPnP devices connected to a local network and remote discovery information for remote UPnP devices communicating therewith. The UPnP RAS provides the remote UPnP devices communicating therewith with the local discovery information and the remote discovery information. The remote discovery information is utilized by a first remote UPnP device to discover a second UPnP device and vice versa. After discovery, a first remote UPnP device can communicate with a second UPnP device and vice versa.
-
Citations
16 Claims
-
1. A universal plug and play (UPnP) remote access server (RAS) to enable remote communications between UPnP remote access clients (RACs) connected thereto, the UPnP RAS comprising:
-
a processor; a computer readable storage medium to store instructions which, when executed by the processor, cause the processor to; establish a first remote access transport (RAT) channel with a first remote UPnP device that initiates communication therewith; in response to establishing the first RAT channel with the first remote UPnP device; synchronize discovery information with the first remote UPnP device, wherein the synchronizing includes (i) receiving the discovery information from the first remote UPnP device and (ii) transmitting a local branch of discovery information to the first remote UPnP; add the discovery information received from the first remote UPnP device to a first remote branch of discovery information; establish a second RAT channel with a second remote UPnP device that initiates communication therewith; and in response to establishing the second RAT channel with the second remote UPnP device; determine whether to synchronize the discovery information for the first remote UPnP device with the second remote UPnP device based on a number of remote users allowed to access the first remote UPnP device specified by a user of the first remote UPnP device; in response to determining that the discovery information for the first remote UPnP device is to be synchronized with the second remote UPnP device, synchronize the discovery information with the second remote UPnP device, wherein the synchronizing includes (i) receiving the discovery information from the second remote UPnP device and (ii) transmitting the first remote branch of discovery information and the local branch of discovery information to the second remote UPnP device, wherein the second remote UPnP device can discover the first remote UPnP device based on the first remote branch of discovery information provided thereto and can access the first remote UPnP device using the second RAT channel from the second remote UPnP device and the first RAT channel to the first remote UPnP device; add the discovery information received from the second remote UPnP device to a second remote branch of discovery information; and transmit the second branch of discovery information to the first remote UPnP device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A universal plug and play (UPnP) remote access server (RAS) to enable remote communications between UPnP remote access clients (RACs) connected thereto, the UPnP RAS comprising:
-
a first interface to communicate with a local network and UPnP devices connected thereto; a second interface to communicate externally via the Internet; a remote access transport agent (RATA) configured to establish remote access transport (RAT) channels with remote UPnP devices that initiate communication therewith; a hardware processor on a remote access discovery agent (RADA) configured to; detect local UPnP devices connected to the local network; receive discovery information for the local UPnP devices; add the discovery information for the local UPnP devices to a local branch of discovery information; in response to connecting with a first remote UPnP device; synchronize discovery information with the first remote UPnP device to communicate therewith, wherein the synchronizing includes (i) receiving the discovery information from the first remote UPnP device and (ii) transmitting the local branch of discovery information to the first remote UPnP; add the discovery information received from the first remote UPnP device to a first remote branch of discovery information; and in response to connecting with a second remote UPnP device; receive discovery information for the second remote UPnP device to communicate therewith; add the discovery information for the second remote UPnP device to a second remote branch of discovery information; determine whether to synchronize the discovery information for the first remote UPnP device with the second remote UPnP device based on a number of remote users allowed to access the first remote UPnP device specified by a user of the first remote UPnP device; in response to determining that the discovery information for the first remote UPnP device is to be synchronized with the second remote UPnP device, synchronizing the discovery information with the second remote UPnP device, wherein the synchronizing includes transmitting the first remote branch of discovery information and the local branch of discovery information to the second remote UPnP device, wherein the second remote UPnP device can utilize the first branch of discovery information to discover the first remote UPnP device and can access the first remote UPnP device using the RAT channels between the second remote UPnP device and the UPnP RAS and the UPnP RAS and the first remote UPnP device; and transmit the second remote branch of discovery information to the first remote UPnP device, wherein the first remote UPnP device can utilize the second branch of discovery information to discover the second remote UPnP device and can access the second remote UPnP device using the RAT channels between the first remote UPnP device and the UPnP RAS and the UPnP RAS and the second remote UPnP device. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A processor implemented method performed in a universal plug and play (UPnP) remote access server (RAS) to provide a communication channel between UPnP remote access clients (RACs) connected thereto, the processor implemented method comprising the processor:
-
maintaining local discovery information for UPnP devices connected to a local network; maintaining remote discovery information for remote UPnP devices communicating therewith; and in response to connecting with each of the remote UPnP devices; determining whether to synchronize the local discovery information and the remote discovery information based on a number of remote users allowed to access the remote UPnP devices specified by a user of the remote UPnP devices; and in response to determining that the local discovery information and the remote discovery information are to be synchronized, synchronizing the discovery information with the connected remote UPnP device, wherein the synchronizing includes (i) receiving the discovery information from the connected remote UPnP device, (ii) transmitting the local discovery information and the remote discovery information for the remote UPnP devices, communicating therewith, wherein the remote discovery information is utilized by a first remote UPnP device to discover a second UPnP device; adding the discovery information received from the connected remote UPnP device to a remote branch of the remote discovery information; and transmitting the remote branch of the remote discovery information to the remote UPnP devices communicating therewith. - View Dependent Claims (16)
-
Specification