Systems, methods and media for distributing peer-to-peer communications
AssigneeRed 5 Studios, Inc.
InventorsMark Kern, Sean Culhane, Don Hoffman
Life of this patent
Estimating the term…
Abstract
Systems and methods for distributing peer-to-peer communications are provided herein. Exemplary methods may include masking identification of two or more client nodes on a communications channel of a peer-to-peer communications network by directing peer-to-peer communications of the two or more client nodes through a proxy node, the proxy node including a disinterested client node relative to the two or more client nodes, the disinterested client node providing network resources to the peer-to-peer communications network.
Claims14
A method for distributing peer-to-peer communications between two or more communicating client nodes in a communications channel of a peer-to-peer communications network, the method comprising:
- selecting a proxy node including a disinterested client node relative to the two or more communicating client nodes, the disinterested client node of the proxy node providing network resources to the peer-to-peer communications network, selecting a proxy node comprising:
- evaluating a list of potential proxy nodes available to the peer-to-peer communications network;
- comparing an Internet protocol (IP) address of each of the potential proxy nodes and an IP address of the two or more communicating client nodes to identify one or more disinterested proxy nodes;
- and
- selecting at least one proxy node from the one or more identified disinterested proxy nodes;
- masking identification of the two or more communicating client nodes using the selected proxy node to isolate knowledge about the IP addresses of the two or more communicating client nodes;
- directing peer-to-peer communications of the two or more communicating client nodes through the selected proxy node to mask the identification of the two or more communicating client nodes;
- establishing the communications channel for an amount of client nodes;
- determining an amount of proxy nodes required for the communications channel based upon the amount of client nodes;
- and
- selecting an additional proxy node from a quick switch list of potential proxy nodes upon determining failure of a proxy node, the additional proxy node also including a disinterested client node relative to the two or more communicating client nodes.
A system for distributing peer-to-peer communications, the system comprising:
- a peer-to-peer communications network;
- two or more client nodes;
- a memory for storing executable instructions for distributing peer-to-peer communications;
- and
- a processor configured to execute the instructions stored in the memory, the executable instructions including:
- a channel controller module configured to:
- set up and manage a communications channel of the peer-to-peer communications network;
- establish a communications channel for an amount of client nodes;
- and
- determine an amount of proxy nodes required for the communications channel based upon the amount of client nodes;
- and
- a proxy manager module configured to:
- evaluate a list of potential proxy nodes available to the peer-to-peer communications network;
- compare an Internet protocol (IP) address of each of the potential proxy nodes and an IP address of each of the two or more client nodes to identify one or more disinterested proxy nodes that includes a disinterested client node, which has never previously communicated with the two or more client nodes;
- select at least one proxy node from the one or more identified disinterested proxy nodes, the disinterested client node of the selected proxy node configured to provide network resources to the peer-to-peer communications network for communication of the two or more client nodes;
- direct peer-to-peer communications of the two or more client nodes to be communicated through the selected proxy node that includes the disinterested client node in order to isolate knowledge about the IP addresses of the two or more client nodes from each other;
- mask identification information of the two or more client nodes on the communications channel of the selected proxy node to isolate the knowledge about the IP addresses;
- and
- select an additional proxy node upon the channel controller determining failure of a proxy node, the additional proxy node also including a disinterested client node relative to the two or more client nodes.
A non-transitory computer readable storage medium having a computer program embodied thereon, the computer program executable by a processor in a computing system to perform a method for distributing peer-to-peer communications between two or more communicating client nodes in a communications channel of a peer-to-peer communications network, the method comprising:
- evaluating a list of potential proxy nodes available to the peer-to-peer communications network;
- comparing an Internet protocol (IP) address of each of the potential proxy nodes and an IP address of the two or more communicating client nodes to identify one or more disinterested proxy nodes;
- selecting at least one proxy node from the one or more identified disinterested proxy nodes;
- directing peer-to-peer communications of the two or more communicating client nodes through the selected proxy node to isolate information about the two or more communicating client nodes from each other, the selected proxy node including a disinterested client node that does not have any relationship with the two or more communicating client nodes, the disinterested client node providing network resources to the peer-to-peer communications network;
- masking identification of the two or more communicating client nodes on the communications channel of the peer-to-peer communications network by directing peer-to-peer communications of the two or more client nodes through the selected proxy node to isolate the information;
- establishing the communications channel for an amount of client nodes;
- determining an amount of proxy nodes required for the communications channel based upon the amount of client nodes;
- and
- selecting an additional proxy node upon determining failure of a proxy node, the additional proxy node also including a disinterested client node relative to the two or more communicating client nodes.
Dependencies are inferred from the claim text.