# US 12,224,926 B2 · Route processing method and network device

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

- Number: US 12,224,926 B2
- Document ID: US12224926B2
- Status: Granted
- Kind: B2
- Application number: 18/463,727
- Filed: 2023-09-08
- Published: 2023-12-28
- Granted: 2025-02-11
- Earliest claimed: 2021-03-08
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Donglei Pang; Haibo Wang; Gang Yan; Xingjian He
- Web page: https://patentgrep.com/patent/US12224926B2

## CPC

- H04L 45/036: Updating the topology between route computation elements, e.g. between OpenFlow controllers
- H04L 45/04: {Interdomain routing, e.g. hierarchical routing}
- H04L 45/38: {Flow based routing}
- H04L 45/64: using an overlay routing layer
- H04L 45/037: Routes obligatorily traversing service-related nodes
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In a route processing method, a first network device obtains one or more routes having a same destination address, and including a first route. Slice information corresponding to the one or more ports is determined based on one or more ports that are on the first network device and that receive the one or more routes. The first network device sends an updated first route to a second network device, where the updated first route carries the slice information and the destination address. After a route is received, corresponding slice information is determined based on a port that receives the route, so that slice information supported by a path from a network device to a route starting device is determined. The determined slice information is carried when the route is forwarded, so that a network device on a route advertisement path can obtain the slice information supported by the entire path.

## Claims

### Claim 1

A route processing method, implemented by a first network device, the route processing method comprising:
receiving, by one or more ports of the first network device, one or more routes having a first destination address, wherein the first destination address is the same for the one or more routes;
determining, based on the one or more ports, first slice information corresponding to the one or more ports;
updating a first route of the one or more routes to obtain an updated first route, wherein the updated first route carries the first slice information and the first destination address; and
sending the updated first route to a second network device.

### Claim 2 (depends on 1)

The route processing method of claim 1, wherein determining the first slice information comprises:
obtaining second slice information respectively supported by the one or more ports; and
determining, based on the second slice information, the first slice information.

### Claim 3 (depends on 2)

The route processing method of claim 2, wherein the one or more routes all carry third slice information, wherein determining the first slice information comprises determining, based on third slice information and the second slice information, the first slice information, and wherein there is a correspondence between the first slice information and the first destination address.

### Claim 4 (depends on 3)

The route processing method of claim 3, wherein determining the first slice information comprises:
determining, based on fourth slice information carried by each of the one or more routes and fifth slice information supported by a first port corresponding to each route, sixth slice information corresponding to each of the one or more ports; and
determining, based on the sixth slice information, the first slice information, wherein the first slice information comprises the sixth slice information.

### Claim 5 (depends on 4)

The route processing method of claim 4, wherein determining the sixth slice information comprises:
obtaining seventh slice information and eighth slice information, wherein the seventh slice information is carried by any one of the one or more routes, and wherein the eighth slice information is supported by a second port corresponding to a second route that carries the seventh slice information; and
determining that the seventh slice information and the eighth slice information both comprise ninth slice information, wherein the ninth slice information corresponds to the second port.

### Claim 6 (depends on 2)

The route processing method of claim 2, wherein none of the one or more routes carries third slice information, wherein determining, based on the second slice information, the first slice information comprises determining, based on the second slice information, the first slice information, and wherein the first slice information comprises the second slice information.

### Claim 7 (depends on 6)

The route processing method of claim 6, wherein the method further comprises:
receiving a second route comprising fourth slice information;
obtaining fifth slice information supported by a first port that receives the second route; and
determining, when the fourth slice information and the fifth slice information share no common slice information, not to forward the second route.

### Claim 8 (depends on 7)

The route processing method of claim 7, wherein the method further comprises:
receiving a first packet comprising sixth slice information;
searching a forwarding table based on a second destination address in the first packet to obtain at least one port corresponding to the first packet; and
determining, based on the sixth slice information, a second port for forwarding the first packet, wherein seventh slice information supported by the second port comprises the sixth slice information.

