System and method for traversing a NAT device for peer-to-peer hybrid communications
First Claim
Patent Images
1. A method for enabling a peer-to-peer first endpoint to communicate with a peer-to-peer second endpoint and a peer-to-peer third endpoint, wherein the first endpoint is associated with a first network address translation (NAT) device, the second endpoint is associated with a second NAT device, and the third endpoint is associated with a third NAT device, the method comprising:
- performing, by the first endpoint, a login process with an access server, wherein the login process sends to the access server an Internet Protocol (IP) address of the first NAT device, an external port number of the first NAT device, and a NAT type of the first NAT device;
receiving, by the first endpoint, a profile directly from the access server in response to the login process, wherein the profile includes;
a status of the second endpoint, an IP address of the second NAT device, an external port number of the second NAT device, and a NAT type of the second NAT device, wherein the NAT type of the second endpoint indicates that the second endpoint can only be contacted by the first endpoint via a stateless reflector; and
a status of the third endpoint, an IP address of the third NAT device, an external port number of the third NAT device, and a NAT type of the third NAT device;
sending, by the first endpoint, a first notification message via the stateless reflector to the second endpoint, wherein the first notification message informs the second endpoint that the first endpoint is online;
sending, by the first endpoint, a second notification message directly to the third endpoint, wherein the second notification message informs the third endpoint that the first endpoint is online;
receiving, by the first endpoint, a status message from the second endpoint that the second endpoint is going offline; and
updating, by the first endpoint, the profile on the first endpoint to indicate that the second endpoint is offline.
1 Assignment
0 Petitions
Accused Products
Abstract
An improved system and method are disclosed for peer-to-peer communications. In one example, the method enables an endpoint to traverse a NAT device using a stateless reflector.
95 Citations
26 Claims
-
1. A method for enabling a peer-to-peer first endpoint to communicate with a peer-to-peer second endpoint and a peer-to-peer third endpoint, wherein the first endpoint is associated with a first network address translation (NAT) device, the second endpoint is associated with a second NAT device, and the third endpoint is associated with a third NAT device, the method comprising:
-
performing, by the first endpoint, a login process with an access server, wherein the login process sends to the access server an Internet Protocol (IP) address of the first NAT device, an external port number of the first NAT device, and a NAT type of the first NAT device; receiving, by the first endpoint, a profile directly from the access server in response to the login process, wherein the profile includes; a status of the second endpoint, an IP address of the second NAT device, an external port number of the second NAT device, and a NAT type of the second NAT device, wherein the NAT type of the second endpoint indicates that the second endpoint can only be contacted by the first endpoint via a stateless reflector; and a status of the third endpoint, an IP address of the third NAT device, an external port number of the third NAT device, and a NAT type of the third NAT device; sending, by the first endpoint, a first notification message via the stateless reflector to the second endpoint, wherein the first notification message informs the second endpoint that the first endpoint is online; sending, by the first endpoint, a second notification message directly to the third endpoint, wherein the second notification message informs the third endpoint that the first endpoint is online; receiving, by the first endpoint, a status message from the second endpoint that the second endpoint is going offline; and updating, by the first endpoint, the profile on the first endpoint to indicate that the second endpoint is offline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for enabling a peer-to-peer first endpoint to communicate with a peer-to-peer second endpoint and a peer-to-peer third endpoint, wherein the first endpoint is associated with a first network address translation (NAT) device, the second endpoint is associated with a second NAT device, and the third endpoint is associated with a third NAT device, the method comprising:
-
performing, by the first endpoint, a login process with an access server, wherein the login process sends to the access server an Internet Protocol (IP) address of the first NAT device, an external port number of the first NAT device, and a NAT type of the first NAT device; receiving, by the first endpoint, a profile directly from the access server in response to the login process, wherein the profile includes; a status of the second endpoint, an IP address of the second NAT device, an external port number of the second NAT device, and a NAT type of the second NAT device, wherein the NAT type of the second endpoint indicates that the second endpoint can only be contacted by the first endpoint via a stateless reflector; and a status of the third endpoint, an IP address of the third NAT device, an external port number of the third NAT device, and a NAT type of the third NAT device; sending, by the first endpoint, a first notification message via the stateless reflector to the second endpoint, wherein the first notification message informs the second endpoint that the first endpoint is online; sending, by the first endpoint, a second notification message directly to the third endpoint, wherein the second notification message informs the third endpoint that the first endpoint is online; sending, by the first endpoint to the second endpoint via the stateless reflector, a third notification message that the first endpoint is going offline; sending, by the first endpoint directly to the third endpoint, a fourth notification message that the first endpoint is going offline; and sending, by the first endpoint directly to the access server, a fifth notification message that the first endpoint is going offline. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification