Inhalt

Einführung

Topologie

Bestimmen der Eingangs-Weiterleitungs-Engine

Konfigurieren des Triggers

Erfassen starten

Interpretieren der Ergebnisse

Zusätzliche Überprüfung

Einführung

In diesem Dokument werden die Schritte zum Durchführen eines ELAM auf einem Cisco Nexus 7000 (N7K) F2-Modul beschrieben, die relevantesten Ergebnisse erläutert und die Interpretation der Ergebnisse beschrieben.

Tipp: Eine Übersicht über ELAM finden Sie im ELAM-Übersichtsdokument.

Topologie

In diesem Beispiel sendet ein Host im VLAN 10 (10.1.101 mit der MAC-Adresse 0050.56a1.1a01) Port Eth6/4 eine ICMP-Anfrage (Internet Control Message Protocol) an einen Host, der sich ebenfalls im VLAN 10 (11 befindet 0.1.1.102 mit MAC-Adresse 0050.56a1.1aef), Port Eth6/3. ELAM wird verwendet, um diesen Einzelrahmen von 10.1.1.101 bis 10.1.1.102 zu erfassen. Es ist wichtig zu beachten, dass ELAM Ihnen ermöglicht, nur einen Frame zu erfassen.

Um ein ELAM auf dem N7K auszuführen, müssen Sie zunächst eine Verbindung mit dem entsprechenden Modul herstellen (hierfür ist die Netzwerk-Admin-Berechtigung erforderlich):

N7K# attach module 6

Attaching to module 6 ...

To exit type 'exit', to abort type '$.'

module-6#

Bestimmen der Eingangs-Weiterleitungs-Engine

Es wird erwartet, dass der Switch an Port Eth6/4 eingeht. Wenn Sie die Module im System überprüfen, sehen Sie, dass Modul 6 ein F2-Modul ist. Es ist wichtig zu beachten, dass das N7K vollständig verteilt ist und dass die Module, nicht der Supervisor, die Weiterleitungsentscheidungen für Datenverkehr auf der Datenebene treffen.

N7K# show module 6

Mod  Ports  Module-Type                 Model              Status

---  -----  --------------------------- ------------------ -------

6    48     1/10 Gbps Ethernet Module   N7K-F248XP-25E     ok

Führen Sie bei F2-Modulen ELAM auf der Layer 2 (L2) Forwarding Engine (FE) mit internem Codename Clipper durch. Beachten Sie, dass der L2 FE Data Bus (DBUS) die ursprünglichen Headerinformationen vor den L2- und L3-Suchläufen enthält, und der Result Bus (RBUS) die Ergebnisse nach L3- und L2-Suchläufen enthält.

Das N7K F2 verfügt über 12 FEs pro Modul. Sie müssen daher den Clipper-ASIC bestimmen, der für die FE an Port Eth6/4 verwendet wird. Geben Sie diesen Befehl ein, um Folgendes zu überprüfen:

module-6# show hardware internal dev-port-map

--------------------------------------------------------------

CARD_TYPE:         48 port 10G

>Front Panel ports:48

--------------------------------------------------------------

Device name             Dev role              Abbr num_inst:

--------------------------------------------------------------

> Clipper FWD            DEV_LAYER_2_LOOKUP     L2LKP  12

+-----------------------------------------------------------------------+

+----------------+++FRONT PANEL PORT TO ASIC INSTANCE MAP+++------------+

+-----------------------------------------------------------------------+

FP port |  PHYS | MAC_0 | L2LKP | L3LKP | QUEUE |SWICHF

...

3       0       0       0       0       0       0

4       0       0       0       0       0       0

In der Ausgabe sehen Sie, dass Port Eth6/4 auf Clipper (L2LKP) Instanz 0 ist.

module-6# elam asic clipper instance 0

module-6(clipper-elam)# layer2

module-6(clipper-l2-elam)#

Konfigurieren des Triggers

