以下内容摘自笔者编著的《网管员必读——网络测试、监控和实验》一书。

 

9.3.6 思科交换机PortfastUplinkfast配置

本实验的步骤很简单,只是通过反复的ping测试来验证在思科交换机上启用Portfast(端口快速)和UplinkFast(上行快速)技术前后的不同的链路状态,以达到加深对这两种技术用途的理解。本实验所用网络拓扑结构如图9-85所示。
思科交换机Portfast和Uplinkfast配置实验_第1张图片
9-85  本实验所用网络拓扑结构

1. PortfastUplinkFast技术简介

Portfast(端口快速)和UplinkFast(上行快速)是两个极其类似的技术,都是可以使端口从阻塞状态迅速恢复到转发状态,以达到快速收敛的目的。但Portfast技术可应用于所有阻塞端口,而UplinkFast只能应用于接入层交换机的阻塞上行端口(也就是用于级联的端口,但不一定是专门的Uplink端口)。
缺省情况下,假定交换机的所有端口都将与交换机或者网桥连接,所以所有端口都运行STP算法,即如果网络发生了变化,在端口发送数据之前要等待50s20s的由Blocking(阻塞)状态转为Listening(侦听)状态,加上15Listening过程,再加上15s的由Learning(学习)状态转变为Forwarding(转发)状态。而事实上许多端口会直接连接工作站或者服务器。采用PortFastUplinkFast技术可以让这些端口节省ListeningLearning状态的时间,立即由Blocking进入Forwarding状态。切换时间可以在2s4s之间。
PortFasUplinkFast技术都是针对在启用STP技术后出现的一些问题(如收敛速度慢)的解决方案。它们所要解决的就是由于在端口中启用STP技术后,网络结构发生变化时,需要等待一定的链路侦测、学习时间,而这个时间可能导致网络不通,网络服务器工作不正常。有了PortFastUplinkFast技术后,这些端口就可以快速地进入数据转发状态,不用等待,确保了网络的正常通信。
【注意】PortFast仅适用于阻塞状态端口,让阻塞端口在网络环境变化的情况下直接进入Forwarding状态。而该端口仍然运行STP协议,所以如果检测到环路,端口仍将由Forwarding状态变成Blocking状态。而UplinkFast技术只适用于交换机中呈阻塞状态的上行级联端口,而且在而且该交换机上必须启动了UplinkFast功能,至少有一个上行级联端口处于Blocking的端口(即有冗余链路),链路失效也必须发生在Root Port上。交换机启动了UplinkFast后,由于提高了交换机上所有端口的路径开销,所以不适合作为根桥。

2. 实验步骤

