BPDU是运行STP的交换机之间交换的讯息帧。BPDU内包含了STP所需的路径和优先权信息,STP便利用这些信息来确定根桥以及到根桥的路径。
基本介绍
- 中文名:网桥协定数据单元
- 外文名:Bridge Protocol Data Unit
- 报文类型:BPDU类型
- 版本号:STP的版本(为IEEE 802.1d时值为0
- 协定ID:该值总为0。
概念介绍
网桥协定数据单元(Bridge Protocol Data Unit)。是一种生成树协定问候数据包,它可以配置的间隔发出,用来在网路的网桥间进行信息交换。
当一个网桥开始变为活动时,它的每个连线埠都是每2s(使用预设定时值时)传送一个BPDU。然而,如果一个连线埠收到另外一个网桥传送过来的BPDU,而这个BPDU比它正在传送的BPDU更优,则本地连线埠会停止传送BPDU。如果在一段时间(预设为20s)后它不再接收到邻居的更优的BPDU,则本地连线埠会再次传送BPDU。
BPDU是网桥协定数据单元(Bridge Protocol Data Unit)的英文首字母缩写。
主要栏位
协定ID:该值总为0。
版本号:STP的版本(为IEEE 802.1d时值为0)。
报文类型:BPDU类型(配置BPDU=0,TCN BPDU=80)。
标记域:LSB(最低有效位)=TCN标誌;MSB(最高有效位)=TCA标誌。
根网桥ID:根信息由2位元组优先权和6位元组ID组成。这个信息组合标明已经被选定为根网桥的设备标识。
根路径成本:路径成本为到达根网桥交换机的STP开销。表明这个BPDU从根网桥传输了多远,成本是多少。这个栏位的值用来决定哪些连线埠将进行转发,哪些连线埠将被阻断。
传送网路桥ID:传送该BPDU的网桥信息。由网桥的优先权和网桥ID组成。
连线埠ID:传送该BPDU的网桥连线埠ID。
计时器:计时器用于说明生成树用多长时间完成它的每项功能。这些功能包括报文老化时间、最大老化时间、访问时间和转发延迟。
最大老化时间:网桥将将根桥看做不可用前保留根ID的最大时间。
访问时间:根网桥连续传送BPDU的时间间隔。
转发延迟:网桥在监听学习状态所停留的时间。
网桥方式
BPDU究竟是如何工作的呢?
这得从网桥说起。网桥有三种典型的方式:透明桥、源路由桥与源路由透明桥。
网桥典型地连线两个用同样介质存取控制方法的网段,IEEE 802.1d规范(此规范是为所有的802介质存取方法开发的)定义了透明桥。源路由桥是由IBM公司为它的令牌环网路开发的;而源路由透明桥则是透明桥和源路由桥的组合。桥两边的网段分属于不同的冲突域,但却属于同一个广播域。
路径连线原理
在一个桥接的区域网路里,为了增强可靠性,必然要建立一个冗余的路径,网段会用冗余的网桥连线。但是,在一个透明桥桥接的网路里,存在冗余的路径就能建立一个桥迴路,桥迴路对于一个区域网路是致命的。
生成树协定是一种桥嵌套协定,在IEEE 802.1d规范里定义,可以用来消除桥迴路。它的工作原理是这样的:生成树协定定义了一个数据包,叫做桥协定数据单元BPDU(Bridge Protocol Data Unit)。网桥用BPDU来相互通信,并用BPDU的相关机能来动态选择根桥和备份桥。但是因为从中心桥到任何网段只有一个路径存在,所以桥迴路被消除。
在一个生成树环境里,桥不会立即开始转发功能,它们必须首先选择一个桥为根桥,然后建立一个指定路径。在一个网路里边拥有最低桥ID的将变成一个根桥,全部的生成树网路里面只有一个根桥。根桥的主要职责是定期传送配置信息,然后这种配置信息将会被所有的指定桥传送。这在生成树网路里面是一种机制,一旦网路结构发生变化,网路状态将会重新配置。
当选定根桥之后,在转发数据包之前,它们必须决定每一个网段的指定桥,运用生成树的这种算法,根桥每隔2秒钟从它所有的连线埠传送BPDU包,BPDU包被所有的桥从它们的根连线埠複製过来,根连线埠是接根桥的那些桥连线埠。BPDU包括的信息叫做连线埠的COST,网路管理员分配连线埠的COST到所有的桥连线埠,当根桥传送BPDU的时候,根桥设定它的连线埠值为零。然后沿着这条路径,下一个桥增加它的配置连线埠COST为一个值,这个值是它接收和转发数据包到下一个网段的值。这样每一个桥都增加它的连线埠的COST值为它所接收的BPDU的包的COST值,所有的桥都检测它们的连线埠的COST值,拥有最低连线埠的COST值的桥就变为了指定的桥。拥有比较高连线埠COST值的桥置它的连线埠进入阻塞状态,变为了备份桥。在阻塞状态,一个桥停止了转发,但是它会继续接收和处理BPDU数据包。