BPDU叫做桥协议数据单元(BridgeProtocolDataUnit) 该信息包内主要内容是网络拓扑信息。交换机接收到这个BPDU后,便利用STA(SpanningTreeArithmetic,生成树算法)的数学公式进行计算。通过STA计算,网桥就可以知道网络上是否存在环路。如果存在环路,网桥就作出备份端口应该被阻塞的决定,最终去出环路。到底是怎么回事,对一个可网管的交换机又有什么作用呢? 这得从网桥说起。网桥有三种典型的方式:透明桥、源路由桥与源路由透明桥。网桥典型地连接两个用同样介质存取控制方法的网段,IEEE802.1d规范(此规范是为所有的802介质存取方法开发的)定义了透明桥。源路由桥是由IBM公司为它的令牌环网络开发的;而源路由透明桥则是透明桥和源路由桥的组合。桥两边的网段分属于不同的冲突域,但却属于同一个广播域。 在一个桥接的局域网里,为了增强可靠性,必然要建立一个冗余的路径,网段会用冗余的网桥连接。但是,在一个透明桥桥接的网络里,存在冗余的路径就能建立一个桥回路,桥回路对于一个局域网是致命的。 生成树协议是一种桥嵌套协议,在IEEE802.1d规范里定义,可以用来消除桥回路。它的工作原理是这样的:生成树协议定义了一个数据包,叫做桥协议数据单元BPDU(BridgeProtocolDataUnit)。网桥用BPDU来相互通信,并用BPDU的相关机能来动态选择根桥和备份桥。但是因为从中心桥到任何网段只有一个路径存在,所以桥回路被消除。 在一个生成树环境里,桥不会立即开始转发功能,它们必须首先选择一个桥为根桥,然后建立一个指定路径。在一个网络里边拥有最低桥ID的将变成一个根桥,全部的生成树网络里面只有一个根桥。根桥的主要职责是定期发送配置信息,然后这种配置信息将会被所有的指定桥发送。这在生成树网络里面是一种机制,一旦网络结构发生变化,网络状态将会重新配置。 当选定根桥之后,在转发数据包之前,它们必须决定每一个网段的指定桥,运用生成树的这种算法,根桥每隔2秒钟从它所有的端口发送BPDU包,BPDU包被所有的桥从它们的根端口复制过来,根端口是接根桥的那些桥端口。BPDU包括的信息叫做端口的COST,网络管理员分配端口的COST到所有的桥端口,当根桥发送BPDU的时候,根桥设置它的端口值为零。然后沿着这条路径,下一个桥增加它的配置端口COST为一个值,这个值是它接收和转发数据包到下一个网段的值。这样每一个桥都增加它的端口的COST值为它所接收的BPDU的包的COST值,所有的桥都检测它们的端口的COST值,拥有最低端口的COST值的桥就变为了指定的桥。拥有比较高端口COST值的桥置它的端口进入阻塞状态,变为了备份桥。在阻塞状态,一个桥停止了转发,但是它会继续接收和处理BPDU数据包。 生成树协议(STP)在交换机互相通信时进行操作,数据报文以桥协议数据单元(BPDU)的形式进行交换。 每隔2秒,BPDU报文便向所有的交换机端口发送一次,以便交换机(或网桥)能交换当前最新的拓扑信息,并迅速识别和检测其中的环路。BPDU报文交换的目的是,选定一个合适的参考点作为基础,以求获得一个稳定的生成树拓扑。BPDU消息格式:DMA
上一篇:生成树的介绍_网络技术
下一篇:STP的工作原理_网络技术