这几天很没有感觉,还是上来蛋疼一把吧。生成树是为了防止在交换式网路中出现环路的情况。这主要是由于MAC数据库不稳定造成的。而且交换机转发广播帧会造成大量的消耗。
STP的行为如下:

     STP强制某些端口进入备用状态,这样他们不会侦听、转发、或者泛洪数据帧。其总体效果是,对于每个网段,在任何时刻都只有一条通往该网段的活动路径。

     如果网络中任何网段出现连接性问题,STP将自动激活原本不处于活动状态的路径,以重建连接。

 

生成树协议的工作原理:


1、选举根网桥

:STP需要选举根网桥。在给定网路中只有一台网桥为根网桥。根网桥的所有端口都是指定端口。指定端口处于转发状态,被指定用于将数据流交换到特定网段。处于转发太时,端口可以发送和接收数据流。

 

        2、在非根网桥网络中选举根端口:STP在每台非根网桥中选择一个根端口。根端口到根网桥的路径成本最低,且处于转发状态。生成树路径成本是根据带宽计算得到的累计成本。

       

3、在每个网段上选举一个指定端口

:STP在每个网段中选举一个指定端口。指定端口到根网桥的路径成本最低的网桥中选择。指定端口处于转发状态,负责为相应的网段转发数据流。

 

      运行生成树协议的交换机和网桥使用名为

BPDU的组播帧

定期的同其他交换机和网桥交流配置消息。

 

BPDU的包含的信息之一是

网桥ID

 

     下面说一下BPDU的数据帧格式,注意它是一个二层的数据。

       STP要求每台交换机和网桥

指定一个独一无二BID

。BID

优先级

和网桥的MAC地址组成。


STP(生成树)协议_STP

然后我们来看看起到了什么效果。


1. The receiving port is in either BLOCKING or LISTENING STP state. The device does not learn the source MAC address of the frame.
2. The frame's destination MAC address matches the receiving port's MAC address, the broadcast address, or a multicast address.
3. The device decapsulates the PDU from the Ethernet frame.
4. The STP process receives a BPDU on FastEthernet0/3.
5. The BPDU is a Configuration BPDU.
6. The received BPDU contains superior information

     第一句提到了:交换机的端口处于阻断(blocking)或者学习(learning)状态,所以它不会在意该帧的MAC地址。
     由此我们提出STP端口的五种状态:阻断 、侦听、学习、转发、禁用。在启动STP协议的时候,网络中每台网桥在通电后都经过阻断状态以及过渡性的侦听和学习状态(这足可以证明交换机刚通电没多久)。如果配置争取,端口将稳定的处于转发或者阻断状态。处于转发状态的端口到根网桥的成本最低。拓扑发生变化时,端口将临时经历侦听与学习状态。
       端口从侦听状态转换学习或者从学习转换到转发态所需要的时间被称为转发延迟。转发延迟默认为15秒。学下状态减少了开始转发数据后需要执行的泛洪操作。

      下面我们使用命令

show spanning-tree

来具体查看生成树的情况。


Switch#show spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID    Priority    32769
Address     0001.C713.0E67
Cost        19
Port        3(FastEthernet0/3)
Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
Address     0060.4787.2785
Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/3            Root FWD 19        128.3    P2p

VLAN0010
Spanning tree enabled protocol ieee
Root ID    Priority    32778
Address     0001.C713.0E67
Cost        19
Port        3(FastEthernet0/3)
Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

Bridge ID  Priority    32778  (priority 32768 sys-id-ext 10)

VLAN0030
Spanning tree enabled protocol ieee
Root ID    Priority    32798
Address     0001.C713.0E67
Cost        19
Port        3(FastEthernet0/3)
Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

Bridge ID  Priority    32798  (priority 32768 sys-id-ext 30)
Address     0060.4787.2785
Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/3            Root FWD 19        128.3    P2p
Fa0/4            Desg FWD 19        128.4    P2p