The present invention relates generally to the field of communication networks, and, more particularly, to a proxy server or plurality of proxy servers for facilitating remote access by a subscriber to an in-home communication network.
Introductory information will here be provided. Note, however, that the apparatus, techniques, or schemes described herein as existing or possible are presented only as background for describing the present invention, and no admission is intended thereby that these were heretofore commercialized or known to others beside the inventors.
Selected abbreviations are herewith defined, at least some of which are referred to within the following description of the state-of-the-art and the present invention.
Consumer electronics have progressed a great deal in the recent past. Not only are they more capable than they were a short time ago, they are also far more prevalent. Many homes, for example, have more than one personal computer and video storage device, along with many similar devices. These devices are often connected together to form a network, and through the network are capable of communicating with other devices outside of the home. The use of email and telephone services that are available through such networks is very common, and the downloading of, for example, software applications and multimedia transmissions is becoming more frequent.
A home network benefits users in a number of ways. Even if there is no connection to others outside of the home, the home network allows a user to, for example, print from a printer that is not connected directly to the computer in use. Files such as documents, pictures, and videos may be retrieved or sent to another device within the home. Modern data storage units are capable of saving a large amount of audio or video data, and the network permits this content to be retrieved and played on any device connected to the network. Multiple users may participate in a game over the network.
Connections outside of the home are often facilitated by some type of device that serves as an interface to whatever network service is providing access. Such a device may take the form, for example, of a wireless router connecting multiple computers to the Internet, or a set-top box that receives video and television programming for display on a television or other video display device. Many if not most home networks are connected to an access network, which provides a link between a subscriber's home and a core network capable of handling large amounts of communication traffic and providing gateways for communicating through other networks as well.
When the home network is connected to an access network, communications such as email and Internet access are permitted; video and audio content may be downloaded. In addition, recent advances in technology have enlarged the amount of data that may be uploaded, or sent from the home network to others through the access network. In some cases, for example a movie or other video may be sent to another at nearly the speed at which it was downloaded, at least from the user's perception.
This may be of great advantage to the user of a mobile device. As used herein, a mobile device is one capable of accessing a mobile network using radio communications. Mobile devices are very popular because of their mobility; a user may conveniently carry the device with them and use it anywhere a mobile network may be contacted. Mobile network providers have signed up thousands of subscribers and built up networks that cover large geographic areas. In many locations, if a subscriber cannot access their own mobile network, they may use another network as a visitor. Mobile networks are often based on a cell system, where mobile devices communicate with a nearby base station and handover protocols allow them to travel from one cell (base station) to another without significant interruption of an on-going communication session.
A mobile subscriber at home may be able to access content and devices that are part of the home network, for example using a short range radio protocol such as Bluetooth. When the user is not at home, however, such access is not available, but the content may be accessible in a number of other ways. For example, content accessible via the home network may not actually be stored there, but is rather stored in a remote memory device maintained by a vendor. In other cases the content may be stored within the home network, but is copied or mirrored at a vendor's server for the purpose of providing mobile access. In either case, the user may access the content being stored by the vendor using a mobile device communicating though a mobile network.
There are disadvantages with this strategy, however. For one, storage on a vendor site may raise security concerns. In addition, the vendor may charge for the service and there is a risk that they may at some point become unavailable if their business fails. Finally, the sheer volume of content that users currently want to, and are projected to demand, may make this option less than viable in the future.
Access may also be possible directly to the home network though a mobile network using protocols such as MobileIP. In such an arrangement it is contemplated that the mobile device embodies a foreign agent (FA) that establishes a communication session with a home agent (HA) embodied on one of the devices that makes up the home network. Although this addresses some of the disadvantages associated with third party vendors, several disadvantages remain.
First, to communicate with the FA, the HA obtains an IP address. In general practice, however, this IP address will be dynamically assigned, meaning that he address is not assigned permanently but will eventually be re-assigned to another user. Of course, the HA can request another IP address, but when assigned it will almost certainly be different than the previous one. While the policy of dynamically assigning IP addresses conserves IP addresses and reduces the number ultimately required, it can disrupt routing between the FA and the HA and make it more difficult for the mobile device to register with its respective HA.
In addition, home networks frequently employ a residential gateway, with the HA being assigned a private IP address and being behind a NAT boundary. This also may help to conserve IP addresses, but may make it difficult for the FA to contact the HA and set up a secure tunnel for communications. Other problems may also arise, especially for long duration or high bandwidth transmissions between a home network devise and a mobile device. As this will generally involve at least two separate networks, capacity, encryption, or protocol differences may hinder transmission even where a connection is possible.
In the face of such difficulties, there is a need for a manner of facilitating secure access to a home network from a remote mobile station. Accordingly, there has been and still is a need to address the aforementioned shortcomings and other shortcomings associated with communications between a FA embodied in a mobile device and an HA in a home network. These needs and other needs are satisfied by the present invention.
The present invention is directed to a manner of facilitating access to a home network by a mobile device. In one aspect, the present invention is a method of providing remote access via a PS (proxy server) for a mobile device comprising an FA (foreign agent) to a home network comprising an HA (home agent), including receiving a transfer request from an SG at the PS, responding to the request from the SG, receiving a connection request from an HA, establishing a first tunnel between the PS and the HA, receiving a connection request from an FA, establishing a second tunnel between the PS and the FA, and enabling a communication session between the HA and the FA. The communication session may be establishing by setting up a direct link in the PS to route traffic between the first tunnel and the second tunnel, or by buffing the traffic before forwarding traffic received from one agent to the other. Manipulating the received data traffic prior to forwarding may include encrypting or decrypting the traffic, or both, or formatting the data traffic in accordance with a different protocol. It may also include encoding the data traffic at a different rate that the rate at which it was received.
The method may also entering the HA-FA pair into an FA-HA table at the PS so that requests from agents not listed there may be rejected or ignored, and to check to so that both agents are present before initiating the communication session. If one agent request is received but the other, a hold message may be generated for transmission to the requesting agent so that a heartbeat can be initiated to maintain the tunnel until the second agent request is received.
The method may also include generating a status message, for example when a communication session is initiated or terminated. The generated status message may be sent to an SG, or multicast to a number of SGs or other entities, to provide an indication of what resources are in use or available at the PS.
In another aspect, the present invention is a A PS including a processor, memory device accessible to the processor, and an HA-FA pair table for listing an HA-FA communication pair during a communication session. The PS may also include a status message generator configured for generating a status message for multicasting to SGs. In some embodiments, the PS also includes a data manipulator for manipulating data traffic in a communication session between an HA and an FA, a data traffic buffer for buffering data traffic prior to manipulating the data traffic by the data manipulator, and a data manipulating rules database for us in manipulating the data traffic by the data manipulator.
Additional aspects of the invention will be set forth, in part, in the detailed description, figures and any claims which follow, and in part will be derived from the detailed description, or can be learned by practice of the invention. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as disclosed.
A more complete understanding of the present invention may be obtained by reference to the following detailed description when taken in conjunction with the accompanying drawings wherein:
The present invention is directed to a manner of extending a home network to a remote mobile device, and is of particular advantage when implemented in an environment where communication with the home network is limited by a dynamic connection point to the Internet and a NAT (network address translation) boundary
The various components of a home network could be limited to communication only among themselves—within the home (or other installed location), but this is typically not the case. Communication with outside devices is often one of the reasons for which the home network was established. In the embodiment of
In the embodiment of
In accordance with the present invention, home network 100 also includes an HA (home agent) 150, which has several functions that are described in more detail in U.S. patent application Ser. No. 12/985,730, referred to above. HA 150 is typically implemented as a physical processor executing instructions stored as software in a non-transitory medium. In other embodiments, the HA may be implemented as a combination of executable software and hardware such as an ASIC. The HA may be a standalone device or incorporated in a multifunction apparatus that performs other duties as well. In some implementations it may, for example, be implemented in RG 105 or PC 110.
In accordance with this embodiment of the present invention, the HA 150 acquires a UID (unique identifier) that may be used for communications sessions involving FAs authorized to access the home network. There are several ways in which this acquisition could be made; in one embodiment the HA simply generates its own UID, for example using the serial number of the processor. In another embodiment, the HA uses a UID from the OS (operating system). In either case, the UID acquisition scheme should insure the uniqueness of the UID. The UID may also be generated by another element, for example, one could be assigned when registering with an SG (signaling gateway; see for example
In this embodiment, for example, the core network 220 is in communication with the Internet 240, providing home network 100 with Internet access. Again, there may be one or more gateway devices used at the interface, though for simplicity these components are not shown individually in
In the embodiment of
In this embodiment of the present invention, mobile device 260 includes a FA (foreign agent) 265, which may register with HA 150 in order to access home network 100. The FA is described in more detail in U.S. patent application Ser. No. 12/986,706, referred to above. In accordance with the present invention a secure communication path, or tunnel, is established between FA 265 of mobile device 260 and HA 150 of home network 100 though SG 225. The SG, however, is expected to handle only low-bandwidth communications. If the SG becomes over-loaded or determines that a particular communication session will be high bandwidth, then it will attempt to transfer the communication session to a PS in communication with the communications network. This process will be described in more detail below.
PS farms may also be utilized so that if the necessary resources are not available at the PS contacted by the SG, the request may be passed (not shown) to associated PSs in the PS farm. This may be done through communication among the PSs, or the contacted PS may just inform the SG of the address of another PS. The PS farm may also have a communication center for responding to SGs and then allocating the accepted sessions to available PSs within the PS farm.
In the embodiment of
In this embodiment, once an agent has been authenticated, a tunnel is established (step 340) for secure communication between the PS and each agent. According to the present invention, each agent establishes a separate tunnel and is therefore communicating directly with the PS. When tunnels to both the FA and the HA have been established, the PS links (step 345) the two tunnels by routing packets from one to the other. The communication session then continues until one of the agents terminates its tunnel to the PS. This, of course may happen intentionally or inadvertently. Whenever the PS detects (step 350) that one or both of the agents has interrupted their connection, then the communication session is terminated (step 355) by the PS. In this embodiment, even if the termination was inadvertent, the agents will still be required to re-establish contact with an SG before their session can resume.
In this embodiment, the PS then determines (step 430) whether a connection request has been received from the other agent of the HA-FA pair (step). If a connection request has been received from one agent of the HA-FA pair but not from the other, a hold message is generated (step 435) for transmission to the agent from whom the connection request was received. The communication session cannot begin, of course, until the other agent of the HA-FA pair has also contacted the PS.
In the embodiment of
In the embodiment of
In this embodiment, when the communication session commences, a status message is generated (step 455) for multicasting to SGs on an SG table of the PS. In this way each SG receiving the message may record that the session has started (not shown). This enables not only tracking of the communication session, but also that certain resources of the PS have been committed. If an SG tracks resource usage for PSs that are listed on its PS table, then it may select for transferring communication sessions those PSs able to handle the assignment.
In the embodiment of
In accordance with the present invention, character of the data stream and the capabilities of the respective agents may be pertinent to facilitating the communication session. For example, an HA may be operating under an IPv6 protocol, while a given mobile device having an FA may only be able to accommodate IPv4. The two agents may or may not support encryption or may use different encryption schemes, but the character of the data stream is such that encryption is desirable. For another example, a home agent may be capable of streaming data from a device on the home network at a much faster rate than the mobile network or mobile device is able to receive. Other communication session mismatches may also be discovered at steps 510 and 515.
In the embodiment of
In the embodiment of
In this embodiment, the PS then may receive (step 545) a confirmation message from the recipient agent. This is not required in all implementations, and preferably if none is received the communication session is unaffected. In this embodiment, the confirmation message includes an indication that the data stream is (or is not) being satisfactorily received. The PS in response makes any necessary corrections to the data manipulation (step 550). Although not shown in
Note that the sequences of operation presented above in reference to
Here it is also noted that, for example in the case of content streaming, more than one FA may receive the transmission from a home device. In that case the above-described methods would be modified accordingly. For example the multiple FAs would be reflected in the HA-FA pair table, and the PS would wait until tunnels to all of the FAs listed are established before initiating the communication session by linking the relevant tunnels (unless a contrary preference is implemented).
Shown separately in
Also depicted in
In the embodiment of
The components depicted in
In this manner the present invention facilitates access to a home network using an HA by a remote mobile device having an FA registered with the HA. Secure tunnels may be established between the FA and HA and a PS, usually after transfer of a communication session from an SG. The communication session may then be handled by the PS until it is terminated.
In this manner the present invention facilitates access to a home network using an HA by a remote mobile device having an FA registered with the HA. A secure tunnel may be established between the FA and a PS, and linked with a secure tunnel between the HA and the PS.
Although multiple embodiments of the present invention have been illustrated in the accompanying Drawings and described in the foregoing Detailed Description, it should be understood that the present invention is not limited to the disclosed embodiments, but is capable of numerous rearrangements, modifications and substitutions without departing from the invention as set forth and defined by the following claims.
The present disclosure is related to and claims priority from U.S. patent application Ser. No. 12/985,730 entitled Method and Apparatus for Home Network Access and filed Mar. 23, 2010, which in turn claims priority to U.S. Provisional Patent Application Ser. No. 61/316,553, entitled Extending the In-Home Layer 2 Network and filed on 23 Mar. 2010 the entire contents of which Applications are incorporated in their entirety by reference herein. The present disclosure is also related to U.S. patent application Ser. No. 12/986,706 entitled Method and Apparatus for Home Networking Access Using a Remote Mobile Device and filed Jan. 7, 2011; U.S. patent application Ser. No. 13/077,633 entitled Method and Apparatus for Home Networking Access by a Trusted Monitoring Agent and filed Mar. 31, 2011; U.S. patent application Ser. No. 13/075,920 entitled Method and Apparatus for Enhancing QoS During Home Network Remote Access and filed Mar. 30, 2011; and U.S. patent application Ser. No. 13/173,961 entitled Method and Apparatus for Facilitating Home Network Access and filed Jun. 30 2011; the entire contents of which Applications are incorporated in their entirety by reference herein.