我相信所有的技术都是面对问题时提出的解决方案。
今天把我认知中的stp说说。
stp(Spanning Tree Protocol)生成树协议,他要解决的是高可用性的问题-即无环冗余。
stp可以理解为政府准备建设菜市场解决老太太买菜的问题。
1、首先要确定菜市场尽量建到逻辑中心。这个就是选举根网桥,选举的时候看两点:网桥优先级和网桥交换机背板mac。
2、菜市场建好了,为了解决老太太乱走的问题,让老太太们有序的买菜,又因为老太太体力有限,尽量让所有的老太太能走最短的路到达,就需要确定唯一路径。首先得确定那个门离菜市场最近,那所有从小区走出去的老太太都从这走。小区保安会给老太太照相,以确保下次通过的时候速度更快(将源mac加入本交换机CAM)。这个我们叫选择根端口。选择的时候取决于cost,若cost相同则比较端口id(端口优先级和端口号)。
3、老太太走出家门了,也许能直接到达,也许要穿过别的市场。这时我们需要选择从那个门进,这时最短的一定是和之前我们选择的那个根端口相对的那个端口。这个过程中其他节点的保安也会照相记录(将源mac加入本交换机CAM)。这个我们叫指定端口。
4、老太太比较笨,最后要把所有其他的门堵住。这种端口叫非指定端口。指定端口保安还在。
5、还有一种是市场的门常年坏的,我们叫禁用端口。由于常年都是坏的,保安不在。
好了,这样一来老太太们就能愉快的买菜了。。然而并没有完。我们发现由于人流量大,有的门会坏,这时存在老太太会换路的时候。这时需要动态的标记每个门的状态。
1、保安在,门堵住了。保安会听广播确认整个现场情况,确认自己是否需要放开。这个是blocking,接收BPDU(广播),确认自己的端口状态(根、指定、非指定)
2、保安在沟通后确认自己可以放开,然后已广播形式给大家说,这个门要打开了。这个叫侦听,接收并发送BPDU。
3、之后保安会给老太太照相登记,然后会和那些确认会走老太太的交换信息。这个叫学习,填写CAM表。
4、之后保安给老太太指路。同时给各节点及菜市场报告情况。这个叫转发,收发BPDP。
5、那个常年关闭的大门还是让他关闭吧。。这个叫禁用状态。
然后周而复始,宏观上通过根端口、指定端口调配,微观上通过改变端口状态完成高可用性。这就是我眼里的STP。
本文出自 “痴吃” 博客,请务必保留此出处http://jeakbay.blog.51cto.com/8505437/1916845
原文地址:http://jeakbay.blog.51cto.com/8505437/1916845