9.3.6 思科交换机Portfast和Uplinkfast配置


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


zabbix 监控交换机 端口状态 监控交换机uplink_C#




<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype>
 
9-85


1. Portfast和UplinkFast技术简介


Portfast(端口快速)和UplinkFast(上行快速)是两个极其类似的技术,都是可以使端口从阻塞状态迅速恢复到转发状态,以达到快速收敛的目的。但Portfast技术可应用于所有阻塞端口,而UplinkFast只能应用于接入层交换机的阻塞上行端口(也就是用于级联的端口,但不一定是专门的Uplink端口)。


缺省情况下,假定交换机的所有端口都将与交换机或者网桥连接,所以所有端口都运行STP算法,即如果网络发生了变化,在端口发送数据之前要等待50s,即20s的由Blocking(阻塞)状态转为Listening(侦听)状态,加上15的Listening过程,再加上15s的由Learning(学习)状态转变为Forwarding(转发)状态。而事实上许多端口会直接连接工作站或者服务器。采用PortFast和UplinkFast技术可以让这些端口节省Listening和Learning状态的时间,立即由Blocking进入Forwarding状态。切换时间可以在2s~4s之间。


PortFas和UplinkFast技术都是针对在启用STP技术后出现的一些问题(如收敛速度慢)的解决方案。它们所要解决的就是由于在端口中启用STP技术后,网络结构发生变化时,需要等待一定的链路侦测、学习时间,而这个时间可能导致网络不通,网络服务器工作不正常。有了PortFast和UplinkFast技术后,这些端口就可以快速地进入数据转发状态,不用等待,确保了网络的正常通信。


【注意】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


zabbix 监控交换机 端口状态 监控交换机uplink_zabbix 监控交换机 端口状态_02




9-86 在 P1PC1 上 ping P1ASW1 的结果显示


(3)在P1ASW1上执行以下操作,关闭与P1PC1连接的fa0/5端口,5秒后再激活它。此时立即再从P1PC1上ping 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秒左右,再从P1PC1上ping P1ASW1,结果又是通的,参见图9-86。因为此时STP已完成所需的所有过程,找到了新的链路。


zabbix 监控交换机 端口状态 监控交换机uplink_网络应用_03




9-87 重新关闭、启动 fa0/5 端口在 P1PC1 上 ping P1ASW1 VLAN11 端口的结果显示


(4)执行以下操作,在P1ASW1交换机的fa0/5端口上启用PortFast。再次在关闭该端口后再立即激活它,然后立即从P1PC1上ping 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_id为11的VLAN,并创建一个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/1和fa0/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 11的STP配置信息,结果显示如图9-88所示。从中可以看出,除了初始配置中fa0/5加入到了VLAN 11中外,通过trunk技术,在与相边的P1DSW1上把fa0/1和fa0/2加入到VLAN 11后,P1ASW1交换机上的对应端口也加入到了VLAN 11中。


show spanning-tree vlan 11


(8)在P1PC1上执行以下操作,测试到P1DSW1交换机的VLAN11接口(IP地址为172.16.11.100)之间的网络连接,结果是通的,如图9-89所示


zabbix 监控交换机 端口状态 监控交换机uplink_网络协议_04




9-88 在 P1DSW1 上启用 trunk 后,在 P1ASW1 上显示的 VLAN 11




zabbix 监控交换机 端口状态 监控交换机uplink_zabbix 监控交换机 端口状态_05




9-88 在 P1PC1 上 ping P1DSW1 交换机 VLAN11 接口的结果显示


(9)执行以下操作,在P1ASW1中把连接到P1DSW1交换机的fa0/1端口(P1ASW1与P1DSW1采取了冗余连接,除了fa01/端口外,还有一条fa0/2之间的连接)设为阻塞状态。在STP协议重新计算的过程中,立即从P1PC1上ping P1DSW1,结果不是通的。等一段时间再ping,看需要等待多少时间才能ping通,从这里可以看出交换机的STP协议收敛时间了。

P1ASW1(config)#int fa0/1  
 
P1ASW1(config-if)#shut  
 
C:>ping 172.16.11.100  
 
(10)重新打开上一步关闭的fa0/1端口,并在其上启用uplinkfast技术,再从从P1PC1上ping 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端口设为阻塞状态。同样,再次立即从P1PC1上ping P1DSW1,结果不是通的。从中可以以到启用uplinkfast技术后,STP收敛的时间大为缩短。


P1ASW1(config)#int fa0/1


P1ASW1(config-if)shut


C:>ping 172.16.11.100


总结:通过本实验我们学习了如何在端口上启用portfast和uplinkfast技术,并从中学习到这两种技术的用途所在。本实验所用命令如表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 技术