Communicating with an entity inside a private network using an existing connection to initiate communication
First Claim
1. A computer-implemented method at a network interface device, the method comprising:
- establishing a communication link to a server device connected to a public network, the communication link established via a communication port at the network interface device, and the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device;
receiving a communication for a first device that is initiated from a second device connected to the public network, the communication routed via the public network from the second device to the network interface device bypassing the server device and received at the communication port of the network interface device, the second device having previously requested the connection identifier of the communication link from the server device, received the connection identifier that includes the communication port identifier and the public network address from the server device, and initiated the communication for the first device directed to the communication port at the network interface device according to the connection identifier; and
determining that the communication port correlates to a private address of the first device to route the communication that is received from the second device to the first device that is connected to the network interface device via a private network.
7 Assignments
0 Petitions
Accused Products
Abstract
A system is disclosed that allows an entity outside of a private network to initiate communication with another entity inside the private network. A first entity inside the private network maintains a persistent connection with a second entity outside the private network, with a port identification associated with the first entity'"'"'s persistent connection. A third entity outside the private network obtains the port identification and initiates communication with the first entity by sending a message to the first entity using the port identification. The first and third entities then exchange communications outside the persistent connection. In an alternate implementation, the third entity uses the port identification to send the first entity a request for establishing a connection. The request is forwarded to the first entity through the persistent connection. The first entity responds by establishing a connection with the third entity outside the persistent connection.
169 Citations
39 Claims
-
1. A computer-implemented method at a network interface device, the method comprising:
-
establishing a communication link to a server device connected to a public network, the communication link established via a communication port at the network interface device, and the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device; receiving a communication for a first device that is initiated from a second device connected to the public network, the communication routed via the public network from the second device to the network interface device bypassing the server device and received at the communication port of the network interface device, the second device having previously requested the connection identifier of the communication link from the server device, received the connection identifier that includes the communication port identifier and the public network address from the server device, and initiated the communication for the first device directed to the communication port at the network interface device according to the connection identifier; and determining that the communication port correlates to a private address of the first device to route the communication that is received from the second device to the first device that is connected to the network interface device via a private network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. One or more processor readable storage devices comprising processor readable code that is executable and, in response, directs a network interface device to:
-
establish a communication link to a server device connected to a public network, the communication link being established via a communication port at the network interface device, and the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device; receive a communication for the a first device that is initiated from a second device which is connected to the public network, the communication routed via the public network from the second device to the network interface device bypassing the server device and received at the communication port of the network interface device, the second device having previously requested the connection identifier of the communication link from the server device, received the connection identifier that includes the communication port identifier and the public network address from the server device, and initiated the communication for the first device directed to the communication port at the network interface device according to the connection identifier; and determine that the communication port correlates to a private address of the first device to route the communication that is received from the second device to the first device that is connected to the network interface device via a private network. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A network interface device comprising:
-
a private network interface configured to interface with a first device connected in a private network; a public network interface configured to interface with a server device connected to a public network; a communication interface configured to; establish a communication link to the server device, the communication link configured to be established via a communication port at the network interface device, and the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device; receive a communication for the first device that is initiated from a second device connected to the public network, the communication configured to be received when routed via the public network from the second device to the network interface device bypassing the server device, the second device having previously requested the connection identifier of the communication link from the server device, received the connection identifier that includes the communication port identifier and the public network address from the server device, and initiated the communication for the first device directed to the communication port at the network interface device according to the connection identifier; receive a response communication for the second device that is initiated from the first device; and forward the response communication to the second device via a separate communication link that is established via a different communication port at the network interface device, the separate communication link being identified by a new connection identifier that includes a different communication port identifier of the different communication port and the public network address corresponding to the network interface device. - View Dependent Claims (25, 26, 27, 28, 29)
-
-
30. A computer-implemented method at a server device, the method comprising:
-
establishing a communication link from a public network to a network interface device that connects the public network and the a private network via a communication port at the network interface device, the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device, and the private network connects a first device to the network interface device; receiving a request from a second device to resolve a domain name that is associated with the first device, the second device being connected via the public network to the server device; and communicating the connection identifier that includes the communication port identifier and the public network address of the network interface device to the second device that then initiates a communication to the first device directed to the communication port at the network interface device according to the connection identifier when the communication is routed via the public network from the second device to the network interface device bypassing the server device, the communication being routed to the first device through the network interface device. - View Dependent Claims (31, 32, 33)
-
-
34. One or more processor readable storage devices comprising processor readable code that is executable and, in response, directs a server device to:
-
establish a communication link from a public network to a network interface device that connects the public network and a private network via a communication port at the network interface device, the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device, and the private network connects a first device to the network interface device; receive a request from a second device to resolve a domain name that is associated with the first device, the second device being connected via the public network to the server device; and communicate the connection identifier that includes the communication port identifier and the public network address of the network interface device to the second device that then initiates a communication to the first device directed to the communication port at the network interface device according to the connection identifier when the communication is routed via the public network from the second device to the network interface device bypassing the server device, the communication being routed to the first device through the network interface device. - View Dependent Claims (35, 36)
-
-
37. A server device comprising:
-
a storage device configured to store a connection identifier that identifies a communication link to a network interface device; a communication interface configured to; establish the communication link from a public network to the network interface device that connects the public network and a private network via a communication port at the network interface device, the communication link being identified by a connection identifier that includes a communication port identifier of the communication port and a public network address corresponding to the network interface device, and the private network connects a first device to the network interface device; receive a request from a second device to resolve a domain name that is associated with the first device, the second device being connected via the public network to the server device; and communicate the connection identifier that includes the communication port identifier and the public network address of the network interface device to the second device that then initiates a communication to the first device directed to the communication port at the network interface device according to the connection identifier when the communication is routed via the public network from the second device to the network interface device bypassing the server device, the communication being routed to the first device through the network interface device. - View Dependent Claims (38, 39)
-
Specification