在实际的网络环境中,物理环路可以提高网络的可靠性,当一条线路断掉的时候,另一条链路仍然可以传输数据。但是,在交换的网络中,当交换机接受到一个未知目的地址的数据帧时,交换机的操作是将这个数据帧广播出去,这样,在存在物理环路的交换网络中,就会产生一个双向的广播环,甚至产生广播风暴,导致交换机死机。

这就产生了一个矛盾,需要物理环路来提高网络的可靠性,而环路又可能产生广播风暴,如何才能两全其美呢?

这里讲述的STP(spanning tree protocol,生成树协议),就是用来解决这个矛盾的。STP协议在逻辑上断开网络的环路,防止广播风暴的产生,而一旦正在用的线路出现故障,逻辑上被断开的线路又被连通,继续传输数据。

STP就是把一个环形的结构改变成一个树形的结构。STP协议就是用来将物理上存在环路的网络,通过一种算法,在逻辑上阻塞一些端口,来生成一个逻辑上的树形结构。

STP工作原理:

生成树协议运行生成树算法。生成树算法很复杂,但是其过程可以归纳为以下三个步骤:

(1)选择根网桥(Root Bridge)

(2)选择根端口(Root Ports)

(3)选择指定端口(Designated Ports)