### Claim 9 (depends on 8)

The route processing method of claim 8, further comprising receiving one or more Border Gateway Protocol (BGP) messages, wherein each of the one or more BGP messages comprises one of the one or more routes, and wherein an extended community attribute of each BGP message comprises ninth slice information of one of the one or more routes.

### Claim 10 (depends on 9)

The route processing method of claim 9, wherein the first network device is in a campus network, a data center network, or a software-defined wide area network (SD-WAN).

### Claim 11

A network device comprising:
one or more ports configured to receive one or more routes comprising a first destination address, wherein the first destination address is the same for the one or more routes;
a memory configured to store instructions; and
one or more processors coupled to the one or more ports and the memory and configured to execute the instructions to:
determine, based on the one or more ports, first slice information corresponding to the one or more ports;
update a first route of the one or more routes to obtain an updated first route, wherein the updated first route carries the first slice information and the first destination address; and
send the updated first route to a second network device.

### Claim 12 (depends on 11)

The network device of claim 11, wherein the one or more processors are further configured to execute the instructions to:
obtain second slice information respectively supported by the one or more ports; and
determine, based on the second slice information, the first slice information.

### Claim 13 (depends on 12)

The network device of claim 12, wherein the one or more routes all carry third slice information, and wherein the one or more processors are further configured to execute the instructions to:
determine, based on third slice information and the second slice information, the first slice information, wherein there is a correspondence between the first slice information and the first destination address.

### Claim 14 (depends on 13)

The network device of claim 13, wherein the one or more processors are further configured to execute the instructions to:
determine, based on fourth slice information carried by each of the one or more routes and fifth slice information supported by a first port corresponding to each route, sixth slice information corresponding to each of the one or more ports; and
determine, based on the sixth slice information, the first slice information, wherein the first slice information comprises the sixth slice information.

### Claim 15 (depends on 14)

The network device of claim 14, wherein the one or more processors are further configured to execute the instructions to:
obtain seventh slice information carried by any one of the one or more routes;
obtain eighth slice information supported by a second port corresponding to a second route that carries the seventh slice information; and
determine that same slice information in the seventh slice information and the eighth slice information is ninth slice information corresponding to the second port.

### Claim 16 (depends on 12)

The network device of claim 12, wherein none of the one or more routes carries third slice information, and wherein the one or more processors are further configured to execute the instructions to:
determine, based on the second slice information, the first slice information, wherein the first slice information comprises the second slice information.

### Claim 17 (depends on 16)

The network device of claim 16, wherein the one or more processors are further configured to execute the instructions to:
receive a second route comprising fourth slice information;
obtain fifth slice information supported by a first port that receives the second route; and
determine, based on that there is no same slice information between the fourth slice information and the fifth slice information, not to forward the second route.

### Claim 18 (depends on 17)

The network device of claim 17, wherein the one or more processors are further configured to execute the instructions to:
receive a first packet comprising sixth slice information;
search a forwarding table based on a second destination address in the first packet to obtain at least one port corresponding to the first packet; and
determine, based on the sixth slice information, a second port for forwarding the first packet, wherein seventh slice information supported by the second port comprises the sixth slice information.

### Claim 19 (depends on 18)

The network device of claim 18, wherein the one or more processors are further configured to execute the instructions to:
receive one or more border gateway protocol (BGP) messages, wherein each of the one or more BGP messages comprises one of the one or more routes, and wherein an extended community attribute of each BGP message comprises ninth slice information of one of the one or more routes.

### Claim 20

A computer program product stored on a non-transitory computer storage medium that when executed by one or more processors of a network device, cause the network device to:
receive, by one or more ports of the network device, one or more routes comprising a destination address, wherein the destination address is the same for the one or more routes;
determine, based on the one or more ports, first slice information corresponding to the one or more ports;
update a first route of the one or more routes to obtain an updated first route, wherein the updated first route carries the first slice information and the destination address; and
send the updated first route to a second network device.
