IP Library Granted Patent US 12,432,139
Granted Patent B2
US 12,432,139 · App. 18/614,229 · Granted Sep 30, 2025

Packet processing method, network device, and network system

Inventors: Hongwei He (Nanjing, CN); Cheng Sheng (Beijing, CN)
Assignee: Huawei Technologies Co., Ltd.
H04L45/566H04L45/04H04L45/741
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,432,139
App. No.
18/614,229
Granted
Sep 30, 2025
Kind
B2
Abstract

A packet processing method, a network device, and a network system are provided, which are related to the field of communication technologies. According to the method, an intermediate node updates a source IP address of a packet based on an IP address that belongs to a local end in an endpoint IP address of a connection, and updates a destination IP address of the packet based on an IP address that belongs to a remote end in the endpoint IP address of the connection. Therefore, in a scenario in which an SR path crosses underlay transport networks in a plurality of different routing domains, a problem that a packet is discarded because a source IP address is always an IP address of a head end and URPF check fails is avoided.

Claims (60)

1. A packet processing method comprising:

receiving, by a first network device, a first packet from a second network device,

wherein an internet protocol (IP) address of the first packet comprises an endpoint IP address of a first connection,

wherein the first packet comprises a segment identifier (SID) that indicates a second connection, and

wherein the first connection is a connection from the second network device to the first network device, and the second connection is a connection from the first network device to a third network device;

performing, by the first network device, endpoint behaviors associated with the SID on the first packet to obtain a second packet,

wherein a source IP address of the second packet is an IP address that belongs to the first network device in an endpoint IP address of the second connection, and

wherein a destination IP address of the second packet is an IP address that belongs to the third network device in the endpoint IP address of the second connection; and

sending, by the first network device, the second packet to the third network device.

2. The method according to claim 1 , wherein the endpoint IP address of the first connection is an internet protocol version 6 (IPv6) address, the first packet comprises a segment routing header (SRH), and the SID is located in the SRH.

3. The method according to claim 1 , wherein the endpoint IP address of the first connection is an internet protocol version 4 (IPv4) address, the first packet comprises a segment routing header (SRH), and the SID is located in the SRH.

4. The method according to claim 3 , wherein the endpoint IP address of the first connection is located in an IPv4 header of the first packet, wherein the first packet comprises a protocol type associated with the SRH, and

wherein the protocol type is located in a generic routing encapsulation (GRE) header of the first packet, or the protocol type is located in a virtual extensible local area network (VXLAN) header of the first packet, or the protocol type is located in the IPv4 header of the first packet.

5. The method according to claim 1 , wherein the endpoint IP address of the second connection is an internet protocol version 6 (IPv6) address or an internet protocol version 4 (IPv4) address.

6. The method according to claim 1 , wherein the endpoint IP address of the first connection and/or the endpoint IP address of the second connection each are/is an IP address that is of a wide area network (WAN) interface and that is assigned by an operator of an underlay network.

7. The method according to claim 1 , wherein the first connection and/or the second connection each are/is a connection between different sites.

8. The method according to claim 1 , wherein before receiving, by the first network device, the first packet from the second network device, the method further comprises:

sending, by the first network device, the endpoint IP address of the second connection and/or the endpoint IP address of the first connection to a controller device.

9. The method according to claim 8 , wherein sending, by the first network device, the endpoint IP address of the second connection and/or the endpoint IP address of the first connection to the controller device comprises:

generating, by the first network device, a border gateway protocol-link state (BGP-LS) packet that comprises the endpoint IP address of the second connection and/or the endpoint IP address of the first connection, and wherein the BGP-LS packet further comprises an identifier of a software-defined wide area network (SD-WAN) protocol; and

sending, by the first network device, the BGP-LS packet to the controller device.

10. The method according to claim 9 , wherein before receiving, by the first network device, the first packet from the second network device, the method further comprises at least one of the following:

sending, by the first network device, an identifier of a site in which the first network device is located to the controller device; or

sending, by the first network device, a connectivity status of the first connection and/or a connectivity status of the second connection to the controller device; or

sending, by the first network device, service-level agreement (SLA) information of the first connection and/or the second connection to the controller device.

11. The method according to claim 1 , wherein before receiving, by the first network device, the first packet from the second network device, the method further comprises receiving, by the first network device, the SID from the controller device.

12. The method according to claim 1 , wherein the SID is an SID of an End.X-SD-WAN type.

13. A path determining method comprising:

obtaining, by a controller device, endpoint IP addresses of a plurality of connections;

determining, by the controller device, a segment routing (SR) path based on the endpoint IP addresses of the plurality of connections,

wherein the SR path comprises a first connection and a second connection in from the plurality of connections, and

