# US 12,003,477 B2 · Communication method and related device

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

- Number: US 12,003,477 B2
- Document ID: US12003477B2
- Status: Granted
- Kind: B2
- Application number: 17/615,324
- Filed: 2020-06-23
- Published: 2022-07-14
- Granted: 2024-06-04
- Earliest claimed: 2019-06-24
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Renzhi Yang; Bin Wang; Jiyong Jiang; Teng Zhang; Yanming Li
- Web page: https://patentgrep.com/patent/US12003477B2

## CPC

- H04L 67/025: for remote control or remote monitoring of applications
- H04L 61/2517: using port numbers
- H04L 61/256: NAT traversal
- H04L 61/2575: using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
- H04L 67/14: Session management (for real-time applications in data packet communications networks H04L65/1066)
- H04L 67/60: Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70)
- H04L 69/22: Parsing or analysis of headers
- H04W 60/04: using triggered events
- H04W 76/12: Setup of transport tunnels
- H04W 76/14: Direct-mode setup
- H04L 61/2514: between local and global IP addresses
- H04L 61/2567: for reachability, e.g. inquiring the address of a correspondent behind a NAT server
- H04L 61/4535: using an address exchange platform which sets up a session between two nodes, e.g. rendezvous servers, session initiation protocols [SIP] registrars or H.323 gatekeepers
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

Embodiments of this application disclose a communication method and a related device. The method includes: A symmetric device listens on N local public ports, where N is a natural number greater than 1; and when the symmetric device receives a hole punching packet from the N local public ports, the symmetric device sends a response packet to a cone device based on the hole punching packet, so that the symmetric device establishes a communication connection to the cone device, where the hole punching packet is sent by the cone device, and the response packet carries a first network information mapping relationship. The cone device may directly communicate with the symmetric device, so that there is no need for a server having a data relay function, and costs of deploying the server are reduced.

## Claims

### Claim 1

A communication method, comprising:
listening, by a symmetric device, on N local public ports, wherein N is a natural number greater than 1; and
when the symmetric device receives a hole punching packet from the N local public ports, sending, by the symmetric device, a response packet to a cone device based on the hole punching packet, so that the symmetric device establishes a communication connection to the cone device, wherein the hole punching packet is sent by the cone device, the response packet carries a first network information mapping relationship, and the cone device is configured to establish a direct communication connection to the symmetric device based on the first network information mapping relationship; and,
before listening by the symmetric device on the N local public ports, the method further comprises:
sending, by the symmetric device, a first connection establishment request packet to a signaling server, wherein the first connection establishment request packet carries first network information, the signaling server obtains, by searching based on a second connection establishment request packet, a second network information mapping relationship locally stored in the signaling server, and the signaling server sends the second network information mapping relationship to the cone device based on the first network information.

### Claim 2 (depends on 1)

The method according to claim 1, wherein before sending by the symmetric device of the first connection establishment request packet to the signaling server, the method further comprises:
sending, by the symmetric device, a first registration packet to the signaling server, wherein the first registration packet carries the second network information mapping relationship, and the second network information mapping relationship comprises second network information.

### Claim 3 (depends on 2)

The method according to claim 2, wherein the second network information comprises a user identity (ID) of the symmetric device, a media access control (MAC) address of the symmetric device, or a user name of the symmetric device.

### Claim 4 (depends on 1)

The method according to claim 1, wherein the first network information mapping relationship comprises a first public internet protocol (IP) address of the symmetric device and a first public port number of the symmetric device.

### Claim 5 (depends on 4)

The method according to claim 4, wherein the second network information mapping relationship comprises a second public IP address of the symmetric device and a second public port number of the symmetric device.

### Claim 6 (depends on 1)

The method according to claim 1, wherein the second network information mapping relationship comprises a second public IP address of the symmetric device and a second public port number of the symmetric device.

### Claim 7 (depends on 1)

The method according to claim 1, wherein the first network information comprises a user identity (ID) of the cone device, a media access control (MAC) address of the cone device, or a user name of the cone device.

### Claim 8

