摘要:
A broadcast message may be initiated or received at a peer node. The node obtains an uplink bandwidth available for broadcasting the message over the network and a number of copies that can be broadcast based on the available bandwidth. The node determines a range of key values for finger nodes that should receive copies of the broadcast message from a finger table. The finger table entries include references to finger nodes and key values associated with the finger nodes. The node determines which other nodes should receive copies of the broadcast message from range of key values and the number of copies. The node also determines an End ID for each recipient node. A copy of the broadcast message and corresponding End ID is sent to a finger node if the finger node's key value is within a range of key values specified by the End ID.
摘要:
A broadcast message may be initiated or received at a peer node. The node obtains an uplink bandwidth available for broadcasting the message over the network and a number of copies that can be broadcast based on the available bandwidth. The node determines a range of key values for finger nodes that should receive copies of the broadcast message from a finger table. The finger table entries include references to finger nodes and key values associated with the finger nodes. The node determines which other nodes should receive copies of the broadcast message from range of key values and the number of copies. The node also determines an End ID for each recipient node. A copy of the broadcast message and corresponding End ID is sent to a finger node if the finger node's key value is within a range of key values specified by the End ID.
摘要:
Prioritizing network traffic among two or more distinct channels of communication within a single application in a node configured to communicate with one or more other nodes over a network is disclosed. For a particular time quantum, a bandwidth quantum may be distributed amongst two or more communication channels according to priorities associated with those channels.
摘要:
Prioritizing network traffic among two or more distinct channels of communication within a single application in a node configured to communicate with one or more other nodes over a network is disclosed. For a particular time quantum, a bandwidth quantum may be distributed amongst two or more communication channels according to priorities associated with those channels.
摘要:
In a node configured to communicate with one or more other nodes over a network, available bandwidth for network traffic may be distributed among two or more distinct channels of communication within a single application running on the node. An available bandwidth may be detected for communication between the first node and a second node. A distribution may be determined for the available bandwidth among the two or more communication channels. A sending rate may be adjusted for data sent from the first node to the second node over one or more of the two or more communication channels in response to a detected change in the available bandwidth.
摘要:
Broadcast messages are efficiently directed to nodes of an overlay network. Broadcast messages include an End ID parameter specifying the range of key values for nodes that should receive the broadcast message. Each node of an overlay network maintains a list of finger nodes and their respective key values. Upon receiving a broadcast message, a node assigns a finger node a new End ID value based upon the End ID value of the broadcast message or the key value of an adjacent finger node. The node compares a finger node's new End ID value with the finger node's key value to determine whether to forward the broadcast message to that finger node. A broadcast message forwarded to a finger node includes an End ID parameter equal to the new End ID value determined for the finger node. Nodes can aggregate response messages from its finger nodes.
摘要:
Prioritizing network traffic among two or more distinct channels of communication within a single application in a node configured to communicate with one or more other nodes over a network is disclosed. For a particular time quantum, a bandwidth quantum may be distributed amongst two or more communication channels according to priorities associated with those channels.
摘要:
An overlay network uses flexible neighbor selection based on network address translation (NAT) to define routing between nodes. The NAT type is used as a flexible neighbor selection criteria, either alone or in conjunction with other criteria. A method of selecting a neighboring node for a first node in a distributed hash table network includes determining a desired key value for a node finger table entry and requesting a set of candidate neighboring nodes near this desired key value. The method determines a network address translation type of each of the set of candidate neighboring nodes and ranks the set of candidate neighboring nodes accordingly. The method selects one of the set of candidate neighboring nodes based on the ranking. The NAT types of candidate neighboring nodes are determined by sending probe messages or from data received from a central overlay network server.
摘要:
In a node configured to communicate with one or more other nodes over a network, available bandwidth for network traffic may be distributed among two or more distinct channels of communication within a single application running on the node. An available bandwidth may be detected for communication between the first node and a second node. A distribution may be determined for the available bandwidth among the two or more communication channels. A sending rate may be adjusted for data sent from the first node to the second node over one or more of the two or more communication channels in response to a detected change in the available bandwidth.
摘要:
An overlay network uses flexible neighbor selection based on network address translation (NAT) to define routing between nodes. The NAT type is used as a flexible neighbor selection criteria, either alone or in conjunction with other criteria. A method of selecting a neighboring node for a first node in a distributed hash table network includes determining a desired key value for a node finger table entry and requesting a set of candidate neighboring nodes near this desired key value. The method determines a network address translation type of each of the set of candidate neighboring nodes and ranks the set of candidate neighboring nodes accordingly. The method selects one of the set of candidate neighboring nodes based on the ranking. The NAT types of candidate neighboring nodes are determined by sending probe messages or from data received from a central overlay network server.