基于网络仿真软件分析负载均衡协议
扫描二维码
随时随地手机看文章
引 言
在网络工程实施时,时常会在特定场合或设备上配置STP 或PVST 协议,以解决网络中可能出现的物理环路问题。通过这两个协议,可以消除网络上产生环路的影响,若灵活采用PVST 协议,还可以优化网络运行效果。
1 STP协议和 PVST协议特点
在网络的实施部署过程中,为了提高网络可靠性,并尽量避免单点故障,时常会采用物理环线的方式来保障网络完全, 不论任何一条物理链路中断,都会有另外一条链路接替,从而确保网络可正常使用,可靠运行。但在交换式以太网中,一旦交换机接收一个未知目的地的数据帧时,交换机将采用转发方式广播该帧,在物理环路网络中将造成广播风暴或交换机 MAC 地址表不稳定的后果,甚至导致交换机或网络瘫痪。
1.1 STP
在网络中最早引入了生成树协议(Spanning Tree Protocol, STP)来解决网络环路问题。该协议采用对应算法,实现了逻辑上的自适应断环,以防止广播风暴等问题产生。该协议一般在交换机上已默认开启。
由于在 STP 协议的工作原理中,关于根交换机的推举基于交换机的ID 进行判断,而 ID 由优先级和MAC 地址组成,默认优先级是 32768,因而如果在优先级不改变的情况下,根交换机的推选就依赖于网络设备自身的MAC,但MAC 地址一般已烧录在设备中,具有不确定性,难以修改。
由于STP 中交换机选择根网桥时,不会修改交换机 ID 中的优先级字段,使用默认值,因此根交换机的选择依据就是其MAC 地址,而 MAC 地址是一个随机数,有可能导致性能较差或边缘化的交换机被选中为根交换机等状况出现,影响整个网络的性能。且后期可能会导致当前的根交换机失效,面临不断重新选取根交换机的局面,导致网络的使用效果不佳。
1.2 PVST
PVST(Per-VLAN Spanning Tree,PVST)可以根据网络中不同的VLAN 来运行独立的生成树实例,并根据参数自定义或优化根交换机的选举,同时为每个VLAN 的数据流选择更优的路径,实现网络整体的负载均衡效果。
2 利用网络仿真软件实现协议分析
2.1 构建网络拓扑
针对 STP、PVST 两个协议的使用场景, 使用 Packet Tracer 仿真设计图 1 所示的拓扑结构。使用 2 台 2960 作为接入层设备S1、S2,1 台 2950T 作为汇聚层设备S3,针对 3 台交换机分别新建一个VLAN 2。将 3 台交换机之间的链路均设置为 trunk 模式。
图1 网络仿真拓扑图
2.2 STP场景分析
由于在 Packet Tracer 中使用的 3 台交换机都已默认开启了STP 协议,在 3 台交换机的特权模式下可用命令 show spanning-tree 查看已为VLAN 1 和 VLAN 2 开启的生成树协议。
以交换机S1为例,在VLAN1和VLAN2中RootID的Address均为 0060.479C.3676,即交换机S2被推举为根交换机。原因在于此时交换机的默认优先级都是 32768,而S2的MAC较小,因此成为该网络中的根交换机。选择情况如图 2 所示。
图2 STP 下S1 中VLAN 1 和VLAN 2 针对根交换机的选择情况
S1 有两个接口可以到达 S2,即 F0/15(到达 S2 的Cost 为19 + 19 =38) 和 F0/13( 到达 S2 的 Cost 为 19), 因此 F0/13是根口,处于 Forword 状态。同理S3 的F0/2 也是根口,处于Forword 状态。在S1 和S3 之间的链路上,需选举一个指定口。由于S1 比 S3 的MAC 小,所以 S1 获胜,其 F0/15 是指定口, 处于Forward 状态,S3 的F0/1 就处于Block 状态。端口状态如图 3 所示。
图 3 交换机 S3 中涉及VLAN 1 和VLAN 2 的端口状态
当使用Ping 命令进行跨交换机,相同 VLAN 主机的连通性测试时,可利用 Packet Tracer 模拟状态 下的数据流进行测试。由于S3 的F0/1 处于Block 阻塞状态,因而所有经过S3 的VLAN 数据流都只能通过F0/2 端口转发,增大了该端口的压力。
由上可知,在 STP 协议下,根交换机的选择主要取决于其MAC 地址,具有一定的随机性,无法较好地保证网络运行的最优性,同时也增加了局部设备端口的负载压力。
2.3 PVST场景分析
在交换机S1 和 S2 的全局配置模式下,输入以下命令调整不同 VLAN 设置较小的优先级值,将S1 作为VLAN 1 的根交换机,S2 作为VLAN 2 的根交换机:
S1(config)#spanning-tree vlan 1 priority4096
S2(config)#spanning-tree vlan 2 priority4096
经上述配置后,根交换机情况如图4 所示。在交换机 S1 中, VLAN 1 的根交换机指向S1 本身,而 VLAN 2 的根交换机指向交换机S2。同时也可验证,在交换机S2 中VLAN 1 的根交换机指向S1 本身,而 VLAN 2 的根交换机指向交换机S2。
通过上述描述,可在仿真软件的 模拟 模式下发包测试。
从S2 的 PC1 发出的 ICMP 数据流属于 VLAN 1, 数据流经过接入层设备S1 后,从汇聚层设备 S3 的F0/1 端口转发至S3 的F0/4 接口中同在VLAN 1 的PC3 主机。而从S1 的PC2 发出的ICMP 数据流属于VLAN 2,可见数据流经过接入层设备S2 后,从汇聚层设备 S3 的F0/2 端口转发至S3 的F0/3 接口中同在VLAN 2 的PC0 主机。PVST 下S3 各端口的状态如图 5 所示。
图 4 PVST 下S1 中VLAN 1 和VLAN 2 的根交换机情况
图 5 PVST 下S3 各端口状态
由测试结果可知,在PVST 协议配置模式的作用下,实现了VLAN 1 和VLAN 2 数据流按照网络管理人员的规划进行分流的目的,同时不同的VLAN 选择根交换机的模式更为灵活, 进一步保障了网络的可用性,并实现了网络的负载均衡效果。
3 结 语
结合上述分析和仿真结果,一方面对 STP 和PVST 协议的实现进行了研究和说明,另一方面对于二者之间的区别和联系作了分析。从而证明,PVST 协议在根交换机的选择以及负载均衡的网络可靠性保障上更有优势。