IP Library › Granted Patent US 10,541,893
Granted Patent B2
US 10,541,893 · App. 15/793,557 · Granted Jan 21, 2020

System and method for obtaining micro-service telemetry data

Inventors: Nagendra Kumar Nainar (Morrisville, NC); Rajiv Asati (Morrisville, NC); Carlos M. Pignataro (Cary, CA)
Assignee: CISCO TECHNOLOGY, INC.
H04L43/062H04L43/12H04L43/04H04L43/0876
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 10,541,893
App. No.
15/793,557
Granted
Jan 21, 2020
Kind
B2
Abstract

Systems, methods, and computer-readable media are disclosed for use of an overlay network termination endpoint as a proxy to collect telemetry data for micro-services or specific applications provided by containers in overlay data centers. In one aspect of the present disclosure, a method includes receiving, at a controller, a probe for flow statistics associated with a service path, the probe including corresponding flow identification information, extracting the corresponding flow identification information from the probe, obtaining the flow statistics from an agent based on the flow identification information, the agent being configured to manage a plurality of containers, generating a response packet including the flow statistics obtained from the agent and sending the response packet to an initiator from which the query is received.

Claims (60)

1. A method comprising:

receiving, at a controller, a probe for flow statistics associated with a service path, the probe including corresponding flow identification information;

extracting the corresponding flow identification information from the probe;

obtaining the flow statistics from an agent based on the flow identification information, the agent being configured to manage a plurality of containers;

generating a response packet including the flow statistics obtained from the agent; and

sending the response packet to an initiator from which the query is received.

2. The method of claim 1 , wherein the flow identification information includes a flow ID of the service path, a flow label of the service path and an entropy label data of the service path.

3. The method of claim 1 , wherein the service path is a path through which a data packet traverses to be serviced by one of the plurality of containers.

4. The method of claim 3 , wherein the obtaining comprises:

determining a destination container associated with the service path, the destination container being the one of the plurality of containers;

generating a query for the flow statistics associated with the destination container, the query including the flow identification information;

sending the query to the agent; and

receiving a response from the agent including the flow statistics.

5. The method of claim 4 , wherein the query includes a source address associated with the controller, a destination address associated with the destination container and entropy details included in the flow identification information.

6. The method of claim 4 , wherein the query is a YANG query.

7. The method of claim 4 , further comprising:

determining a physical host on which the destination container is instantiated; and

when the physical host on which the destination container is instantiated is different from a physical host on which the controller is instantiated, modifying the query to include an address of the physical host on which the one of the destination container is instantiated, wherein

the sending sends the modified request to an agent running on the physical host on which the destination container is instantiated.

8. The method of claim 4 , wherein the sending sends the query to the agent on a south bound API.

9. The method of claim 1 , wherein the extracting extracts the flow identification information from a payload of the probe.

10. A system comprising:

memory configured to store computer-readable instructions; and

one or more processors configured to execute the computer-readable instructions to perform the functions of:

receiving a probe for flow statistics associated with a service path, the probe including corresponding flow identification information;

extracting the corresponding flow identification information from the probe;

obtaining the flow statistics from an agent based on the flow identification information, the agent being configured to manage a plurality of containers;

generating a response packet including the flow statistics obtained from the agent; and

sending the response packet to an initiator from which the query is received.

11. The system of claim 10 , wherein the flow identification information includes a flow ID of the service path, a flow label of the service path and an entropy label data of the service path.

12. The system of claim 10 , wherein the service path is a path through which a data packet traverses to be serviced by one of the plurality of containers.

13. The system of claim 12 , wherein the one or more processors are configured to execute the computer-readable instructions to perform the function of obtaining by:

determining a destination container associated with the service path, the destination container being the one of the plurality of containers;

generating a query for the flow statistics associated with the destination container, the query including the flow identification information;

sending the query to the agent; and

receiving a response from the agent including the flow statistics.

14. The system of claim 13 , wherein the query includes a source address associated with the controller, a destination address associated with the destination container and entropy details included in the flow identification information.

15. The system of claim 13 , wherein the query is a YANG query.

16. The system of claim 13 , wherein the one or more processors are configured to execute the computer-readable instructions to perform the functions of:

determining a physical host on which the destination container is instantiated; and

when the physical host on which the destination container is instantiated is different from a physical host on which the controller is instantiated, modifying the query to include an address of the physical host on which the one of the destination container is instantiated, wherein

the sending sends the modified request to an agent running on the physical host on which the destination container is instantiated.

17. The system of claim 10 , wherein

the probe is an operation, administration and management (OAM) probe to obtain the flow statistics; and

the OAM probe is received from an initiator, the initiator triggering a service function chaining trace to send the OAM probe.

18. One or more non-transitory computer-readable medium having computer-readable instructions stored therein, which when executed by one or more processors, cause the one or more processors to perform the functions of:

receiving a probe for flow statistics associated with a service path, the probe including corresponding flow identification information;

extracting the corresponding flow identification information from the probe;

obtaining the flow statistics from an agent based on the flow identification information, the agent being configured to manage a plurality of containers;

generating a response packet including the flow statistics obtained from the agent; and

sending the response packet to an initiator from which the query is received.

19. The one or more non-transitory computer-readable medium of claim 18 , wherein the execution of the computer-readable instructions cause the one or more processors to perform the function of obtaining by:

determining a destination container associated with the service path, the destination container being the one of the plurality of containers;

generating a query for the flow statistics associated with the destination container, the query including the flow identification information;

sending the query to the agent; and

receiving a response from the agent including the flow statistics.

20. The one or more non-transitory computer-readable medium of claim 19 , wherein the execution of the computer-readable instructions cause the one or more processors to perform the functions of:

determining a physical host on which the destination container is instantiated; and

when the physical host on which the destination container is instantiated is different from a physical host on which the controller is instantiated, modifying the query to include an address of the physical host on which the one of the destination container is instantiated, wherein

the sending sends the modified request to an agent running on the physical host on which the destination container is instantiated.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2017
From: NAINAR, NAGENDRA KUMAR; ASATI, RAJIV; PIGNATARO, CARLOS M.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 043949/0001 →
Continuity (1)
Related Publication 20190123984A1 · Apr 25, 2019