1)按8.1.2节的方法把Boson Lab Nagivator(Boson实验导航器)“BCMSN”实验项中的的Lab 5- Portfast and Uplinkfast”实验包装载到“Boson NetSim for CCNP 7”主程序中。并且让实验包自动加载所有初始配置。
2)首先在P1PC1上测试一下与P1ASW1交换机VLAN11接口(IP地址为172.16.11.10)之间的网络是否通畅,通过前面几节的配置,结果肯定是成功的,如图9-86所示(注意,实验包的提示符有问题,应该为“c>”的,下同,不再赘述)。
C:>ping 172.16.11.10
思科交换机Portfast和Uplinkfast配置实验_第2张图片
9-86 P1PC1 ping P1ASW1 的结果显示
3)在P1ASW1上执行以下操作,关闭与P1PC1连接的fa0/5端口,5秒后再激活它。此时立即再从P1PC1ping P1ASW1,结果是不通的,如图9-87所示。因为P1ASW1交换机上运行的STP在在关闭了fa0/5端口,再重新激活这个端口时,需要重新计算链路,需要50秒时间。
P1ASW1(config)#int fa0/5
P1ASW1(config-if)#shut
P1ASW1(config-if)#no shut
C:>ping 172.16.11.10
再等上40秒左右,再从P1PC1ping P1ASW1,结果又是通的,参见图9-86。因为此时STP已完成所需的所有过程,找到了新的链路。
思科交换机Portfast和Uplinkfast配置实验_第3张图片
9-87 重新关闭、启动 fa0/5 端口在 P1PC1 ping P1ASW1 VLAN11 端口的结果显示
4)执行以下操作,在P1ASW1交换机的fa0/5端口上启用PortFast。再次在关闭该端口后再立即激活它,然后立即从P1PC1ping P1ASW1,结果是通的,参见图9-85。此时发现已不再需要等待即么久时间了。
P1ASW1(config)#int fa0/5
P1ASW1(config-if)#spanning-tree portfast
P1ASW1(config-if)#shut
P1ASW1(config-if)#no shut
C:>ping 172.16.11.10
5)执行以下操作,在P1DSW1上创建一个vlan_id11VLAN,并创建一个VLAN11端口,分配IP地址为172.16.11.100,子网掩码为255.255.0.0。然后激活它。
P1DSW1(config)#vlan 11
P1DSW1(config)#int Vlan11
P1DSW1(config-if)#ip add 172.16.11.100 255.255.255.0
P1DSW1(config-if)#no shut
6)在P1DSW1交换机上,把连接P1ASW1的两个端口(fa0/1fa0/2)加入到VLAN 11中,并启用trunk
P1DSW1(config)#int fa0/1
P1DSW1(config-if)#switchport mode trunk
P1DSW1(config-if)#switchport access vlan 11
P1DSW1(config)#int fa0/2
P1DSW1(config-if)#switchport mode trunk
P1DSW1(config-if)#switchport access vlan 11
7)执行以下操作,在P1ASW1上显示VLAN 11STP配置信息,结果显示如图9-88所示。从中可以看出,除了初始配置中fa0/5加入到了VLAN 11中外,通过trunk技术,在与相边的P1DSW1上把fa0/1fa0/2加入到VLAN 11后,P1ASW1交换机上的对应端口也加入到了VLAN 11中。
show spanning-tree vlan 11
8)在P1PC1上执行以下操作,测试到P1DSW1交换机的VLAN11接口(IP地址为172.16.11.100)之间的网络连接,结果是通的,如图9-89所示。
思科交换机Portfast和Uplinkfast配置实验_第4张图片
9-878  P1DSW1 上启用 trunk 后,在 P1ASW1 上显示的 VLAN 11 配置信息
思科交换机Portfast和Uplinkfast配置实验_第5张图片
9-889  P1PC1 ping P1DSW1 交换机 VLAN11 接口的结果显示
9)执行以下操作,在P1ASW1中把连接到P1DSW1交换机的fa0/1端口(P1ASW1P1DSW1采取了冗余连接,除了fa01/端口外,还有一条fa0/2之间的连接)设为阻塞状态。在STP协议重新计算的过程中,立即从P1PC1ping P1DSW1,结果不是通的。等一段时间再ping,看需要等待多少时间才能ping通,从这里可以看出交换机的STP协议收敛时间了。
P1ASW1(config)#int fa0/1
P1ASW1(config-if)#shut
C:>ping 172.16.11.100
10)重新打开上一步关闭的fa0/1端口,并在其上启用uplinkfast技术,再从从P1PC1ping P1DSW1交换机,此时结果是通的。
P1ASW1(config)#int fa0/1
P1ASW1(config-if)#no shutn
P1ASW1(config)#spanning-tree uplinkfast
C:>ping 172.16.11.100
11)执行以下操作,再次把P1ASW1中把连接到P1DSW1交换机的fa0/1端口设为阻塞状态。同样,再次立即从P1PC1ping P1DSW1,结果不是通的。从中可以以到启用uplinkfast技术后,STP收敛的时间大为缩短。
P1ASW1(config)#int fa0/1
P1ASW1(config-if)shut
C:>ping 172.16.11.100
总结:通过本实验我们学习了如何在端口上启用portfastuplinkfast技术,并从中学习到这两种技术的用途所在。本实验所用命令如表9-7所示。
9-7   本实验所用主要命令列表
命令
描述
show spanning-tree vlan vlan_id
查看指定 VLAN 中是否在运行 STP 协议 s
Spanning-tree vlan vlan_id priority priority
设置根桥的选举优先级
Spanning-tree vlan vlan_id {root {primary | secondary} | {priority priority }
强制交换机成为某 STP 实例的根桥
Spanning-tree portfast
在端口上启用 portfast 技术
Spanning-tree uplinkfast
在级联端口上启用 uplinkfast 技术