生成树协议 STP (一)

本章技能

个理解STP的工作原理

会配置PVST+实现负载均衡

简介


        在实际的网络环境中,物理环路可以提高网络的可靠性,当一条线路断掉的时候,另一条线路仍然可以传输数据。但是,在交换的网络中,当交换机接收到一个未知目的地址的数据帧时,交换机的操作是将这个数据帧广播出去,这样,在存在物理环路的交换网络中,就会产生一个双向的广播环,甚至产生广播风暴,导致交换机死机。
        这就产生了一个矛盾,需要物理环路来提高网络的可靠性,而环路又可能产生广播风暴,那么如何才能两全其美呢?
        本章将要讲述的 STP 就是用来解决这个矛盾的。STP 在逻辑上断开网络的环路,防止广播风暴的产生,而一旦正在使用的线路出现故障,逻辑上被断开的线路又被连通,将继续传输数据。

一.STP 概述


        在企业的实际网络中,经常会出现环路,严重的甚至导致网络瘫痪。而在 TCP/P 理论中,三层的环路可以通过 TTL 从一定程度上解决。那么二层的环路又如何解决呢?

1.冗余链路存在的问题


        在企业的网络设计中,一般都会设计具有冗余的拓扑结构。因为单一的链路会导致单点故障提高故障发生的概率。越是大规模的网络,对冗余性的要求越高。但是,当网络具有冗余性之后些问题也随之发生


1.1广播风暴


        如图所示,PC1和PC2通过交换机相连。网络初始状态时,PC1与PC2的通信过程如下

(1)在网络通信的最初,PC1的ARP 条目中没有PC2的MAC 地址,根据ARP 原理,PC1首先会发送一个 ARP 广播请求(请求PC2的MAC 地址) 给交换机 SW1。

(2)当 SW1 收到 ARP 广播请求时,根据交换机的转发原理,SW1 交换机会将广播从除接收端口之外的所有端口转发出去 (即该广播会从FO/1 和FO/2分别转发给SW2和SW3)。
(3)SW2 收到广播后,同样根据交换机的转发原理,将广播从 FO/2 和连接 PC2 的端口转发,同样,SW3收到广播后,将其从FO/2 端口转发
(4)SW2从FO/2端口收到从SW3 发送的广播后,将其从FO/2 和连接PC2的端口转发,同样,SW3 收到从SW2 发送的广播顿后,将其从FO/1 端口转发
(5)SW1 分别从SW2SW3 收到广播,再将从SW2 收到的广播转发给 SW3,而将从SW3收到的广播帧转发给SW2.

        SW1 SW2与SW3会将广播相互转发这时网络就形成了一个环路,而交换机之间并不知道这将导致广播帧在这个环路中永远循环下去,如图所示。在实际网络环境中,情况要复杂得多当广播恢经过交换机时,交换机就以指数的形式生成广播 (交换机从除收到该广播帧之外的所有端口转发广播帧)。这种广播帧会越来越多,最终形成广播风暴,导致网络瘫痪。

        这种广播风暴只有在物理环路消失时才可能停止


1.2.多帧复制


        多帧复制,也称为重复帧传送,指单播的数据帧被多次复制传送到接收端。很多协议都只需要每次传输一个副本。多帧复制会造成接收端收到数据帧的多个副本,不仅浪费了接收端的主机资源,而且会导致上层协议在处理这些帧时无法选择,严重时还可能导致不可恢复的错误,如图所示,PC1发出的数据包到达 SW1,如果此时三台交换机正好刚刚启动,MAC 地址表为空,那么SW1 就会在 FO/1、F0/2 泛洪此数据包,出现数据包的两个副本,分别标记为数据包O和数据包@,数据包@到达 SW3 之后同理被泛洪到 SW2,经过 SW2 再次泛洪到达 PC2。另一方面数据包O到达 SW2 之后也会被转发到 PC2。最终PC2 收到了两个一样的副本。

1.3.MAC 地址表紊乱


        如图所示,PC1 发出的报文到达 SW1,假设三台交换机刚刚启动,MAC 地址表为空,SW1将从FO/1和F0/2泛洪从PC1 收到的数据包,分别标记为数据包1和数据包2,数据包到达 SW3之后,SW3 通过自动学习,将学习到的MAC 地址 AAAA.AAAA.AAAA 对应到接口F/1。而数据包1到达 SW2 之后,经过 SW2 的泛洪到达 SW3,SW3 从接口 FO/2 学习到 MAC 地址AAAA.AAAA.AAAA。最终 SW3 通过两个接口学习到相同的MAC 地址。同理,SW2 也将通过F0/1和FO/2 学习到相同的MAC 地址,从而导致 MAC 地址表紊乱,影响数据包的转发。

        虽然冗余链路会存在一些问题,但是环状的物理线路能够为网络提供备份线路,增强网络的可靠性,这在网络设计中是必要的。因此,这就需要一种解决方法,一方面能够保证网络的可靠性另一方面还要解决因为冗余链路所带来的一系列问题,STP 就是用来解决这个问题的。STP 并不是断掉物理环路,而是在逻辑上断开环路,防止以上问题的产生。

2.STP简介


        STP (Spanning Tree Protocol,生成树协议)就是把一个环型的结构改变成一个树型的结构。STP就是用来将物理上存在环路的网络,通过一种算法,在逻辑上阻塞一些端口来生成一个逻辑上的树型结构。如图所示,对于三台交换机构成环路的网络,在使用STP 后,交换机SW2与SW3连接链路的一个端口被协议从逻辑上阻塞,这条线路也就不能再传输数据了,也就是从逻辑上打破了环路。当正常通信的线路发生故障时,被逻辑阻塞的线路被重新激活,使得数据能从这条线路正常传输,如图所示。

  • 21
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值