Der Clipper-ASIC unterstützt ELAM-Trigger für mehrere Frame-Typen. Der ELAM-Trigger muss dem Frametyp entsprechen. Wenn der Frame ein IPv4-Frame ist, muss der Trigger auch IPv4 sein. Ein IPv4-Frame wird nicht mit einem anderen Trigger erfasst. Dieselbe Logik gilt für IPv6.

Der Clipper-ASIC unterstützt die folgenden Frame-Typen:

module-6(clipper-l2-elam)# trigger dbus ?

arp    ARP Frame Format

fc     Fc hdr Frame Format

ipv4   IPV4 Frame Format

ipv6   IPV6 Frame Format

other  L2 hdr Frame Format

pup    PUP Frame Format

rarp   Rarp hdr Frame Format

valid  On valid packet

Bei Nexus Operating Systems (NX-OS) können Sie das Fragezeichen verwenden, um den ELAM-Trigger zu trennen. Für das ELAM des F2-Moduls stehen mehrere Optionen zur Verfügung:

module-6(clipper-l2-elam)# trigger dbus ipv4 ingress if ?

<CR>

destination-ipv4-address         destination ipv4 address

destination-mac-address          Inner destination mac address

source-index                     Source index

source-ipv4-address              source ipv4 address

source-mac-address               Inner source mac address

vlan                             Vlan

etc?

In diesem Beispiel wird der Frame basierend auf der Quell- und Ziel-IPv4-Adresse erfasst, sodass nur diese Werte angegeben werden.

Der Clipper erfordert, dass Trigger für das DBUS und das RBUS festgelegt werden. Dies unterscheidet sich von Modulen der M-Serie, da Sie keine Paketpuffer-Instanz angeben müssen. Dies vereinfacht den RBUS-Trigger.

Der DBUS-Trigger ist wie folgt:

module-6(clipper-l2-elam)# trigger dbus ipv4 ingress if source-ipv4-address

10.1.1.101 destination-ipv4-address 10.1.1.102

Der folgende RBUS-Trigger:

module-6(clipper-l2-elam)# trigger rbus ingress if trig

Erfassen starten

Nachdem der Eingangs-FE ausgewählt und der Trigger konfiguriert wurde, können Sie die Erfassung starten:

module-6(clipper-l2-elam)# start

Um den Status des ELAM zu überprüfen, geben Sie den Status-Befehl ein:

module-6(clipper-l2-elam)# status

ELAM instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if

source-ipv4-address 10.1.1.101 destination-ipv4-address 10.1.1.102

L2 DBUS Armed

ELAM instance 0: L2 RBUS Configuration: trigger rbus ingress if trig

L2 RBUS Armed

Sobald der Frame, der zum Trigger passt, von der FE empfangen wird, wird der ELAM-Status als Triggered angezeigt:

module-6(clipper-l2-elam)# status

ELAM instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if

source-ipv4-address 10.1.1.101 destination-ipv4-address 10.1.1.102

L2 DBUS Triggered

ELAM instance 0: L2 RBUS Configuration: trigger rbus ingress if trig

L2 RBUS Triggered

Interpretieren der Ergebnisse

Um die ELAM-Ergebnisse anzuzeigen, geben Sie die Befehle show dbus und show rbus ein. Im Folgenden finden Sie den Auszug aus den ELAM-Daten, der für dieses Beispiel am relevantesten ist (einige Ausgabe wird weggelassen):

module-6(clipper-l2-elam)# show dbus

--------------------------------------------------------------------

L2 DBUS CONTENT - IPV4 PACKET

--------------------------------------------------------------------

...

vlan                : 0xa             destination-index   : 0x0

source-index        : 0x3             bundle-port         : 0x0

sequence-number     : 0x3f            vl                  : 0x0

...

source-ipv4-address: 10.1.1.101

destination-ipv4-address: 10.1.1.102

destination-mac-address: 0050.56a1.1aef

source-mac-address: 0050.56a1.1a01

module-6(clipper-l2-elam)#  show rbus

--------------------------------------------------------------------

L2 RBUS INGRESS CONTENT

