IP Library Granted Patent US 11,558,288
Granted Patent B2
US 11,558,288 · App. 16/138,650 · Granted Jan 17, 2023

Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks

Inventors: Clarence Filsfils (Belgium, BE); Zafar Ali (Hicksville, NY); Frank Brockners (Cologne, DE)
Assignee: Cisco Technology, Inc.
H04L45/302H04L45/04H04L45/127H04L45/306H04L69/22H04L2212/00
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 11,558,288
App. No.
16/138,650
Granted
Jan 17, 2023
Kind
B2
Abstract

The present technology provides a system and method for implementing targeted collection of in-situ Operation, Administration and Maintenance data from select nodes in a Segment Routing Domain. The selection is programmable and is implemented by setting an iOAM bit in the function arguments field of a Segment Identifier. In this way only the nodes associated with local Segment Identifiers (Function field of a Segment Identifier) with an iOAM argument bit are directed to generate iOAM data. The iOAM data generated by target nodes may be stored in TLV field of the segment routing header. The Segment Routing packet is then decapsulated at a Segment Routing egress node and the Header information with the collected iOAM data is sent to a controller entity for further processing, analysis and/or monitoring.

Claims (35)

1. A method comprising:

encoding an in-situ Operation, Administration, and Maintenance (iOAM) instruction as a local argument in a function field defining an end portion of one or more segment identifiers (SIDs) selected from a plurality of SIDs in an SID list of a segment routing header (SRH) in a first packet, wherein the one or more SIDs are Segment Routing over IPv6 (SRv6) SIDs corresponding to one or more segment routing nodes selected for iOAM data collection, the encoding performed on the end portion of the one or more SIDs;

sending the first packet to the one or more segment routing nodes based on the SRH;

receiving a second packet containing the iOAM data from the one or more segment routing nodes selected for the iOAM data collection;

processing the iOAM data from the one or more segment routing nodes selected for the iOAM data collection; and

wherein each of the one or more segment routing nodes selected for the iOAM data collection is configured to send a copy of the SRH containing iOAM data to a controller.

2. The method of claim 1 , wherein the iOAM data provided by the one or more segment routing nodes is inserted into one or more Type, Length, Value (TLV) fields of the SRH.

3. The method of claim 2 , wherein the iOAM data is decapsulated by a Segment Routing egress node and sent to a controller entity.

4. The method of claim 1 , wherein the collector mechanism corresponds to a Netflow or IPFIX collector mechanism.

5. The method of claim 1 , further comprising:

varying, using a controller entity, the one or more segment routing nodes selected for the iOAM data collection to optimize the iOAM data collection without increasing iOAM traffic.

6. The method of claim 5 , wherein the controller entity is a Segment Routing Policy Headend router.

7. At least one non-transitory computer-readable storage medium comprising instructions stored therein, which when executed by one or more processors, cause the one or more processors to:

encode an in-situ Operation, Administration, and Maintenance (iOAM) instruction as a local argument in a function field defining an end portion of one or more segment identifiers (SIDs), the one or more SIDs selected from a plurality of SIDs in an SID list of a segment routing header (SRH) in a first packet, wherein the one or more SIDs are Segment Routing over IPv6 (Srv6) SIDs corresponding to one or more segment routing nodes selected for iOAM data collection;

send the first packet to the one or more segment routing nodes based on the SRH;

receive a second packet containing the iOAM data from the one or more segment routing nodes selected for the iOAM data collection;

process the iOAM data provided by the one or more segment routing nodes tapped for the iOAM data collection; and

wherein each of the one or more segment routing nodes selected for the iOAM data collection is configured to send a copy of the SRH containing iOAM data to a controller using a collector mechanism.

8. The at least one non-transitory computer-readable storage medium of claim 7 , wherein the iOAM data provided by the one or more segment routing nodes is inserted into one or more Type, Length, Value (TLV) fields of the SRH.

9. The at least one non-transitory computer-readable storage medium of claim 8 , wherein the iOAM data is decapsulated by a Segment Routing egress node and sent to a controller entity.

10. The at least one non-transitory computer-readable storage medium of claim 7 , wherein the collector mechanism corresponds to a Netflow or IPFIX collector mechanism.

11. The at least one non-transitory computer-readable storage medium of claim 7 , wherein the instructions, when executed by the one or more processors, further cause the one or more processors to vary, using a controller entity, the one or more segment routing nodes selected for the iOAM data collection to optimize the iOAM data collection without increasing iOAM traffic.

12. The at least one non-transitory computer-readable storage medium of claim 11 , wherein the controller entity is a Segment Routing Policy Headend router.

13. A system comprising:

one or more processors; and

at least one computer-readable storage medium having stored therein instructions which, when executed by the one or more processors, cause the system to:

encode an in-situ Operation, Administration, and Maintenance (iOAM) instruction in a function field defining an end portion of one or more segment identifiers (SIDs), the one or more SIDs selected from plurality of SIDs in an SID list of a segment routing header (SRH) in a first packet, wherein the one or more SIDs are Segment Routing over IPv6 (SRv6) SIDs corresponding to one or more segment routing nodes selected for iOAM data collection, wherein the SID list represents a segment routing policy path;

send the first packet to the one or more segment routing nodes based on the SRH;

receive a second packet containing the iOAM data from the one or more segment routing nodes selected for the iOAM data collection;

process the iOAM data in the second packet from the one or more segment routing nodes selected for the iOAM data collection; and

wherein each of the one or more segment routing nodes selected for the iOAM data collection is configured to send a copy of the SRH containing iOAM data to a controller using a collector mechanism.

14. The system of claim 13 , wherein the iOAM data provided by the one or more segment routing nodes is inserted into one or more Type, Length, Value (TLV) fields of a second SRH associated with the second packet.

15. The system of claim 13 , wherein the at least one computer-readable storage medium stores additional instructions which, when executed by the one or more processors, cause the system to:

decapsulate the SRH to yield decapsulated iOAM data; and

send the decapsulated iOAM data to a collector entity.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2018
From: FILSFILS, CLARENCE; ALI, ZAFAR; BROCKNERS, FRANK
To: CISCO TECHNOLOGY, INC.
Reel/Frame 046942/0836 →
Continuity (1)
Related Publication 20200099611A1 · Mar 26, 2020