目录

简介

先决条件

要求

使用的组件

背景信息

拓扑

故障排除

验证

相关信息

简介

本文档介绍排除FabricPath故障的基本步骤。

先决条件

要求

Cisco NXOS®建议您了解以下主题：

- 交换矩阵路径

- 中间系统到中间系统(IS-IS)

- 生成树协议 (STP)

- 嵌入式逻辑分析器模块(ELAM)

使用的组件

本文档仅限于Nexus 7000等特定硬件。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

背景信息

FabricPath是一项思科技术，旨在增强以太网网络功能，特别是在大规模数据中心环境中。

以下是Cisco Nexus 7000系列上FabricPath的主要功能和优势：

1. 可扩展性：FabricPath旨在支持大量虚拟端口通道(vPC)，并提供可处理大量主机的高度可扩展的第2层网络，而不受通常与生成树协议(STP)相关的限制。

2. 无环路拓扑：FabricPath消除了FabricPath网络域中的STP需求。这通过使用类似于路由的技术来转发以太网帧(称为多链路透明互联(TRILL))来实现，该技术可防止环路并允许所有路径处于活动状态。

3. 高可用性：使用FabricPath，可以更高效地处理网络拓扑更改，从而缩短融合时间。这增强了整体网络稳定性，并提供了更好的网络可用性。

4. 易于使用：该技术可实现灵活且可扩展的第2层架构，从而简化网络设计。这使网络更易于管理并降低运营复杂性。

5. 等价多路径(ECMP)：FabricPath支持ECMP，可在网络中的任意两点之间使用多个并行路径。这可通过在所有可用路径之间均衡流量来优化带宽利用率。

6. 虚拟化支持：FabricPath为虚拟化数据中心和私有云部署提供理想的基础设施。它能够处理大量虚拟环境，因此非常适合这些类型的应用。

另外需要注意的是，虽然FabricPath提供了许多好处，但最适合其特定优势与网络设计目标一致的环境（例如需要大型、动态且可扩展的第2层域的数据中心）。

拓扑

为简单起见，此拓扑中只显示一个主干和两个枝叶。

模拟交换机ID枝叶A：3101

模拟交换机ID枝叶 D：3102

故障排除

Host 1无法与Host 2通信。

Leaf_A# ping 192.168.10.17

PING 192.168.10.17 (192.168.10.17): 56 data bytes

ping: sendto 192.168.10.17 64 chars, No route to host

Request 0 timed out

ping: sendto 192.168.10.17 64 chars, No route to host

^C

--- 192.168.10.17 ping statistics ---

2 packets transmitted, 0 packets received, 100.00% packet loss

Leaf_A#

1)验证两台主机的MAC地址表是否已正确填充。

Leaf_A# show mac address-table vlan 409

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False , ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN MAC Address Type age Secure NTFY Ports/SWID.SSID.LID

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

* 409 aaaa.aaaa.aaaa dynamic ~~~ F F Po3

<------ Leaf A is not learning the mac address of Host 2

Leaf_A#

Leaf_D# show mac address-table vlan 409

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False , ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN MAC Address Type age Secure NTFY Ports/SWID.SSID.LID

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

* 409 bbbb.bbbb.bbbb dynamic ~~~ F F Po4

409 aaaa.aaaa.aaaa dynamic ~~~ F F 3101.1.65535    <------ Leaf D is correctly learning both Mac Addresses.

Leaf_D#

2)检验路径中涉及的每个接口和vlan的配置。必须启用FabricPath。

Leaf_A# show run fabricpath

!Command: show running-config fabricpath

!Time: Mon Apr 22 23:12:40 2024

version 6.2(12)

install feature-set fabricpath

feature-set fabricpath

vlan 409

mode fabricpath

fabricpath domain default

fabricpath switch-id 301

vpc domain 301

fabricpath switch-id 3101

interface port-channel1

switchport mode fabricpath

interface port-channel2

switchport mode fabricpath

interface Ethernet1/1

switchport mode fabricpath

interface Ethernet1/2

switchport mode fabricpath

Leaf_A#

Leaf_D# show run fabricpath

!Command: show running-config fabricpath

!Time: Mon Apr 22 23:12:40 2024

version 6.2(12)

install feature-set fabricpath

feature-set fabricpath

<--------- FabricPath is not enabled for VLAN 409

fabricpath switch-id 101

vpc domain 302

fabricpath switch-id 3102

interface port-channel1

switchport mode fabricpath

interface port-channel2

switchport mode fabricpath

interface Ethernet1/1

switchport mode fabricpath

interface Ethernet1/2

switchport mode fabricpath

Leaf_D#

Leaf_D#

Spine_A# show run fabricpath

!Command: show running-config fabricpath

!Time: Mon Apr 22 23:12:40 2024

version 6.2(12)

install feature-set fabricpath

feature-set fabricpath

vlan 409

mode fabricpath

fabricpath domain default

fabricpath switch-id 31

vpc domain 101

fabricpath switch-id 1003

interface port-channel1

switchport mode fabricpath

interface port-channel2

switchport mode fabricpath

interface Ethernet1/1

switchport mode fabricpath

interface Ethernet1/2

switchport mode fabricpath

interface Ethernet1/3

switchport mode fabricpath

interface Ethernet1/4

switchport mode fabricpath

Spine_A#

3)验证参与FabricPath的每个设备的交换机ID。

Leaf_A# show fabricpath switch-id local

Switch-Id: 301

System-Id: aaaa.aaaa.b341

Leaf_A#

Leaf_D# show fabricpath switch-id local

Switch-Id: 101

System-Id: bbbb.bbbb.b342

Leaf_D#

Spine_A# show fabricpath switch-id local

Switch-Id: 31

System-Id: cccc.cccc.b343

Spine_A#

4)检验是否为每台设备的交换机ID配置了正确的路由。

Leaf_A# show fabricpath route switchid 101

FabricPath Unicast Route Table

'a/b/c' denotes ftag/switch-id/subswitch-id

'[x/y]' denotes [admin distance/metric]

ftag 0 is local ftag

subswitch-id 0 is default subswitch-id

FabricPath Unicast Route Table for Topology-Default

1/101/0, number of next-hops: 1

via Po1, [115/5], 1 day/s 12:21:29, isis_fabricpath-default <------ The route from Leaf A to Leaf D is correctly configured.

Leaf_A

Leaf_D# show fabricpath route switchid 301

FabricPath Unicast Route Table

'a/b/c' denotes ftag/switch-id/subswitch-id

'[x/y]' denotes [admin distance/metric]

ftag 0 is local ftag

subswitch-id 0 is default subswitch-id

FabricPath Unicast Route Table for Topology-Default

1/301/0, number of next-hops: 1

via Po2, [115/5], 1 day/s 12:21:29, isis_fabricpath-default  <------ The route from Leaf D to Leaf A is correctly configured.

Leaf_D

Spine_A# show fabricpath route switchid 301

FabricPath Unicast Route Table

'a/b/c' denotes ftag/switch-id/subswitch-id

'[x/y]' denotes [admin distance/metric]

ftag 0 is local ftag

subswitch-id 0 is default subswitch-id

FabricPath Unicast Route Table for Topology-Default

1/301/0, number of next-hops: 1

via Po1, [115/20], 1 day/s 06:13:21, isis_fabricpath-default <------ The route from Spine A to Leaf A is correctly configured.

Spine_A#

Spine_A# show fabricpath route switchid 101

FabricPath Unicast Route Table

'a/b/c' denotes ftag/switch-id/subswitch-id

'[x/y]' denotes [admin distance/metric]

ftag 0 is local ftag

subswitch-id 0 is default subswitch-id

FabricPath Unicast Route Table for Topology-Default

1/101/0, number of next-hops: 1

via Po2, [115/20], 1 day/s 06:13:21, isis_fabricpath-default <------ The route from Spine A to Leaf D is correctly configured.

Spine_A#

5)验证枝叶和主干之间的IS-IS邻接关系。

Leaf_A# show fabricpath isis adjacency

Fabricpath IS-IS domain: default Fabricpath IS-IS adjacency database:

System ID SNPA Level State Hold Time Interface

cccc.cccc.b343 N/A 1 UP 00:00:27 port-channel1

Leaf_A#

Leaf_D# show fabricpath isis adjacency

Fabricpath IS-IS domain: default Fabricpath IS-IS adjacency database:

System ID SNPA Level State Hold Time Interface

cccc.cccc.b343 N/A 1 UP 00:00:27 port-channel2

Leaf_D#

6)验证当前部署中不存在冲突。

Leaf_A# show fabricpath conflict all

No Fabricpath ports in a state of resource conflict.

No Switch id Conflicts

No transitions in progress

Leaf_A#

Leaf_D# show fabricpath conflict all

No Fabricpath ports in a state of resource conflict.

No Switch id Conflicts

No transitions in progress

Leaf_D#

Spine_A# show fabricpath conflict all

No Fabricpath ports in a state of resource conflict.

No Switch id Conflicts

No transitions in progress

Spine_A#

7)验证是否已将VLAN添加到IS-IS VLAN范围。

Leaf_A# show fabricpath isis vlan-range

Fabricpath IS-IS domain: default

MT-0

Vlans configured:1,409

Leaf_A#

Leaf_D# show fabricpath isis vlan-range

Fabricpath IS-IS domain: default

MT-0

