IP Library › Granted Patent US 12,615,208
Granted Patent B2
US 12,615,208 · App. 18/174,995 · Granted Apr 28, 2026

Method for generating routing information, method for sending location information, method for forwarding packet, and device

Inventors: Zhibo Hu (Beijing, CN); Guoqi Xu (Beijing, CN); Jie Dong (Beijing, CN); Juhua Xu (Nanjing, CN)
Assignee: Huawei Technologies Co., Ltd.
H04L45/74H04L45/02
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,615,208
App. No.
18/174,995
Granted
Apr 28, 2026
Kind
B2
Abstract

A first network device receives location information sent by a second network device. The location information includes a location identifier used to identify a location of the second network device in a network and a plurality of associated flexible algorithms corresponding to the location identifier. The first network device generates, based on a first flexible algorithm of the plurality of associated flexible algorithms, first routing information to the second network device. The first flexible algorithm corresponds to a first network topology, the first network topology is a network topology in which the first network device is located, and the first routing information is used to send a packet to the second network device in the first network topology. One location identifier corresponds to a plurality of associated flexible algorithms, and routing information in different network topologies is generated based on different associated flexible algorithms.

Claims (50)

1 . A system, comprising:

a first network device; and

a second network device, configured to:

determine location information, wherein the location information comprises a location identifier and a plurality of associated flexible algorithms corresponding to the location identifier, and the location identifier identifies a location of the second network device in a network; and

send the location information to the first network device; and

wherein the first network device is configured to:

receive the location information; and

generate, based on a first flexible algorithm, first routing information to the second network device, wherein the first flexible algorithm is one of the plurality of associated flexible algorithms, the first flexible algorithm corresponds to a first network topology, the first network topology is a network topology in which the first network device is located, and the first routing information is used to send a packet to the second network device in the first network topology; and

generate, based on a second flexible algorithm, second routing information to the second network device, wherein the plurality of associated flexible algorithms further comprises the second flexible algorithm, the second routing information corresponds to a second network topology, the second network topology is a network topology in which the first network device is located, and the second routing information is used to send a packet to the second network device in the second network topology.

2 . The system according to claim 1 , wherein the first routing information corresponds to an identifier of the first network topology.

3 . The system according to claim 1 , wherein the first routing information comprises an identifier of the first network topology.

4 . The system according to claim 1 , wherein the plurality of associated flexible algorithms are carried in a type length value (TLV) field of the location information.

5 . The system according to claim 4 , wherein each flexible algorithm is a sub-TLV in the TLV field of the location information.

6 . An apparatus, comprising:

at least one processor;

a non-transitory computer readable storage medium storing a program that is executable by the at least one processor, the program including instructions to:

obtain a second packet;

add an identifier of a first network topology to the second packet and an identifier of a first resource to the second packet, to obtain a first packet, wherein the first resource is a resource in the first network topology, and the identifier of the first resource indicates to send the first packet in the first network topology using the first resource, and wherein a network topology matching the first packet is the first network topology, and the first network topology is a network topology in which the apparatus is located;

determine first routing information based on the first network topology, wherein the first routing information is used to send the first packet in the first network topology; and

send the first packet based on the first routing information.

7 . The apparatus according to claim 6 , wherein the program includes instructions to:

add the identifier of the first network topology to a hop-by-hop (HBH) field of the second packet, to obtain the first packet.

8 . The apparatus according to claim 6 , wherein the program includes instructions to:

add a segment identifier comprising the identifier of the first network topology to a segment identifier list of the second packet, to obtain the first packet.

9 . The apparatus according to claim 6 , wherein the program includes instructions to:

determine, based on a destination address of the second packet, that a flexible algorithm matching the second packet is a first flexible algorithm, wherein the first flexible algorithm corresponds to the first network topology; and

determine that a network topology matching the second packet is the first network topology, or determine that a destination address of the second packet matches a preset destination address, wherein the preset destination address matches the first network topology; and

determine that a network topology matching the second packet is the first network topology.

10 . The apparatus according to claim 6 , wherein the program further includes instructions to:

receive the second packet; and

determine that the network topology matching the second packet is the first network topology.

11 . The apparatus according to claim 10 , wherein the program further includes instructions to:

