Chapter 1. Overview

- About ELAM Assistant

About ELAM Assistant

The Embedded Logic Analyzer Module (ELAM) is a tool that assists in looking into the treatment given by the ASICs to an individual packet and how that packet is being forwarded. The tool is part of the forwarding pipeline of the ASICs and can capture packets in real time without affecting performance or control plane resources. ELAM is primarily an internal debug CLI tool for Cisco TAC. It requires knowledge of internal architecture of various types of Cisco ASIC. ELAM Assistant provides a way through the APIC GUI for users to perform the packet capture with ELAM, without any special knowledge. Starting from APIC release 6.1.2, ELAM Assistant has become a functionality that is available on APIC. Prior to 6.1.2, ELAM Assistant was available as an application of Cisco AppCenter that can be optionally installed on APIC. This document focuses on ELAM Assistant that is natively embeded in APIC from 6.1.2 or newer version.

In a Cisco Application Centric Infrastructure (ACI) fabric switch, ELAM can help determine if the packet reached the forwarding engine, what are the packet properties, was the packet dropped, is the policy applied to the packet, which policy is applied to the packet, and much more. ELAM is extremely powerful, granular, and non-intrusive.

Chapter 2. Running the ELAM Assistant

- Capture the Packet with ELAM Assistant

Capture the Packet with ELAM Assistant

In the welcome screen of ELAM Assistant accessed in Step 1 below, there is the "How To Use" section that shows the steps to use ELAM Assistant. In this document, we explain those steps with more details.

Procedure

Step 1

Log in to APIC and click Operations > ELAM Assistant.

Step 2

Click Initialize in the center of the screen. When done, Ready appears with a check mark.

Launching ELAM Assistant

Step 3

In the left banner, click Capture (Perform ELAM). The ELAM Parameters dialog box appears.

Step 4

On top-right of the ELAM Parameters dialog box, click Add Node to display a drop-down list. Choose the node for non-modular switches or the slot for modular switches. Repeat as needed. This will add the node with 6 columns.

Add Node Parameter Settings

- Status—ELAM status of the selected node/slot. There are 7 possible statuses. Until you run Set ELAM(s), the Status will show Not Set.

- Not Set—This status appears before you click Set Elam(s) for that node-slot.

- Setting—When you click Set ELAM(s), ELAM is being set with the specified parameters on the selected switches.

- Set—This status indicates that the ELAM triggers are set, but no packet capture is seen. This can occur if the packet flow is not active at the time of the ELAM getting set. However, you have the option to click Check Trigger to see if a packet that originally is not seen, but is seen somewhat later when you click the Check Trigger button. This is useful in the case where the flow is not continuous.

- Generating Report—If the ELAM is triggered for that node, then the report is generated on the switch.

- Parsing Report—After generation, the report is saved on Cisco APIC and then parsed, based on the data collected during the initialization in Step 2.

- Report Ready—When the ELAM report parsing is complete, the status is changed to Report Ready. This will be a button that, when clicked, displays the parsed report at the bottom of capture view.

- Failed—This status occurs when there is a failure in setting or parsing the ELAM report.

- Node – the ID of the selected node / slot.

- Direction – The direction of the packet to be captured from the view of the selected node / slot.

- Source I/F – The interface of the selected node/slot from which the packet is expected to come.

- Parameters – The parameters of the packet to be captured such as destination IP.

- VxLAN (outer) header – When the packet to be captured is encapsulated in a VxLAN header, you can specify the parameter of the outer header form here.

Note

You can also use Quick Add instead of Add Node to choose multiple switches with the same capture.

Note

- Because leaf switches will have only 1 line card, it will appear only once. The non-modular spine will also appear only once. However, in a modular spine, if there are "n" number of line cards and "m" number fabric cards, it will show the spine (n + m) for each of these slots and their associated slot numbers.

See details for Direction (in step 7), Source I/F (in step 8), Parameters (in step 9) and VxLAN (outer) header in step 10.

Step 5

(Optional) In the Name your capture text box, enter a unique name for your capture. Naming the capture enables you to look up the ELAM reports.

Step 6

From the Direction column, click the drop-down list to choose the direction of the captured packet.

This enables you to specify from which direction the packet on the node is expected to come from—for a leaf switch. The options are:

- From downlink—This means the packet is reaching this switch from one of the downlinks connected to an external device.

