Patent ID: 9137196
Filing Date: 2015-09-15
Classification: H04L

Abstract:
1. Apparatus to enable first and second peers to communicate with one another, each peer being associated with a respective Network Address Traversal (NAT) device, comprising; a set of hardware elements; a set of computer memories, each computer memory associated with each hardware element; first computer program code stored in a computer memory of the set of computer memories and being executed in a hardware element of the set of hardware elements to receive a request and, in response, to return first and second data, the data including an Internet Protocol (IP) address and port; second computer program code stored in a computer memory of the set of computer memories and being executed in a hardware element of the set of hardware elements at the first IP address and port (a) to receive from a first peer an allocation request, the allocation request including the second IP address and port, and (b) when the allocation request received from the first peer is accepted, to return IP address and port data of the respective NAT device associated with the first peer; third computer program code stored in a computer memory of the set of computer memories and being executed in a hardware element of the set of hardware elements at the second IP address and port (a) to receive from the second peer an allocation request, the allocation request including first IP address and port, and (b) when the allocation request received from the second peer is accepted, to return IP address and port data of the respective NAT device associated with the second peer; wherein the second program code is further operative (c) to receive from the first peer a connection request that includes the IP address and port data of the NAT device associated with the second peer; and wherein the third program code is further operative (c) to receive from the second peer a connection request that includes the IP address and port data of the NAT device associated with the first peer.