Vlans configured:1             <------ VLAN 409 is not present

Leaf_D

Spine_A# show fabricpath isis vlan-range

Fabricpath IS-IS domain: default

MT-0

Vlans configured:1, 409

Spine_A#

8)验证主干A中是否触发了ELAM。

module-1# show hardware internal dev-port-map      <------ Determine the F4 ASIC that is used for the FE on port Eth1/2. Enter this command in order to verify this.

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

CARD_TYPE: 48 port 10G

>Front Panel ports:48

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

Device name Dev role Abbr num_inst:

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

> Flanker Eth Mac Driver DEV_ETHERNET_MAC MAC_0 6

> Flanker Fwd Driver DEV_LAYER_2_LOOKUP L2LKP 6

> Flanker Xbar Driver DEV_XBAR_INTF XBAR_INTF 6

> Flanker Queue Driver DEV_QUEUEING QUEUE 6

> Sacramento Xbar ASIC DEV_SWITCH_FABRIC SWICHF 2

> Flanker L3 Driver DEV_LAYER_3_LOOKUP L3LKP 6

> EDC DEV_PHY PHYS 7

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

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

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

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

1       0      0       0       0       0     0,1

2       0      0       0       0       0     0,1

...

module-1#

module-1#

module-1# elam asic flanker instance 0

module-1(fln-elam)#

module-1(fln-elam)# elam asic flanker instance 0

module-1(fln-elam)# layer3

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# trigger rbus ingress if trig

module-1(fln-l2-elam)# start

module-1(fln-l2-elam)#

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# status

ELAM Slot 1 instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

L2 DBUS: Armed

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

L2 RBUS: Armed

module-1(fln-l2-elam)# status

ELAM Slot 1 instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

L2 DBUS: Armed

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

L2 RBUS: Armed                                                                                                      <------ ELAM is not triggered.

module-1(fln-l2-elam)#

9)将VLAN 409添加到FabricPath。

Leaf_D(config)# vlan 409

Leaf_D(config-vlan)# mode fabricpath

Leaf_D(config-vlan)# show run vlan

!Command: show running-config vlan

!Time: Wed Apr 24 20:27:29 2024

version 6.2(12)

vlan 1,409

vlan 409

mode fabricpath

Leaf_D(config-vlan)#

验证

1)检验mac地址表。

Leaf_A# show mac address-table vlan 409

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False , ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN MAC Address Type age Secure NTFY Ports/SWID.SSID.LID

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

* 409 aaaa.aaaa.aaaa dynamic ~~~ F F Po3

409 bbbb.bbbb.bbbb dynamic ~~~ F F 3102.1.65535

Leaf_A#

Leaf_D# show mac address-table vlan 409

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False , ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN MAC Address Type age Secure NTFY Ports/SWID.SSID.LID

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

* 409 bbbb.bbbb.bbbb dynamic ~~~ F F Po4

409 aaaa.aaaa.aaaa dynamic ~~~ F F 3101.1.65535

Leaf_D#

2) 验证主干A中是否触发了ELAM。

module-1# elam asic flanker instance 0

module-1(fln-elam)#

module-1(fln-elam)# elam asic flanker instance 0

module-1(fln-elam)# layer2

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# trigger rbus ingress if trig

module-1(fln-l2-elam)# start

module-1(fln-l2-elam)#

module-1(fln-l2-elam)# status

ELAM Slot 1 instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

L2 DBUS: Armed

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

L2 RBUS: Armed

module-1(fln-l2-elam)# status

ELAM Slot 1 instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if source-ipv4-address 192.168.10.17

L2 DBUS: Triggered             <-------- ELAM triggered

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

L2 RBUS: Triggered             <-------- ELAM triggered

module-1(fln-l2-elam)#

3)验证从枝叶A到主机A的连接。

Leaf_A# ping 192.168.10.17

PING 192.168.10.17 (192.168.10.17): 56 data bytes

64 bytes from 192.168.10.17: icmp_seq=0 ttl=254 time=1.703 ms

64 bytes from 192.168.10.17: icmp_seq=1 ttl=254 time=1.235 ms

64 bytes from 192.168.10.17: icmp_seq=2 ttl=254 time=1.197 ms

64 bytes from 192.168.10.17: icmp_seq=3 ttl=254 time=3.442 ms

64 bytes from 192.168.10.17: icmp_seq=4 ttl=254 time=1.331 ms

--- 192.168.10.17 ping statistics ---

5 packets transmitted, 5 packets received, 0.00% packet loss

round-trip min/avg/max = 1.197/1.781/3.442 ms

Leaf_A#

相关信息

思科FabricPath

Cisco Nexus 7000系列NX-OS FabricPath命令参考

Nexus 7000 M3模块ELAM流程