목차

소개

토폴로지

인그레스 포워딩 엔진 확인

트리거 구성

캡처 시작

결과 해석

추가 확인

소개

이 문서에서는 Cisco Nexus 7000(N7K) M 시리즈 모듈에서 ELAM을 수행하는 데 사용되는 단계에 대해 설명하고, 가장 관련성이 높은 출력을 설명하고, 결과를 해석하는 방법에 대해 설명합니다.

팁:ELAM에 대한 개요는 ELAM 개요 문서를 참조하십시오.

토폴로지

이 예에서 VLAN 2500(10.0.5.101)의 호스트 포트 Eth4/1은 VLAN 55(10.0.3.101), 포트 Eth3/5의 호스트에 ICMP(Internet Control Message Protocol) 요청을 보냅니다. ELAM은 이 단일 패킷에서 이 10.0.5.101 패킷으로 캡처하기 위해 사용됩니다. 10.0.3.101. ELAM을 사용하면 단일 프레임을 캡처할 수 있다는 점을 기억해야 합니다.

N7K에서 ELAM을 수행하려면 먼저 해당 모듈에 연결해야 합니다(네트워크 관리자 권한이 필요함).

N7K# attach module 4

Attaching to module 4 ...

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

module-4#

인그레스 포워딩 엔진 확인

트래픽은 포트 Eth4/1에서 스위치를 인그레스(ingress)할 것으로 예상됩니다. 시스템에서 모듈을 확인하면 모듈 4가 M 시리즈 모듈임을 확인할 수 있습니다.N7K는 완전히 분산되어 있으며, 수퍼바이저가 아닌 모듈이 데이터 플레인 트래픽에 대해 포워딩 결정을 내린다는 점을 기억해야 합니다.

N7K# show module

Mod  Ports  Module-Type                         Model              Status

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

3    32     10 Gbps Ethernet Module             N7K-M132XP-12      ok

4    48     10/100/1000 Mbps Ethernet Module    N7K-M148GT-11      ok

5    0      Supervisor module-1X                N7K-SUP1           active *

6    0      Supervisor module-1X                N7K-SUP1           ha-standby

M 시리즈 모듈의 경우 내부 코드 이름 Eureka를 사용하여 L2(Layer 2) Forwarding Engine(FE)에서 ELAM을 수행합니다.L2 FE 데이터 버스(DBUS)에는 L2 및 L3(Layer 3) 조회 이전의 원래 헤더 정보가 포함되며 RBUS(Result Bus)에는 L3 및 L2 조회 후의 결과가 포함됩니다.L3 조회는 Supervisor Engine 2T를 실행하는 Cisco Catalyst 6500 Series 스위치 플랫폼에서 사용되는 것과 동일한 프로세스인 내부 코드명 Lamira와 함께 L3/Layer 4(L4) FE에서 수행됩니다.

N7K M-Series 모듈은 각 모듈에 대해 여러 FE를 사용할 수 있으므로 포트 Eth4/1의 FE에 사용되는 Eureka ASIC을 확인해야 합니다. 이 명령을 입력하여 다음을 확인하십시오.

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

(some output omitted)

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

CARD_TYPE:         48 port 1G

>Front Panel ports:48

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

Device name             Dev role              Abbr num_inst:

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

> Eureka                 DEV_LAYER_2_LOOKUP     L2LKP  1

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

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

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

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

1     0      0      0      0      0      0      0      0

2     0      0      0      0     0      0      0      0

출력에서 포트 Eth4/1이 Eureka(L2LKP) 인스턴스 0에 있는 것을 확인할 수 있습니다.

참고:M 시리즈 모듈의 경우 ELAM 구문은 1 기반 값을 사용하므로 ELAM을 구성할 때 인스턴스 0이 인스턴스 1이 됩니다.F-Series 모듈에는 해당되지 않습니다.

module-4# elam asic eureka instance 1

module-4(eureka-elam)#

트리거 구성

Eureka ASIC는 IPv4, IPv6 등에 대한 ELAM 트리거를 지원합니다.ELAM 트리거는 프레임 유형에 맞춰 정렬되어야 합니다.프레임이 IPv4 프레임인 경우 트리거도 IPv4여야 합니다. IPv4 프레임은 다른 트리거와 함께 캡처되지 않습니다.IPv6에도 동일한 논리가 적용됩니다.

NX-OS(Nexus Operating Systems)를 사용하면 물음표 문자를 사용하여 ELAM 트리거를 구분할 수 있습니다.

module-4(eureka-elam)# trigger dbus dbi ingress ipv4 if ?

(some output omitted)

destination-flood         Destination Flood

destination-index         Destination Index

destination-ipv4-address  Destination IP Address

destination-mac-address   Destination MAC Address

ip-tos                    IP TOS

ip-total-len              IP Total Length

ip-ttl                    IP TTL

source-mac-address        Source MAC Address

vlan-id                   Vlan ID Number

이 예에서는 소스 및 대상 IPv4 주소에 따라 프레임이 캡처되므로 해당 값만 지정됩니다.

Eureka는 DBUS 및 RBUS에 대해 트리거가 설정되어야 합니다.RBUS 데이터가 상주할 수 있는 두 가지 다른 PB(Packet Buffers)가 있습니다.정확한 PB 인스턴스의 결정은 정확한 모듈 유형 및 인그레스 포트에 따라 달라집니다.일반적으로 PB1을 구성하는 것이 좋습니다. RBUS가 트리거되지 않으면 PB2로 컨피그레이션을 반복합니다.

다음은 DBUS 트리거입니다.