--------------------------------------------------------------------

l2-rbus-trigger     : 0x1             sequence-number     : 0x3f

di-ltl-index        : 0x2             l3-multicast-di     : 0x0

source-index        : 0x3             vlan-id             : 0xa

Mithilfe der DBUS-Daten können Sie überprüfen, ob der Frame in VLAN 10 (VLAN: 0xa) mit der Quell-MAC-Adresse 0050.56a1.1a01 und der Ziel-MAC-Adresse 0050.56a1.1aef. Sie können auch sehen, dass es sich um einen IPv4-Frame handelt, der von 10.1.1.101 stammt und für 10.1.1.102 bestimmt ist.

Tipp: In dieser Ausgabe sind mehrere andere nützliche Felder nicht enthalten, z. B. der Wert für den Type of Service (TOS), IP-Flags, die IP-Länge und die L2-Frame-Länge.

Um zu überprüfen, an welchem Port der Frame empfangen wird, geben Sie den Befehl SRC_INDEX (die Quelle Local Target Logic (LTL)) ein. Geben Sie diesen Befehl ein, um eine LTL einem Port oder einer Port-Gruppe für das N7K zuzuordnen:

N7K# show system internal pixm info ltl 0x3

Type            LTL

---------------------------------

PHY_PORT       Eth6/4

Die Ausgabe zeigt, dass ein Quell-Index von 0x3 Port Eth6/4 zugeordnet ist. Damit wird bestätigt, dass der Frame an Port Eth6/4 empfangen wird.

Mithilfe der RBUS-Daten können Sie überprüfen, ob der Frame auf VLAN 10 (VLAN-ID: 0xa). Zusätzlich können Sie den Ausgangsport vom di-ltl-index (Ziel-LTL) bestätigen:

N7K# show system internal pixm info ltl 0x2

Type            LTL

---------------------------------

PHY_PORT       Eth6/3

Die Ausgabe zeigt, dass ein di-ltl-Index von 0x2 dem Port Eth6/3 zugeordnet ist. Dies bestätigt, dass der Frame von Port Eth6/3 aus geswitcht wird.

Zusätzliche Überprüfung

Um zu überprüfen, wie der Switch den LTL-Pool zuweist, geben Sie den Befehl show system internal pixm info ltl-region ein. Die Ausgabe dieses Befehls ist nützlich, um den Zweck einer LTL zu verstehen, wenn sie nicht einem physischen Port zugeordnet wird. Ein gutes Beispiel hierfür ist ein Drop LTL:

N7K# show system internal pixm info ltl 0x11a0

0x11a0 is not configured

N7K# show system internal pixm info ltl-region

LTL POOL TYPE                          SIZE        RANGE

=====================================================================

DCE/FC Pool                            1024       0x0000 to 0x03ff

SUP Inband LTL                           32       0x0400 to 0x041f

MD Flood LTL                              1       0x0420

Central R/W                               1       0x0421

UCAST Pool                             1536       0x0422 to 0x0a21

PC Pool                                1720       0x0a22 to 0x10d9

LC CPU Pool                              32       0x1152 to 0x1171

EARL Pool                                72       0x10da to 0x1121

SPAN Pool                                48       0x1122 to 0x1151

UCAST VDC Use Pool                       16       0x1172 to 0x1181

UCAST Generic Pool                       30       0x1182 to 0x119f

LISP Pool                                 4       0x1198 to 0x119b

Invalid SI                                1       0x119c to 0x119c

ESPAN SI                                  1       0x119d to 0x119d

Recirc SI                                 1       0x119e to 0x119e

Drop DI                                   2       0x119f to 0x11a0

UCAST (L3_SVI_SI) Region                 31       0x11a1 to 0x11bf

UCAST (Fex/GPC/SVI-ES)       3648       0x11c0 to 0x1fff

UCAST Reserved for Future Use Region   2048       0x2000 to 0x27ff

======================> UCAST MCAST BOUNDARY <======================

VDC OMF Pool                             32       0x2800 to 0x281f