IP Library Granted Patent US 8,065,418
Granted Patent B1
US 8,065,418 · App. 10/769,841 · Granted Nov 22, 2011

NAT traversal for media conferencing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,065,418
App. No.
10/769,841
Granted
Nov 22, 2011
Kind
B1
Abstract

Methods for establishing a direct peer-to-peer (“P2P”) connection between two computers are disclosed. In particular, the methods are designed to work in cases where one or both of the computers are connected to a private network, such private networks being interconnected via a public network, such as the Internet. The connections between the private network and the public network are facilitated by network address translation (NAT).

Claims (16)

1. A method for initiating a peer-to-peer network connection from a first computer to a second computer across a public network, wherein at least one of the first and second computers is on a private network and is connected to the public network through a network address translator, the first and second computers having each established a connection to a common Relay server, the method comprising the steps of:

sending a connection request message from the first computer to the Relay server for re-transmitting to the second computer;

receiving at the first computer from the Relay server a message originating at the second computer, said message comprising one or more addresses corresponding to the second computer;

attempting to initiate a connection from the first computer directly to the second computer using one or more of the addresses received in the message; and

sending a message from the first computer to the Relay server, for re-transmitting to the second computer, requesting that the second computer initiate a connection with the first computer in response to a failure to establish a connection between the first computer and each of the addresses corresponding to the second computer.

2. The method of claim 1 wherein the one or more addresses corresponding to the second computer comprise one or more IP addresses and one or more port numbers.

3. The method of claim 2 wherein the message originating at the second computer comprising one or more addresses corresponding to the second computer further comprises a specified transformation of the one or more addresses.

4. The method of claim 3 , wherein the specified transformation comprises a binary complement transformation.

5. The method of claim 1 wherein the one or more addresses corresponding to the second computer comprise one or more IP addresses and one or more port numbers.

6. The method of claim 5 wherein the message originating at the second computer comprising one or more addresses corresponding to the second computer further comprises a predetermined transformation of the one or more addresses.

7. The method of claim 6 , wherein the specified transformation comprises a binary complement transformation.

8. A program storage device having instructions stored therein for causing a programmable control device to initiate a peer-to-peer network connection from a first computer to a second computer across a public network, wherein at least one of the first and second computers is on a private network and is connected to the public network through a network address translator, the first and second computers having each established a connection to a common Relay server, said instructions comprising instructions to:

send a connection request message from the first computer to the Relay server for re-transmitting to the second computer;

receive at the first computer from the Relay server a message originating at the second computer, said message comprising one or more addresses corresponding to the second computer;

attempt to initiate a connection from the first computer directly to the second computer using one or more of the addresses received in the message; and

means for sending a message from the first computer to the Relay server, for re-transmitting to the second computer, requesting that the second computer initiate a connection with the first computer in response to a failure to establish a connection between the first computer and each of the addresses corresponding to the second computer.

Assignments (1)
CHANGE OF NAME Recorded May 11, 2007
From: APPLE COMPUTER, INC.
To: APPLE INC.
Reel/Frame 019265/0961 →