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) sending a connection request message containing a list of predicted transport addresses from the first node to a second node;
b) receiving a provisional response to the connection request message at the first node;
c) performing a check of connectivity between the first node and the second node using the list of predicted transport addresses; and
d) delaying port prediction for communication between the first node and a third node until after c) 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.
237 Citations
9 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) sending a connection request message containing a list of predicted transport addresses from the first node to a second node; b) receiving a provisional response to the connection request message at the first node; c) performing a check of connectivity between the first node and the second node using the list of predicted transport addresses; and d) delaying port prediction for communication between the first node and a third node until after c) 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) send a connection request message containing a list of predicted transport addresses from the node to a second node; ii) receiving a provisional response to the connection request message at the node; iii) performing a check of connectivity between the first node and the second node using the list of predicted transport addresses; and iv) delaying port prediction for communication between the node and a third node until after iii) has begun.
-
Specification