IP Library Granted Patent US 12,088,484
Granted Patent B2
US 12,088,484 · App. 18/234,276 · Granted Sep 10, 2024

Micro segment identifier instructions for path tracing optimization

Inventors: Clarence Filsfils (Brussels, BE); Ahmed Mohamed Ahmed Abdelsalam (L'Aquila, IT); Rakesh Gandhi (Stittsville, CA); Pablo Camarillo Garvia (Madrid, ES); Francois Clad (Horbourg-Wihr, FR)
Assignee: Cisco Technology, Inc.
H04L43/0805H04L41/12H04L43/0852H04L43/106H04L43/12H04L45/123H04L45/42H04L45/741H04L69/22
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,088,484
App. No.
18/234,276
Granted
Sep 10, 2024
Kind
B2
Abstract

Techniques for optimizing technologies related to network path tracing and network delay measurements are described herein. Some of the techniques may include using an IPv6 header option and/or segment identifier field of a segment list or a TLV of a segment routing header as a telemetry data carrier. The techniques may also include using an SRv6 micro-segment (uSID) instruction to indicate to a node of a network that the node is to perform one or more path tracing actions and encapsulating the packet and forward. Additionally, the techniques may include using short interface identifiers corresponding to node interfaces to trace a packet path through a network. Further, the techniques may include using short timestamps to determine delay measurements associated with sending a packet through a network. In various examples, the techniques described above and herein may be used with each other to optimize network path tracing and delay measurement techniques.

Claims (36)

1. A method performed at least partially by a sink node of a network, the method comprising:

determining that an address field of an Internet Protocol version 6 (IPv6) header of a packet includes a Segment Routing over IPv6 (SRv6) micro segment (uSID) instruction;

determining that the SRv6 uSID instruction indicates a path tracing action that is to be performed by the sink node;

performing the path tracing action; and

sending at least one of the packet, a clone of the packet, or telemetry data associated with the path tracing action to a controller of the network.

2. The method of claim 1 , wherein determining that the address field includes the SRv6 uSID instruction comprises shifting the address field of the IPV6 header of the packet.

3. The method of claim 1 , wherein the path tracing action comprises cloning the packet and sending the clone of the packet to the controller, the clone of the packet including timestamp data and an interface identifier.

4. The method of claim 1 , wherein the path tracing action comprises determining timestamp data indicative of a time at which the packet was received by the sink node.

5. The method of claim 1 , wherein the path tracing action comprises determining an interface identifier associated with an interface of the sink node used to receive the packet.

6. The method of claim 1 , wherein the controller of the network is configured to perform an Operations, Administration, and Maintenance (OAM) action utilizing at least one of the packet, the clone of the packet, or the telemetry data, the OAM action comprising at least one of determining a path through the network according to which the packet was sent or determining a latency associated with the packet traversing the network.

7. The method of claim 1 , wherein the path tracing action is performed by the sink node based at least in part on the sink node reading the SRv6 uSID instruction.

8. A system comprising:

one or more processors; and

one or more non-transitory computer-readable media storing instructions that, when executed, cause the one or more processors to perform operations comprising:

receiving a packet traversing a network;

determining that an address field of an Internet Protocol version 6 (IPv6) header of the packet includes a Segment Routing over IPv6 (SRv6) micro segment (uSID) instruction;

determining that the SRv6 uSID instruction indicates a path tracing action that is to be performed;

performing the path tracing action; and

sending at least one of the packet, a clone of the packet, or telemetry data associated with the path tracing action to a controller of the network.

9. The system of claim 8 , wherein determining that the address field includes the SRv6 uSID instruction comprises shifting the address field of the IPV6 header of the packet.

10. The system of claim 8 , wherein the path tracing action comprises cloning the packet and sending the clone of the packet to the controller, the clone of the packet including timestamp data and an interface identifier.

11. The system of claim 8 , wherein the path tracing action comprises determining timestamp data indicative of a time at which the packet was received.

12. The system of claim 8 , wherein the path tracing action comprises determining an interface identifier associated with an interface used to receive the packet.

13. The system of claim 8 , wherein the controller of the network is configured to perform an Operations, Administration, and Maintenance (OAM) action utilizing at least one of the packet, the clone of the packet, or the telemetry data, the OAM action comprising at least one of determining a path through the network according to which the packet was sent or determining a latency associated with the packet traversing the network.

14. The system of claim 8 , wherein the path tracing action is performed based at least in part on reading the SRv6 uSID instruction.

15. One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform operations comprising:

receiving a packet traversing a network;

determining that an address field of an Internet Protocol version 6 (IPv6) header of the packet includes a Segment Routing over IPv6 (SRv6) micro segment (uSID) instruction;

determining that the SRv6 uSID instruction indicates a path tracing action that is to be performed;

performing the path tracing action; and

sending at least one of the packet, a clone of the packet, or telemetry data associated with the path tracing action to a controller of the network.

16. The one or more non-transitory computer-readable media of claim 15 , wherein determining that the address field includes the SRv6 uSID instruction comprises shifting the address field of the IPV6 header of the packet.

17. The one or more non-transitory computer-readable media of claim 15 , wherein the path tracing action comprises cloning the packet and sending the clone of the packet to the controller, the clone of the packet including timestamp data and an interface identifier.

18. The one or more non-transitory computer-readable media of claim 15 , wherein the path tracing action comprises determining timestamp data indicative of a time at which the packet was received.

19. The one or more non-transitory computer-readable media of claim 15 , wherein the path tracing action comprises determining an interface identifier associated with an interface used to receive the packet.

20. The one or more non-transitory computer-readable media of claim 15 , wherein the controller of the network is configured to perform an Operations, Administration, and Maintenance (OAM) action utilizing at least one of the packet, the clone of the packet, or the telemetry data, the OAM action comprising at least one of determining a path through the network according to which the packet was sent or determining a latency associated with the packet traversing the network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2023
From: FILSFILS, CLARENCE; ABDELSALAM, AHMED MOHAMED AHMED; GANDHI, RAKESH; CAMARILLO GARVIA, PABLO; CLAD, FRANCOIS
To: CISCO TECHNOLOGY, INC.
Reel/Frame 065591/0779 →
Continuity (6)
Continuation 17344477 · Jun 10, 2021
Provisional Application 63119938 · Dec 1, 2020
Provisional Application 63119964 · Dec 1, 2020
Provisional Application 63119992 · Dec 1, 2020
Provisional Application 63120002 · Dec 1, 2020
Related Publication 20230388207A1 · Nov 30, 2023