标题：IEEE 802.1
零、IEEE 802.1简介
IEEE 802.1是一组协议的集合，如生成树协议、VLAN协议等。为了将各个协议区别开来，IEEE在制定某一个协议时，就在IEEE 802.1后面加上不同的小写字母，如IEEE 802.1a定义局域网体系结构；IEEE 802.1b定义网际互连，网络管理及寻址；IEEE 802.1d定义生成树协议；IEEE 802.1p定义优先级队列；IEEE 802.1q定义VLAN标记协议；IEE 802.1s定义多生成树协议；IEEE 802.1w定义快速生成树协议；IEEE 802.1x定义局域网安全认证等。
IEEE 802.1D
IEEE 802.1D简介为了解决“广播风暴”这一在二层数据网络中存在弊端，IEEE（电机和电子工程师学会）制定了IEEE 802.1d的生成树（Spanning Tree）协议。生成树协议是一种链路管理协议，为网络提供路径冗余，同时防止产生环路。为使以太网更好地工作，两个工作站之间只能有一条活动路径。
STP（生成树协议）允许网桥之间相互通信以发现网络物理环路。该协议定义了一种算法，网桥能够使用它创建无环路（loop-free）的逻辑拓朴结构。换句话说，STP创建了一个由无环路树叶和树枝构成的树结构，其跨越了整个第二层网络。工作原理STP协议中定义了根桥（Root Bridge）、根端口（Root Port）、指定端口（Designated Port）、路径开销（Path Cost）等概念，目的就在于通过构造一棵自然树的方法达到裁剪冗余环路的目的，同时实现链路备份和路径最优化。用于构造这棵树的算法称为生成树算法 SPA。 要实现这些功能，网桥之间必须要进行一些信息的交流，这些信息交流单元就称为配置消息BPDU。STP BPDU是一种二层报文，目的MAC是多播地址01-80-C2-00-00-00，所有支持STP协议的网桥都会接收并处理收到的BPDU报文。该报文的数据区里携带了用于生成树计算的所有有用信息。
STP的主要不足表现在：二层数据网的收敛时间过长；网络拓扑容易引起全局波动；缺乏对现有多 VLAN 环境的支持。具体不足和所采用的增强技术参见局介绍。
IEEE 802.1p协议
IEEE 802.1P是流量优先权控制标准，工作在媒体访问控制（MAC）子层，使得二层交换机能够提供流量优先级和动态组播过滤服务。IEEE 802.1p标准也提供了组播流量过滤功能，以确保该流量不超出第二层交换网络范围。 
IEEE 802.1p协议头包括一个3位优先级字段，该字段支持将数据包分组为各种流量种类。它是IEEE 802.1q（VLAN标签协议）标准的扩充协议，它们协同工作。IEEE 802.1q标准定义了为以太网MAC帧添加的标签。VLAN 标签有两部分：VLAN ID（12比特）和优先级（3比特）。IEEE 802.1q VLAN标准中没有定义和使用优先级字段，而IEEE 802.1p中则定义了该字段。
IEEE 802.1p中定义的优先级有8种。最高优先级为7，应用于关键性网络流量；优先级6和5主要用于延迟敏感（delay-sensitive）应用程序；优先级4到1主要用于受控负载（controlled-load）应用程序；优先级0是缺省值，在没有设置其它优先级值的情况下自动启用。
IEEE 802.1q协议
IEEE 802.1q协议也就是“Virtual Bridged Local Area Networks”（虚拟桥接局域网，简称“虚拟局域网”）协议，主要规定了VLAN的实现方法。VLAN简介“Virtual LANs”（虚拟局域网）目前发展很快，世界上主要的大网络厂商在他们的交换机设备中都实现了VLAN协议。在一个支持VLAN技术的交换机中，可以将它的以太网口划分为几个组，比如生产组、工程组、市场组等。这样，组内的各个用户就像在同一个局域网内（可能各组的用户位于很多的交换机上，而非一个交换机）一样，同时，不是本组的用户就无法访问本组的成员，在一定程度上提高了各组的网络安全性。 
VLAN成员的定义可以分为4种，即根据端口划分VLAN；根据MAC地址划分VLAN；根据网络层划分VLAN；根据IP组播划分。协议简介IEEE 802.1q协议为标识带有VLAN成员信息的以太帧建立了一种标准方法。IEEE802.1q标准定义了VLAN网桥操作，从而允许在桥接局域网结构中实现定义、运行以及管理VLAN拓扑结构等操作。IEEE 802.1q标准主要用来解决如何将大型网络划分为多个小网络，如此广播和组播流量就不会占据更多带宽的问题。此外IEEE 802.1q标准还提供更高的网络段间安全性。IEEE802.1q完成这些功能的关键在于标签。支持IEEE 802.1q的交换端口可被配置来传输标签帧或无标签帧。一个包含VLAN信息的标签字段可以插入到以太帧中。如果端口有支持IEEE 802.1q的设备（如另一个交换机）相连，那么这些标签帧可以在交换机之间传送VLAN成员信息，这样VLAN就可以跨越多台交换机。但是，对于没有支持IEEE 802.1q设备相连的端口我们必须确保它们用于传输无标签帧。
在IEEE 802.1q中，用于标签帧的最大合法以太帧大小已由1518字节增加到1522字节，这样就会使网卡和旧式交换机由于帧“尺寸过大”而丢弃标签帧。具体帧格式参见书中介绍。
IEEE 802.1w协议
为了解决前面介绍的STP协议缺陷，在20世纪初IEEE推出了802.1w标准。它同样是属于生成树协议类型，称之为“快速生成树协议”，作为对802.1D标准的补充。之所以要制定IEEE 802.1w协议的原因是IEEE 802.1d协议虽然解决了链路闭合引起的死循环问题，但是生成树的收敛（过程仍需比较长的时间。协议原理IEEE 802.1w RSTP的特点是将许多思科增值生成树扩展特性融入原始IEEE 802.1d中，如Portfast、Uplinkfast和Backbonefast。IEEE 802.1w协议通过利用一种主动的网桥到网桥握手机制，取代 IEEE 802.1d根网桥中定义的计时器功能，提供了交换机（网桥）、交换机端口（网桥端口）或整个LAN的快速故障恢复功能。
RSTP协议在STP协议基础上做了以下两个重要改进，使得收敛速度快得多（最快1秒以内） 。
IEEE 802.1w设置了快速切换用的替代端口（Alternate Port）和备份端口（Backup Port）两种角色，当根端口/指定端口失效的情况下，替代端口/备份端口就会无时延地进入转发状态。 
减少转发延时
使用了RSTP协议后，在只连接了两个交换端口的点对点链路中，指定端口只需与下游网桥进行一次握手就可以无时延地进入转发状态。IEEE 802.1w标准的缺陷RSTP的主要缺陷表现在以下三个方面：
由于整个交换网络只有一棵生成树，在网络规模比较大的时候会导致较长的收敛时间，拓扑改变的影响面也较大。
在网络结构不对称的时候， RSTP协议的单生成树就会影响网络的连通性。
当链路被阻塞后将不承载任何流量，造成了带宽的极大浪费，这在环行城域网的情况下比较明显。
IEEE 802.1s协议
IEEE 802.1s标准中的多生成树（MSTP）技术把IEEE 802.1w快速单生成树（RSTP）算法扩展到多生成树，这为虚拟局域网（VLANs）环境提供了快速收敛和负载均衡的功能，是IEEE 802.1 VLAN标记协议的扩展协议。MSTP工作原理IEEE802.1s引入了IST（Single Spanning Tree，单生成树）概念和MST实例。IST是一种RSTP实例，它扩展了MST区域内的802.1D单一生成树。IST连接所有MST网桥，并从边界端口发出、作为贯穿整个网桥域的虚拟网桥。MST实例（MSTI）是一种仅存在于区域内部的RSTP实例。它可以缺省运行RSTP，无须额外配置。不同于IST的是，MSTI在区域外既不与BPDU交互，也不发送BPDU。MSTP可以与传统和PVST+交换机互操作。
采用MSTP技术，可以通过干道（trunks）建立多个生成树，关联VLANs到相关的生成树进程，而且每个生成树进程具有独立于其它进程的拓扑结构。MSTP还提供了多个数据转发路径和负载均衡，提高了网络容错能力，因为一个进程（转发路径）的故障不会影响其它进程（转发路径）。
每台运行MST的交换机都拥有单一配置，包括一个字母数字式配置名、一个配置修订号和一个4096部件表，与潜在支持某个实例的各4096 VLAN相关联。作为公共MSTP区域的一部分，一组交换机必须共享相同的配置属性。重要的是要记住，配置属性不同的交换机会被视为位于不同的区域。MSTP的主要特性MSTP具有下列特性:
MSTP在MSTP区中运行IST常量；
一个运行MSTP的桥提供与单生成树桥的互操作性；
MSTP在每个区内建立和维护额外的生成树。
IEEE 802.1x协议
IEEE 802.1x也称为“基于端口的访问控制协议”（Port based network access control protocol）。它的体系结构包括三个重要的部分：Supplicant System（客户端系统）、Authenticator System（认证系统）、Authentication Server System（认证服务器系统）。 
“客户端系统”一般为一个用户终端系统。该终端系统通常要安装一个客户端软件，用户通过启动这个客户端软件发起IEEE 802.1x协议的认证过程。
“认证系统”通常为支持IEEE 802.1x协议的网络设备。该设备对应于不同用户的端口有两个逻辑端口：受控（controlled Port）端口和不受控端口（uncontrolled Port）。 
“认证服务器系统”通常为RADIUS服务器，该服务器可以存储有关用户的信息，比如用户所属的VLAN、CAR参数、优先级、用户的访问控制列表等等