# US 2013/0159542 A1 · Apparatus and method for establishing a peer-to-peer communication session with a host device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159542 A1
- Document ID: US20130159542A1
- Status: Published application
- Kind: A1
- Application number: 13/769,283
- Filed: 2013-02-16
- Published: 2013-06-20
- Earliest claimed: 2010-05-06
- Assignees: New Dane
- Inventors: Jonathon Weizman
- Web page: https://patentgrep.com/patent/US20130159542A1

## CPC

- H04L 45/64: using an overlay routing layer
- H04L 61/2575: using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
- H04L 63/10: {for controlling access to devices or network resources}
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 67/14: Session management (for real-time applications in data packet communications networks H04L65/1066)
- H04L 2101/622: Layer-2 addresses, e.g. medium access control [MAC] addresses
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present invention describes an apparatus and method of establishing a peer-to-peer communication session between a host device and a client device. Routing information of the host device is received from a server via a wide area network, routing information of the client device is provided to the server, and authentication information is provided to the host device via the wide area network. Peer-to-peer communication is transmitted to the client device via the wide area network if the client device is authenticated for peer-to-peer communication by the host device.

## Claims

### Claim 1

A method of establishing a peer-to-peer communication session with a host device by a client device, comprising:
detecting an external device;
receiving a first authentication information from said external device;
receiving routing information of said host device from a server coupled to a wide area network;
sending routing information of said client device to said server;
providing a second authentication information to said host device via said wide area network;
authenticating said client device; and
establishing a peer-to-peer communication session with said host device via said wide area network if authenticated to communicate with said host device;
wherein routing information of said client device comprises any one or more of:
a Transmission Control Protocol (TCP) public Internet Protocol (IP) address and port number;
a User Datagram Protocol (UDP) public IP address and port number;
a private IP address and port number; and
a Media Access Control (MAC) address of said host device.

### Claim 2 (depends on 1)

The method of claim 1, further comprising communication with said server to maintain availability of a port.

### Claim 3 (depends on 1)

The method of claim 1, wherein said second authentication information further comprises an identification code, a serial number, a username and a password, or other unique identification information stored by said host device to identify an authorization of said client device for peer-to-peer communication.

### Claim 4 (depends on 1)

The method of claim 1, further comprising receiving a request for said second authentication information from said host device via an open private port.

### Claim 5 (depends on 1)

The method of claim 1, further comprising receiving a request for said second authentication information from said host device via an open public port.

### Claim 6 (depends on 1)

The method of claim 1, wherein routing information of said host device comprises any one or more of:
a TCP public IP address and port number;
a UDP public IP address and port number;
a private IP address and port number of said client device; and
a MAC address of said host device.

### Claim 7 (depends on 1)

The method of claim 1, wherein routing information of said client device comprises any one or more of:
said TCP public IP address and port number;
said UDP public IP address and port number;
said private IP address and port number; and
said MAC address of said host device.

### Claim 8 (depends on 1)

The method of claim 1, wherein said second authentication information of said client device is sent to said TCP public IP address and port number of said host device.

### Claim 9 (depends on 1)

The method of claim 1, wherein said second authentication information of said client device is sent to said UDP public IP address and port number of said host device.

### Claim 10 (depends on 1)

The method of claim 1, wherein said second authentication information of said client device is sent to said private IP address and port number of said host device.

### Claim 11 (depends on 1)

The method of claim 1, wherein said client device records said MAC address of said host device.

### Claim 12 (depends on 2)

The method of claim 2, further comprising transmitting a STUN (Simple Traversal of UDP through Network Address Translators (NATs)) message query to said server for said UDP public IP address and port number of said client device.

### Claim 13 (depends on 12)

The method of claim 12, wherein said client device receives said UDP public IP address and port number of said client device from said server in response to said STUN message query.

### Claim 14

A client device for establishing a peer-to-peer communication session with a host device, adapted to:
receive routing information of said host device from a server coupled to a wide area network;
send routing information of said client device to said server;
provide authentication information to said host device via said wide area network; and
establish a peer-to-peer communication session with said host device via said wide area network if authenticated to communicate with said host device;
wherein routing information of said client device comprises any one or more of;
a TCP public IP address and port number;
a UDP public IP address and port number;
a private IP address and port number of said client device; and
a MAC address of said host device.

### Claim 15 (depends on 14)

The client device of claim 14, wherein said client device is further adapted to communicate with said server to maintain availability of a port.

### Claim 16 (depends on 14)

The client device of claim 14, wherein said client device is further adapted to receive a request for authentication information from said host device via an open private port.

### Claim 17 (depends on 14)

The client device of claim 14, wherein said client device is further adapted to receive a request for authentication information from said host device via an open public port.

### Claim 18 (depends on 14)

The client device of claim 14, wherein authentication information comprises an identification code, a serial number, a MAC address, a username and a password, or some other unique identification information that may be stored by said host device to identify an authorization of said client device for peer-to-peer communication.

### Claim 19 (depends on 14)

The client device of claim 14, wherein routing information of said host device comprises any one or more of:
a TCP public IP address and port number;
a UDP public IP address and port number;
a private IP address and port number of said client device; and
a MAC address of said host device.

### Claim 20 (depends on 14)

The client device of claim 14, wherein routing information of said client device comprises any one or more of:
said TCP public IP address and port number;
said UDP public IP address and port number;
said private IP address and port number of said client device; and
said MAC address of said host device.

### Claim 21 (depends on 14)

The client device of claim 14, wherein said client device is adapted to send authentication information of said client device to said TCP public IP address and port number of said host device.

### Claim 22 (depends on 14)

The client device of claim 14, wherein said client device is adapted to send authentication information of said client device to said private IP address and port number of said host device.

### Claim 23 (depends on 14)

The client device of claim 14, wherein said client device is adapted to send authentication information of said client device to said UDP public IP address and port number of said host device.

### Claim 24 (depends on 23)

The client device of claim 23, wherein said client device records said MAC address of said host device.

### Claim 25 (depends on 15)

The client device of claim 15, wherein said client device is adapted to send a STUN (Simple Traversal of UDP through Network Address Translators (NATs)) message query to said server for said UDP public IP address and port information of said client device.

### Claim 26 (depends on 25)

The client device of claim 25, wherein said client device is adapted to receive said UDP public IP address and port number of said client device from said server in response to said STUN message query.

### Claim 27

A computer-readable medium including codes executable by a processor, for:
receiving routing information of a host device from a server coupled to a wide area network;
sending routing information of a client device to said server;
providing authentication information to said host device via said wide area network; and
establishing a peer-to-peer communication session with said host device via said wide area network if authenticated to communicate with said host device.