A communication method, comprising:
sending, by a cone device, hole punching packets to M public ports of a symmetric device, wherein M is a natural number greater than 1; and
establishing, by the cone device, a communication connection to the symmetric device based on a response packet, wherein the response packet is a packet sent by the symmetric device based on the hole punching packet, the response packet carries a first network information mapping relationship, and the cone device is configured to establish a direct communication connection to the symmetric device based on the first network information mapping relationship; and
before sending by the cone device the hole punching packets to the M public ports of the symmetric device, the method further comprises:
sending, by the cone device, a second connection establishment request packet to a signaling server, wherein the second connection establishment request packet carries second network information, the signaling server obtains, by searching based on the second connection establishment request packet, a second network information mapping relationship locally stored in the signaling server, and the signaling server sends the second network information mapping relationship to the cone device based on the second network information; and
receiving, by the cone device, the second network information mapping relationship.

### Claim 9 (depends on 8)

The method according to claim 8, wherein the sending, by the cone device, of the hole punching packets to M public ports of the symmetric device comprises:
sending, by the cone device, the hole punching packets to the M public ports of the symmetric device based on the second network information mapping relationship.

### Claim 10 (depends on 8)

The method according to claim 8, wherein before receiving by the cone device the second network information mapping relationship, the method further comprises:
sending, by the cone device, a second registration packet to the signaling server, wherein the second registration packet carries first network information.

### Claim 11 (depends on 10)

The method according to claim 10, wherein the first network information comprises a user identity (ID) of the cone device, a media access control (MAC) address of the cone device, or a user name of the cone device.

### Claim 12 (depends on 8)

The method according to claim 8, wherein the first network information mapping relationship comprises a first public internet protocol (IP) address of the symmetric device and a first public port number of the symmetric device.

### Claim 13 (depends on 8)

The method according to claim 8, wherein the second network information mapping relationship comprises a second public IP address of the symmetric device and a second public port number of the symmetric device.

### Claim 14 (depends on 8)

The method according to claim 8, wherein the second network information comprises a user identity (ID) of the symmetric device, a media access control (MAC) address of the symmetric device, or a user name of the symmetric device.

### Claim 15

A computer device, comprising:
an input/output (I/O) interface, a processor, and a memory, wherein the memory stores program instructions; and when the instructions are executed by the computer device, the computer device performs the following operations:
listening on N local public ports, wherein N is a natural number greater than 1; and, when the computer device receives a hole punching packet from the N local public ports,
sending a response packet to a cone device based on the hole punching packet, so that the computer device establishes a communication connection to the cone device, wherein the hole punching packet is sent by the cone device, the response packet carries a first network information mapping relationship, and the cone device is configured to establish a direct communication connection to the symmetric device based on the first network information mapping relationship; and
wherein before listening on the N local public ports, the method further comprises:
sending a first connection establishment request packet to a signaling server, wherein the first connection establishment request packet carries first network information, the signaling server obtains, by searching based on a second connection establishment request packet, a second network information mapping relationship locally stored in the signaling server, and the signaling server sends the second network information mapping relationship to the cone device based on the first network information.

### Claim 16 (depends on 15)

The computer device according to claim 15, wherein the operations further comprise:
before sending by the symmetric device the first connection establishment request packet to the signaling server,
sending a first registration packet to the signaling server, wherein the first registration packet carries the second network information mapping relationship, and the second network information mapping relationship comprises second network information.

### Claim 17 (depends on 16)

The computer device according to claim 16, wherein the second network information comprises a user identity (ID) of the symmetric device, a media access control (MAC) address of the symmetric device, or a user name of the symmetric device.

### Claim 18 (depends on 15)

The computer device according to claim 15, wherein the first network information mapping relationship comprises a first public internet protocol (IP) address of the symmetric device and a first public port number of the symmetric device.

### Claim 19 (depends on 15)

The computer device according to claim 15, wherein the second network information mapping relationship comprises a second public internet protocol (IP) address of the symmetric device and a second public port number of the symmetric device.

### Claim 20 (depends on 15)

The computer device according to claim 15, wherein the first network information comprises a user identity (ID) of the cone device, a media access control (MAC) address of the cone device, or a user name of the cone device.
