什么是生成树协议
生成树协议是一基于OSI网路模型的数据链路层(第二层)通讯协定,用作确保一个无回圈的区域网络环境。通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路的备份功能,又称扩展树协定。
生成树协议发明者
生成树协议是由Sun微系统公司著名工程师拉迪亚·珀尔曼博士(Radia Perlman)发明的。
1988 年, 珀尔曼在MIT完成了她的计算机博士科学学位。
珀尔曼在1993年离开了DEC去了Novell工作, 1997她又加入Sun Microsystems 公司。
珀尔曼博士拥有80多个技术发明专利, 其中40多个是在Sun Microsystems 公司发明的。
珀尔曼博士被哈佛大学和华盛顿大学聘请为客座教授。
珀尔曼博士在数据通信领域的经典著作有:
《Interconnections: Bridges, Routers, Switches,and Internetworking Protocols》
《Network Security: Private Communication in a Public World》
珀尔曼博士被授予了许多杰出工程师奖,她被评为20个数据通信领域最有影响力的人之一。
生成树协议的特点
网桥使用珀尔曼博士发明的这种方法能够达到2层路由的理想境界:冗余和无环路运行。你可以把生成树协议设想为一个各网桥设备记在心里的用于进行优化和容错发送数据的过程的树型结构,生成树协议定义在IEEE 802.1D中,是一种链路管理协议,它为网络提供路径冗余同时防止产生环路。为使以太网更好地工作,两个工作站之间只能有一条活动路径。网络环路的发生有多种原因,最常见的一种是有意生成的冗余 - 万一一个链路或交换机失败,会有另一个链路或交换机替代。
生成树协议的功能
1、利用生成树算法、在以太网络中,创建一个以某台交换机的某个端口为根的生成树,避免环路。
2、以太网络拓扑发生变化时,通过生成树协议达到收敛保护的目的。
生成树协议的作用
在由交换机构成的交换网络中通常设计有冗余链路和设备。这种设计的目的是防止一个点的失败导致整个网络功能的丢失。虽然冗余设计可能消除的单点失败问题,但也导致了交换回路的产生,它会带来如下问题:
1.广播风暴
2.同一帧的多份拷贝
3.不稳定的MAC地址表
因此,在交换网络中必须有一个机制来阻止回路,而生成树协议的作用正是在于此。
生成树协议的算法过程
生成树协议的算法过程可以归纳为三个步骤:选择根网桥、选择根端口、选择指定端口。
(1)选择根网桥:再全网中选择一个根网桥
比较网桥的BID值,值越小其优先级越高。ID值是由两部分组成的:交换机的优先级和MAC地址组成的,如果交换机的优先级相同则比较其MAC地址,地址值越小,其就被选举为根网桥。
(2)选择根端口:在每个非根交换机上选择根端口
首先,比较根路径成本,根路径成本取决于链路的带宽,带宽越大,路径成本越低,则选该端口为根端口。
其次,如果根路径成本相同,则要比较所在对端交换机BID值,值越小,则其优先级越高。
最后,比较端口的ID值,该值分为两部分:端口优先级和端口编号,值小的被选为根端口。
(3)选择指定端口:在每条链路上选择一个指定端口,根网桥上所有端口都是指定端口
首先,比较根路径成本。
其次,比较端口所在网桥的ID值。
最后,比较端口的ID值。