module-4(eureka-elam)# trigger dbus dbi ingress ipv4 if source-ipv4-address

10.0.5.101 destination-ipv4-address 10.0.3.101 rbi-corelate

다음은 RBUS 트리거입니다.

module-4(eureka-elam)# trigger rbus rbi pb1 ip if cap2 1

참고:RBUS가 cap2 비트에서 올바르게 트리거되려면 DBUS 트리거 끝에 있는 rangrelate 키워드가 필요합니다.

캡처 시작

인그레스 FE가 선택되고 트리거를 구성했으므로 캡처를 시작할 수 있습니다.

module-4(eureka-elam)# start

ELAM의 상태를 확인하려면 status 명령을 입력합니다.

module-4(eureka-elam)# status

Instance: 1

EU-DBUS: Armed

trigger dbus dbi ingress ipv4 if source-ipv4-address 10.0.5.101

destination-ipv4-address 10.0.3.101 rbi-corelate

EU-RBUS: Armed

trigger rbus rbi pb1 ip if cap2 1

LM-DBUS: Dis-Armed

No configuration

LM-RBUS: Dis-Armed

No configuration

FE에서 트리거와 일치하는 프레임을 수신하면 ELAM 상태가 트리거됨으로 표시됩니다.

module-4(eureka-elam)# status

Instance: 1

EU-DBUS: Triggered

trigger dbus dbi ingress ipv4 if source-ipv4-address 10.0.5.101

destination-ipv4-address 10.0.3.101 rbi-corelate

EU-RBUS: Triggered

trigger rbus rbi pb1 ip if cap2 1

LM-DBUS: Dis-Armed

No configuration

LM-RBUS: Dis-Armed

No configuration

결과 해석

ELAM 결과를 표시하려면 show dbus 및 show rbus 명령을 입력합니다.동일한 트리거와 일치하는 트래픽이 많은 경우 DBUS와 RBUS가 다른 프레임에서 트리거될 수 있습니다.따라서 DBUS 및 RBUS 데이터의 내부 시퀀스 번호가 일치하는지 확인하는 것이 중요합니다.

module-4(eureka-elam)# show dbus | i seq

seq = 0x05

module-4(eureka-elam)# show rbus | i seq

seq = 0x05

다음은 이 예제와 가장 관련이 있는 ELAM 데이터의 발췌문입니다(일부 출력은 생략됨).

module-4(eureka-elam)# show dbus

seq = 0x05

vlan = 2500

source_index = 0x00a21

l3_protocol = 0x0   (0:IPv4, 6:IPv6)

l3_protocol_type = 0x01, (1:ICMP, 2:IGMP, 4:IP, 6:TCP, 17:UDP)

dmac = 00.00.0c.07.ac.65

smac = d0.d0.fd.b7.3d.c2

ip_ttl = 0xff

ip_source = 010.000.005.101

ip_destination = 010.000.003.101

module-4(eureka-elam)# show rbus

seq = 0x05

flood = 0x0

dest_index = 0x009ed

vlan = 55

ttl = 0xfe

data(rit/dmac/recir) = 00.05.73.a9.55.41

data(rit/smac/recir) = 84.78.ac.0e.47.41

DBUS 데이터를 사용하면 소스 MAC 주소가 d0d0.fdb7.3dc2이고 대상 MAC 주소가 0000.0c07.ac65인 프레임이 VLAN 2500에서 수신되었는지 확인할 수 있습니다. 또한 이 프레임이 10.0.00.100에서 소싱된 IPv4 프레임임을 확인할 수 있습니다. 1, 10.0.3.101로 정해집니다.

팁:TOS(Type of Service) 값, IP 플래그, IP 길이, L2 프레임 길이와 같이 이 출력에 포함되지 않은 기타 여러 유용한 필드가 있습니다.

프레임이 수신되는 포트를 확인하려면 SRC_INDEX 명령(소스 LTL(Local Target Logic))을 입력합니다. LTL을 N7K의 포트 또는 포트 그룹에 매핑하려면 다음 명령을 입력합니다.

N7K# show system internal pixm info ltl 0xa21

Member info

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

Type            LTL

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

PHY_PORT       Eth4/1

FLOOD_W_FPOE   0x8014

출력은 0xa21의 SRC_INDEX가 포트 Eth4/1에 매핑되는 것을 보여줍니다. 이렇게 하면 프레임이 포트 Eth4/1에서 수신되었음을 확인합니다.

RBUS 데이터를 사용하여 프레임이 VLAN 55로 라우팅되고 DBUS 데이터의 0xff에서 RBUS 데이터의 0xfe로 감소되었는지 확인할 수 있습니다.소스 및 대상 MAC 주소가 각각 8478.ac0e.4741 및 0005.73a9.5541로 재작성되는 것을 확인할 수 있습니다.또한 DEST_INDEX(대상 LTL)에서 이그레스 포트를 확인할 수 있습니다.

N7K# show system internal pixm info ltl 0x9ed

Member info

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

Type            LTL

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

PHY_PORT       Eth3/5

FLOOD_W_FPOE   0x8017

FLOOD_W_FPOE   0x8016

출력은 0x9ed의 DEST_INDEX가 포트 Eth3/5에 매핑되는 것을 보여줍니다. 이렇게 하면 프레임이 포트 Eth3/5에서 전송됨을 확인합니다.

추가 확인

스위치가 LTL 풀을 할당하는 방법을 확인하려면 show system internal pixm info ltl-region 명령을 입력합니다.이 명령의 출력은 LTL이 물리적 포트와 일치하지 않을 경우 LTL의 목적을 파악하는 데 유용합니다.대표적인 예가 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