TRAVERSAL OF SYMMETRIC NETWORK ADDRESS TRANSLATOR FOR MULTIPLE SIMULTANEOUS CONNECTIONS
First Claim
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 the 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 predicted transport addresses; and
d) delaying port prediction for communication between the first node and a third node until after d) 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.
-
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 the 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 predicted transport addresses; and d) delaying port prediction for communication between the first node and a third node until after d) has begun. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. The method of claim 10 wherein d) includes delaying port prediction for communication between the first node and the third node until after a first of the one or more test packets has been sent.
-
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 the 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 predicted transport addresses; and iv) delaying port prediction for communication between the node and a third node until after iii) has begun.
- a processor;
Specification