本人刚刚在一个公司实习,由于对网络知识的要求十分广,所以要常常上网找资料,经过一个多月的努力,总结了一些协议,以下是STP协议的一些原理,做得不好不要见怪!!
为了解决冗余链路引起的问题,IEEE通过了
802.1D 协议,即我们常说的生成树协议(Spanning Tree),它是一个二层管理协议,它的主要功能就是为了解决由于备份连接所产生的环路问题。
当网络中存在备份链路时,只允许主链路激活,如果主链路因故障而被断开后,备用链路才会被打开。当交换机间存在多条链路时,交换机的生成树算法只启动最主要的一条链路。而将其他链路都阻塞掉,将这些链路变为备用链路。
上面提到过我们希望网络好似树一样生长但不会出现还路,于是,STP中定义了根交换机(Root
Brige)、根端口(Root Port)、指定端口(Designated Port)和路径开销(Path
Cost),用与构造这棵树的算法称为生成树算法(Spanning Tree Algorithm,SPA)。
1.
核心内容
说到这里,来到器玉啦,要实现STP,交换机之间必须进行交流,而他们共同的语言就是BPDU桥协议数据单元(Bridge Protocol Date
Unit),它包含了用于生成树计算的所有信息。包括:
① Bridge ID :每个交换机唯一的桥ID,由桥优先级和MAC地址组合而成
② Root
Path Cost : 交换机到根交换机的路径花费
③ Port ID
:每个端口ID,由端口优先级和端口号组成
下面我们了解一下他们的工作原理:
首先启动的时候每一台交换机都认为自己都是根桥,这样就进行选举(选举的原则是根据BPDU当中的BID来进行判断,当BID中
的网桥的优先级相同时就根据MAC地址小的选为根桥);当选定根桥时再在非根桥的交换机上选定根端口(根据到根桥的路径开销值来
判定,选择路径开销值小的作为根端口);为每一个网段选择一个指定端口(当一个网段出现俩个根端口时,跟桥优先考虑.);断掉非 指定端口.这样就逻辑上解除了环路问题。