- From downlink (VxLAN)—This means that the packet is reaching this switch with a VXLAN encapsulation from one of the downlinks connected to an external device. When you select this option, you can specify the VxLAN parameters in Step 10 which are the parameters in the outer header such as VXLAN VNID and destination VTEP address (the destination IP address in the outer header).

- From fabric link—This means that the packet is reaching this device from another ACI switch in the same fabric. Links between ACI switches are referred to as fabric links. Such packets are encapsulated in a VxLAN header. You can specify the VxLAN parameters in Step 10 just as "From downlink (VxLAN)" does.

Step 7

From the Direction column, click the drop-down list to choose the direction of the spine switch:

For spine switches, you can always specify VxLAN parameters in Step 10 below, regardless of the direction you select in this step because the packet going through a spine is always encapsulated in a VxLAN header.

For a non-modular spine switch or a line card of a modular spine switch, there are two options:

- From LEAF/IPN—This means that the packet is coming in to the spine switch (or its line card) from a leaf switch or from an IPN/ISN device.

- To LEAF/IPN—This means that the packet is going out from the spine switch (or its line card) towards a leaf switch or an IPN/ISN device. If this option is given for a line card of a modular spine, the available options for Source I/F in Step 8 below will be any or one of the the internal interfaces between the line card and the fabric module on the spine. If you captured the packet on the fabric module, the ELAM report should show which internal interface was used to send the packet from the fabric module to the line card. If you need the details of these internal interfaces, please consult with Cisco TAC, or use the any option for Source I/F.

For a fabric module of a modular spine, there is only one available option: from linecard. This means that the packet is coming from one of the line cards on the same spine switch. Just as the To LEAF/IPN option does for a line card, this option changes the Source I/F to an internal interface between a line card and a fabric module.

Step 8

From the Source I/F column, click the drop-down list and specify the source interface on which the packet is ingress for a node. This will be translated to hardware source identifier within the ASIC and applied as an ELAM trigger filter. The selection of source interface depends on the Direction you set. The default is any which can capture the packet from any of the interfaces that match the direction.

Step 9

For the Parameters column, set the parameters of the packet to be captured. Click the + icon to choose the specific parameter to set. You can choose multiple parameters.

ELAM Assistant currently supports basic parameters in packet headers of L2, IPV4, L4 and ARP. For example, source MAC address and destination MAC address for L2 header, source IP address, destination IP address, IP protocol number, etc., for IPv4 header, ARP target IP, ARP sender IP ARP opcode etc., for ARP header.

Step 10

Specify the VxLAN (outer) header.

From the VxLAN (outer) header column, you can specify the parameter of the VxLAN header along with the outer IPv4 and outer L2 header that encapsulate the packet with the parameter specified (if any) in the previous step. This option is available only for a certain set of directions for which VxLAN encapsulation is expected. When this option is available, click the + icon to choose the specific parameter to set. Use the drop-down menu. You can choose multiple parameters.

ELAM Assistant currently supports basic VxLAN parameters such as VxLAN VNID, source and destination IPv4 address in the outer header, that is VTEP address.

Step 11

Alterntively, you can use Quick Add to specify the ELAM parameters. The Quick Add dialog appears.

Using Quick Add

When using Quick Add, you can set all the ELAM Parameters for multiple switches.

Step 12

Once you select all the switches and the parameters of the packet to be captured, click Set ELAM to set the ELAM capture on the switch(es).

Note

This transitions the Status of each switch to Setting, then Set. If ELAM captured the packet immediately, the status transitions to Generating Report, Parsing Report, then Report Ready.

Step 13

Once the ELAM is set on all selected switches, wait for the packet to be sent and for the ELAM capture to be triggered. Then click Check Trigger to see whether the packet was captured. If the packet with the specified parameters was found and the ELAM capture was triggered on the switch, the status of the switch transitions to Generating Report, Parsing Report, then Report Ready. If the packet has yet to be captured, the status goes back to Set. Wait a few seconds more or until the packet is sent from the client, then click Check Triggeragain. If the packet has yet to be captured, it indicates that the packet with the specified parameters hasn't reached the switch.

Step 14

Click the Report Ready status of one of the switches to read the ELAM report, displayed at the bottom under ELAM Report Parse Result.

ELAM Report Parse, Express Tab

You will primarily use the Express tab content of the report.

