Traversal of symmetric network address translator for multiple simultaneous connections
First Claim
Patent Images
1. A method for peer-to-peer connection over a network between a first node behind a first symmetric network address translator (NAT) and two or more other nodes, the method comprising:
- a) receiving at the first node a provisional response to a connection request message sent to a second node, wherein the connection request message contains a list of predicted transport addresses;
b) performing a check of connectivity between the first node and the second node using the predicted transport addresses; and
c) delaying port prediction for communication between the first node and a third node until after the check of connectivity between the first node and the second node has begun.
2 Assignments
0 Petitions
Accused Products
Abstract
Handling of multiple connections during NAT traversal for a node behind a symmetric NAT is disclosed. The likelihood of connection failure during symmetric NAT traversal may be reduced by serializing critical time windows after port prediction. Once a connection request has been sent for a first connection, port prediction for a subsequent connection may be delayed until a connectivity check has begun for the first connection. This process may be repeated to handle NAT traversal for multiple simultaneous connections to different nodes.
240 Citations
16 Claims
-
1. A method for peer-to-peer connection over a network between a first node behind a first symmetric network address translator (NAT) and two or more other nodes, the method comprising:
-
a) receiving at the first node a provisional response to a connection request message sent to a second node, wherein the connection request message contains a list of predicted transport addresses; b) performing a check of connectivity between the first node and the second node using the predicted transport addresses; and c) delaying port prediction for communication between the first node and a third node until after the check of connectivity between the first node and the second node has begun. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A node, comprising:
-
a processor; a memory; a network interface; and instructions embodied in the memory and configured for execution on the processor, the instructions comprising;
a set of instructions that, when executed, cause the node to;i) receive a provisional response to a connection request message sent to a second node, wherein the connection request message contains a list of predicted transport addresses; ii) perform a check of connectivity between the node and the second node using the list of predicted transport addresses; and iii) delay port prediction for communication between the node and a third node until after the check of connectivity between the node and the second node has begun. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification