Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Requesting Collected Tunnel Flow Data

 

Use the Cloud Analytics Engine CA API tunnel data resource to retrieve application flow path analytics data flowing over a tunnel.

GET data/tunnel Resource

Use the GET data/tunnel CA API to request analytics data from the network for a tunnel flow you have started. This is an asynchronous API.

The available data depends on the parameters used to start the tunnel flow, described in GET start/tunnel Resource.

Request Parameters:

  • The following tuple values identifying the overlay tunnel:

    • src: (String) VTEP source IPv4 address.

    • dst: (String) VTEP endpoint IPv4 address.

    • vnid: (Numeric) VXLAN network identifier.

    • appsrc: (String) Application source IP address communicating on the given tunnel’s VTEP.

    • appdst: (String) Application destination IP address corresponding to appsrc.

Return Codes:

  • None—CA returns the requested tunnel flow data.

  • EFAIL—No data is present for the specified tunnel flow.

  • E_UNAUTHORIZED—Flow was initiated by a different client and cannot be retrieved by the originator of this request.

  • E_AoF—No such flow.

Response Data:

See Tunnel Data Compute Agent API Example for an example of using the data/tunnel resource.

Flow Path Response Data Object

Table 1 lists the elements in the response data object (JSON format) for requests to retrieve CA flow path analytics data. See GET data/flow Resource and GET data/tunnel Resource, which describe the CA API resource requests that return this data.

Note that the Cloud Analytics Engine DLE component collects, stores, and processes this data as a client of CA data/flow and data/tunnel resources, and supports an analytics data subscription service that can stream this CA flow path data in bulk directly to subscribed DLE clients. See POST /api/v1/subscription/subscribeAll for details on the DLE API you can use to subscribe to this service to receive this data automatically.

Table 1: Flow Path Analytics Data JSON Response Object

Element Name

Description

Path

Path data object that contains statistics from the devices in the flow path, containing the elements listed in Table 2.

ID

A 5-tuple in JSON format identifying the flow or tunnel flow. The tuple values are as follows, in the order shown:

  • For non-overlay (data/flow resource):

    {source IP address, destination IP address, protocol, source port, destination port}

  • For overlay (data/tunnel resource):

    {VTEP source IP address, VTEP destination IP address, VXLAN ID, application source IP address, application destination IP address}

Time

(Numeric) Time (epoch time in seconds) when the probe run for the flow was started.

Table 2 lists the elements in the Path data object of flow path data responses.

Table 2: Flow Path Analytics JSON Response Data: Path Object Elements

Element Name

Description

HOP

(Numeric) Number identifying the position of node in the path.

DevMEMUtil

(Numeric, decimal) Memory utilization of the node expressed as a percentage.

DevCPUUtil

(Numeric, decimal) CPU utilization of the node expressed as a percentage.

Bandwidth_Counter

(Numeric) Counter to track the flow packet count at the node.

Bandwidth_ID

(Numeric) Bandwidth measurement ID to track reset of bandwidth filters.

Latency

(Numeric, decimal) Latency for the node from CA server.

DevName

(String) Node name.

DevSerialID

(String) Node serial id.

TIMESTAMP

Timestamp object representing the time at which flow packet was received at the node. See Table 3.

IngressIFLAttribute

Ingress Logical Interface Attribute data object. See Table 4.

EgressIFLAttribute

Egress Logical Interface Attribute data object. See Table 5.

Table 3 lists the elements in the Timestamp data object of the Path data object in flow path data responses.

Table 3: Flow Path Analytics JSON Response Data: Timestamp Object Elements

Element Name

Description

TimeStamp

(Numeric) Seconds portion of the timestamp.

TimeStamp_usec

(Numeric) Microseconds portion of the timestamp.

Type

(String) Timestamp type. Accepted values are “PTP”, “LCPU” or “NTP”.

Table 4 lists the elements in the Ingress Logical Interface Attribute data object, part of the Path data object of flow path data responses.

Table 4: Flow Path Analytics JSON Response Data: Ingress Logical Interface Attribute Object Elements

Element Name

Description

IFLList

List of Logical Interface data objects. See Table 8.

Table 5 lists the elements in the Egress Logical Interface Attribute data object, part of the Path data object of flow path data responses.

Table 5: Flow Path Analytics JSON Response Data: Egress Logical Interface Attribute Object Elements

Element Name

Description

L3Ecmp

Layer 3 ECMP data object. See Table 6.

Table 6 lists the elements in the Layer 3 ECMP data object in the Egress Logical Interface Attribute data object (part of the Path data object) in flow path data responses.

Table 6: Flow Path Analytics JSON Response Data: Layer 3 ECMP Object Elements

Element Name

Description

IFLList

List of Logical Interface data objects. See Table 8.

NumBuckets

(Numeric) Number of buckets in the ECMP.

L2EcmpList

List of Layer 2 ECMP data objects. See Table 7.

Table 7 lists the elements in the Layer 2 ECMP List data object within the Layer 3 ECMP data object of flow path data responses.

Table 7: Flow Path Analytics JSON Response Data: Layer 2 ECMP List Object Elements

Element Name

Description

AE_IFL_NAME

(String) Aggregated logical interface name.

NumBuckets

(Numeric) Number of buckets in the ECMP.

IFLList

List of Logical Interface data objects. See Table 8.

Table 8 lists the elements in the Logical Interface data object (part of the Layer 2 ECMP and Layer 3 ECMP data objects) of flow path data responses.

Table 8: Flow Path Analytics JSON Response Data: Logical Interface Object Elements

Element Name

Description

IFLName

(String) Interface name.

IFLStats

Interface Packet Statistics data object. See Table 9.

Table 9 lists the elements in the Interface Packet Statistics data object (part of the Logical Interface data object) of flow path data responses.

Table 9: Flow Path Analytics JSON Response Data: Interface Packet Statistics Object Elements

Element Name

Description

TX_PKTS

(Numeric) Total transmitted (Tx) packets on the interface.

RX_PKTS

(Numeric) Total received (Rx) packets on the interface.

TX_UCPKTS

(Numeric) Total number of egress/transmitted unicast packets on the interface.

RX_UCPKTS

(Numeric) Total number of ingress/received unicast packets on the interface.

TX_BCPKTS

(Numeric) Total number of outgoing broadcast packets.

RX_BCPKTS

(Numeric) Total number of incoming broadcast packets.

TX_MCPKTS

(Numeric) Total outgoing multicast packets.

RX_MCPKTS

(Numeric) Total incoming multicast packets.

TX_PPS

(Numeric) Transmit bandwidth (packets per second).

RX_PPS

(Numeric) Receive bandwidth (packets per second).

TX_CRCERROR

(Numeric) Total CRC align errors while transmitting.

RX_CRCERROR

(Numeric) Total CRC align errors while receiving.

TX_DROPPKT

(Numeric) Cumulative Tx packet drop in all the queues for the interface.

RX_DROPPKT

(Numeric) Ingress Rx packet drops on the interface. This could be due to a buffer full condition.

TX_BYTES

(Numeric) Total transmit bytes.

RX_BYTES

(Numeric) Total receive bytes.

TX_BW

(Numeric) Transmit bandwidth (bytes per second), the average rate at which packet bytes are transmitted.

RX_BW

(Numeric) Receive bandwidth (bytes per second), the average rate at which packet bytes are received.

Tunnel Data Compute Agent API Example

This example shows the JSON-format response data returned from a CA API request to retrieve tunnel flow data results for the specified tunnel. See GET data/tunnel Resource for details on response data elements.

Also see GET start/tunnel Resource for request parameters you can use to specify different options for the data collection when setting up the tunnel flow.

Start a tunnel flow data collection with these parameters (GET start/tunnel request):

http://10.94.201.11:8080/start/tunnel?src=10.1.1.1&sport=4567&

vnid=5&dst=10.1.7.1&appdst=10.1.2.5&appdmac=44:1e:a1:02:25:c0&dport=9000&appsrc=10.1.2.3&

appsmac=9c:8e:99:12:88:2e

Request collected data for the tunnel flow (GET data/tunnel request):

http://10.94.201.11:8080/data/tunnel?src=10.1.1.1&sport=4567&vnid=5&

dst=10.1.7.1&appdst=10.1.2.5&appsrc=10.1.2.3

Response data: