Personal server technology with firewall detection and penetration
First Claim
1. A method of interfacing client devices coupled to a communication server that communicates with personal servers, the method comprising:
- establishing communications between a plurality of client devices and the communication server that includes a request for a connection with a plurality of personal servers, wherein each of the personal servers are associated with one or more of the client devices;
establishing communications between each of the plurality of personal servers and the communication server;
transmitting a test message between the personal servers and the communication server to determine whether the personal servers are each protected by a firewall that is coupled to each of the personal servers to filter communications between each of the personal servers and the communications server;
transmitting a series of messages between the communication server and the personal servers using communication protocols of increasing complexity to identify the types of firewalls, if it is determined that the firewalls exist between the communication server and the personal servers;
utilizing the communication protocol corresponding to the type of each of the firewalls identified to establish a persistent communications connection between the communication server and the personal servers in an on-demand manner;
sending messages as needed from the personal servers to the communication server in order to maintain the persistent communication connection between the personal servers and the communications server;
registering network addresses for the personal servers with the communication server that allows the client devices to make an unambiguous connections to their associated personal servers.
0 Assignments
0 Petitions
Accused Products
Abstract
A first personal server within a firewall protected network initiates communications with a connection server that is coupled to a network of remote clients that can remotely access the first personal server. A series of tests using communication protocols of increasing complexity are executed until a communication protocol enabling communication between the first personal server and connection server is determined. If the address of the first personal server changes upon connection, the connection server registers the new address upon each change. If the connection between the first personal server and connection server is unintentionally broken, the first personal server re-establishes contact with the connection server and maintains the connection by transmitting periodic signals to the connection server. The connection server is capable of connecting many remote devices to their associated personals servers.
200 Citations
20 Claims
-
1. A method of interfacing client devices coupled to a communication server that communicates with personal servers, the method comprising:
-
establishing communications between a plurality of client devices and the communication server that includes a request for a connection with a plurality of personal servers, wherein each of the personal servers are associated with one or more of the client devices;
establishing communications between each of the plurality of personal servers and the communication server;
transmitting a test message between the personal servers and the communication server to determine whether the personal servers are each protected by a firewall that is coupled to each of the personal servers to filter communications between each of the personal servers and the communications server;
transmitting a series of messages between the communication server and the personal servers using communication protocols of increasing complexity to identify the types of firewalls, if it is determined that the firewalls exist between the communication server and the personal servers;
utilizing the communication protocol corresponding to the type of each of the firewalls identified to establish a persistent communications connection between the communication server and the personal servers in an on-demand manner;
sending messages as needed from the personal servers to the communication server in order to maintain the persistent communication connection between the personal servers and the communications server;
registering network addresses for the personal servers with the communication server that allows the client devices to make an unambiguous connections to their associated personal servers. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
a plurality of client devices;
a communication server coupled to a network coupling the plurality of client devices;
a plurality of personal servers including a connection module for communicating with the communication server, wherein each of the plurality of personal servers corresponds to at least one of the plurality of client devices;
a plurality of firewall protection mechanisms, wherein each firewall mechanism is coupled to at least one of the personal servers to filter communications between the communication server and each of the personal servers to prevent unwanted network access from the communication server to the personal servers;
wherein the connection module is configured to initiate transmission of a series of messages between the communication server and the personal servers using communication protocols of increasing complexity to identify the type of firewall that exists, and further configured to register an address and identifying information of the communication server with the personal servers if the firewall causes the address of the communication server to change upon each new connection with the personal servers, if there is no firewall or if the firewall allows outside connections through specific IP ports, the communication server uses registered address stored in the personal server to create direct connection on-demand for the client device. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method for interfacing a plurality of client devices through a communication server to a plurality of personal servers through network connections that each include a firewall, the method comprising the steps of:
-
determining if each of the connections between the communication server and the personal servers initiated by the communication server or by the personal server;
causing the communication server to listen for connections to the personal servers over a secure ports accessible by the communication server;
establishing connections between the communication server and each of the personal servers that allow the client devices to communicate with the personal servers associated with each of the devices over the secure ports;
registering a network address of the personal servers with the communication server, if the connection between the communication server and the personal server is initiated by the communication server; and
re-registering the network address of the personal server with the communication server if the connection established between the communication server and the personal server is broken. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification