简介

本文档介绍常见的LAN交换机功能以及如何排除任何LAN交换问题。

先决条件

要求

本文档没有任何特定的要求。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

本章各节介绍常见的局域网交换机特性和一些最常见的局域网交换问题的解决方案。本课程涵盖以下主题：

- LAN 交换简介

- 对常规交换机进行故障排除的建议

- 排除端口连接故障

- 排除以太网10/100Mb半双工/全双工自动协商故障

- Catalyst 5000 和 6000 系列交换机上的 ISL 中继

- 配置交换机的EtherChannel并对其进行故障排除

- 使用Portfast和其他命令解决终端站启动连接问题

- 配置多层交换并排除故障

LAN 交换简介

如果您不熟悉 LAN 交换，可以学习以下各个部分，了解与交换机相关的一些主要概念。排除任何设备故障的前提条件之一是了解设备运行所依据的规则。过去几年里，交换机日益普及、逐渐成熟，因此也越来越复杂。下文将介绍有关交换机的一些重要概念。

集线器和交换机

由于对局域网的巨大需求，已经从使用集线器和同轴电缆的共享带宽网络转变为使用交换机的专用带宽网络。通过集线器，可以将多台设备连接到同一网段。该网段上的各设备彼此共享带宽。如果是一台 10Mb 的集线器，并且有 6 台设备连接到该集线器上的 6 个不同端口，则所有六台设备彼此共享 10Mb 的带宽。100Mb 集线器在连接的设备之间共享 100Mb 的带宽。就 OSI 模型而言，集线器被视为第一层（物理层）设备。它会侦听电缆上的电信号，然后将其传递到其他端口。

交换机可以在物理上取代网络中的集线器。就像集线器一样，交换机也支持将多台设备连接到同一网络，但二者的相似之处仅限于此。交换机支持连接的各设备使用专用带宽，而不是共享带宽。交换机与设备之间的带宽仅用于与该设备之间的通信。如果有 6 台设备连接到一台 10Mb 交换机上的 6 个不同端口，则每台设备都有 10Mb 的带宽可以使用，而不是与其他设备共享带宽。交换机可以显著增加网络中的可用带宽，从而提高网络性能。

网桥和交换机

基础交换机被视为第二层设备。使用“层”一词时，指的是7层OSI模型。交换机不仅像集线器那样传递电信号，而是将信号组合成帧（第二层），然后决定如何处理该帧。当交换机从另一个常见网络设备（透明网桥）借用算法时，它会确定如何处理帧。从逻辑上讲，交换机的工作方式与透明网桥类似，但它处理帧的速度比透明网桥快得多（因为有特殊的硬件和架构）。一旦交换机决定帧发送的位置，它就会将帧从相应的端口（或端口）中转发出去。您可以将交换机视为逐帧在各种端口之间创建即时连接的设备。

VLAN

由于交换机逐帧决定哪些端口交换数据，因此，将这一逻辑自然延伸到交换机内部，就需要允许交换机选择端口来进行特殊分组。这种端口分组称为虚拟局域网 (VLAN)。交换机可确保来自一组端口的流量永远不会被发送到其他端口组（也就是路由）。可以将这些端口组 (VLAN) 分别视为单独的 LAN 网段。

VLAN 也称为广播域。此名称因透明网桥算法而来，使用该算法时，广播数据包（发往所有设备地址的数据包）将发送到同一端口组中（即同一 VLAN 中）的所有端口。同一 VLAN 中的所有端口也位于同一广播域中。

透明网桥算法

透明桥接算法和生成树将在其他地方详细介绍（第20章：透明桥接环境故障排除）。交换机收到帧时，必须决定如何处理帧。它可以忽略该帧；它可以将帧从另一个端口传出，也可以将帧从许多其他端口传出。

为了知道如何处理帧，交换机会获知网段上所有设备的位置。此位置信息放置在内容可寻址存储器 (CAM) 表（以用于存储这些表的存储器类型命名）中。对于每台设备，CAM 表显示设备的 MAC 地址、可以找到该 MAC 地址的端口以及与该端口关联的 VLAN。当帧被接收到交换机时，交换机不断学习。交换机的 CAM 表会不断更新。

CAM 表中的这些信息用于确定如何处理所接收的帧。为了决定将帧发往何处，交换机会查看已接收帧中的目的 MAC 地址，并在 CAM 表中查找该目的 MAC 地址。CAM 表显示必须从哪个端口发出帧，才能使该帧到达指定的目的 MAC 地址。以下是交换机用于执行帧转发任务的基本规则：

- 如果在 CAM 表中找到目的 MAC 地址，交换机会将帧从与 CAM 表中的该目的 MAC 地址关联的端口发送出去。此过程称为转发。

- 如果将帧发送出去的关联端口与帧最初传入的端口是同一端口，则无需将帧发送回该端口，帧会被忽略。此过程称为过滤。

- 如果目的 MAC 地址不在 CAM 表中（地址未知），交换机会将帧从收到帧的同一 VLAN 中的所有其他端口发送出去。此过程称为泛洪。交换机不会将帧从收到帧的端口发送出去。

- 如果收到帧的目的 MAC 地址是广播地址 (FFFF.FFFF.FFFF)，则交换机会将帧从收到帧的同一 VLAN 中的所有端口发送出去。此过程也称为泛洪。交换机不会将帧从收到帧的同一端口发送出去。

生成树协议

如您所见，透明桥接算法将未知帧和广播帧从与接收帧位于同一VLAN中的所有端口泛洪出去。这会导致一个潜在的问题。如果运行此算法的网络设备在物理环路中连接在一起，那么泛洪的帧（比如广播）就会从一台交换机传递到另一台交换机，不停地循环。根据所涉及的物理连接数，由于泛洪算法，帧数实际上可以呈指数倍增长，这可能会导致严重的网络问题。

网络中的物理环路有一个优点：它可以提供冗余。如果一条链路出现故障，还有另一条路径可以让流量到达目的地。为了获得冗余带来的好处，同时避免因泛洪而中断网络，我们创建了一个称为生成树的协议。IEEE 802.1d 规范对生成树进行了标准化定义。

生成树协议 (STP) 的目的是识别并临时阻止网段或 VLAN 中的环路。交换机运行STP，并选举根网桥或交换机。其他交换机会衡量自身与根交换机的距离。如果有多条路径可以到达根交换机，则会出现环路。交换机跟踪算法以确定必须阻塞哪些端口才能中断环路。STP是动态的；如果网段中的链路发生故障，最初阻塞的端口可能会更改为转发模式。

中继

中继是一种最常用于允许多个 VLAN 在多台交换机之间独立运行的机制。路由器和服务器也可以使用中继，这使得它们可以同时在多个 VLAN 中运行。如果您的网络只有一个VLAN，则不需要中继；但如果您的网络有多个VLAN，则您可能希望利用中继的优势。

交换机上的端口通常只属于一个VLAN；在此端口上接收或发送的任何流量都假定属于已配置的VLAN。另一方面，中继端口可以配置为发送和接收多个 VLAN 的流量。为此，它会将 VLAN 信息附加到每个帧，这个过程称为标记帧。此外，链路两端的中继必须处于活动状态；另一端必须预期收到包含VLAN信息的帧，才能进行正确的通信。

根据所使用的介质，有不同的中继方法。适用于快速以太网或千兆以太网的中继方法是交换机间链路 (ISL) 或 802.1q。基于 ATM 的中继使用 LANE。基于 FDDI 的中继使用 802.10。

EtherChannel

EtherChannel 技术适用于与同一设备有多个连接的情况。EtherChannel 不是让每条链路独立运行，而是将端口组合在一起作为一个单元运行。它在所有链路上分配流量，并在一条或多条链路发生故障时提供冗余。信道中所涉及的链路两端的 EtherChannel 设置必须相同。通常，生成树会阻止设备之间的所有并行连接，因为它们是环路，但是 EtherChannel 在生成树下运行，因此生成树会认为给定 EtherChannel 内的所有端口都只是一个端口。

多层交换 (MLS)

多层交换 (MLS) 是指交换机能够根据第三层（有时还有第四层）报头中的信息转发帧。这通常适用于 IP 数据包，但现在也可用于 IPX 数据包。交换机会在与一个或多个路由器通信时获知如何处理这些数据包。简而言之，就是交换机会监视路由器如何处理数据包，然后以同样的流程处理后续数据包。一直以来，交换机处理交换帧的速度比路由器快得多，因此让它们分流来自路由器的流量负载可以显著提高速度。如果网络中发生了变化，路由器可以让交换机擦除其第三层缓存，并根据情况的变化重新从头开始构建。用于与路由器通信的协议称为多层交换协议 (MLSP)。

如何了解这些功能

这些只是交换机支持的一些基本功能。每天都会新增更多功能。了解交换机的工作方式、使用的功能以及这些功能的工作方式非常重要。要了解有关思科交换机的这些信息，最好的方式之一是访问思科网站。请转至服务与支持部分，选择技术文档。然后选择文档主页，即可找到所有思科产品的文档集。通过多层LAN交换机链接，您可以查看所有Cisco LAN交换机的文档。要了解交换机的功能，请阅读您使用的特定软件版本的软件配置指南。软件配置指南介绍有关功能用途的背景信息，以及用于在交换机上配置该功能的命令。该网站免费提供所有这些信息。您甚至不需要此文档的帐户；任何人都可以使用此文档。其中一些配置指南用一个下午的时间就可以读完，很值得一读。

思科网站的另一部分包含思科支持和文档网站。该网站提供帮助您实施、维护和排除网络故障的信息。请访问支持和文档网站，获取按具体产品或技术分类的详细支持信息。

对通用交换机进行故障排除的建议

有多种方法可排除交换机的故障。随着交换机功能的增加，可能发生故障的情况也会相应增加。要有效地进行故障排除，应制定方法或测试计划，而不是采用命中错误方法。以下是一些一般性建议：

- 请花一些时间来熟悉常规的交换机操作。如前文所述，思科网站提供了大量介绍思科交换机工作原理的技术信息。其中配置指南尤其有用。许多情形都可以使用产品配置指南中的信息来解决。

- 对于更复杂的情况，应准确掌握网络的物理拓扑图和逻辑拓扑图。物理图显示设备和电缆的连接方式。逻辑拓扑图显示网络中有哪些网段 (VLAN)，哪些路由器为这些网段提供路由服务。生成树拓扑图对于解决复杂问题非常有用。由于交换机可以通过实施VLAN创建不同的网段，因此单靠物理连接并不能说明问题的全貌；必须知道交换机如何配置才能确定哪些网段(VLAN)存在，以及它们如何逻辑连接。

- 制定计划。一些问题和解决办法是显而易见的；一些则不然。您在网络中看到的问题可能是另一个区域或层中的问题所导致的。在下结论之前，请尝试用结构化的方法验证哪些解决方案有效，哪些无效。由于网络可能很复杂，因此对问题分门别类进行排查会比较有帮助。为此，一种方法是使用 OSI 七层模型。例如：检查所涉及的物理连接（第1层）；检查VLAN中的连接问题（第2层）；以及检查不同VLAN中的连接问题（第3层），依此类推。如果交换机上有正确的配置，您遇到的许多问题都与物理层问题（物理端口和电缆）有关。如今，交换机会涉及第三层和第四层问题，其中包括根据从路由器获取的信息来交换数据包的情报，或者实际上具有位于交换机内部的路由器（第三层或第四层交换）。

- 不要假定某个组件可以正常工作，您必须首先检查它。先进行检查可以节省大量时间。例如，如果 PC 无法通过网络登录到服务器，这可能是由许多问题造成的。不要跳过基本的事情，假定某些事情是起作用的；某些人可以更改某些事情，而不告诉您。只需一分钟就可以检查一些基本问题（例如，所涉及的端口是否已连接到正确的位置并处于活动状态），这可以为您节省大量时间。

排除端口连接故障

如果端口无法正常工作，那么其余部分也都无法正常工作！端口是交换网络的基础。一些端口由于其在网络中的位置和所承载的流量而显得特别重要。这些端口的任务是与其他交换机、路由器和服务器连接。排除这些端口的故障可能会更复杂，因为它们经常利用中继和 EtherChannel 等特殊功能。其余端口也很重要，因为它们负责与网络的实际用户连接。

许多情况都可能导致端口无法正常工作：硬件问题、配置问题和流量问题。下文将对这些类别的问题进行更深入的探讨。

硬件问题

常规

端口功能需要两个活动端口通过活动电缆（正确类型）连接。大多数Cisco交换机的默认设置是端口处于noconnect状态，这意味着它当前未连接到任何设备，但想要连接。如果您将一条可正常工作的线缆连接到处于 notconnect 状态的两个交换机端口，这两个端口的链路指示灯会变为绿色，且端口处于 connected 状态，这意味着就第一层而言，端口处于已连接状态。下文介绍在第一层无法正常工作时要检查的事项。

检查所涉及的两个端口的端口状态。确保链路中涉及的两个端口均未处于关闭状态。管理员可能关闭了其中一个端口或同时关闭了这两个端口。交换机内部的软件可能由于配置错误而关闭了端口。如果一端关闭，而另一端未关闭，则启用端的状态为notconnect（因为它无法感应到线路另一端的邻居）。关闭端上的状态为 disable 或 errDisable 等（具体取决于实际导致端口关闭的因素）。除非同时启用两个端口，否则链路不会正常工作。

当您在两个启用端口之间连接可正常工作的电缆（而且如果该电缆类型正确）时，这两个端口的链路指示灯会在几秒钟内显示绿色。此外，端口状态在命令行界面 (CLI) 中显示为 connected。此时，如果没有链路，则问题仅限于三个方面：一端是端口，另一端是端口，或者中间是电缆。在某些情况下，还涉及其他设备：介质转换器（光纤到铜缆等），或者在千兆链路上，您可以有千兆接口连接器(GBIC)。不过，在这个范围内排查问题仍存在相当大的局限性。

如果介质转换器不能正常工作，就可能会增加连接噪声或削弱信号。此外，还会添加额外的连接器，这些连接器不仅可能会导致问题，而且成为另一种需要调试的组件。

检查连接是否松动。有时电缆似乎已插入插孔中，但实际上并非如此；拔下电缆并重新插入。您还必须查找灰尘、丢失或损坏的针脚。对连接涉及的两个端口都要进行检查。

线缆可能被插入错误的端口，这种情况经常发生。请确保线缆的两端都插入所需的端口中。

您可能会遇到一端有链路而另一端没有的情况。请检查两端的链路。单根线缆破损可能会导致此类问题。

使用链路指示灯并不能保证电缆功能完全正常。电缆可能受到外力挤压，使其无法正常工作。通常，您会注意到存在大量数据包错误的端口。

为了确定问题是否由电缆造成，请换用已知可正常工作的电缆，不要只用其它电缆替换它；请确保用已知良好且类型正确的电缆替换它。

如果线缆非常长（例如，大型园区内的地下线缆），最好使用精密的线缆测试仪。如果没有线缆测试仪，可以考虑采用以下方法：

- 尝试使用其他端口，看看它们能否使用这种长电缆正常工作。

- 将有问题的端口连接到同一交换机中的另一端口，以查看该端口的链路在本地能否正常工作。

- 暂时将交换机重新放置在彼此附近，以便可以试用已知可工作正常的电缆。

铜缆

确保您使用了适合所建立连接类型的正确电缆。3 类线缆可用于 10MB UTP 连接，但 5 类线缆必须用于 10/100 连接。

直通 RJ-45 线缆用于将终端站、路由器或服务器连接到交换机或集线器。以太网交叉线缆用于交换机间或集线器与交换机间的连接。这是以太网交叉线缆的引出线。以太网或快速以太网铜缆的最大连接距离为 100 米。一个好的一般经验法则是，当您跨越OSI层时（如交换机和路由器之间），使用直通电缆；当您连接同一OSI层的两台设备（如两台路由器或两台交换机之间）时，使用交叉电缆。仅就此经验法则而言，应将工作站视为路由器。

以下两幅图显示交换机间交叉线缆所需的引出线。

光纤

对于光纤，请确保您具有正确的电缆，以适应涉及的距离和使用光纤端口类型（单模、多模）。确保连接在一起的端口既是单模端口，又是多模端口。单模光纤通常可达10千米，多模光纤通常可达2千米，但半双工模式中使用的100BaseFX多模光纤的特殊情况只能达到400米。

对于光纤连接，请确保一个端口的传输引线连接到另一个端口的接收引线，反之亦然；传输到传输、接收到接收均不起作用。

对于千兆连接，连接的两端都需要有匹配的 GBIC。GBIC有不同的类型，具体取决于所涉电缆和距离：短波长(SX)、长波长/长距离(LX/LH)和长距离(ZX)。

SX GBIC需要与SX GBIC连接；SX GBIC不与LX GBIC链接。此外，根据所涉及电缆的长度，某些千兆连接需要使用调节电缆。详情请参阅 GBIC 安装说明。

如果千兆链路无法正常工作，请进行检查，确保链路两端的流量控制和端口协商设置一致。如果连接的交换机来自不同的供应商，则在实现这些功能时可能会出现不兼容问题。如有疑虑，请在两台交换机上关闭这些功能。

配置问题

端口连接问题的另一个原因是交换机的软件配置不正确。如果端口指示灯呈橙色常亮状态，则表示交换机内部的软件通过用户界面或内部进程关闭了端口。

请确保管理员未关闭相关端口（如上所述）。管理员可能手动关闭了链路一端或另一端的端口。重新启用端口后，此链路才会启动；请检查端口状态。

有些交换机（如 Catalyst 4000/5000/6000）可能会在交换机内部的软件进程检测到错误时关闭端口。当您查看端口状态时，状态会显示为 errDisable。您必须修复配置问题，然后手动使端口退出 errDisable 状态。有些较新的软件版本（CatOS 5.4(1) 及更高版本）能够在 errDisable 状态下经过一段可配置时间后自动重新启用端口。以下是导致此 errDisable 状态的一些原因：

- EtherChannel配置错误：如果一端配置了EtherChannel，而另一端未配置，则可能导致生成树进程关闭为EtherChannel配置的一端的端口。如果您尝试配置EtherChannel，但所涉及的端口没有与链路上的相邻端口相同的设置（速度、双工、中继模式等），则可能导致errDisable状态。如果要使用 EtherChannel，最好将两端的 EtherChannel 都设置为 desirable 模式。下文将深入讨论如何配置 EtherChannel。

- 双工不匹配：如果交换机端口收到许多延迟冲突，这通常表示存在双工不匹配问题。延迟冲突还有其他原因：网卡故障、电缆段过长，但当前最常见的原因是双工不匹配。全双工端认为可以随时发送数据包。半双工端只期望数据包在特定时间出现，而不是“任何”时间。

- BPDU端口保护：如果端口上启用了portfast，则某些更新版本的交换机软件可以监控。使用 PortFast 的端口必须连接到终端站，而不是连接到生成称为 BPDU 的生成树数据包的设备。如果交换机注意到已启用 PortFast 的端口中有 BPDU，则会将该端口置于 errDisable 模式。

- UDLD：单向链路检测是某些新软件版本上的一个协议，用于发现链路上的通信是否仅是单向通信。光缆损坏或其他电缆/端口问题可能导致这种单向通信。当所涉及的交换机不知道链路已部分断开时，这些部分起作用的链路可能会导致问题。生成树环路可能会发生此问题。UDLD 可以配置为当检测到单向链路时将端口置于 errDisable 状态。

- 本征VLAN不匹配：在端口打开中继之前，它属于单个VLAN。当打开中继时，端口可以传输许多 VLAN 的流量。在打开中继之前，端口仍会记住自己所属的 VLAN，这称为本地 VLAN。本地 VLAN 是 802.1q 中继的中心。如果链路两端的本地 VLAN 不匹配，端口将进入 errDisable 状态。

- 其他：交换机中任何识别端口问题的进程都可以将其置于errDisable状态。

导致端口进入非活动状态的另一个原因是它们所属的 VLAN 消失。交换机中的每个端口均属于 VLAN。如果删除了端口所属的 VLAN，则端口将变为非活动状态。有些交换机在发生这种情况的每个端口上都显示常亮的橙色指示灯。如果您某天上班时看到数百个橙色指示灯，请不要惊慌；可能是因为所有端口都属于同一个VLAN，而且有人意外删除了端口所属的VLAN。当您将该 VLAN 添加回 VLAN 表时，端口将重新处于活动状态。端口会记住其已分配的 VLAN。

如果有链路并且端口显示为已连接，但您无法与其他设备通信，这可能会非常令人困惑。它通常表示问题高于物理层：第2层或第3层。试试这些东西。

- 请检查链路两端的中继模式。确保两端处于同一模式。如果将一个端口的中继模式设置为“打开”（与“自动”或“期望”相对），则另一个端口具有中继

- 模式设置为“关闭”，它们无法通信。中继会更改数据包的格式；端口需要同意它们在链路上使用的格式，或者它们彼此不理解。

- 确保所有设备都在同一 VLAN 中。如果它们不在同一 VLAN 中，必须将路由器配置为允许设备进行通信。

- 确保正确配置第三层寻址。

流量问题

本节介绍查看端口流量信息时可以了解的一些内容。大多数交换机在进出端口时都有一些方法来跟踪数据包。在Catalyst 4000/5000/6000交换机上生成此类输出的命令是show portandshow mac。交换机命令参考中介绍了 4000/5000/6000 交换机上的这些命令的输出。

其中一些端口流量字段显示端口上发送和接收的数据量。其他字段显示端口上遇到的错误帧数。如果您遇到大量的校准错误、FCS 错误或延迟冲突，这可能表示线缆上的双工不匹配。导致出现这些类型的错误的其他原因可能是网络接口卡损坏或线缆问题。如果存在大量延迟帧，则表明网段有太多流量；交换机无法在线路上发送足够流量来清空其缓冲区。请考虑将一些设备移至另一个网段。

交换机硬件故障

如果您已经尝试了所有能够想到的功能，但端口无法正常工作，则可能是硬件故障。

有时端口会因静电放电 (ESD) 而损坏。您可能会看到这方面的迹象，也可能看不到任何迹象。

请查看交换机的开机自检 (POST) 结果，看看交换机是否有任何部分指示存在任何故障。

如果您看到只能被视为“异常”的行为，这可能表示有硬件问题，但也可能表示有软件问题。重新加载软件通常比获取新硬件更容易操作。请先尝试处理交换机软件。

操作系统可能存在 Bug。如果加载更新的操作系统，或许可以解决此问题。如果您阅读所使用的代码版本的版本说明或使用思科漏洞工具包，则可以研究已知的漏洞。

操作系统可能已损坏。如果重新加载同一版本的操作系统，或许可以解决问题。

如果交换机上的状态指示灯呈橙色闪烁状态，这通常表示端口、模块或交换机存在某种硬件问题。如果端口或模块指示 faulty 状态，也表示存在某种硬件问题。

在更换交换机硬件之前，您可以尝试以下几项操作：

- 重新拔插交换机中的模块。如果在打开电源的情况下执行此操作，请确保模块可热插拔。如果不确定，请在重新拔插模块之前关闭交换机，或参阅硬件安装指南。如果端口内置于交换机中，请忽略此步骤。

- 重启交换机。有时，这会导致问题消失；这是一种解决方法，而非修复方法。

- 检查交换机软件。如果这是一次全新安装，请记住，某些组件只能与某些版本的软件配合使用。请查阅所安装的组件的版本说明或硬件安装和配置指南。

- 如果您确信是硬件问题，请更换发生故障的组件。

排除以太网10/100Mb半双工/全双工自动协商故障

目标

本节介绍用于排除故障的一般信息以及排除以太网自动协商故障的技术讨论。

- 本部分介绍如何确定链路的当前行为。然后展示用户如何控制该行为，并解释在哪些情况下自动协商会失败。

- 有许多不同的 Cisco Catalyst 交换机和思科路由器都支持自动协商。本部分重点介绍 Catalyst 5000 交换机之间的自动协商。这里介绍的概念也适用于其他类型的设备。

简介

自动协商是 IEEE 802.3u 快速以太网标准的一种可选功能，设备通过该功能可以通过链路自动交换有关速度和双工能力的信息。

自动协商功能面向分配给临时用户或设备所连接到的网络区域的端口。"例如,许多公司为那些紧张出差而很少在公司的客户经理和系统工程师提供共享的移动办公室或工位."每个办公室或隔间都有一个与办公室网络永久连接的以太网端口。由于无法确保每个用户的笔记本电脑中都有 10Mb、100Mb 的以太网或者 10/100Mb 的网卡，因此处理这些连接的交换机端口必须能够协商其速度和双工模式。另一种方法是能够在每个办公室或隔间中同时提供 10Mb 和 100Mb 端口，并相应地对它们进行标记。

不能将自动协商用于支持网络基础设施设备（例如交换机和路由器）或其他非临时终端系统（例如服务器和打印机）的端口。虽然速度和双工的自动协商通常是支持此功能的交换机端口上的默认行为，但必须始终将连接到固定设备的端口配置为正确的行为，而不是允许其进行协商。这样可以消除任何潜在的协商问题，并确保您始终准确了解端口的工作方式。例如，配置为 100Mb 全双工的 10/100BaseTX 以太网交换机间链路仅在所配置的速度和模式下运行。在端口重置或交换机重置过程中，端口不可能将链路降级到比之更慢的速度。如果端口无法按配置运行，则它们不能传递任何流量。另一方面，允许协商其行为的交换机到交换机链路可以在10Mb半双工模式下运行。与正常运行但不能以预期速度或模式运行的链路相比，未正常运行的链路通常更容易发现。

10/100Mb以太网链路上性能问题的最常见原因之一是链路上的一个端口在半双工模式下运行，而另一个端口在全双工模式下运行。链路上的一个或两个端口重置后偶尔会出现这样的情况，自动协调过程并不会使链路上的两个端口的配置相同。当用户重新配置链路的一端，但忘记重新配置链路的另一端时，也将发生这种情况。如果您创建一个策略，要求将所有非临时设备的端口都配置为其所需的行为，并通过适当的变更控制措施来实施该策略，则可以避免许多与性能相关的问题。

排除网络基础设施设备之间的以太网自动协商故障

操作步骤和/或场景

场景 1.Cat 5K与快速以太网

表22-2：自动协商连接问题

可能的问题

解决方案

链路的当前行为是否是自动协商的？

1.使用show port mod_num/port_numcommand确定链路的当前行为。如果两个链路对象（链路两端的接口）的“Duplex”和“Speed”状态字段中均带有“a-”前缀，则表示自动协商可能是成功的。

不支持自动协商。

2.发出show port capabilities mod_num/port_numcommand，验证模块是否支持自动协商。

自动协商在Catalyst交换机上不起作用。

3.在Catalyst上使用set port speed mod_num/port_num自动命令配置自动协商。4.尝试不同的端口或模块。5.尝试重置端口。6.尝试使用不同的跳线。7.关闭设备，然后重新打开设备。

自动协商在Cisco路由器上不起作用。

8.发出正确的Cisco IOS命令以启用自动协商（如果有）9.尝试不同的接口。10.尝试重置接口。11.尝试使用不同的跳线。12.关闭设备，然后重新打开设备。

配置以太网10/100Mb自动协商并排除其故障示例

本部分将检查支持自动协商的10/100Mb以太网端口的行为。还将展示如何更改该端口的默认行为，以及如何将端口恢复为默认行为。

要执行的任务

1. 检查端口的功能。

2. 在这两台交换机上都为端口 1/1 配置自动协商。

3. 确定是否将速度和双工模式设置为自动协商。

4. 将交换机 A 上的端口 1/1 的速度更改为 10Mb。

5. 了解“Duplex”和“Speed”状态字段中的前缀“a-”的含义。

6. 查看交换机 B 上端口 1/1 的双工状态。

7. 了解双工不匹配错误。

8. 了解生成树错误消息。

9. 将交换机 A 上端口 1/1 的双工模式更改为半双工。

10. 设置交换机 B 上端口 1/1 的双工模式和速度。

11. 将两台交换机上的端口 1/1 都还原为默认的双工模式和速度。

12. 查看两台交换机上端口状态的更改。

分步操作

请执行以下步骤：

1. show port capabilities 1/1命令显示交换机A上的以太网10/100BaseTX 1/1端口的功能。

为您要进行故障排除的两个端口输入此命令。如果两个端口应使用自动协商，则它们必须支持所示的速度和双工功能。

Switch-A> (enable) show port capabilities 1/1

Model WS-X5530

Port 1/1

Type 10/100BaseTX

Speed auto,10,100

Duplex half, full

2. 如果输入set port speed 1/1 auto命令（auto是支持自动协商的端口的默认值），则两台交换机端口1/1上的速度和双工模式都配置有自动协商。

Switch-A> (enable) set port speed 1/1 auto

Port(s) 1/1 speed set to auto detect.

Switch-A (enable)

注意：set port speed {mod_num/port_num} auto命令也将双工模式设置为auto。没有 set port duplex {mod_num/port_num} auto 命令。

3. show port 1/1命令显示交换机A和B上端口1/1的状态。

Switch-A> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-full a-100 10/100BaseTX

Switch-B> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-full a-100 10/100BaseTX

请注意，show port {mod_num/port_num} 命令的大部分正常输出都已被省略。

"充分"和"100"上的a 前缀表明此端口没有为特定双工模式或速度设置硬性代码(配置)。因此，如果所连接的设备（其链路合作伙伴）也可以自动协商其双工模式和速度，则它可以自动协商其双工模式和速度。并且注意两个端口是"连接"状态，这意味着另一个端口已经发现链路脉冲。即使未正确协商或配置双工，状态也可以为“connected”。

4. 为了演示当一个链路伙伴自动协商而另一个链路伙伴不自动协商时会发生什么情况，使用set port speed 1/1 10命令将交换机A中端口1/1的速度设置为10Mb。

Switch-A> (enable) set port speed 1/1 10

Port(s) 1/1 speed set to 10Mbps.

Switch-A> (enable)

注：如果对端口上的速度进行硬编码，则会禁用端口上所有速度和双工的自动协商功能。

当端口已配置某个速度时，其双工模式会自动配置为以前协商的模式。在本例中为全双工模式。当您输入 set port speed 1/1 10 命令时，系统会在端口 1/1 上配置双工模式，就好像也输入了 set port duplex 1/1 full 命令一样。下文会对此进行说明。

5. 了解“Duplex”和“Speed”状态字段中的前缀“a-”的含义。

交换机 A 上 show port 1/1 命令的输出的状态字段中没有前缀“a-”，这表明双工模式现在配置为“full”，速度现在配置为“10”。

Switch-A> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal  full  10    10/100BaseTX

6. 交换机B上的show port 1/1命令表明该端口现在以半双工和10Mb的速度运行。

Switch-B> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-half a-10  10/100BaseTX

此步骤说明，即使没有将链路一方配置为自动协商，链路另一方也能检测到链路一方的运行速度。感应到达的传输信号类型以发现它是10Mb还是100Mb可以做到这一点。这是交换机B确定端口1/1必须以10Mb的速率运行的方法。

不可能用与发现正确的速度相同的方式发现正确的双工模式。在本例中，交换机 B 的 1/1 端口配置为自动协商，而交换机 A 的端口未配置为自动协商，这会强制交换机 B 的 1/1 端口选择默认双工模式。在Catalyst以太网端口上，默认模式为自动协商，如果自动协商失败，则为半双工。

此示例还表明，当双工模式不匹配时，链路可以成功连接。交换机A的端口1/1配置为全双工，而交换机B的端口1/1默认为半双工。为了避免这种情况，请务必对两个链路伙伴都进行配置。

在双工和速度状态域中"a -”前缀不总意味着已经协商了当前的工作情况。有时它只意味着端口没有对速度或双工模式进行配置。交换机B的上一个输出将双工显示为“a-half”，将速度显示为“a-10”，表示端口在半双工模式下以10Mb的速度运行。在本示例中，该端口上的链路伙伴（交换机A上的端口1/1）配置为“full”和“10Mb”。 交换机B上的端口1/1无法自动协商其当前行为。这证明了“a — ”前缀仅表示执行自动协商的意愿，而不是实际发生的自动协商。

7. 了解双工不匹配错误消息。

在端口 1/1 的速度更改为 10Mb 后，交换机 A 上会显示有关双工模式不匹配的消息。交换机B的1/1端口导致不匹配，该端口默认为半双工，因为它检测到其链路伙伴无法再执行自动协商。

%CDP-4-DUPLEXMISMATCH:Full/half-duplex mismatch detected o1

需要注意的是，此消息是由思科发现协议 (CDP) 生成的，而不是由 802.3 自动协商协议生成的。CDP 可以报告其发现的问题，但一般不自动修复这些问题。双工不匹配可能会导致错误消息，也可能不会导致错误消息。双工不匹配的另一个迹象是半双工端的FCS和对准错误快速增加，全双工端口的“残帧”(如sh port {mod_num/port_num} 所示)。

8. 了解生成树消息。

当您更改链路上的速度时，除了双工不匹配错误消息外，您还可以看到以下生成树消息。有关生成树的论述已超出本文档的讨论范围；有关生成树的详细信息，请参阅生成树一章。

%PAGP-5-PORTFROMSTP:Port 1/1 left bridge port 1/1

%PAGP-5-PORTTOSTP:Port 1/1 joined bridge port 1/1

9. 为了演示配置了双工模式后的情况，我们使用 set port duplex 1/1 half 命令将交换机 A 中的端口 1/1 的模式设置为半双工。

Switch-A> (enable) set port duplex 1/1 half

Port(s) 1/1 set to half-duplex.

Switch-A> (enable)

使用 show port 1/1 命令显示此端口在双工模式下的更改。

Switch-A> (enable) sh port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal half   10    10/100BaseTX

此时，两台交换机上的端口 1/1 都运行于半双工。交换机 B 上的端口 1/1 仍配置为自动协商，如 show port 1/1 命令的以下输出所示。

Switch-B> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-half a-10  10/100BaseTX

此步骤显示如何在交换机 B 中的端口 1/1 上将双工模式配置为半双工。这与以相同方式配置两个链接伙伴的建议策略一致。

10. 为了实施将两个链路伙伴配置为相同行为的策略，此步骤现在在交换机 B 的端口 1/1 上将双工模式设置为半双工，将速度设置为 10。

以下是您在交换机B上输入set port duplex 1/1 half命令时的输出：

Switch-B> (enable) set port duplex 1/1 half

Port 1/1 is in auto-sensing mode.

Switch-B> (enable)

set port duplex 1/1 half 命令失败，因为在启用自动协商的情况下，此命令无效。这也意味着此命令不禁用自动协商。只能使用 set port speed {mod_num/port_num {10 | 100}} 命令来禁用自动协商。 | 100} } 命令。

以下是在交换机B上输入set port speed 1/1 10命令的输出：

Switch-B> (enable) set port speed 1/1 10

Port(s) 1/1 speed set to 10Mbps.

Switch-B> (enable)

现在，交换机 B 上的 set port duplex 1/1 half 命令有效：

Switch-A> (enable) set port duplex 1/1 half

Port(s) 1/1 set to half-duplex.

Switch-A> (enable)

交换机B上的show port 1/1命令显示端口现在配置为半双工和10Mb。

Switch-B> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal half   10    10/100BaseTX

注:set port duplex {mod_num/port_num {half | full }}命令取决于set port speed {mod_num/port_num {10 | 100 }}命令。换句话说，必须设置速度，然后才能设置双工模式。

11. 在两台交换机上配置端口1/1，以使用set port speed 1/1 aut命令自动协商。

Switch-A> (enable) set port speed 1/1 auto

Port(s) 1/1 speed set to auto detect.

Switch-A> (enable)

注意：端口的双工模式配置为auto以外的模式后，将端口配置为自动感应其双工模式的唯一方法是发出set port speed {mod_num/port_num} auto命令。没有 set port duplex {mod_num/port_num} auto 命令。换句话说，如果发出set port speed {mod_num/port_num} auto命令，它将端口速度检测和双工模式检测重置为auto。

12. 使用 show port 1/1 命令检查两台交换机上的端口 1/1 的状态。

Switch-A> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-full a-100 10/100BaseTX

