Method and communication device for network address translation traversal

US10129209B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10129209-B2
Application numberUS-201615051298-A
CountryUS
Kind codeB2
Filing dateFeb 23, 2016
Priority dateOct 22, 2015
Publication dateNov 13, 2018
Grant dateNov 13, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method and a communication device for network address translation (NAT) traversal is provided. The method includes following steps. A NAT device information is exchanged between a communication device and another communication device. A relay connection is established between the communication device and the another communication device through a relay server. Whether it is feasible to establish a P2P connection between the communication device and the another communication device is determined according to the NAT device information. When it is feasible to establish the P2P connection between the communication device and the another communication device, an attempt to establish the P2P connection between the communication device and the another communication device is made. If the P2P connection is not established successfully, an attempt to establish the P2P connection between the communication device and the another communication device is made again.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for network address translation (NAT) traversal used in a communication device correspondingly connected to a first NAT device, wherein the method comprises: exchanging a NAT device information with another communication device by the communication device; establishing a relay connection with the another communication device through a relay server and performing data transmission through the relay connection by the communication device; during data transmission through the relay connection, determining whether it is feasible to establish a peer-to-peer (P2P) connection with the another communication device by the communication device according to the NAT device information; and making an attempt to establish the P2P connection with the another communication device by the communication device if it is feasible to establish the P2P connection with the another communication device by the communication device, and the communication device makes an attempt to establish the P2P connection with the another communication device again if the P2P connection is not established successfully. 2. The method according to claim 1 , wherein the step of exchanging the NAT device information with the another communication device by the communication device comprises: transmitting, by the communication device, a first NAT device information related to the first NAT device; and receiving, by the communication device, a second NAT device information related to a second NAT device correspondingly connected to the another communication device. 3. The method according to claim 2 , further comprising: predicting a first port used by the first NAT device to obtain a first predicted value; determining a NAT type of the first NAT device; predicting a second port used by the second NAT device to obtain a second predicted value; and determining a NAT type of the second NAT device. 4. The method according to claim 3 , wherein the first NAT device information comprises a local IP address of the communication device, a local port of the communication device, a public IP address of the first NAT device, the first predicted value of the first NAT device and the NAT type of the first NAT device, and the second NAT device information comprises a local IP address of the another communication device, a local port of the another communication device, a public IP address of the second NAT device, the second predicted value of the second NAT device and the NAT type of the second NAT device. 5. The method according to claim 3 , wherein whether it is feasible to establish the P2P connection with the another communication device by the communication device is determined according to the first predicted value, the NAT type of the first NAT device, the second predicted value and the NAT type of the second NAT device. 6. The method according to claim 5 , wherein the step of determining whether it is feasible to establish the P2P connection with the another communication device by the communication device comprises: determining whether the first port is predictable according to the first predicted value; and determining whether the second port is predictable according to the second predicted value; wherein it is determined that it is feasible to establish the P2P connection if both the first port and the second port are predictable; wherein it is determined that it is not feasible to establish the P2P connection if both the first port and the second port are unpredictable. 7. The method according to claim 6 , wherein when one of the first port and the second port is predictable but the other is unpredictable, it is determined that it is not feasible to establish the P2P connection if the NAT type of the NAT device having a predictable port is symmetric or port restricted cone; and it is determined that it is feasible to establish the P2P connection if the NAT type of the NAT device having a predictable port is full cone or address restricted cone. 8. The method according to claim 1 , wherein the step of making the attempt to establish the P2P connection with the another communication device again comprises: exchanging a third NAT device information with the another communication device by the communication device, wherein the third NAT device information comprises a local IP address of the communication device and a local port of the communication device; and making an attempt to establish the P2P connection with the another communication device by the communication device according to the third NAT device information. 9. The method according to claim 3 , wherein the step of making the attempt to establish the P2P connection with the another communication device again comprises: predicting the first port used by the first NAT device again to obtain a third predicted value; exchanging a third NAT device information including the third predicted value with the another communication device by the communication device; and making an attempt to establish the P2P connection with the another communication device by the communication device according to the third NAT device information. 10. The method according to claim 1 , further comprising: disconnecting the relay connection established between the communication device and the another communication device if the P2P connection is established successfully. 11. A communication device for network address translation (NAT) traversal, wherein the communication device is correspondingly connected to a first NAT device, and comprises: a communication unit; and a processing unit coupled to the communication unit; wherein, the processing unit controls the communication unit to: exchange a NAT device information with another communication device; establish a relay connection with the another communication device through a relay server and perform data transmission through the relay connection; during data transmission through the relay connection, determine whether it is feasible to establish a peer-to-peer (P2P) connection with the another communication device by the communication unit according to the NAT device information; and make an attempt to establish the P2P connection with the another communication device by the communication unit if it is feasible to establish the P2P connection with the another communication device by the communication unit, and makes an attempt to establish the P2P connection with the another communication device again if the P2P connection is not established successfully. 12. The communication device according to claim 11 , wherein the processing unit controls the communication unit to transmit, by the communication unit, a first NAT device information related to the first NAT device; and receive, by the communication unit, a second NAT device information related to a second NAT device correspondingly connected to the another communication device. 13. The communication device according to claim 12 , wherein the processing unit further controls the communication unit to: predict a first port used by the first NAT device to obtain a first predicted value; determine a NAT type of the first NAT device; predict a second port used by the second NAT device to obtain a second predicted value; and determine a NAT type of the second NAT device. 14. The communication device according to claim 13 , wherein the first NAT device information comprises a local IP address of the communication device, a local port of the communication device, a public IP address of the first NAT device, the first predicted value of the first NAT device and the NAT type of the fir

Assignees

Inventors

Classifications

  • using port numbers · CPC title

  • over a relay server, e.g. traversal using relay for network address translation [TURN] · CPC title

  • using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN] · CPC title

  • between local and global IP addresses · CPC title

  • Point-to-point connection between the data network and the subscribers (encapsulation H04L12/4633; virtual LANs H04L12/4641; routing of packets H04L45/00) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10129209B2 cover?
A method and a communication device for network address translation (NAT) traversal is provided. The method includes following steps. A NAT device information is exchanged between a communication device and another communication device. A relay connection is established between the communication device and the another communication device through a relay server. Whether it is feasible to establ…
Who is the assignee on this patent?
Ind Tech Res Inst
What technology area does this patent fall under?
Primary CPC classification H04L61/2589. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 13 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).