wherein the first connection is a connection from a first network device to a second network device, and the second connection is a connection from the second network device to a third network device; and

sending, by the controller device, an SR policy to the first network device, wherein the SR policy indicates the SR path.

14. The method according to claim 13 , wherein the SR policy comprises a first segment identifier (SID) that indicates the second connection.

15. The method according to claim 14 , further comprising:

assigning, by the controller device, the first SID to the second connection, and assigning a second SID to the first connection,

wherein the first SID indicates the second connection, and the second SID indicates the first connection; and

sending, by the controller device, the first SID to the second network device, and sending the second SID to the first network device.

16. The method according to claim 13 , wherein each of the plurality of connections is a connection between different sites, and determining, by the controller device, the SR path based on the endpoint IP addresses of the plurality of connections comprises:

determining, by the controller device, the SR path based on the endpoint IP addresses of the plurality of connections by using sites as path orchestration objects.

17. A network device that is a first network device, wherein the network device comprises:

a processor coupled to a memory,

the memory storing at least one computer program instruction and, which upon being executed by the processor, cause the network device to:

receive a first packet from a second network device,

wherein an internet protocol (IP) address of the first packet comprises an endpoint IP address of a first connection,

wherein the first packet comprises a segment identifier (SID) that indicates a second connection, and

wherein the first connection is a connection from the second network device to the first network device, and the second connection is a connection from the first network device to a third network device;

perform endpoint behaviors associated with the SID on the first packet to obtain a second packet,

wherein a source IP address of the second packet is an IP address that belongs to the first network device in an endpoint IP address of the second connection, and

wherein a destination IP address of the second packet is an IP address belonging to the third network device in the endpoint IP address of the second connection; and

send the second packet to the third network device.

18. The network device according to claim 17 , wherein the at least one computer program instruction, upon being executed by the processor, further cause the network device to:

send the endpoint IP address of the second connection and/or the endpoint IP address of the first connection to a controller device.

19. The network device according to claim 18 , wherein the at least one computer program instruction, upon being executed by the processor, further cause the network device to:

generate a border gateway protocol-link state (BGP-LS) packet that comprises the endpoint IP address of the second connection and/or the endpoint IP address of the first connection, and further comprises an identifier of a software-defined wide area network (SD-WAN) protocol; and

send the BGP-LS packet to the controller device.

20. The network device according to claim 17 , wherein the at least one computer program instruction, upon being executed by the processor, further cause the network device to perform at least one of the following:

send an identifier of a site in which the first network device is located to the controller device; or

send a connectivity status of the first connection and/or a connectivity status of the second connection to the controller device; or

send service-level agreement (SLA) information of the first connection and/or the second connection to the controller device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2025
From: HE, HONGWEI; SHENG, CHENG
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 071555/0580 →
Priority Claims (1)
CN 202111115406.0 · Sep 23, 2021 · national
Continuity (2)
Continuation PCTCN2022119639 · Sep 19, 2022
Related Publication 20240235994A1 · Jul 11, 2024
References Cited (13)
US 7068598B1 · Bryson · 2006 [cited by examiner]
US 20040208165A1 · Cai · 2004 [cited by examiner]
US 20070201481A1 · Bhatia · 2007 [cited by examiner]
US 20110216651A1 · Bansal · 2011 [cited by examiner]
CN 105589506A · 2016 [cited by applicant]
EP 3751799A1 · 2020 [cited by applicant]
WO 2021180077A1 · 2021 [cited by applicant]
Dunbar et al., “BGP Update for SDWAN Edge Discovery draft-dunbar-idr-sdwan-edge-discovery-04,” total 29 pages (Mar. 7, 2021). [cited by applicant]
Gredler et al., “North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP,” rfc7752, total 48 pages (Mar. 2016). [cited by applicant]
Ginsberg et al., “BGP-Link State (BGP-LS) Advertisement of IGP Traffic Engineering Performance Metric Extensions,” rfc8571, total 10 pages (Mar. 2019). [cited by applicant]
Filsfils et al., “Segment Routing over IPv6 (SRv6) Network Programming,” RFC 8986, total 40 pages (Feb. 2021). [cited by applicant]
Previdi et al., “Advertising Segment Routing Policies in BGP draft-ietf-idr-segment-routing-te-policy-13,” total 44 pages (Jun. 7, 2021). [cited by applicant]
Geng et al., “DetNet SRv6 Data Plane Encapsulation; draft-geng-detnet-dp-sol-srv6- 00,” Network Working Group, Internet Engineering Task Force, IETF; Standardworkingdraft, Internet Society (ISOC), XP015131754, Total 16 … [cited by applicant]