Switch-B> (enable) show port 1/1

Port  Name         Status     Vlan       Level  Duplex Speed Type

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

1/1               connected  1          normal a-full a-100 10/100BaseTX

两个端口的默认行为现在均设置为自动协商。两个端口均协商为全双工和 100Mb。

联系思科系统公司技术支持团队之前的准备工作

在致电Cisco Systems技术支持网站之前，请确保您已阅读本文并完成针对您的系统问题建议的操作。此外，请记录结果，以便思科更好地帮助您：

- 从所有受影响的设备捕获show版本的输出。

- 从所有受影响的端口捕获 show port mod_num/port_num 的输出。

- 从所有受影响的端口捕获 show port mod_num/port_num capabilities 的输出。

在Catalyst 4000/5000/6000交换机上配置EtherChannel交换机到交换机的连接

EtherChannel 允许将多个物理快速以太网或千兆以太网链路合并为一个逻辑信道。这允许链路之间的流量在通道中加载共享，以及在通道中的一个或多个链路发生故障时提供冗余。EtherChannel可用于通过非屏蔽双绞线(UTP)布线或单模和多模光纤互连LAN交换机、路由器、服务器和客户端。

EtherChannel 是在重要网络设备之间聚合带宽的简便方法。在 Catalyst 5000 上，可以通过两个端口创建一条通道，建立 200Mbps 的链路（400Mbps 全双工），也可以通过四个端口创建一条通道，建立 400Mbps 的链路（800Mbps 全双工）。某些卡和平台还支持千兆 EtherChannel，并且能够在 EtherChannel 中使用两个到八个端口。不管涉及的链路速度或数量如何，概念都是相同的。通常，生成树协议(STP)将两台设备之间的这些冗余链路视为环路，并将冗余链路设置为阻塞模式。这实际上使这些链路处于非活动状态（仅在主链路发生故障时提供备份功能）。使用Cisco IOS 3.1.1或更高版本时，生成树将通道视为一个大链路，因此通道中的所有端口可以同时处于活动状态。

本部分将指导您完成在两台 Catalyst 5000 交换机之间配置 EtherChannel 的步骤，并向您展示执行命令后的结果。在本文档中介绍的场景中，可能已使用 Catalyst 4000 和 6000 交换机来获得相同的结果。对于 Catalyst 2900XL 和 1900/2820，命令语法不同，但 EtherChannel 概念相同。

如果您输入相应的命令，可以手动配置 EtherChannel；如果交换机使用端口汇聚协议 (PAgP) 与另一端协商通道，则可以自动配置 EtherChannel。建议尽量使用 PAgP 期望模式来配置 EtherChannel，因为手动配置 EtherChannel 可能会产生一些复杂的情况。本文档提供了有关如何手动配置 EtherChannel 的示例，以及如何使用 PAgP 配置 EtherChannel 的示例。还介绍了如何排除 EtherChannel 故障以及如何在 EtherChannel 中使用中继。在本文档中，术语 EtherChannel、快速 EtherChannel、千兆 EtherChannel 或通道均指 EtherChannel。

目录

1. 手动配置 EtherChannel 的任务

2. 验证 EtherChannel 配置

3. 使用 PAgP 自动配置 EtherChannel（首选方法）

4. 中继和 EtherChannel

5. 排除 EtherChannel 的故障

6. 本文档中使用的命令

此图说明了此测试环境。使用 clearconfig all 命令清除了交换机的配置。然后，使用 set system name 更改了提示符。为管理目的为交换机分配了IP地址和掩码，其中set int sc0 172.16.84.6 255.255.255.0 for SwitchA和set int sc0 172.16.84.17 255.255.255.0< /strong>为SwitchB。使用 set ip route default 172.16.84.1 将默认网关分配给了两台交换机。

已清除交换机配置，使其从默认情况开始。为交换机指定名称，以便从命令行提示符中识别它们。分配了IP地址，以便您可以在交换机之间执行ping操作以测试它们。未使用默认网关。

许多命令显示的输出超过所需数量。无关的输出将从本文档中删除。

手动配置 EtherChannel 的任务

以下是手动配置EtherChannel的说明概要：

1. 显示本文档中使用的Cisco IOS版本和模块。

2. 验证端口是否支持 EtherChannel。

3. 验证端口是否已连接并且正常运行。

4. 验证要分组的端口是否具有相同设置。

5. 标识有效端口组。

6. 创建信道。

分步操作

以下是手动配置 EtherChannel 的步骤。

1. show versioncommand显示交换机运行的软件版本。show modulecommand列出交换机中安装的模块。

Switch-A show version

WS-C5505 Software, Version McpSW: 4.5(1) NmpSW: 4.5(1)

Copyright (c) 1995-1999 by Cisco Systems

?

Switch-A show module

Mod Module-Name         Ports Module-Type           Model    Serial-Num Status

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

1                       0     Supervisor III        WS-X5530  006841805 ok

2                       24    10/100BaseTX Ethernet WS-X5225R 012785227 ok

?

2. 验证端口是否支持EtherChannel，show port功能在4.x及更高版本中显示。如果您的Cisco IOS版本低于4.x，则必须跳过此步骤。并非每个快速以太网模块都支持 EtherChannel。某些旧版 EtherChannel 模块的左下角写有“Fast EtherChannel”（如您在交换机上看到的一样），这表示支持该功能。在后续模块中此约定已被弃用。此测试中的模块上并未写有“Fast EtherChannel”，但它们确实支持该功能。

Switch-A show port capabilities

Model                    WS-X5225R

Port                     2/1

Type                     10/100BaseTX

Speed                    auto,10,100

Duplex                   half,full

Trunk encap type         802.1Q,ISL

Trunk mode               on,off,desirable,auto,nonegotiate

Channel                  2/1-2,2/1-4

Broadcast suppression    percentage(0-100)

Flow control             receive-(off,on),send-(off,on)

Security                 yes

Membership               static,dynamic

Fast start               yes

Rewrite                  yes

Switch-B show port capabilities

Model                    WS-X5234

Port                     2/1

Type                     10/100BaseTX

Speed                    auto,10,100

Duplex                   half,full

Trunk encap type         802.1Q,ISL

Trunk mode               on,off,desirable,auto,nonegotiate

Channel                  2/1-2,2/1-4

Broadcast suppression    percentage(0-100)

Flow control             receive-(off,on),send-(off,on)

Security                 yes

Membership               static,dynamic

Fast start               yes

Rewrite                  no

不支持 EtherChannel 的端口与下面类似：

Switch show port capabilities

Model                    WS-X5213A

Port                     2/1

Type                     10/100BaseTX

Speed                    10,100,auto

Duplex                   half,full

Trunk encap type         ISL

Trunk mode               on,off,desirable,auto,nonegotiate

Channel                  no

Broadcast suppression    pps(0-150000)

Flow control             no

Security                 yes

Membership               static,dynamic

Fast start               yes

3. 验证端口是否已连接并且正常运行。连接线缆前，端口状态如下所示。

Switch-A show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     notconnect 1          normal   auto  auto 10/100BaseTX

2/2                     notconnect 1          normal   auto  auto 10/100BaseTX

2/3                     notconnect 1          normal   auto  auto 10/100BaseTX

2/4                     notconnect 1          normal   auto  auto 10/100BaseTX

连接两台交换机之间的线缆后，状态如下所示。

1999 Dec 14 20:32:44 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1

1999 Dec 14 20:32:44 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/2

1999 Dec 14 20:32:44 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/3

1999 Dec 14 20:32:44 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/4

Switch-A show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal a-full a-100 10/100BaseTX

2/2                     connected  1          normal a-full a-100 10/100BaseTX

2/3                     connected  1          normal a-full a-100 10/100BaseTX

2/4                     connected  1          normal a-full a-100 10/100BaseTX

Switch-B show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal a-full a-100 10/100BaseTX

2/2                     connected  1          normal a-full a-100 10/100BaseTX

2/3                     connected  1          normal a-full a-100 10/100BaseTX

2/4                     connected  1          normal a-full a-100 10/100BaseTX

由于在此测试开始之前已清除了交换机配置，因此端口处于默认状态。这些端口都在 vlan1 中，它们的速度和双工均设置为自动。连接线缆后，它们会将速度协商为 100Mbps 和全双工模式。状态为connected，因此您能ping通另一台交换机。

Switch-A ping 172.16.84.17

172.16.84.17 is alive

在网络中，您可以手动将速度设置为100Mbps和全双工，而不必依赖自动协商，因为您可能希望端口始终以最快的速度运行。有关自动协商的讨论，请参阅排除以太网10/100Mb半/半/全双工自动协商故障部分。

4. 验证要分组的端口是否具有相同设置。这一点非常重要，在故障排除一节中将会更详细地介绍。如果用于设置 EtherChannel 的命令不起作用，通常是因为通道中涉及的各端口的配置不同。这包括链路另一端的端口，也包括本地端口。在这种情况下，由于在此测试开始之前清除了交换机配置，因此端口处于其默认状态。它们都位于vlan1中；它们的速度和双工设置为自动，并且每个端口的所有生成树参数都设置为相同。从输出中可以看到，连接电缆后，端口协商速度为100Mbps和全双工。由于生成树针对每个 VLAN 运行，因此与尝试检查每个生成树字段以确保通道中每个端口和 VLAN 的一致性相比，仅配置通道并响应错误消息要容易得多。

5. 标识有效端口组。在 Catalyst 5000 上，只能将某些端口放到一条通道中。这些限制依赖关系不适用于所有平台。Catalyst 5000 上的通道中的端口必须是连续的。请注意，show port capabilities命令显示，对于端口2/1，以下是可能的组合：

Switch-A show port capabilities

Model                    WS-X5225R

Port                     2/1

Channel                  2/1-2,2/1-4

请注意，此端口可以属于由两个端口 (2/1-2) 组成的组，或属于由四个端口 (2/1-4) 组成的组。模块上的以太网捆绑控制器 (EBC) 会导致这些配置限制。查看另一个端口。

Switch-A show port capabilities 2/3

Model                    WS-X5225R

Port                     2/3

Channel                  2/3-4,2/1-4

此端口可以分组为一组两个端口 (2/3-4) 或一组四个端口 (2/1-4)。

注意：根据硬件情况，可能存在其他限制。在某些模块（WS-X5201 和 WS-X5203）上，除非“端口组”中的前两个端口已形成 EtherChannel，否则组中的最后两个端口无法形成 EtherChannel。“端口组”是允许形成 EtherChannel 的一组端口（在本例中 2/1-4 为端口组）。例如，如果您创建单独的 EtherChannel，一条通道中仅具有两个端口，则对于具有此限制的模块，您必须先将端口 2/1-2 配置为通道，然后才能将端口 2/3-4 分配到该通道！同样，必须先配置端口 2/5-6，然后才能配置端口 2/6-7。本文档所用的模块（WS-X5225R、WS-X5234）没有这种限制。

由于您配置了一组四个端口(2/1-4)，因此这属于已批准的分组。您不能将一组四个端口分配给端口2/3-6。这是一组连续端口，但是它们不会从已批准的边界开始，如show port capabilities命令所示（有效组将是端口1-4、5-8、9-12、13-16、17-20、21-24）。

6. 创建信道。要创建通道，请为每个交换机使用command dset port channel <mod/porton。建议手动打开EtherChannel之前，先使用set port disablecommand关闭通道一侧或另一侧的端口。这样可以避免配置过程中生成树出现问题。如果将一端配置为通道，则生成树可以关闭某些端口（端口状态为“errdisable”），然后可以将另一端配置为通道。由于这种可能性，使用 PAgP 创建 EtherChannel 更加容易，本文档稍后将对此进行说明。为了避免手动配置EtherChannel时出现这种情况，请禁用交换机A上的端口，配置交换机A上的通道，配置交换机B上的通道，然后重新启用交换机A上的端口。

首先，验证信道关闭。

Switch-A (enable) show port channel

No ports channelling

Switch-B (enable) show port channel

No ports channelling

现在禁用交换机 A 上的端口，直到为两台交换机配置完 EtherChannel，这样生成树便不会生成错误并关闭端口。

Switch-A (enable) set port disable 2/1-4

Ports 2/1-4 disabled.

[output from SwitchA upon disabling ports]

1999 Dec 15 00:06:40 %PAGP-5-PORTFROMSTP:Port 2/1 left bridg1

1999 Dec 15 00:06:40 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

1999 Dec 15 00:06:40 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 15 00:06:40 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

关闭交换机A的通道模式。

Switch-A (enable) set port channel 2/1-4 on

Port(s) 2/1-4 channel mode set to on.

检查信道的状态。请注意，信道模式已设置为on，但端口的状态为禁用（因为之前已禁用）。该通道此时无法运行，但启用端口后，该通道将可以运行。