determine, based on a destination address of the second packet, that a flexible algorithm matching the second packet is a first flexible algorithm, wherein the first flexible algorithm corresponds to the first network topology, and determine that the network topology matching the second packet is the first network topology; or

determine that a destination address of the second packet matches a preset destination address, wherein the preset destination address matches the first network topology, and determine that the network topology matching the second packet is the first network topology.

12 . The apparatus according to claim 6 ,

wherein the program further includes instructions to send the first packet in the first network topology based on the first routing information and by using the first resource.

13 . The apparatus according to claim 6 , wherein the first routing information corresponds to the identifier of the first network topology; and

wherein the program includes instructions to determine the first routing information based on a correspondence between the first routing information and the identifier of the first network topology.

14 . The apparatus according to claim 6 , wherein the identifier of the first network topology is comprised in the first routing information; and

wherein the program includes instructions to determine the first routing information based on the identifier of the first network topology comprised in the first routing information.

15 . A first network device, comprising:

at least one processor; and

a non-transitory computer readable storage medium storing a program that is executable by the at least one processor, the program including instructions to:

receive location information from a second network device, wherein the location information comprises a location identifier and a plurality of associated flexible algorithms corresponding to the location identifier, and the location identifier identifies a location of the second network device in a network;

generate, based on a first flexible algorithm, first routing information to the second network device, wherein the first flexible algorithm is one of the plurality of associated flexible algorithms, the first flexible algorithm corresponds to a first network topology, the first network topology is a network topology in which the first network device is located, and the first routing information is used to send a packet to the second network device in the first network topology; and

generate, based on a second flexible algorithm, second routing information to the second network device, wherein the plurality of associated flexible algorithms further comprises the second flexible algorithm, the second routing information corresponds to a second network topology, the second network topology is a network topology in which the first network device is located, and the second routing information is used to send a packet to the second network device in the second network topology.

16 . The first network device according to claim 15 , wherein the first routing information corresponds to an identifier of the first network topology.

17 . The first network device according to claim 15 , wherein the first routing information comprises an identifier of the first network topology.

18 . The first network device according to claim 15 , wherein the plurality of associated flexible algorithms are carried in a type length value (TLV) field of the location information.

19 . The first network device according to claim 18 , wherein each flexible algorithm is a sub-TLV in the TLV field of the location information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2026
From: HU, ZHIBO; XU, GUOQI; DONG, JIE; XU, JUHUA
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 073692/0545 →
Priority Claims (1)
CN 202010901424.0 · Aug 31, 2020 · national
Continuity (2)
Continuation PCTCN2021113358 · Aug 18, 2021
Related Publication 20230216792A1 · Jul 6, 2023
References Cited (11)
US 10637768B1 · Joseph · 2020 [cited by examiner]
US 20170085575A1 · Wynn · 2017 [cited by examiner]
US 20200344151A1 · Joseph · 2020 [cited by examiner]
US 20200396638A1 · Huang · 2020 [cited by examiner]
US 20210153001A1 · Eisner · 2021 [cited by examiner]
US 20220232344A1 · Kim · 2022 [cited by examiner]
CN 111541613A · 2020 [cited by applicant]
P. Psenak, Ed. et al, “IGP Flexible Algorithm draft-ietf-lsr-flex-algo-07.txt”, Network Working Group Internet-Draft, Intended status: Standards Track, Apr. 1, 2020, total 34 pages. [cited by applicant]
P. Psenak, Ed. et al: “IGP Flexible Algorithm draft-ietf-lsr-flex-algo-10.txt”, Network Working Group Interet-Draft, Internet Engineering Task Force, IETF; Standard Working Draft Internet Society (ISOC) 4, Rue Des Falai… [cited by applicant]
P. Psenak, Ed. et al, “IS-IS Extension to Support Segment Routing over IPv6 Dataplane draft-ietf-lsr-isis-srv6-extensions-08.txt”, Network Working Group Internet-Draft, Intended status: Standards Track, Apr. 23, 2020, t… [cited by applicant]
S Previdi et al: “IS-IS Extensions for Segment Routing draft-ietf-isis-segment-routing-extensions-18”, IS-IS for IP Internets, Jun. 20, 2018, XP055673815, total 35 pages. [cited by applicant]