We have three tabs (Express, Details, and Raw). Express is the simplified report with which users without any ASIC-specific knowledge can understand what exactly happened to the packet. Details is for advanced users such as Cisco TAC who have detailed ASIC-level knowledge. Raw is the raw output of the report just in case some corner case field hasn't been captured in the Detailed view.

Step 15

To see the reports that were performed in the past, click node-<ID> (<node name>)from the left banner. Now you can see the list of previous reports with the name you specified in the step Name your capture, along with its timestamp of when the report was generated. Note that the name of the report has the pre-defined prefix in front of the name you speficied. Click the Parse button of the report to read its contents. To delete the report, click the trash bin icon on the right.

Note

If you didn't specify a name or use the Name your Capture field, the previous report with the same name gets overwrittten.

Preface

This preface includes the following sections:

- Audience

- Document Conventions

- Related Documentation

- Documentation Feedback

- Obtaining Documentation and Submitting a Service Request

Audience

This guide is intended primarily for data center administrators with responsibilities and expertise in one or more of these:

- Virtual machine installation and administration

- Server administration

- Switch and network administration

- Cloud administration

Document Conventions

Command descriptions use these conventions:

Convention

Description

bold

Bold text indicates the commands and keywords that you enter literally as shown.

Italic

Italic text indicates arguments for which the user supplies the values.

[x]

Square brackets enclose an optional element (keyword or argument).

[x | y]

Square brackets enclosing keywords or arguments separated by a vertical bar indicate an optional choice.

{x | y}

Braces enclosing keywords or arguments separated by a vertical bar indicate a required choice.

[x {y | z}]

Nested set of square brackets or braces indicate optional or required choices within optional or required elements. Braces and a vertical bar within square brackets indicate a required choice within an optional element.

variable

Indicates a variable for which you supply values, in context where italics cannot be used.

string

A nonquoted set of characters. Do not use quotation marks around the string or the string will include the quotation marks.

Examples use these conventions:

Convention

Description

screen font

Terminal sessions and information the switch displays are in screen font.

boldface screen font

Information you must enter is in boldface screen font.

italic screen font

Arguments for which you supply values are in italic screen font.

< >

Nonprinting characters, such as passwords, are in angle brackets.

[ ]

Default responses to system prompts are in square brackets.

!, #

An exclamation point (!) or a pound sign (#) at the beginning of a line of code indicates a comment line.

This document uses these conventions:

Note

Means reader take note. Notes contain helpful suggestions or references to material not covered in the manual.

Caution

Means reader be careful. In this situation, you might do something that could result in equipment damage or loss of data.

Warning

IMPORTANT SAFETY INSTRUCTIONS

This warning symbol means danger. You are in a situation that could cause bodily injury. Before you work on any equipment, be aware of the hazards involved with electrical circuitry and be familiar with standard practices for preventing accidents. Use the statement number provided at the end of each warning to locate its translation in the translated safety warnings that accompanied this device.

SAVE THESE INSTRUCTIONS

Related Documentation

Cisco Application Centric Infrastructure (ACI) Documentation

The broader Cisco ACI documentation is available at the following URL: http://www.cisco.com/c/en/us/support/cloud-systems-management/application-policy-infrastructure-controller-apic/tsd-products-support-series-home.html.

Cisco Application Centric Infrastructure (ACI) Simulator Documentation

The Cisco ACI Simulator documentation is available at http://www.cisco.com/c/en/us/support/cloud-systems-management/application-centric-infrastructure-simulator/tsd-products-support-series-home.html.

Cisco Nexus 9000 Series Switches Documentation

The Cisco Nexus 9000 Series Switches documentation is available at http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/tsd-products-support-series-home.html.

Documentation Feedback

To provide technical feedback on this document, or to report an error or omission, please send your comments to apic-docfeedback@cisco.com. We appreciate your feedback.

Obtaining Documentation and Submitting a Service Request

For information on obtaining documentation, using the Cisco Bug Search Tool (BST), submitting a service request, and gathering additional information, see What's New in Cisco Product Documentation at: https://www.cisco.com/c/en/us/td/docs/general/whatsnew/whatsnew.html

Subscribe to What’s New in Cisco Product Documentation, which lists all new and revised Cisco technical documentation as an RSS feed and delivers content directly to your desktop using a reader application. The RSS feeds are a free service.