Switch-A (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  disabled   on        channel

2/2  disabled   on        channel

2/3  disabled   on        channel

2/4  disabled   on        channel

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

由于交换机 A 的端口已（临时）禁用，交换机 B 的端口不再有连接。当禁用交换机 A 的端口时，交换机 B 的控制台上会显示此消息。

Switch-B (enable)

2000 Jan 13 22:30:03 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1

2000 Jan 13 22:30:04 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

2000 Jan 13 22:30:04 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

2000 Jan 13 22:30:04 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

为交换机 B 开启信道。

Switch-B (enable) set port channel 2/1-4 on

Port(s) 2/1-4 channel mode set to on.

验证交换机 B 的通道模式是否为 on。

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  notconnect on        channel

2/2  notconnect on        channel

2/3  notconnect on        channel

2/4  notconnect on        channel

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

请注意，交换机B的通道模式为打开，但端口的状态为notconnect。这是因为交换机 A 的端口仍处于禁用状态。

最后一步是在交换机 A 上启用端口。

Switch-A (enable) set port enable 2/1-4

Ports 2/1-4 enabled.

1999 Dec 15 00:08:40 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

1999 Dec 15 00:08:40 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

1999 Dec 15 00:08:40 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

1999 Dec 15 00:08:40 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

检查配置

要验证通道设置是否正确，请执行show port channelcommand。

Switch-A (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  on        channel     WS-C5505    066509957(Sw  2/1

2/2  connected  on        channel     WS-C5505    066509957(Sw  2/2

2/3  connected  on        channel     WS-C5505    066509957(Sw  2/3

2/4  connected  on        channel     WS-C5505    066509957(Sw  2/4

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

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  on        channel     WS-C5505    066507453(Sw  2/1

2/2  connected  on        channel     WS-C5505    066507453(Sw  2/2

2/3  connected  on        channel     WS-C5505    066507453(Sw  2/3

2/4  connected  on        channel     WS-C5505    066507453(Sw  2/4

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

在此命令的输出中，生成树将各端口视为一个逻辑端口。当端口列为2/1-4时，生成树将端口2/1、2/2、2/3和2/4作为一个端口处理。

Switch-A (enable) show spantree

VLAN 1

Spanning tree enabled

Spanning tree type          ieee

Designated Root             00-10-0d-b2-8c-00

Designated Root Priority    32768

Designated Root Cost        8

Designated Root Port        2/1-4

Root Max Age   20 sec    Hello Time 2  sec   Forward Delay 15 sec

Bridge ID MAC ADDR          00-90-92-b0-84-00

Bridge ID Priority          32768

Bridge Max Age 20 sec    Hello Time 2  sec   Forward Delay 15 sec

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

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

2/1-4    1     forwarding         8        32   disabled       channel

可以通过不同方式在通道中的各端口间分配流量来实施 EtherChannel。EtherChannel规范不规定流量必须如何在通道中的链路间分配。Catalyst 5000 使用帧中源和目的 MAC 地址的最后一位或最后两位（具体取决于通道中的链路数）来确定要使用通道中的哪个端口。如果该流量是通过通道一端或另一端的 MAC 地址的正态分布产生的，那么在通道的每个端口上都可以看到类似的流量。要验证流量是否通过通道中的所有端口，您可以使用show maccommand。如果在配置EtherChannel之前端口处于活动状态，则可以通过clear counter命令将流量计数器重置为零，然后流量值表示EtherChannel如何分配流量。

在此测试环境中，您没有生成流量的工作站、服务器或路由器，因此没有实际分布。生成流量的唯一设备是交换机本身。您从交换机A向交换机B发出了一些ping命令，您可以得知单播流量使用的是通道中的第一个端口。在本例中，接收信息 (Rcv-Unicast) 显示了交换机 B 如何通过通道向交换机 A 分配流量。输出中稍低一点，传输信息(Xmit-Unicast)显示SwitchA如何通过信道将流量分发到SwitchB。您还会看到少量的交换机生成的组播流量（动态ISL、CDP）通过所有四个端口。广播数据包是ARP查询（用于默认网关 — 此处不存在）。如果您有工作站通过交换机将数据包发送到通道另一端的目的地，您会看到通过通道中四个链路中的每一个链路的流量。您可以使用show maccommand监控您自己的网络中的数据包分布。

Switch-A (enable) clear counters

This command will reset all MAC and port counters reported in CLI and SNMP.

Do you want to continue (y/n) [n]? y

MAC and Port counters cleared.

Switch-A (enable) show mac

Port     Rcv-Unicast          Rcv-Multicast        Rcv-Broadcast

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

2/1                        9                  320                  183

2/2                        0                   51                    0

2/3                        0                   47                    0

2/4                        0                   47                    0

(...)

Port     Xmit-Unicast         Xmit-Multicast       Xmit-Broadcast

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

2/1                        8                   47                  184

2/2                        0                   47                    0

2/3                        0                   47                    0

2/4                        0                   47                    0

(...)

Port     Rcv-Octet            Xmit-Octet

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

2/1                    35176                17443

2/2                     5304                 4851

2/3                     5048                 4851

2/4                     5048                 4851

(...)

Last-Time-Cleared

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

Wed Dec 15 1999, 01:05:33

使用 PAgP 配置 EtherChannel（首选方法）

端口汇聚协议 (PAgP) 通过在支持通道的端口之间交换数据包来帮助自动创建 EtherChannel 链路。该协议动态获知端口组的功能并将其通知给邻近的端口。

一旦 PAgP 识别出正确配对的支持通道的链路，就会将端口分组到通道中。该信道随后会作为单个网桥端口添加到生成树中。给定出站广播或组播数据包仅从信道中的一个端口传出，而不是从该信道中的每个端口传出。此外，系统会阻止在通道中的一个端口上传输的出站广播和组播数据包从通道的任何其他端口返回。

有四种用户可配置的信道模式：开、关、自动和期望。PAgP数据包仅在自动和期望模式下的端口之间交换。在onoroffmode中配置的端口不会交换PAgP数据包。对于要形成和EtherChannel的交换机，建议的设置是将两台交换机都设置为desirablemode。当一端或另一端遇到错误情况或被重置时，这会提供最稳健的行为。通道的默认模式为auto。

自动和期望模式都允许端口与连接的端口协商，以便根据端口速度、中继状态、本征VLAN等条件确定它们能否形成信道。

如果模式是兼容的，那么当端口处于不同的通道模式时，它们就能形成 EtherChannel。

- 端口indexileblemode可以与另一个端口indexilebleorautomode成功形成EtherChannel。

- 自动模式下的端口可以与另一个端口无关模式形成EtherChannel。

- 自动模式下的端口无法与另一个也处于自动模式下的端口形成EtherChannel，因为这两个端口均不会发起协商。

- 端口inonmode只能与端口inonmode形成信道，因为端口inonmode不交换PAgP数据包。

- 处于inoffmode的端口不会与任何端口形成通道。

使用EtherChannel时，如果显示“SPANTREE-2: Channel misconfig - x/x-x will be disabled”或类似的系统日志消息，则表明所连接端口上的EtherChannel模式不匹配。建议使用set port enable命令更正配置并重新启用端口。有效的 EtherChannel 配置包括以下内容：

表22-5：有效的EtherChannel配置

Port Channel 模式

有效的邻居端口通道模式

desirable

desirable 或 auto

auto（默认）

desirable 或 auto1

在

在

off

off

1如果本地和邻居端口都处于自动模式，则不会形成EtherChannel包。

以下是所有可能的通道模式场景的摘要。其中一些组合可能会导致生成树将信道端的端口置于errdisable状态（即将其关闭）。

表22-6：信道模式场景

交换机 A 信道模式

交换机 B 信道模式

信道状态

开启

开启

通道

开启

关闭

Not Channel (errdisable)

开启

自动

Not Channel (errdisable)

开启

期望

Not Channel (errdisable)

关闭

开启

Not Channel (errdisable)

关闭

关闭

Not Channel

关闭

自动

Not Channel

关闭

期望

Not Channel

自动

开启

Not Channel (errdisable)

自动

关闭

Not Channel

自动

自动

Not Channel

自动

期望

通道

期望

开启

Not Channel (errdisable)

期望

关闭

Not Channel

期望

自动

通道

期望

期望

通道

您在SwitchA和SwitchB上使用此命令关闭了上一个示例的通道。

Switch-A (enable) set port channel 2/1-4 auto

Port(s) 2/1-4 channel mode set to auto.

能够建立信道的端口的默认信道模式为 auto。要验证这一点，请输入以下命令：

Switch-A (enable) show port channel 2/1

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  auto      not channel

上一个命令还显示端口目前尚未形成通道。这便是验证通道状态的另一种方法。

Switch-A (enable) show port channel

No ports channelling

Switch-B (enable) show port channel

No ports channelling

使通道与 PAgP 配合使用非常简单。此时，两台交换机都设置为自动模式，这意味着如果连接的端口发送形成通道的 PAgP 请求，这两台交换机就会形成通道。如果将SwitchA设置为desirable（交换机A），则会导致SwitchA向另一台交换机发送PAgP数据包，并要求其建立信道。

Switch-A (enable) set port channel 2/1-4 desirable

Port(s) 2/1-4 channel mode set to desirable.

1999 Dec 15 22:03:18 %PAGP-5-PORTFROMSTP:Port 2/1 left bridg1

1999 Dec 15 22:03:18 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

1999 Dec 15 22:03:18 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 15 22:03:18 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

1999 Dec 15 22:03:19 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

1999 Dec 15 22:03:19 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 15 22:03:20 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

1999 Dec 15 22:03:23 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

1999 Dec 15 22:03:23 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

1999 Dec 15 22:03:23 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

1999 Dec 15 22:03:24 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

要查看通道，请执行此操作。

Switch-A (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  desirable channel     WS-C5505    066509957(Sw  2/1

2/2  connected  desirable channel     WS-C5505    066509957(Sw  2/2

2/3  connected  desirable channel     WS-C5505    066509957(Sw  2/3

2/4  connected  desirable channel     WS-C5505    066509957(Sw  2/4

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

由于 SwitchB 处于自动模式，因此它对 PAgP 数据包做出了响应并创建了与 SwitchA 的通道。

Switch-B (enable)

2000 Jan 14 20:26:41 %PAGP-5-PORTFROMSTP:Port 2/1 left bridg1

2000 Jan 14 20:26:41 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

2000 Jan 14 20:26:41 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

2000 Jan 14 20:26:41 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

2000 Jan 14 20:26:45 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

2000 Jan 14 20:26:45 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

2000 Jan 14 20:26:45 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

2000 Jan 14 20:26:47 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

2000 Jan 14 20:26:47 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

2000 Jan 14 20:26:47 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

2000 Jan 14 20:26:48 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  auto      channel     WS-C5505    066507453(Sw  2/1

2/2  connected  auto      channel     WS-C5505    066507453(Sw  2/2

2/3  connected  auto      channel     WS-C5505    066507453(Sw  2/3

2/4  connected  auto      channel     WS-C5505    066507453(Sw  2/4

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

注意：建议将通道的两端都设置为desirablesso，以便在一端掉线时两端尝试启动通道。如果将SwitchB上的EtherChannel端口设置为desirablemode，即使该通道当前处于活动状态且处于非自动模式，也不会造成任何问题。这就是此命令的功能。

Switch-B (enable) set port channel 2/1-4 desirable

Port(s) 2/1-4 channel mode set to desirable.

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  desirable channel     WS-C5505    066507453(Sw  2/1

2/2  connected  desirable channel     WS-C5505    066507453(Sw  2/2

2/3  connected  desirable channel     WS-C5505    066507453(Sw  2/3

2/4  connected  desirable channel     WS-C5505    066507453(Sw  2/4

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

现在，如果 SwitchA 因某种原因退出，或者如果 SwitchA 被替换为新硬件，SwitchB 会尝试重新建立通道。如果新设备无法形成通道，SwitchB 会将其端口 2/1-4 视为正常的非通道化端口。这是使用desirablemode的优点之一。如果通道配置为 PAgP 开启模式并且连接的一端存在某种错误或发生重置，则会导致另一端呈现错误禁用状态（关闭）。当每一端上的 PAgP 都设置为 desirable 模式时，信道将稳定下来，并重新协商 EtherChannel 连接。

中继和 EtherChannel

EtherChannel 独立于中继。您可以打开中继，也可以关闭中继。您也可以在创建信道之前打开所有端口的中继，也可以在创建信道后打开中继（如此处所示）。对于EtherChannel而言，这无关紧要；中继和EtherChannel是完全独立的功能。重要的是，所有涉及的端口都处于同一模式：它们要么在配置信道之前都处于中继状态，要么在配置信道之前都未处于中继状态。在创建信道之前，所有端口都必须处于相同的中继状态。一旦形成通道，该通道中一个端口上发生的任何更改都会在其他端口上发生。此测试台中使用的模块可以执行 ISL 或 802.1q 中继操作。默认情况下，模块设置为自动中继和协商模式，也就是说，如果另一端请求它们执行中继操作，它们便会执行中继操作，并协商是使用 ISL 方法还是使用 802.1q 方法执行中继操作。如果未被要求执行中继操作，它们将作为正常的非中继端口运行。

Switch-A (enable) show trunk 2

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      auto         negotiate      not-trunking  1

2/2      auto         negotiate      not-trunking  1

2/3      auto         negotiate      not-trunking  1

2/4      auto         negotiate      not-trunking  1

可通过几种不同方式开启中继。在本示例中，将SwitchA设置为desirable。SwitchA 已设置为协商模式。预期/协商组合使 SwitchA 请求 SwitchB 执行中继操作并协商要执行的中继类型（ISL 或 802.1q）。由于 SwitchB 默认为自动协商模式，因此 SwitchB 会对 SwitchA 的请求做出响应。将会产生以下结果：

Switch-A (enable) set trunk 2/1 desirable

Port(s) 2/1-4 trunk mode set to desirable.

Switch-A (enable)

1999 Dec 18 20:46:25 %DTP-5-TRUNKPORTON:Port 2/1 has become isl trunk

1999 Dec 18 20:46:25 %DTP-5-TRUNKPORTON:Port 2/2 has become isl trunk

1999 Dec 18 20:46:25 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1-4

1999 Dec 18 20:46:25 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/1-4

1999 Dec 18 20:46:25 %DTP-5-TRUNKPORTON:Port 2/3 has become isl trunk

1999 Dec 18 20:46:26 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/1-4

1999 Dec 18 20:46:26 %DTP-5-TRUNKPORTON:Port 2/4 has become isl trunk

1999 Dec 18 20:46:26 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/1-4

1999 Dec 18 20:46:28 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

1999 Dec 18 20:46:29 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

1999 Dec 18 20:46:29 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

1999 Dec 18 20:46:29 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

Switch-A (enable) show trunk 2

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      desirable    n-isl          trunking      1

2/2      desirable    n-isl          trunking      1

2/3      desirable    n-isl          trunking      1

2/4      desirable    n-isl          trunking      1

中继模式设置为 desirable。结果是，与邻居交换机协商中继模式，并且他们决定采用ISL(n-isl)。当前状态正在中断。这便是因 SwitchA 上发出的命令而在 SwitchB 上发生的情况。

Switch-B (enable)

2000 Jan 17 19:09:52 %DTP-5-TRUNKPORTON:Port 2/1 has become isl trunk

2000 Jan 17 19:09:52 %DTP-5-TRUNKPORTON:Port 2/2 has become isl trunk

2000 Jan 17 19:09:52 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1-4

2000 Jan 17 19:09:52 %DTP-5-TRUNKPORTON:Port 2/3 has become isl trunk

2000 Jan 17 19:09:52 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/1-4

2000 Jan 17 19:09:53 %DTP-5-TRUNKPORTON:Port 2/4 has become isl trunk

2000 Jan 17 19:09:53 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/1-4

2000 Jan 17 19:09:53 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/1-4

2000 Jan 17 19:09:55 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

2000 Jan 17 19:09:55 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

2000 Jan 17 19:09:55 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

2000 Jan 17 19:09:55 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

Switch-B (enable) show trunk 2

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      auto         n-isl          trunking      1

2/2      auto         n-isl          trunking      1

2/3      auto         n-isl          trunking      1

2/4      auto         n-isl          trunking      1

请注意，所有四个端口(2/1-4)都变成了中继，即使您仅专门将一个端口(2/1)更改为期望端口。这是有关更改通道中一个端口对所有端口产生影响的示例。

EtherChannel 故障排除

EtherChannel面临的挑战可分为两个主要方面：在配置阶段解决问题以及在执行阶段解决问题。发生配置错误的原因通常是所涉及的端口上的参数不匹配（不同速度、不同双工、不同生成树端口值等）。如果您将信道一端设置为on，并且在另一端配置信道之前等待太久，则也可能会在配置中产生错误。这会导致产生错误的生成树环路，并关闭端口。

在配置 EtherChannel 时遇到错误时，请务必在更正 EtherChannel 错误情况后检查端口状态。如果端口状态为iserrdisable，则意味着这些端口已被软件关闭，直到您输入set port enable命令后，它们才会再次出现。

注：如果端口状态变为errdisable，则必须使用set port enable命令专门启用端口，以使端口变为活动状态。目前，您可以更正所有EtherChannel问题，但端口在重新启用之前不会进入或形成信道！以后版本的操作系统可以定期检查iferrdisableports must enabled。

对于这些测试，您将关闭中继和EtherChannel：参数不匹配；在配置另一端之前等待太久；更正Errdisable状态；并显示链路中断和恢复时会发生的情况。

不匹配的 参数

以下是参数不匹配的示例。您在VLAN 2中设置端口2/4，而其他端口仍在VLAN 1中。要创建新的VLAN，必须为交换机分配VTP域并创建VLAN。

Switch-A (enable) show port channel

No ports channelling

Switch-A (enable) show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal a-full a-100 10/100BaseTX

2/2                     connected  1          normal a-full a-100 10/100BaseTX

2/3                     connected  1          normal a-full a-100 10/100BaseTX

2/4                     connected  1          normal a-full a-100 10/100BaseTX

Switch-A (enable) set vlan 2

Cannot add/modify VLANs on a VTP server without a domain name.

Switch-A (enable) set vtp domain testDomain

VTP domain testDomain modified

Switch-A (enable) set vlan 2 name vlan2

Vlan 2 configuration successful

Switch-A (enable) set vlan 2 2/4

VLAN 2 modified.

VLAN 1 modified.

VLAN  Mod/Ports

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

2     2/4

Switch-A (enable)

1999 Dec 19 00:19:34 %PAGP-5-PORTFROMSTP:Port 2/4 left bridg4

Switch-A (enable) show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal a-full a-100 10/100BaseTX

2/2                     connected  1          normal a-full a-100 10/100BaseTX

2/3                     connected  1          normal a-full a-100 10/100BaseTX

2/4                     connected  2          normal a-full a-100 10/100BaseTX

Switch-A (enable) set port channel 2/1-4 desirable

Port(s) 2/1-4 channel mode set to desirable.

Switch-A (enable)

1999 Dec 19 00:20:19 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1

1999 Dec 19 00:20:19 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

1999 Dec 19 00:20:19 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 19 00:20:20 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

1999 Dec 19 00:20:20 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

1999 Dec 19 00:20:22 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 19 00:20:22 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

1999 Dec 19 00:20:24 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-2

1999 Dec 19 00:20:25 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-2

1999 Dec 19 00:20:25 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/3

1999 Dec 19 00:20:25 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/4

Switch-A (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  desirable channel     WS-C5505    066509957(Sw  2/1

2/2  connected  desirable channel     WS-C5505    066509957(Sw  2/2

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

请注意，通道仅在端口 2/1-2 之间形成。由于端口 2/4 位于不同的 VLAN 中，因此不考虑端口 2/3-4。没有错误消息；PAgP只是尽其所能使通道正常工作。您需要在创建通道时查看结果，以确保其已执行所需操作。

现在，将端口2/4位于不同VLAN中的通道手动设置为“打开”，然后查看发生的情况。首先将通道模式重新设置为auto以断开当前通道，然后手动将通道设置为“on”。

Switch-A (enable) set port channel 2/1-4 auto

Port(s) 2/1-4 channel mode set to auto.

Switch-A (enable)

1999 Dec 19 00:26:08 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1-2

1999 Dec 19 00:26:08 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/1-2

1999 Dec 19 00:26:08 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

1999 Dec 19 00:26:08 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

1999 Dec 19 00:26:18 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1

1999 Dec 19 00:26:19 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/2

1999 Dec 19 00:26:19 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/3

1999 Dec 19 00:26:19 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/4

Switch-A (enable) show port channel

No ports channelling

Switch-A (enable) set port channel 2/1-4 on

Mismatch in vlan number.

Failed to set port(s) 2/1-4 channel mode to on.

Switch-A (enable) show port channel

No ports channelling

在SwitchB上，您可以打开通道，注意它显示端口通道正常，但您知道SwitchA配置不正确。

Switch-B (enable) show port channel

No ports channelling

Switch-B (enable) show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal a-full a-100 10/100BaseTX

2/2                     connected  1          normal a-full a-100 10/100BaseTX

2/3                     connected  1          normal a-full a-100 10/100BaseTX

2/4                     connected  1          normal a-full a-100 10/100BaseTX

Switch-B (enable) set port channel 2/1-4 on

Port(s) 2/1-4 channel mode set to on.

Switch-B (enable)

2000 Jan 17 22:54:59 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1

2000 Jan 17 22:54:59 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/2

2000 Jan 17 22:54:59 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/3

2000 Jan 17 22:54:59 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/4

2000 Jan 17 22:55:00 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

2000 Jan 17 22:55:00 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

2000 Jan 17 22:55:00 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

2000 Jan 17 22:55:00 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  on        channel     WS-C5505    066507453(Sw  2/1

2/2  connected  on        channel     WS-C5505    066507453(Sw  2/2

2/3  connected  on        channel     WS-C5505    066507453(Sw  2/3

2/4  connected  on        channel     WS-C5505    066507453(Sw  2/4

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

这清楚地表明，当您手动配置通道时，必须检查通道的两端，以确保两端而不仅仅是一端处于启用状态。此输出显示，SwitchB 设置用于通道，但 SwitchA 因其一个端口位于错误的 VLAN 中而未形成通道。

在配置另一端之前等待时间过长

在这种情况下，交换机B启用了EtherChannel，但交换机A没有启用，因为它存在VLAN配置错误（端口2/1-3在vlan1中，端口2/4在vlan2中）。这里介绍当 EtherChannel 的一端设置为启用状态而另一端仍处于自动模式时会发生的情况。几分钟后，由于检测到生成环路，SwitchB 将关闭其端口。这是因为 SwitchB 端口 2/1-4 就像一个大端口，而 SwitchA 端口 2/1-4 是完全独立的端口。从 SwitchB 通过端口 2/1 发送到 SwitchA 的广播通过端口 2/2、2/3 和 2/4 发送回 SwitchB，因为 SwitchA 将这些端口视为独立的端口。这就是交换机B报告存在生成树环路的原因。请注意，交换机B上的端口现已禁用且状态为ferrdisable。

Switch-B (enable)

2000 Jan 17 22:55:48 %SPANTREE-2-CHNMISCFG: STP loop - channel 2/1-4 is disabled in vlan 1.

2000 Jan 17 22:55:49 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1-4

2000 Jan 17 22:56:01 %PAGP-5-PORTFROMSTP:Port 2/2 left bridge port 2/1-4

2000 Jan 17 22:56:13 %PAGP-5-PORTFROMSTP:Port 2/3 left bridge port 2/1-4

2000 Jan 17 22:56:36 %PAGP-5-PORTFROMSTP:Port 2/4 left bridge port 2/1-4

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  errdisable on        channel

2/2  errdisable on        channel

2/3  errdisable on        channel

2/4  errdisable on        channel

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

Switch-B (enable) show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     errdisable 1          normal   auto  auto 10/100BaseTX

2/2                     errdisable 1          normal   auto  auto 10/100BaseTX

2/3                     errdisable 1          normal   auto  auto 10/100BaseTX

2/4                     errdisable 1          normal   auto  auto 10/100BaseTX

更正错误禁用状态

有时，当您尝试配置EtherChannel但端口配置不同时，会导致通道一侧或另一侧的端口关闭。端口上的链路指示灯为黄色。如果键入how port，则可以通过控制台了解这个情况。端口列为aserrdisable。为了恢复正常，您必须修复所涉及端口上不匹配的参数，然后重新启用这些端口。只需注意，重新启用端口是一个单独的步骤，必须执行该步骤才能使端口再次正常工作。

在本例中，您知道SwitchA的vlan不匹配。您将转到SwitchA并将端口2/4放回vlan1。然后打开端口2/1-4的通道。重新启用SwitchB端口后，SwitchA才会显示connected。然后，当您固定了SwitchA并将其置于信道模式时，您将返回到SwitchB并重新启用端口。

Switch-A (enable) set vlan 1 2/4

VLAN 1 modified.

VLAN 2 modified.

VLAN  Mod/Ports

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

1     2/1-24

Switch-A (enable) set port channel 2/1-4 on

Port(s) 2/1-4 channel mode set to on.

Switch-A (enable) sh port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  notconnect on        channel

2/2  notconnect on        channel

2/3  notconnect on        channel

2/4  notconnect on        channel

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

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  errdisable on        channel

2/2  errdisable on        channel

2/3  errdisable on        channel

2/4  errdisable on        channel

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

Switch-B (enable) set port enable 2/1-4

Ports 2/1-4 enabled.

Switch-B (enable) 2000 Jan 17 23:15:22 %PAGP-5-PORTTOSTP:Port 2/1 joined bridg4

2000 Jan 17 23:15:22 %PAGP-5-PORTTOSTP:Port 2/2 joined bridge port 2/1-4

2000 Jan 17 23:15:22 %PAGP-5-PORTTOSTP:Port 2/3 joined bridge port 2/1-4

2000 Jan 17 23:15:22 %PAGP-5-PORTTOSTP:Port 2/4 joined bridge port 2/1-4

Switch-B (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  on        channel

2/2  connected  on        channel

2/3  connected  on        channel

2/4  connected  on        channel

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

显示链路中断和恢复时发生的情况

当信道中的某个端口关闭时，通常在该端口上发送的所有数据包都会转移到该信道中的下一个端口。您可以使用show maccommand验证是否出现这种情况。在此测试平台中，交换机A将ping数据包发送到交换机B，以便查看流量使用哪条链路。首先清除计数器，然后显示mac，发送三个ping，然后show macagain查看在哪个通道上接收了ping响应。

Switch-A (enable) clear counters

This command will reset all MAC and port counters reported in CLI and SNMP.

Do you want to continue (y/n) [n]? y

MAC and Port counters cleared.

Switch-A (enable) show port channel

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  on        channel     WS-C5505    066509957(Sw  2/1

2/2  connected  on        channel     WS-C5505    066509957(Sw  2/2

2/3  connected  on        channel     WS-C5505    066509957(Sw  2/3

2/4  connected  on        channel     WS-C5505    066509957(Sw  2/4

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

Switch-A (enable) show mac

Port     Rcv-Unicast          Rcv-Multicast        Rcv-Broadcast

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

2/1                        0                   18                    0

2/2                        0                    2                    0

2/3                        0                    2                    0

2/4                        0                    2                    0

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) show mac

Port     Rcv-Unicast          Rcv-Multicast        Rcv-Broadcast

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

2/1                        3                   24                    0

2/2                        0                    2                    0

2/3                        0                    2                    0

2/4                        0                    2                    0

此时，您已在端口3/1上收到ping响应。当 SwitchB 控制台向 SwitchA 发送响应时，EtherChannel 使用端口 2/1。现在您关闭了SwitchB的端口2/1。从SwitchA发出另一个ping命令，然后查看响应回流的通道。(交换机A在交换机B所连接的同一端口上发送。您只显示来自交换机B的已接收数据包，因为传输的数据包在show macdisplay中进一步下降。)

1999 Dec 19 01:30:23 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1-4

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) show mac

Port     Rcv-Unicast          Rcv-Multicast        Rcv-Broadcast

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

2/1                        3                   37                    0

2/2                        1                   27                    0

2/3                        0                    7                    0

2/4                        0                    7                    0

既然已禁用端口 2/1，EtherChannel 会自动使用信道中的下一个端口，即端口 2/2。现在您重新启用端口2/1，并等待它加入网桥组。然后又发出两个ping。

1999 Dec 19 01:31:33 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1-4

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) ping 172.16.84.17

172.16.84.17 is alive

Switch-A (enable) show mac

Port     Rcv-Unicast          Rcv-Multicast        Rcv-Broadcast

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

2/1                        5                   50                    0

2/2                        1                   49                    0

2/3                        0                   12                    0

2/4                        0                   12                    0

请注意，这些 ping 命令是从端口 2/1 发送的。当链路恢复时，EtherChannel 会再次将其添加到捆绑中并使用它。执行所有这些操作的方式对于用户是透明的。

此部分中使用的命令

这些是本部分中使用的命令。

用于设置配置的命令

- set port channel on - 打开 EtherChannel 功能。

- set port channel auto - 将端口重置为其默认自动模式。

- set port channel desirable — 向另一端发送PAgP数据包以请求创建信道。

- set port enable - 在将端口为禁用或端口处于错误禁用状态后启用端口。

- set port disable — 用于禁用端口，同时进行其他配置设置。

- set trunk desirable - 打开中继并使此端口向另一台交换机发送请求，指示这是中继链路。如果端口设置为协商（默认设置），以协商要在链路上使用的中继类型（ISL 或 802.1q）。

用于验证配置的命令

- show version - 显示交换机运行的软件版本。

- show module - 显示交换机中安装的模块。

- show port capabilities — 用于确定要使用的端口是否具有执行EtherChannel的能力。

- show port - 确定端口状态（未连接、已连接）以及速度和双工设置。

- ping - 测试与另一台交换机的连接。

- show port channel - 查看 EtherChannel 捆绑包的当前状态。

- show port channel mod/port - 提供有关单个端口的通道状态的更详细视图。

- show spantree - 验证生成树是否将通道视为一条链路。

- show trunk - 查看端口的中继状态。

用于排除配置故障的命令

- show port channel - 查看 EtherChannel 捆绑包的当前状态。

- show port - 确定端口状态（未连接、已连接）以及速度和双工设置。

- clear counters - 将交换机数据包计数器重置为零。使用show maccommand可以查看计数器。

- show mac - 查看交换机接收和发送的数据包。

- ping — 测试到其他交换机的连接并生成通过show maccommand显示的流量。

使用Portfast和其他命令解决终端站启动连接问题

如果您的工作站连接到无法登录您的网络域（NT或Novell）的交换机，或者无法获取DHCP地址，那么您可以在探索其他途径之前尝试本文档中列出的建议。这些建议相对容易实施，并且常常是工作站初始化/启动阶段遇到工作站连接问题的原因。

随着越来越多的用户将交换功能部署到桌面并将共享集线器替换为交换机，您经常会看到客户端/服务器环境中由于这种初始延迟而引入的问题。您看到的最大问题是Windows 95/98/NT、Novell、VINES、IBM NetworkStation/IBM Thin Clients和AppleTalk客户端无法连接到其服务器。如果这些设备上的软件在启动过程中不是永久性的，那么在交换机允许流量通过之前，这些设备将不再尝试连接到其服务器。

注意：此初始连接延迟通常表现为首次启动工作站时出现的错误。以下是可以看到的错误消息和错误的几个示例：

- Microsoft 网络客户端显示“No Domain Controllers Available”。

- DHCP 报告“No DHCP Servers Available”。

- Novell IPX 网络工作站在启动时没有显示“Novell Login Screen”。

- AppleTalk 网络客户端显示“Access to your AppleTalk network has been interrupted.In order to re-establish your connection, open and close the AppleTalk control panel”。 AppleTalk客户端选择器应用程序也可能不显示区域列表或显示不完整的区域列表。

初始连接延迟经常会在网络管理员更新软件或驱动器的交换环境中看到。在这种情况下，供应商可以优化驱动程序，确保在客户端启动过程中更早执行网络初始化程序（在交换机准备好处理数据包之前）。

借助某些交换机中现在包含的各种功能，交换机可能需要近一分钟的时间才能开始为新连接的工作站提供服务。每次打开或重新启动工作站时，此延迟都会影响工作站。以下是导致此延迟的四个主要特性：

- 生成树协议 (STP)

- EtherChannel 协商

- 中继协商

- 在交换机和工作站之间的链路速度/双工协商

这四个特性按顺序列出，从造成最大延迟的生成树协议到造成最小延迟的速度/双工协商。连接到交换机的工作站通常不会导致生成树环路，通常不需要 EtherChannel，并且通常不需要协商中继方法。（如果您禁用链路速度/检测协商，它还可以在您需要尽可能优化启动时间的情况下减少端口延迟。）

本部分介绍如何在三个 Catalyst 交换机平台上实施启动速度优化命令。在计时部分中，您将看到交换机端口延迟是如何减少的，以及减少的幅度。

目录

1. 背景

2. 如何减少 Catalyst 4000/5000/6000 交换机上的启动延迟

3. Catalyst 5000 上的计时测试

4. 如何减少 Catalyst 2900XL/3500XL 交换机上的启动延迟

5. Catalyst 2900XL 上的计时测试

6. 如何减少 Catalyst 1900/2800 交换机上的启动延迟

7. Catalyst 2820 上的计时测试

8. 使用 Portfast 的其它好处

术语“工作中”、“⁪终端站”和“⁪终端站”在此部分中互换使用。您提到的是任何通过单个网卡直接连接到交换机的设备。它还可以指配备多个 NIC 卡的设备，其中 NIC 卡仅用于冗余，换言之，工作站或服务器未配置为充当网桥，它只需要多个 NIC 卡来实现冗余。

注意：有些服务器NIC卡支持中继和/或EtherChannel。在某些情况下，服务器需要同时驻留在多个 VLAN 上（中继），或者服务器在连接到交换机的链路上需要更多带宽 (EtherChannel)。在这种情况下，请勿关闭PAgP和关闭中继。此外，很少关闭或重置这些设备。本文档中的说明不适用于这些类型的设备。

背景

本节介绍一些交换机具有的四个特性，这些特性在设备连接到交换机时会导致初始延迟。通常，工作站不会导致生成树问题（环路），或者不需要该功能(PAgP、DTP)，因此不需要延迟。

生成树

如果您最近开始从集线器环境迁移到交换机环境，这些连接问题可能会出现，因为交换机的工作方式与集线器有很大不同。交换机在数据链路层提供连接，而不是在物理层。交换机必须使用桥接算法来确定某个端口上收到的数据包是否需要从其他端口传输出去。桥接算法易受网络拓扑中物理环路的影响。由于对环路的敏感性，交换机运行一种称为生成树协议 (STP) 的协议，该协议可消除拓扑中的环路。当STP运行时，它会使生成树进程包含的所有端口变得活动速度比正常情况下要慢得多，因为它会检测并阻止环路。具有物理环路但没有生成树的桥接网络断开。无论所涉及时间长短，STP 始终有益。Catalyst 交换机上运行的生成树是行业标准规范 (IEEE 802.1d)。

交换机上的端口带有链路并加入网桥组后，它会在该端口上运行生成树。运行生成树的端口可以有5种状态之一：阻塞、侦听、学习、转发和禁用。生成树指示端口从阻塞开始，然后立即进入侦听和获知阶段。默认情况下，它大约花费15秒的侦听时间和15秒的学习时间。

处于侦听状态时，交换机会尝试确定其在生成树拓扑中的位置。它特别想知道此端口是否为物理环路的一部分。如果此端口是环路的一部分，则可以选择使此端口进入阻塞模式。阻塞意味着它不发送或接收用户数据以消除环路。如果端口不是环路的一部分，它将进入获知状态，其中包括了解哪些 MAC 地址依赖于此端口。整个生成树初始化进程大约需要 30 秒。

如果将工作站或配备单个 NIC 卡的服务器连接到交换机端口，则此连接无法创建物理环路。这些连接称为叶节点。没有理由让工作站等待30秒，当工作站不能引起循环时，交换机会检查循环。因此，思科添加了一项名为“Portfast”或“Fast-Start”的功能，这意味着此端口的生成树可以假设该端口不是环路的一部分，可以立即进入转发状态，并跳过阻塞、侦听或学习状态。这可以节省大量时间。此命令不会关闭生成树。它只是使所选端口上的生成树在开始时跳过几个步骤（在这种情况下没有必要）。

注意：Portfast功能绝不能用于连接到其他交换机、集线器或路由器的交换机端口。这些连接可能会导致物理环路，在这些情况下，生成树必须完成完整的初始化程序，这一点非常重要。生成树环路可能会造成网络瘫痪。如果启用作为物理环路一部分的端口的 Portfast 功能，则会产生时间窗，在此期间可能会以网络无法恢复的方式连续转发（甚至倍增）数据包。在更高版本的 Catalyst 操作系统软件 (5.4(1)) 中，有一项称为 Portfast BPDU-Guard 的功能，该功能可检测启用 PortFast 的端口上的 BPDU 接收情况。由于这种情况决不会发生，因此 BPDU-Guard 将此端口置于“错误禁用”状态。

EtherChannel

交换机可以具有的另一个功能称为 EtherChannel（或 Fast EtherChannel 或 Gigabit EtherChannel）。此功能允许相同两台设备之间的多条链路如同一条快速链路一样工作，链路之间的流量负载平衡。交换机可以使用名为端口汇聚协议 (PAgP) 的协议自动与邻居建立这些捆绑包。可以运行 PAgP 的交换机端口通常默认为名为“自动”的被动模式，这意味着如果链路上的邻居设备要求它们建立捆绑包，它们便可以建立捆绑包。如果在自动模式下运行协议，可能会导致端口在将控制传递给生成树算法之前延迟长达 15 秒（PAgP 在生成树执行此操作之前在端口上运行）。PAgP 没有理由在连接到工作站的端口上运行。如果将交换机端口 PAgP 模式设置为“禁用”，则可消除此延迟。

中继

另一项交换机功能是端口形成中继的能力。当两台设备需要传输来自多个虚拟局域网 (VLAN) 的流量时，会在这两台设备之间配置中继。VLAN 由交换机创建，用于使一组工作站看起来位于它们自己的“网段”或“广播域”上。 中继端口使这些VLAN横跨多个交换机延伸，因此单个VLAN可以覆盖整个园区。它们通过向数据包添加标记来执行此操作；这表示数据包属于哪个VLAN。

中继协议有多种不同的类型。如果端口可以成为中继，它还可以自动执行中继操作，在某些情况下甚至可以协商在端口上使用的中继类型。这种与其他设备协商中继方法的能力称为动态中继协议 (DTP)，DTP 的前身是称为动态 ISL (DISL)的协议。如果这些协议运行，它们可能会延迟交换机上变为活动状态的端口。

通常，连接到工作站的端口只属于一个VLAN，因此不需要建立Trunk。如果端口具有协商形成中继的能力，则它通常默认为“自动”模式。如果端口更改为“关闭”的中继模式，则进一步降低变为活动状态的交换机端口的延迟。

速度和双工协商

您只需打开Portfast并关闭PAgP（如果存在）即可解决问题，但是如果您需要消除每一秒的时间，如果交换机是多速端口(10/100)，您也可以在交换机上手动设置端口速度和双工。自动协商是一个很好的功能，但如果您将其关闭，在Catalyst 5000上可以节省2秒（在2800或2900XL上它并没有多大帮助）。

但是，如果您关闭了交换机上的自动协商功能，但在工作站上将其保持活动状态，则可能会引起复杂情况。由于交换机不与客户端协商，因此客户端可以选择与交换机是否使用的相同双工设置。有关自动协商注意事项的其他信息，请参阅“排除以太网10/100Mb半双工/半双工/全双工自动协商故障”。

如何减少 Catalyst 4000/5000/6000 交换机上的启动延迟

这五个命令显示如何打开Portfast、如何关闭PAgP协商、关闭中继协商(DISL、DTP)以及关闭速度/双工协商。set spantree portfast命令一次在一系列端口上完成(set spantree portfast 2/1-12 enable)。通常，必须使用一组有效的支持信道的端口关闭端口通道。在这种情况中，模块 2 能够与端口 2/1-2 或端口 2/1-4 建立通道，因此这些端口组中的任何一组都可以有效使用。

注意：Catalyst 4000/5000的Cat OS版本5.2包含名为set port hosts的新命令，该宏将这些命令合并到一个易于使用的命令中（但不更改速度和双工设置）。

配置

Switch-A (enable) set spantree portfast 2/1 enable

Warning: Spantree port fast start should only be enabled on ports connected

to a single host. Connecting hubs, concentrators, switches, bridges, and so on to

a fast start port can cause temporary spanning tree loops.  Use with caution.

Spantree port 2/1 fast start enabled.

Switch-A (enable) set port channel 2/1-2 off

Port(s) 2/1-2 channel mode set to off.

Switch-A (enable) set trunk 2/1 off

Port(s) 2/1 trunk mode set to off.

对配置的更改会自动保存到 NVRAM。

确认

本文档中使用的交换机软件版本为 4.5(1)。有关 show version 和 show module 的完整输出，请参阅本计时测试部分。

Switch-A (enable) show version

WS-C5505 Software,

Version McpSW: 4.5(1) NmpSW: 4.5(1)

此命令显示如何查看与生成树相关的端口的当前状态。目前，端口处于生成树转发状态（发送和接收数据包），并且 Fast-Start 列显示 Portfast 当前已禁用。换句话说，每当端口初始化时，它至少需要30秒才能转换到转发状态。

Switch-A (enable) show port spantree 2/1

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

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

2/1      1     forwarding        19        32

disabled

现在，您可以在此交换机端口上启用portfast。交换机警告我们，此命令只能用于连接到单个主机（工作站、服务器等）的端口，不得用于连接到其他集线器或交换机的端口。启用portfast的原因是，因此端口会立即开始转发。您之所以可以这样做，是因为工作站或服务器不会导致网络环路。这会浪费时间。但另一台集线器或交换机可能导致环路，当您连接到这些类型的设备时，您想要始终经历正常的侦听和学习阶段。

Switch-A (enable) set spantree portfast 2/1 enable

Warning: Spantree port fast start should only be enabled on ports connected

to a single host.  Connecting hubs, concentrators, switches, bridges, and so on to

a fast start port can cause temporary spanning tree loops.  Use with caution.

Spantree port 2/1 fast start enabled.

要验证是否为此端口启用了 Portfast，请执行此命令。

Switch-A (enable) show port spantree 2/1

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

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

2/1      1     forwarding        19        32

enabled

查看一个或多个端口的 Portfast 设置的另一种方法是查看特定 VLAN 的生成树信息。稍后，在本文档的计时部分中，您将展示如何让交换机实时报告它所经过的每个生成树阶段。此输出还显示转发延迟时间（15 秒）。这是VLAN中每个端口生成树处于侦听状态的时间和它处于学习状态的时间长度。

Switch-A (enable) show spantree 1

VLAN 1

Spanning tree enabled

Spanning tree type          ieee

Designated Root             00-e0-4f-94-b5-00

Designated Root Priority    8189

Designated Root Cost        19

Designated Root Port        2/24

Root Max Age   20 sec    Hello Time 2  sec   Forward Delay 15 sec

Bridge ID MAC ADDR          00-90-92-b0-84-00

Bridge ID Priority          32768

Bridge Max Age 20 sec    Hello Time 2  sec   Forward Delay 15 sec

Port      Vlan  Port-State     Cost   Priority  Fast-Start  Group-Method

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

2/1      1     forwarding        19        32   enabled

...

要验证PAgP是否关闭，请使用show port命令。确保并指定模块号（在本例中为 2），从而确保即使没有形成通道，该命令也会显示通道模式。如果doshow port channelwith no channels conformed，它只是说没有端口建立信道。您想进一步了解当前的信道模式。

Switch-A (enable) show port channel

No ports channeling

Switch-A (enable) show port channel 2

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  notconnect auto      not channel

2/2  notconnect auto      not channel

...

Switch-A (enable) set port channel 2/1-2 off

Port(s) 2/1-2 channel mode set to off.

Switch-A (enable) show port channel 2

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  off       not channel

2/2  connected  off       not channel

...

要验证中继协商已关闭，请使用set trunk命令。您显示默认状态。然后您将中继关闭并显示结果。指定模块编号2，以便可以看到此模块中端口的当前通道模式。

Switch-A (enable) show trunk 2

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      auto         negotiate      not-trunking  1

2/2      auto         negotiate      not-trunking  1

...

Switch-A (enable) set trunk 2/1-2 off

Port(s) 2/1-2 trunk mode set to off.

Switch-A (enable) show trunk 2

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      off          negotiate      not-trunking  1

2/2      off          negotiate      not-trunking  1

除非在极少数情况下，否则无需关闭交换机上的速度/双工自动协商或手动设置速度和双工。如果您认为您的情况需要，可以在Catalyst 5000上使用DTP、PAgP和Portfast计时测试部分中举例说明如何执行此操作。

在 Catalyst 5000 上使用和不使用 DTP、PAgP 以及 PortFast 进行时间测试

此测试显示在应用各种命令时交换机端口初始化计时会发生的情况。首先使用端口的默认设置来提供基准。Portfast 处于禁用状态，PAgP (EtherChannel) 模式设置为自动（若被请求形成通道，它将执行形成通道操作），中继模式 (DTP) 设置为自动（若被请求执行中继操作，它将执行中继操作）。然后，测试继续打开 Portfast 并测量时间，将 PAgP 设置为禁用并测量时间，然后关闭中继并测量时间。最后，关闭自动协商并测量时间。所有这些测试都是在配备支持 DTP 和 PAgP 的 10/100 快速以太网卡的 Catalyst 5000 上进行的。

注：打开portfast与关闭生成树不是一回事（如本文档所述）。启用portfast后，生成树仍然在该端口上运行；它只是不阻塞、侦听或学习，并立即进入转发状态。建议不要关闭生成树，因为这会影响整个 VLAN，并且会使网络容易受到物理拓扑环路的影响，从而导致严重的网络问题。

1. 显示交换机的Cisco IOS版本和配置(show version、show module)。

Switch-A (enable) show version

WS-C5505 Software, Version McpSW: 4.5(1) NmpSW: 4.5(1)

Copyright (c) 1995-1999 by Cisco Systems

NMP S/W compiled on Mar 29 1999, 16:09:01

MCP S/W compiled on Mar 29 1999, 16:06:50

System Bootstrap Version: 3.1.2

Hardware Version: 1.0  Model: WS-C5505  Serial #: 066507453

Mod Port Model      Serial #  Versions

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

1   0    WS-X5530   006841805 Hw : 1.3

Fw : 3.1.2

Fw1: 3.1(2)

Sw : 4.5(1)

2   24   WS-X5225R  012785227 Hw : 3.2

Fw : 4.3(1)

Sw : 4.5(1)

DRAM                    FLASH                   NVRAM

Module Total   Used    Free    Total   Used    Free    Total Used  Free

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

1       32640K  13648K  18992K   8192K   4118K   4074K  512K  119K  393K

Uptime is 28 days, 18 hours, 54 minutes

Switch-A (enable) show module

Mod Module-Name         Ports Module-Type           Model    Serial-Num Status

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

1                       0     Supervisor III        WS-X5530  006841805 ok

2                       24    10/100BaseTX Ethernet WS-X5225R 012785227 ok

Mod MAC-Address(es)                        Hw     Fw         Sw

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

1   00-90-92-b0-84-00 to 00-90-92-b0-87-ff 1.3    3.1.2      4.5(1)

2   00-50-0f-b2-e2-60 to 00-50-0f-b2-e2-77 3.2    4.3(1)     4.5(1)

Mod Sub-Type Sub-Model Sub-Serial Sub-Hw

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

1   NFFC     WS-F5521  0008728786 1.0

2. 将生成树的日志记录设置为最详细（将日志记录级别设置为 spantree 7）。这是生成树的默认日志记录级别 (2)，这意味着仅报告严重情况。

Switch-A (enable) show logging

Logging buffer size:          500

timestamp option:     enabled

Logging history size:         1

Logging console:              enabled

Logging server:               disabled

server facility:      LOCAL7

server severity:      warnings(4)

Facility            Default Severity         Current Session Severity

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

...

spantree            2                        2

...

0(emergencies)        1(alerts)             2(critical)

3(errors)             4(warnings)           5(notifications)

6(information)        7(debugging)

生成树的级别更改为7（调试），因此您可以看到端口上的生成树状态变化。此配置更改只会持续到终端会话，然后就会恢复正常。

Switch-A (enable) set logging level spantree 7

System logging facility <spantree for this session set to severity 7(debugging)

Switch-A (enable) show logging

...

Facility            Default Severity         Current Session Severity

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

...

spantree            2                        7

...

3. 首先关闭 Catalyst 上的端口。

Switch-A (enable) set port disable 2/1

Port 2/1 disabled.

4. 现在显示时间并启用端口。您希望查看端口在每个状态中停留的时间。

Switch-A (enable) show time

Fri Feb 25 2000, 12:20:17

Switch-A (enable) set port enable 2/1

Port 2/1 enabled.

Switch-A (enable)

2000 Feb 25 12:20:39 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1

2000 Feb 25 12:20:39 %SPANTREE-6-PORTBLK: port 2/1 state in vlan 1 changed to blocking.

2000 Feb 25 12:20:39 %SPANTREE-6-PORTLISTEN: port 2/1 state in vlane 1 changed to Listening.

2000 Feb 25 12:20:53 %SPANTREE-6-PORTLEARN: port 2/1 state in vlan 1 changed to Learning.

2000 Feb 25 12:21:08 %SPANTREE-6-PORTFWD: port 2/1 state in vlan 1 changed to forwarding.

从输出中可以发现，端口大约花了 22 秒（从 20:17 到 20:39）开始进入生成树阻塞阶段。这是协商链路以及执行 DTP 和 PAgP 任务所需的时间。当阻塞开始时，您现在处于生成树领域。从阻塞端口开始，它立即进入侦听状态（从 20:39 到 20:39）。从侦听阶段到获知阶段大约需要 14 秒（从 20:39 到 20:53）的时间。

从获知阶段到转发阶段需要 15 秒（从 20:53 到 21:08）的时间。因此，端口实际开始运行流量之前的总时间约为 51 秒（从 20:17 到 21:08）。

注意：从技术上讲，侦听和学习阶段都是15秒，这是为此VLAN设置转发延迟参数的方法。如果您有更精确的测量，学习阶段可能更接近15秒而不是14秒。这里的测量都不完全准确你只是在试着感受一下这要花多长时间

5. 从输出和show spantreecommand中可以知道，此端口上的生成树处于活动状态。让我们看看在端口进入转发状态时可能会减慢其速度的其他因素。show port capability命令显示此端口能够中继和创建EtherChannel。show trunk命令表明此端口处于自动模式，并设置为协商要使用的中继类型(ISL或802.1q，通过动态中继协议(DTP)协商)。

Switch-A (enable) show port capabilities 2/1

Model                    WS-X5225R

Port                     2/1

Type                     10/100BaseTX

Speed                    auto,10,100

Duplex                   half,full

Trunk encap type         802.1Q,ISL

Trunk mode               on,off,desirable,auto,nonegotiate

Channel                  2/1-2,2/1-4

Broadcast suppression    percentage(0-100)

Flow control             receive-(off,on),send-(off,on)

Security                 yes

Membership               static,dynamic

Fast start               yes

Rewrite                  yes

Switch-A (enable) show trunk 2/1

Port      Mode         Encapsulation  Status        Native vlan

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

2/1      auto         negotiate      not-trunking  1

6. 首先，您可以在端口上启用Portfast。中继协商 (DTP) 仍处于自动模式，并且 EtherChannel (PAgP) 仍处于自动模式。

Switch-A (enable) set port disable 2/1

Port 2/1 disabled.

Switch-A (enable) set spantree portfast 2/1 enable

Warning: Spantree port fast start should only be enabled on ports connected

to a single host.  Connecting hubs, concentrators, switches, bridges, and so on to

a fast start port can cause temporary spanning tree loops.  Use with caution.

Spantree port 2/1 fast start enabled.

Switch-A (enable) show time

Fri Feb 25 2000, 13:45:23

Switch-A (enable) set port enable 2/1

Port 2/1 enabled.

Switch-A (enable)

Switch-A (enable)

2000 Feb 25 13:45:43 %PAGP-5-PORTTOSTP:Port 2/1 joined bridgeport 2/1

2000 Feb 25 13:45:44 %SPANTREE-6-PORTFWD: port 2/1 state in vlan 1 change to forwarding.

现在您的总时间为21秒！它加入网桥组需要20秒（45:23到45:43）。但是，由于启用了 Portfast，因此 STP 开始转发前只需 1 秒（而不是 30 秒）的时间。启用Portfast时节省了29秒。看看你能不能进一步减少延迟。

7. 现在您将PAgP模式设置为“off”。您可以通过show port channel命令看到，PAgP模式设置为auto，这意味着如果发音PAgP的邻居要求则其信道。必须为至少有两个端口的端口组将信道功能设置为 off。您不能仅面向单个端口执行此操作。

Switch-A (enable) show port channel 2/1

Port  Status     Channel   Channel     Neighbor                  Neighbor

mode      status      device                    port

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

2/1  connected  auto      not channel

Switch-A (enable) set port channel 2/1-2 off

Port(s) 2/1-2 channel mode set to off.

8. 关闭端口并重复测试。

Switch-A (enable) set port disable 2/1

Port 2/1 disabled.

Switch-A (enable) show time

Fri Feb 25 2000, 13:56:23

Switch-A (enable) set port enable 2/1

Port 2/1 enabled.

Switch-A (enable)

2000 Feb 25 13:56:32 %PAGP-5-PORTTOSTP:Port 2/1 joined bridgeport 2/1

2000 Feb 25 13:56:32 %SPANTREE-6-PORTFWD: port 2/1 state in vlan 1 changed to forwarding.

请注意，现在到达转发状态只需要9秒（56:23到56:32），而不是上一个测试中的21秒。将PAgP从mautotooffin此测试节省了约12秒。

9. 将中继模式切换到禁用（而不是自动），并查看这对该端口进入转发状态所需时间产生的影响。您再次将端口关闭并打开，并记录时间。

Switch-A (enable) set trunk 2/1 off

Port(s) 2/1 trunk mode set to off.

Switch-A (enable) set port disable 2/1

Port 2/1 disabled.

开始测试前将中继模式设置为 off（而非 auto）。

Switch-A (enable) show time

Fri Feb 25 2000, 14:00:19

Switch-A (enable) set port enable 2/1

Port 2/1 enabled.

Switch-A (enable)

2000 Feb 25 14:00:22 %PAGP-5-PORTTOSTP:Port 2/1 joined bridge port 2/1

2000 Feb 25 14:00:23 %SPANTREE-6-PORTFWD: port 2/1 state in vlan 1 change for forwarding.

由于到达生成树转发状态（00:19到00:22）只需4秒，因此您在开始时节省了几秒时间。当您将中继模式从mautooff更改时，您节省了约5秒。

10. （可选）如果问题出在交换机端口初始化时间，那么现在必须解决这个问题。如果您需要再节省几秒的时间，可以手动设置端口的速度和双工，而不使用自动协商。

如果在此端手动设置速度和双工，则还需要在另一端设置速度和双工。这是因为设置端口速度和双工会禁用端口上的自动协商，并且连接的设备看不到自动协商参数。连接设备仅在半双工模式下连接，由此导致的双工不匹配会导致性能下降和端口错误。切记，如果您在某端设置了速度和双工，那么您还必须在连接设备上设置速度和双工，以避免这些问题发生。

在设置速度和双工doshow port后查看端口状态。

Switch-A (enable) set port speed 2/1 100

Port(s) 2/1 speed set to 100Mbps.

Switch-A (enable) set port duplex 2/1 full

Port(s) 2/1 set to full-duplex.

Switch-A (enable) show port

Port  Name               Status     Vlan       Level  Duplex Speed Type

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

2/1                     connected  1          normal   full   100 10/100BaseTX

...

以下是计时结果：

Switch-A (enable) show time

Fri Feb 25 2000, 140528 Eastern

Switch-A (enable) set port enable 2/1

Port 2/1 enabled.

Switch-A (enable)

2000 Feb 25 140529 Eastern -0500 %PAGP-5-PORTTOSTP:Port 2/1 joined bridgeport 2/1

2000 Feb 25 140530 Eastern -0500 %SPANTREE-6-PORTFWD: port 2/1 state in vlan 1 changed to forwarding.

最终结果给出的时间为2秒（0528到0530）。

11. 在连接到交换机的PC上，您通过启动指向交换机的连续ping(ping -t)执行另一项视觉计时测试，然后断开了电缆与交换机的连接。ping 操作开始失败。然后您将电缆重新连接到交换机，并检查这些表，看交换机响应来自PC的ping操作需要多长时间。打开速度和双工的自动协商大约需要5-6秒，关闭速度和双工的自动协商大约需要4秒。

此测试中有许多变量（PC初始化、PC软件、交换机控制台端口响应请求等），但您只是想了解从PC角度获得响应需要多长时间。所有测试都是从交换机的内部调试消息角度进行的。

如何减少 Catalyst 2900XL/3500XL 交换机上的启动延迟

2900XL 和 3500XL 型号可以通过 Web 浏览器、SNMP 或命令行界面 (CLI) 进行配置。 使用CLI。这是一个示例，在该示例中，您可以查看端口的生成树状态，打开portfast，然后检验端口是否已打开。2900XL/3500XL支持EtherChannel和中继，但不支持在测试的版本(11.2(8.2)SA6)中创建动态EtherChannel(PAgP)或动态中继协商(DTP)，因此您无需在此测试中将其关闭。此外，在打开portfast后，端口启动所经过的时间已经不到1秒，因此尝试更改速度/双工协商设置以加速事物是没有太大意义的。您希望一秒的速度足够快！默认情况下，交换机端口上的 Portfast 处于禁用状态。以下是启用 Portfast 的命令：

配置

2900XL#conf t

2900XL(config)#interface fastEthernet 0/1

2900XL(config-if)#spanning-tree portfast

2900XL(config-if)#exit

2900XL(config)#exit

2900XL#copy run start

此平台类似于路由器Cisco IOS；如果要永久保存配置(copy run start)，必须保存配置。

确认

要验证是否启用了 Portfast，请执行此命令：

2900XL#show spanning-tree interface fastEthernet 0/1

Interface Fa0/1 (port 13) in Spanning tree 1 is FORWARDING

Port path cost 19, Port priority 128

Designated root has priority 8192, address 0010.0db1.7800

Designated bridge has priority 32768, address 0050.8039.ec40

Designated port is 13, path cost 19

Timers: message age 0, forward delay 0, hold 0

BPDU: sent 2105, received 1

The port is in the portfast mode

查看交换机配置。

2900XL#show running-config

Building configuration...

Current configuration:

!

version 11.2

...

!

interface VLAN1

ip address 172.16.84.5 255.255.255.0

no ip route-cache

!

interface FastEthernet0/1

spanning-tree portfast

!

interface FastEthernet0/2

!

...

Catalyst 2900XL 上的计时测试

以下是在 Catalyst 2900XL 上进行的计时测试。

1. 在 2900XL 上使用 11.2(8.2)SA6 版本的软件进行这些测试。

Switch#show version

Cisco Internetwork Operating System Software

Cisco IOS (tm) C2900XL Software (C2900XL-C3H2S-M), Version 11.2(8.2)SA6, MAINTENANCE INTERIM SOFTWARE

Copyright (c) 1986-1999 by cisco Systems, Inc.

Compiled Wed 23-Jun-99 16:25 by boba

Image text-base: 0x00003000, data-base: 0x00259AEC

ROM: Bootstrap program is C2900XL boot loader

Switch uptime is 1 week, 4 days, 22 hours, 5 minutes

System restarted by power-on

System image file is "flash:c2900XL-c3h2s-mz-112.8.2-SA6.bin", booted via console

cisco WS-C2924-XL (PowerPC403GA) processor (revision 0x11) with 8192K/1024K bytes of memory.

Processor board ID 0x0E, with hardware revision 0x01

Last reset from power-on

Processor is running Enterprise Edition Software

Cluster command switch capable

Cluster member switch capable

24 Ethernet/IEEE 802.3 interface(s)

32K bytes of flash-simulated non-volatile configuration memory.

Base ethernet MAC Address: 00:50:80:39:EC:40

Motherboard assembly number: 73-3382-04

Power supply part number: 34-0834-01

Motherboard serial number: FAA02499G7X

Model number: WS-C2924-XL-EN

System serial number: FAA0250U03P

Configuration register is 0xF

2. 您希望交换机告诉我们发生什么以及何时发生，因此您输入以下命令：

2900XL(config)#service timestamps debug uptime

2900XL(config)#service timestamps log uptime

2900XL#debug spantree events

Spanning Tree event debugging is on

2900XL#show debug

General spanning tree:

Spanning Tree event debugging is on

3. 然后，您关闭了有问题的端口。

2900XL#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

2900XL(config)#interface fastEthernet 0/1

2900XL(config-if)#shut

2900XL(config-if)#

00:31:28: ST: sent Topology Change Notice on FastEthernet0/6

00:31:28: ST: FastEthernet0/1 - blocking

00:31:28: %LINK-5-CHANGED: Interface FastEthernet0/1, changed state to administratively down

00:31:28: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down

2900XL(config-if)#exit

2900XL(config)#exit

2900XL#

4. 此时，您将从剪贴板将这些命令粘贴到交换机中。这些命令将显示 2900XL 上的时间，并重新打开此端口：

show clock

conf t

int f0/1

no shut

5. 默认情况下，Portfast 处于禁用状态。您可以通过以下两种方法进行确认。第一种方式是show spanning-tree interface命令不提及Portfast。第二种方法是查看运行的此配置，其中您在接口下看不到spanning-tree portfastcommand。

2900XL#show spanning-tree interface fastEthernet 0/1

Interface Fa0/1 (port 13) in Spanning tree 1 is FORWARDING

Port path cost 19, Port priority 128

Designated root has priority 8192, address 0010.0db1.7800

Designated bridge has priority 32768, address 0050.8039.ec40

Designated port is 13, path cost 19

Timers: message age 0, forward delay 0, hold 0

BPDU: sent 887, received 1

[Note: there is no message about being in portfast mode is in this spot...]

2900XL#show running-config

Building configuration...

...

!

interface FastEthernet0/1

[Note: there is no spanning-tree portfast command under this interface...]

!

6. 以下是在 Portfast 处于禁用状态时进行的首次计时测试。

2900XL#show clock

*00:27:27.632 UTC Mon Mar 1 1993

2900XL#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

2900XL(config)#int f0/1

2900XL(config-if)#no shut

2900XL(config-if)#

00:27:27: ST: FastEthernet0/1 - listening

00:27:27: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up

00:27:28: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up

00:27:42: ST: FastEthernet0/1 - learning

00:27:57: ST: sent Topology Change Notice on FastEthernet0/6

00:27:57: ST: FastEthernet0/1 - forwarding

从关闭到端口开始转发的总时间为30秒（27:27到27:57）

7. 要启用 Portfast，请执行以下操作：

2900XL#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

2900XL(config)#interface fastEthernet 0/1

2900XL(config-if)#spanning-tree portfast

2900XL(config-if)#exit

2900XL(config)#exit

2900XL#

要验证Portfast是否已启用，请使用show spanning-tree 接口命令。请注意，命令输出（结尾附近）表明 Portfast 已启用。

2900XL#show spanning-tree interface fastEthernet 0/1

Interface Fa0/1 (port 13) in Spanning tree 1 is FORWARDING

Port path cost 19, Port priority 128

Designated root has priority 8192, address 0010.0db1.7800

Designated bridge has priority 32768, address 0050.8039.ec40

Designated port is 13, path cost 19

Timers: message age 0, forward delay 0, hold 0

BPDU: sent 1001, received 1

The port is in the portfast mode

您还可以在配置输出中看到 Portfast 已启用。

2900XL#sh  ru

Building configuration...

...

interface FastEthernet0/1

spanning-tree portfast

...

8. 现在，在启用 Portfast 的情况下进行计时测试

2900XL#show clock

*00:23:45.139 UTC Mon Mar 1 1993

2900XL#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

2900XL(config)#int f0/1

2900XL(config-if)#no shut

2900XL(config-if)#

00:23:45: ST: FastEthernet0/1 -jump to forwarding from blocking

00:23:45: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up

00:23:45: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1,

changed state to up

在本例中，总时间小于1秒。如果问题出在交换机上的端口初始化延迟，则portfast必须解决此问题。

请记住，交换机当前不支持中继协商，因此您不需要将其关闭。它也不支持PAgP中继，因此您也不需要关闭它。交换机支持速度和双工的自动协商，但是由于延迟太小，因此不会将其关闭。

9. 您还从工作站对交换机进行了ping测试。无论速度和双工的自动协商是打开还是关闭，交换机发出的响应大约需要5-6秒。

如何减少 Catalyst 1900/2800 交换机上的启动延迟

1900/2820通过另一个名称引用Portfast:Spantree Start-Forwarding。对于软件版本，您运行(V8.01.05)，交换机默认为此值：Portfast在以太网(10Mbps)端口上启用，Portfast在快速以太网（上行链路）端口上禁用。因此，当您显示runto查看配置时，如果以太网端口没有提到Portfast，则启用Portfast。如果以太网端口在配置中显示“no spantree start-forwarding”，则表明 Portfast 已禁用。在FastEthernet(100Mbps)端口上，情况正好相反：对于FastEthernet端口，仅当端口在配置中显示“spantree start-forwarding”时，Portfast才会打开。

以下是在快速以太网端口上设置 Portfast 的示例。这些示例使用企业版软件版本 8。系统执行更改后，1900 会自动保存配置。请记住，您不会希望在连接到另一台交换机或集线器的任何端口上启用 Portfast，除非该端口连接到终端站。配置将自动保存到 NVRAM。

配置

1900#show version

Cisco Catalyst 1900/2820 Enterprise Edition Software

Version V8.01.05

Copyright (c) Cisco Systems, Inc.  1993-1998

1900 uptime is 0day(s) 01hour(s) 10minute(s) 42second(s)

cisco Catalyst 1900 (486sxl) processor with 2048K/1024K bytes of memory

Hardware board revision is 5

Upgrade Status: No upgrade currently in progress.

Config File Status: No configuration upload/download is in progress

27 Fixed Ethernet/IEEE 802.3 interface(s)

Base Ethernet Address: 00-50-50-E1-A4-80

1900#conf t

Enter configuration commands, one per line.  End with CNTL/Z

1900(config)#interface FastEthernet 0/26

1900(config-if)#spantree start-forwarding

1900(config-if)#exit

1900(config)#exit

1900#

确认

验证 Portfast 是否启用的一种方法是查看配置。请记住，快速以太网端口必须显示它已启用。除非配置显示它已禁用，否则以太网端口将启用它。在此配置中，以太网接口 0/1 已禁用 Portfast（您可以看到禁用 Portfast 的命令）；以太网接口 0/2 已启用 Portfast（您看不到任何内容 - 这意味着 Portfast 已启用）；快速以太网接口 0/26（菜单系统中的端口 A）已启用 Portfast（您可以看到启用 Portfast 的命令）。

1900#show running-config

Building configuration...

...

!

interface Ethernet 0/1

no spantree start-forwarding

!

interface Ethernet 0/2

!

...

!

interface FastEthernet 0/26

spantree start-forwarding

查看 Portfast 状态的最简单方法是通过菜单系统。如果从主菜单中选择(P)进行端口配置，然后选择端口，输出将指示是否启用端口快速模式。此输出适用于快速以太网端口 0/26，即此交换机上的端口“A”。

Catalyst 1900 - Port A Configuration

Built-in 100Base-FX

802.1d STP State:  Blocking     Forward Transitions:  0

----------------------- Settings ---------------------------------------

[D] Description/name of port

[S] Status of port                              Suspended-no-linkbeat

[I] Port priority (spanning tree)               128 (80 hex)

[C] Path cost (spanning tree)                   10

[H] Port fast mode (spanning tree)              Enabled

[E] Enhanced congestion control                 Disabled

[F] Full duplex / Flow control                  Half-Duplex

----------------------- Related Menus ----------------------------------

[A] Port addressing           [V] View port statistics

[N] Next port                 [G] Goto port

[P] Previous port             [X] Exit to Main Menu

Enter Selection:

Catalyst 1900 上的计时测试

由于缺乏调试工具，在1900/2820上很难验证计时值，因此您刚刚从连接到交换机的PC开始ping操作并定向到交换机本身。您断开并重新连接了电缆，然后记录交换机在Portfast打开和Portfast关闭的情况下响应ping操作所花费的时间。对于处于PortFast状态(默认状态)的以太网端口，PC机会在5-6秒以内收到回复。在 Portfast 禁用的情况下，PC 在 34-35 秒的时间内收到响应。

使用 Portfast 的其它好处

在网络中使用 Portfast 还有一个与生成树相关的好处。每次链路变为活动状态并进入生成树中的转发状态时，交换机会发送一个特殊的生成树数据包，称为拓扑更改通知 (TCN)。TCN 通知向上传递到生成树根，并在那里传播到 VLAN 中的所有交换机。这会导致所有交换机使用转发延迟参数使其 MAC 地址表过期。转发延迟参数通常设置为 15 秒。每次工作站加入网桥组时，所有交换机上的 MAC 地址都会在 15 秒（而不是通常的 300 秒）后过期。

由于当工作站变为活动状态时，就 VLAN 中的所有交换机而言，它不会真正显著地更改拓扑结构，因此它们无需经历快速老化的 TCN 周期。如果您启用 Portfast，当端口变为活动状态时，交换机不会发送 TCN 数据包。

用于验证配置是否工作正常的命令

这是验证配置是否正常工作时要使用的命令列表。

4000/5000/6000

- show port spantree 2/1 - 查看“Fast-Start” (Portfast) 是否已启用或禁用

- show spantree 1 — 查看VLAN 1中的所有端口，以及是否已启用“快速启动”

- show port channel - 查看您是否有任何活动通道

- show port channel 2 — 查看模块2上每个端口的通道模式（auto、off等）

- show trunk 2 — 查看模块2上每个端口的中继模式（自动、关闭等）

- show port - 查看交换机上所有端口的状态（已连接、未连接等）、速度和双工

2900XL/3500XL

- show spanning-tree interface FastEthernet 0/1 - 查看是否已在此端口上启用 Portfast（未提及 Portfast 意味着未启用）

- show running-config - 如果端口显示 spanning-tree portfast 命令，则表明 Portfast 已启用

1900/2800

- show running-config - 查看当前设置（当它们表示交换机的默认设置时，某些命令不可见）

- 使用菜单系统进入端口状态屏幕

用于排除配置故障的命令

这是用于排除配置故障的命令列表。

4000/5000/6000

- show port spantree 2/1 - 查看“Fast-Start” (Portfast) 是否已启用或禁用

- show spantree 1 — 查看VLAN 1中的所有端口，以及是否已启用“快速启动”

- show port channel - 查看您是否有任何活动通道

- show port channel 2 — 查看模块2上每个端口的通道模式（auto、off等）

- show trunk 2 — 查看模块2上每个端口的中继模式（自动、关闭等）

- show port - 查看交换机上所有端口的状态（已连接、未连接等）、速度和双工

- show logging - 查看生成日志记录输出的消息类型

- set logging level spantree 7 - 设置交换机以记录生成树端口日志，并在控制台上实时显示状态

- set port disable 2/1 - 在软件中禁用端口（例如路由器上的“shutdown”）

- set port enable 2/1 - 在软件中启用端口（例如路由器上的“no shutdown”）

- show time - 显示当前时间（以秒为单位）（在计时测试开始时使用）

- show port capabilities - 查看端口上实施的功能

- set trunk 2/1 off - 将中继模式设置为禁用（以加速端口初始化时间）

- set port channel 2/1-2 off - 将 EtherChannel (PAgP) 模式设置为禁用（以加速端口初始化时间）

- set port speed 2/1 100 — 将端口设置为100Mbps并关闭自动协商

- set port duplex 2/1 full - 将端口从双工设置为全双工

2900XL/3500XL

- service timestamps debug uptime - 通过调试消息显示时间

- service timestamps log uptime - 通过日志记录消息显示时间

- debug spantree events - 显示端口何时经历生成树阶段

- show clock - 查看当前时间（适用于计时测试）

- show spanning-tree interface FastEthernet 0/1 - 查看是否已在此端口上启用 Portfast（未提及 Portfast 意味着未启用）

- shut - 从软件中禁用端口

- no shut - 从软件中启用端口

1900/2800

- show running-config - 查看当前设置（当它们表示交换机的默认设置时，某些命令不可见）

配置IP多层交换(MLS)并对其进行故障排除

目标

本文档概述如何对IP多层交换(MLS)进行故障排除。此功能已成为一种非常理想的方法，通过使用专用集成电路 (ASIC) 来加速路由性能。传统路由是通过中央CPU和软件完成的；MLS将大部分路由（数据包重写）卸载到硬件，也称为交换。MLS 和第 3 层交换是等效术语。Cisco IOS的NetFlow功能与众不同，本文档中未涉及该功能。MLS还包括对IPX(IPX MLS)和组播(MPLS)的支持，但本文档仅侧重于如何对基本MLS IP进行故障排除。

简介

随着对网络的需求越来越高，对更高性能的需求也随之增加。越来越多的 PC 连接到 LAN、WAN 和互联网，并且用户需要快速访问数据库、文件/网页、网络应用、其他 PC 和视频流。为了保持快速、可靠的连接，网络必须能够快速调整以适应变化和故障，并找到最佳路径，同时尽可能保持对最终用户不可见。在最低网络迟缓的情况下，还在自身 PC 与服务器之间体验快速信息流的最终用户无疑是幸运的。确定最佳路径是路由协议的主要功能，这可能是一个占用大量CPU的过程；通过将部分功能卸载到交换硬件，可以获得显着的性能提升。这就是 MLS 功能的要点。

MLS有三个主要组件：其中两个是MLS-RP和MLS-SE。MLS-RP 是支持 MLS 的路由器，执行子网/VLANs 之间路由的传统功能。MLS-SE 是支持 MLS 的交换机，通常需要路由器在子网/VLAN 之间敷设路由，但借助特殊硬件和软件可以处理数据包重写。当数据包遍历路由接口时，该数据包的非数据部分会随着其逐跳传输到目的地而发生更改（重写）。这里可能会出现混乱，因为第2层设备似乎承担了第3层任务；实际上，交换机只重写第3层信息，并在子网/VLAN之间切换 — 路由器仍然负责基于标准的路由计算和最佳路径确定。如果您谨记将路由和交换功能分开，就可以在很大程度上避免此类混淆，当它们在通常情况下包含在同一机箱中（与内部 MLS-RP 一样）时尤为如此。可以将MLS视为一种更高级的路由器缓存方式，它将缓存与交换机上的路由器分隔开来。MLS 需要 MLS-RP 和 MLS-SE 以及各自最低版本的硬件和软件。

MLS-RP 可以位于内部（安装在交换机机箱中）或外部（通过线缆连接到交换机上的中继端口）。内部MLS-RP的示例包括路由交换模块(RSM)和路由交换功能卡(RSFC)，它们分别安装在Catalyst 5xxx系列成员的插槽或管理引擎中；这同样适用于Catalyst 6xxx系列的多层交换功能卡(MSFC)。外部 MLS-RP 的示例包括思科 7500、7200、4700、4500 或 3600 系列路由器的任何成员。一般来说，为了支持MLS IP功能，所有MLS-RP都要求在11.3WA或12.0WA系列中提供最低的Cisco IOS版本；有关详细信息，请参阅版本文档。此外，必须启用MLS，路由器才能成为MLS-RP。

MLS-SE 是一台配备专用硬件的交换机。对于Catalyst 5xxx系列的成员，MLS要求管理引擎安装NetFlow功能卡(NFFC)；默认情况下，管理引擎IIG和IIIG安装一个。此外，还需要至少安装 Catalyst OS 4.1.1 软件。请注意，4.x 系列已“采用常规部署 (GD)”或通过严格的最终用户标准和现场体验目标以确保稳定性，因此请查看思科网站以获取最新版本。对于配备 MSFC/PFC 的 Catalyst 6xxx 硬件和软件，支持并自动启用 IP MLS （默认情况下，其他路由器禁用 MLS）。请注意，用于组播的IPX MLS和MLS可能具有不同的硬件和软件（Cisco IOS和Catalyst OS）要求。更多思科平台支持/可以支持MLS功能。此外，必须启用MLS才能使交换机成为MLS-SE。

MLS 的第三个主要组成部分是多层交换协议 (MLSP)。这是因为，当您了解MLSP的基础知识时，您就会了解MLS的核心问题，这对于有效地排除MLS故障至关重要。MLS-RP和MLS-SE利用MLSP相互通信；启用MLS的任务、安装、更新或删除流（缓存信息），以及流统计信息的管理和导出（NetFlow数据导出在其他文档中介绍）。MLSP 还允许 MLS-SE 获知支持 MLS 的路由器接口的介质访问控制（MAC，第 2 层）地址，检查 MLS-RP 的流掩码（本文档稍后介绍），并确认 MLS-RP 处于正常运行状态。MLS-RP每15秒发送一次组播“hello”数据包与MLSP；如果丢失了其中三个间隔，则MLS-SE会识别MLS-RP发生故障或与其失去连接。

下图说明了创建快捷方式必须完成（使用MLSP）的三个基本步骤：候选步骤、启用程序和缓存步骤。MLS-SE检查缓存的MLS条目；如果MLS缓存条目和数据包信息匹配（命中），则数据包报头在交换机上本地重写（路由器的快捷方式或旁路），而不是像通常那样发送到路由器。不匹配并发送到MLS-RP的数据包是候选数据包；也就是说，有可能在本地交换这些数据包。将候选数据包通过 MLS 流掩码（稍后将在一节中说明）并重写数据包报头中包含的信息（数据部分不变）后，路由器会沿着目的路径将其发送到下一跳。该数据包现在称为启用程序数据包。如果数据包返回其离开的相同MLS-SE，则会创建一个MLS快捷方式并将其放入MLS缓存中；现在，对该数据包以及跟踪这些数据包的所有类似数据包（称为流）的重写由交换机硬件而不是路由器软件在本地完成。同一MLS-SE必须同时看到用于要创建MLS快捷方式的特定流的候选数据包和启用数据包(这就是网络拓扑对MLS至关重要的原因。)请记住，MLS 旨在允许不同 VLAN 中的两台设备之间从同一交换机连接的通信路径绕过路由器，并提高网络性能。

通过使用flowmask（实质上是一个访问列表），管理员可以调整这些数据包的相似度并调整流的范围：目标地址；目标和源地址；或目标、源和第四层信息。请注意，流的第一个数据包始终通过路由器；从那时起，在本地进行交换。每个流都是单向的；例如，PC之间的通信需要设置并使用两个快捷方式。MLSP 的主要目的是设置、创建和维护这些快捷方式。

这三个组件（MLS-RP、MLS-SE和MLSP）允许其他网络组件承担其某些功能时，可释放重要的路由器资源。根据拓扑和配置，MLS提供了一种简单而高效的方法来提高LAN中的网络性能。

排除IP MLS技术故障

包括并讨论用于排除基本IP MLS故障的流程图。它源自通过Cisco技术支持网站打开的、直到本文档创建时用户和技术支持工程师所面临的最常见的MLS-IP案例类型。MLS是一个强大的功能，您一定不会遇到任何问题；如果确实出现问题，这将帮助您解决最可能面临的IP MLS问题类型。下面列出了一些基本的假设：

- 您已熟悉在路由器和交换机上启用IP MLS所需的基本配置步骤，并已完成以下步骤：请参阅本文档末尾列出的资源，了解出色的材料。

- IP路由在MLS-RP上启用（默认情况下处于启用状态）：如果ashow run的全局配置中显示了命令no ip路由，则表明该路由已关闭，并且IP MLS不起作用。

- MLS-RP和MLS-SE之间存在IP连接：从交换机对路由器的IP地址执行ping操作，然后查找要显示的感叹号（称为“bang”）。

- 路由器上的MLS-RP接口处于“up/up”状态：键入how ip interface在路由器上更新以确认这一点。

警告：无论何时对路由器进行永久配置更改，请记得使用copy running-config starting-config保存这些更改(此命令的缩短版本包括copy run startandwr mem)。如果路由器重新加载或重置，所有配置修改都将丢失。RSM、RSFC 和 MSFC 是路由器，而不是交换机。相反，系统会自动保存在 Catalyst 5xxx 或 6xxx 系列成员的交换机提示符下所做的更改。

本节介绍有关 IP MLS 技术故障排除的内容。

1. 是否满足最低硬件和软件要求？

升级 MLS-RP 和 SE，以满足最低软件和硬件要求。对于 MLS-RP，无需额外硬件。虽然可以在非中继接口上配置 MLS，但与 MLS 的连接通常通过 VLAN 接口（与 RSM 相同）或支持中继（可以通过配置 ISL 或 802.1q 配置为传输多个 VLAN 的信息）。另外，请记住，截至发布时，只有 7500、7200、4700、4500 和 3600 路由器系列的成员在外部支持 MLS。目前，只有这些外部路由器和适合 Catalyst 5xxx 或 6xxx 交换机系列的路由器（例如 Catalyst 5xxx 系列的 RSM 和 RSFC 以及 Catalyst 6xxx 系列的 MSFC）可以是 MLS-RPS。MSFC 还需要策略功能卡 (PFC)，两者都安装在 Catalyst 6xx 管理引擎上。IP MLS现已成为思科IOS 12.0及更高版本路由器软件的一项标准功能。低于Cisco IOS 12.0的Cisco IOS软件通常需要特殊培训；对于此类IP MLS支持，请在Cisco IOS 11.3中安装其文件名中带有字母“WA”的最新映像。

对于MLS-SE，Catalyst 5xxx系列的成员需要NetFlow功能卡(NFFC)；此卡安装在Catalyst交换机的Supervisor模块中，并作为标准硬件包含在更新的Catalyst 5xxx系列Supervisor中（即自1999年起）。NFFC 在 Supervisors I 或 II 上不受支持，并且是 Supervisor III 上的一个选项。此外，IP MLS 至少需要 4.1.1 CatOS。相比之下，对于 Catalyst 6xxx 系列，所需硬件作为标准设备提供，并且 IP MLS 自第一个 CatOS 软件版本 5.1.1 起就受到支持（事实上，IP MLS 是确保其高性能的基本和默认要素）。随着支持IP MLS的新平台和软件发布，必须检查文档和版本说明，并通常在满足您的功能要求的最低系列中安装最新版本。请务必查看版本说明，并咨询您当地的思科销售部，了解最新的 MLS 支持和功能开发信息。

用于检查路由器上安装的硬件和软件的show版本和交换机上的show模块的命令

注意：Catalyst 6xxx系列交换机目前不支持外部MLS-RP。MLS-RP 必须是 MSFC。

2. 不同 VLAN 中的源设备和目的设备是否位于同一 MLS-SE 上并共享单一通用的 MLS-RP？

MLS 的基本拓扑要求是路由器具有通往每个 VLAN 的路径。请记住，MLS的要点是在两个VLAN之间创建快捷方式，以便两台终端设备之间的路由可以由交换机执行，从而释放路由器执行其他任务。交换机实际上并不进行路由；它重写帧，以便帧在终端设备上显示为通过路由器通信。如果两个设备位于同一 VLAN 中，MLS-SE 会在本地交换帧，而不使用 MLS，就像交换机在这种透明桥接环境中所做的那样，并且不会创建 MLS 快捷方式。网络中可以有多台交换机和路由器，甚至流路径上也可以有多台交换机，但是需要 MLS 快捷方式的两台终端设备之间的路径必须在该路径的 VLAN 中包含单个 MLS-RP。换句话说，从源到目的地的流必须跨越同一 MLS-RP 上的 VLAN 边界，并且同一 MLS-SE 必须看到候选数据包和启用程序数据包对，才能创建 MLS 快捷方式。如果不满足这些条件，系统会正常路由数据包，而无需使用 MLS。有关支持和不支持的网络拓扑的图表和讨论，请参阅本文档末尾建议的文档。

3. MLS-RP在其全局和接口配置下是否包含anmls rp ipstatement?

如果不存在一个，addmls rp ipstatements proximate on the MLS-RP。除了自动启用 IP MLS 的路由器（例如 Catalyst 6xxx MSFC）外，这是必需的配置步骤。对于大多数 MLS-RP（为 IP MLS 配置的路由器），此语句必须同时出现在全局配置和接口配置下。

注意：配置MLS-RP时，也记得将mls rp management-interface命令置于其IP MLS接口之一下。此必需步骤告知 MLS-RP 它必须从哪个接口发送 MLSP 消息才能与 MLS-SE 进行通信。同样，只需将此命令放在一个接口下。

4. MLS-RP 上是否配置了在该接口上自动禁用 MLS 的任何功能？

路由器上有几个配置选项与 MLS 不兼容，其中包括 IP 计费、加密、压缩、IP 安全、网络地址转换 (NAT) 和承诺接入速率 (CAR)。有关详细信息，请参阅本文档末尾包含的有关 IP MLS 配置的链接。必须正常路由通过配置了上述任何功能的路由器接口的数据包；不创建MLS快捷方式。要使 MLS 正常工作，请在 MLS-RP 接口上禁用这些功能。

影响 MLS 的另一项重要功能是访问列表，包括输入和输出。关于此选项的进一步讨论包含在“流掩码”一节中。

5. MLS-SE 是否识别 MLS-RP 地址？

要使 MLS 正常工作，交换机必须将路由器识别为 MLS-RP。安装内部 MLS-RP 的 MLS-SE 会自动识别内部 MLS-RP（同样，Catalyst 5xxx 系列成员中的 RSM 或 RSFC 以及 Catalyst 6xxx 系列成员中的 MSFC）。对于外部 MLS-RP，必须明确通知交换机路由器的地址。此地址实际上不是IP地址，尽管在外部MLS-RP上，它是从路由器接口上配置的IP地址列表中进行选择的；它只是路由器ID。事实上，对于内部MLS-RP，MLS-ID通常不是路由器上配置的IP地址；由于内部MLS-RP是自动包含的，因此它通常是环回地址(127.0.0.x)。要使 MLS 正常工作，请将在 MLS-RP 上找到的 MLS-ID 包含在 MLS-SE 上。

使用how mls在路由器上查找MLS-ID。然后使用set mls include <MLS-ID>命令在交换机上配置该ID。当您使用外部 MLS-RPS 时，这是必需的配置步骤。

注意：如果更改MLS-RP接口的IP地址，然后重新加载路由器，则可能导致路由器上的MLS进程选择新的MLS-ID。此新MLS-ID可能不同于MLS-SE上手动包含的MLS-ID，这会导致MLS停止；这不是软件故障，而是尝试与不再有效的MLS-ID通信的交换机造成的影响。请确保在交换机上包含这个新的 MLS-ID，以便 MLS 再次工作。可能还需要禁用/启用 IP MLS。

注意：当MLS-SE未直接连接到MLS-RP时（如本拓扑一样），MLS-SE上必须包含的地址可能显示为上述环回地址：在MLS-SE和MLS-RP之间连接的交换机。即使 MLS-RP 位于内部，您也必须包括 MLS-ID。对于第二台交换机，MLS-RP 显示为外部路由器，因为 MLS-RP 和 MLS-SE 不在同一机箱中。

6. MLS-RP 接口和 MLS-SE 是否位于同一个启用的 VTP 域中？

MLS要求MLS组件和终端站必须位于同一个虚拟中继协议(VTP)域中。VTP是一种第 2 层协议，用于从一台中央交换机管理多台 Catalyst 交换机上的 VLAN。它允许管理员在域中的所有交换机上创建或删除VLAN，而无需在该域中的每个交换机上执行此操作。MLS-SE和MLS-RP用于相互通信的多层交换协议(MLSP)不会跨VTP域边界。如果网络管理员在交换机上启用了VTP（默认情况下，在Catalyst 5xxx和6xxx系列成员上启用了VTP），请在交换机上使用show vtp domain命令了解放置了MLS-SE的VTP域。除Catalyst 6xxx MSFC(MLS实质上是即插即用功能)外，接下来需要将VTP域添加到路由器的每个MLS接口。这允许 MLSP 组播在 MLS-RP 与 MLS-SE 之间移动，并确保 MLS 正常工作。

在 MLS-RP 的接口配置模式下，输入以下命令：

no mls rp ip在修改VTP域之前，请在受影响的MLS-RP接口上禁用MLS。

mls rp vtp-domain < VTP domain name> 每个启用 MLS 的接口上的 VTP 域名必须与交换机的 VTP 域名相匹配。

mls rp vlan-id <VLAN #> 仅需要对非 ISL 中继、外部 MLS-RP 接口执行此操作。

mls rp management-interface仅对MLS-RP上的一个接口执行此操作。此必需步骤告知MLS-RP必须从哪个接口发送MLSP消息。

mls rp ip在MLS-RP的接口上再次启用MLS。

要更改 MLS-SE 的 VTP 域名，请在交换机 CatOS 启用提示符下使用以下命令：

set vtp domain name <VTP domain name>

要使 MLS 正常工作，请确保在交换机上启用 VTP：

set vtp enable

7. 流掩码是否在 MLS-RP 和 MLS SE 上达成一致？

流掩码是由网络管理员配置的过滤器，MLS使用该过滤器来确定是否需要创建快捷方式。就像访问列表一样，您设置的条件越详细，MLS 进程就必须越深入地查看数据包，以验证数据包是否符合这些条件。为了调整MLS创建的快捷方式的范围，flowmask可以或多或少地具体化；flowmask实质上是atuningdevice。IP MLS模式有三种类型：destination-IP、destination-source-IP和full-flow-IP。当路由器的启用 MLS 的接口未应用访问列表时，使用 destination-IP 模式（默认模式）。当应用标准访问列表时，使用 source-destination-IP 模式。full-flow-IP 模式对扩展访问列表有效。MLS-RP 上的 MLS 模式由应用于接口的访问列表类型隐式确定。相反，MLS SE 上的 MLS 模式是明确配置的。如果选择了适当的模式，则用户可以这样配置 MLS，以便只有在目的地址或源地址和目的地址或者甚至 TCP/UDP 端口号等第 4 层信息匹配的条件下才能创建 MLS 快捷方式。

MLS 模式可在 MLS-RP 和 MLS-SE 上配置，通常它们必须匹配。如果认为需要source-destination-IP或full-flow-IP MLS模式，则最好在路由器上通过对其进行配置并应用适当的访问列表。MLS 始终选择最具体的掩码。它使在 MLS-RP 上配置的流掩码优先于在 MLS-SE 上找到的流掩码。如果从默认目标IP更改交换机的MLS模式，请小心：必须确保它与路由器上的MLS模式匹配，MLS才能正常工作。对于source-destination-ip和full-flow-ip模式，请记住将访问列表应用于相应的路由器接口；如果没有应用访问列表，即使已配置，MLS模式也只是默认的destination-ip。

警告：无论在MLS-RP还是MLS-SE上更改流掩码，都会清除所有缓存的MLS流，并重新启动MLS进程。当您对路由器应用clear ip route-cacheon命令时，也会发生清除。如果应用全局路由器配置命令no ip routing，它会关闭IP路由并将路由器实质上转换为透明网桥，则会导致清除并禁用MLS（请记住，路由是MLS的必备条件）。其中每一个都会暂时但严重地影响生产网络中的路由器性能。在创建新的快捷方式之前，路由器的负载会达到峰值，因为它现在必须处理交换机之前处理的所有流。

注意：特别是使用Catalyst 5000系列的成员作为MLS-SE，您必须避免使用配置有第4层信息的流掩码。如果路由器被迫如此深入地侦听接口上的每个数据包，MLS 的许多预期好处就会被忽略。当您使用 Catalyst 6xxx 系列成员作为 MLS-SE 时，这不是什么问题，因为交换机端口本身可以识别第 4 层信息。

注意：直到最近，MLS都不支持在MLS-RP接口上配置入站流量掩码，仅支持出站流量。如果除了在路由器接口上使用常规MLS-RP配置命令外，还使用mls rp ip input-aclcommand，则支持入站流掩码。

8. 在交换机上是否连续出现超过几个MLSToo moveserror消息？

正如注释中提到的，更改流掩码、清除路由缓存或全局关闭 IP 路由会导致缓存清除。其他情况也会导致完全或多次单次进入清除，并导致MLS抱怨移动过多。这条消息有几种形式，但每种形式都包含这三个单词。除了已经提到的错误之外，此错误最常见的原因是交换机在相同的VLAN内获取了多个相同的以太网介质访问控制(MAC)地址；以太网标准不允许在同一VLAN内使用相同的MAC地址。如果经常出现或只是连续出现几次，则无需担心；MLS是一个强大的功能，消息可能只是由正常网络事件引起的，例如，端口之间移动的PC连接。如果连续出现几分钟，则表明很可能导致了更加严重的问题。

当出现这种情况时，其根本原因通常是由于存在两台具有相同 MAC 地址的设备实际上连接到一个 VLAN 或该 VLAN 内的物理环路（或多个 VLAN，在跨这些广播域进行桥接的情况下）。使用生成树（在其他文档中介绍）和提示进行故障排除，找出环路并消除它。此外，任何快速拓扑更改都可能导致临时网络（和MLS）不稳定(抖动路由器接口、损坏的网络接口卡(NIC)等)。

提示：在交换机上使用show mls 通知和show looktablecommand命令将您指向重复MAC地址或物理环路的方向。第一个命令提供 TA 值。show looktable <TA value>命令返回一个可能的MAC地址，该地址可以跟踪到问题的根源。

相关信息

目录

简介

先决条件

要求

规则

背景信息

LAN 交换简介

集线器和交换机

网桥和交换机

VLAN

透明网桥算法

生成树协议

中继

EtherChannel

多层交换 (MLS)

如何了解这些功能

对通用交换机进行故障排除的建议

排除端口连接故障

硬件问题

配置问题

流量问题

交换机硬件故障

排除以太网10/100Mb半双工/全双工自动协商故障

目标

简介

排除网络基础设施设备之间的以太网自动协商故障

操作步骤和/或场景

配置以太网10/100Mb自动协商并排除其故障示例

分步操作

联系思科系统公司技术支持团队之前的准备工作

在Catalyst 4000/5000/6000交换机上配置EtherChannel交换机到交换机的连接

手动配置 EtherChannel 的任务

分步操作

检查配置

使用 PAgP 配置 EtherChannel（首选方法）

中继和 EtherChannel

EtherChannel 故障排除

此部分中使用的命令

使用Portfast和其他命令解决终端站启动连接问题

目录

背景

如何减少 Catalyst 4000/5000/6000 交换机上的启动延迟

在 Catalyst 5000 上使用和不使用 DTP、PAgP 以及 PortFast 进行时间测试

如何减少 Catalyst 2900XL/3500XL 交换机上的启动延迟

Catalyst 2900XL 上的计时测试

如何减少 Catalyst 1900/2800 交换机上的启动延迟

Catalyst 1900 上的计时测试

使用 Portfast 的其它好处

用于验证配置是否工作正常的命令

用于排除配置故障的命令

配置IP多层交换(MLS)并对其进行故障排除

目标

简介

排除IP MLS技术故障

相关信息

- 思科技术支持和下载