IEEE 802.1 相关协议

本文深入解析了IEEE 802.1D生成树协议(STP)、802.1Q虚拟局域网(VLAN)协议、802.1W快速生成树协议(RSTP)及802.1X认证协议等网络核心技术。详细阐述了这些协议的工作原理、应用场景及其在网络管理中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IEEE 802.1d —— 生成树协议


(STP:Spanning Tree Protocol - IEEE 802.1D)   生成树协议(Spanning Tree)定义在 IEEE 802.1D 中,是一种链路管理协议,它为网络提供路径冗余同时防止产生环路。为使以太网更好地工作,两个工作站之间只能有一条活动路径。网络环路的发生有多种原因,最常见的一种是有意生成的冗余 - 万一一个链路或交换机失败,会有另一个链路或交换机替代。

STP 允许网桥之间相互通信以发现网络物理环路。该协议定义了一种算法,网桥能够使用它创建无环路(loop-free)的逻辑拓朴结构。换句话说,STP 创建了一个由无环路树叶和树枝构成的树结构,其跨越了整个第二层网络。

生成树协议操作对终端站透明,也就是说,终端站并不知道它们自己是否连接在单个局域网段或多网段中。当有两个网桥同时连接相同的计算机网段时,生成树协议可以允许两网桥之间相互交换信息,这样只需要其中一个网桥处理两台计算机之间发送的信息。

网桥之间通过桥接协议数据单元(Bridge Protocol Data Unit - BPDU)交换各自状态信息。生成树协议通过发送 BPDU 信息选出网络中根交换机和根节点端口,并为每个网段(switched segment)选出根节点端口和指定端口。

网桥中的程序能够决定如何使用生成树协议,这称为生成树算法,该算法能够避免网桥环路,并确保在多路径情形下网桥能够选择一条最有效的路径。如果最佳路径失败,可以使用该算法重新计算网络路径并找出下一条最佳路径。

利用生成树算法可以决定网络(哪台计算机主机在哪个区段),并通过 BPDU 信息交换以上数据。该过程主要分为以下两个步骤:

步骤1:通过评估它所接收到的所有配置信息和选择最优选项,来决定一个网桥可发送的最佳信息。

步骤2:一旦选定某网桥发送的信息,网桥将该信息与来自无根(non-root)连接的可能配置信息相比较。如果步骤1中选择的最佳选项并不优于可能配置信息,便删除该端口。

在802. 1D的协议中,端口状态:

 ? Blocking:处于这个状态的端口不能够参与转发数据报文,但是可以接收配置消息,并交给CPU进行处理。不过不能发送配置消息,也不进行地址学习。

 ? Listening:处于这个状态的端口也不参与数据转发,不进行地址学习;但是可以接收并发送配置消息。

 ? Learning:处于这个状态的端口同样不能转发数据,但是开始地址学习,并可以接收、处理和发送配置消息。

 ? Forwarding:一旦端口进入该状态,就可以转发任何数据了,同时也进行地址学习和配置消息的接收、处理和发送。


 IEEE 802.1q —— 虚拟局域网协议

    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设备相连的端口我们必须确保它们用于传输无标签帧,这一点非常重要。很多PC和打印机的NIC并不支持IEEE 802.1q,一旦它们收到一个标签帧,它们会因为读不懂标签而丢弃该帧。在IEEE 802.1q中,用于标签帧的最大合法以太帧大小已由1518字节增加到1522字节,这样就会使网卡和旧式交换机由于帧“尺寸过大”而丢弃标签帧

VLAN简介
  “Virtual LANs”(虚拟局域网)目前发展很快,世界上主要的大网络厂商在他们的交换机设备中都实现了VLAN协议。在一个支持VLAN技术的交换机中,可以将它的以太网口划分为几个组,比如生产组,工程组,市场组等。这样,组内的各个用户就像在同一个局域网内(可能各组的用户位于很多的交换机上,而非一个交换机)一样,同时,不是本组的用户就无法访问本组的成员,在一定程度上提高了各组的网络安全性。

  实际上,VLAN成员的定义可以分为4种:

  (1)根据端口划分VLAN

  这种划分VLAN的方法是根据以太网交换机的端口来划分的,比如将某交换机的的1~4端口为VLAN A,5~17为VLAN B,18~24为VLAN C……
  以上这些属于同一VLAN组的端口可以不连续,如何配置,由管理员决定。另外,如果有多个交换机的话,例如,可以指定交换机1的1~6端口和交换机2的1~4端口为同一VLAN,即同一VLAN可以跨越数个以太网交换机。
  根据端口划分是目前定义VLAN的最常用的方法,IEEE 802.1q协议规定的就是如何根据交换机的端口来划分VLAN。这种划分的方法的优点是定义VLAN成员时非常简单,只要将所有的端口都定义一下就可以了。它的缺点是如果VLAN A的用户离开了原来的端口,到了一个新的交换机的某个端口,那么就必须重新定义。

  (2)根据MAC地址划分VLAN

  这种划分VLAN的方法是根据每个主机的MAC地址来划分的,即对每个MAC地址的主机都配置它属于哪个组。这种划分VLAN的方法的最大优点就是当用户物理位置移动时,即从一个交换机换到其他的交换机时,VLAN不用重新配置。所以可以认为这种根据MAC地址的划分方法是基于用户的VLAN。这种方法的缺点是初始化时,所有的用户都必须进行配置,如果有几百个甚至上千个用户的话,配置是非常累的。而且这种划分的方法也导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,这样就无法限制广播包了。另外,对于使用笔记本电脑的用户来说,他们的网卡可能经常更换,这样,VLAN就必须不停地配置。

  (3)根据网络层划分VLAN

  这种划分VLAN的方法是根据每个主机的网络层地址或协议类型(如果支持多协议)划分的。虽然这种划分方法可能是根据网络地址,比如IP地址,子网掩码,但它不是路由,不要与网络层的路由混淆。它虽然查看每个数据包的IP 地址,但由于不是路由,所以没有RIP(Routing information Protocol,路由信息协议),OSPF(Open Shortest Path First,开放最短路径优先)等路由协议,而是根据生成树算法进行桥交换。
  这种方法的优点是用户的物理位置改变了,不需要重新配置他所属的VLAN,而且可以根据协议类型来划分VLAN,这对网络管理者来说很重要,还有,这种方法不需要附加的帧标签来识别 VLAN,这样可以减少网络的通信量。其缺点是效率低,因为检查每一个数据包的网络层地址是很费时的(相对于前面两种方法),一般的交换机芯片都可以自动检查网络上数据包的以太网帧头,但要让芯片能检查IP帧头,需要更高的技术,同时也更费时。当然,这也跟各个厂商的实现方法有关。

  (4)根据IP组播划分

  IP 组播实际上也是一种VLAN的定义,即认为一个组播组就是一个VLAN组。这种划分的方法将VLAN扩大到了广域网,因此这种方法具有更大的灵活性,而且也很容易通过路由器进行扩展。当然这种方法不适合局域网,主要是效率不高,对于局域网的组播,有二层组播协议GMRP。
  通过上面可以看出,各种不同的VLAN定义方法有各自的优缺点,所以很多厂商的交换机都实现了不只一种方法,这样网络管理者可以根据自己的实际需要进行选择。另外,许多厂商在实现VLAN的时候,考虑到VLAN配置的复杂性,还提供了一定程度的自动配置和方便的网络管理工具。
  以前各个厂商都声称他们的交换机实现了VLAN,但各个厂商实现的方法都不相同,所以彼此是无法互连,这样,用户一旦买了某个厂商的交换机,就没法买其他厂商的了。而现在,VLAN的标准是IEEE提出的802.1q协议,只有支持相同的开放标准才能保证网络的互连互通,以及保护网络设备投资。


802.1w —— 快速生成树协议

    快速生成树协议(rapid spaning tree protocol):802.1w由802.1d发展而成,这种协议在网络结构发生变化时,能更快的收敛网络。它比802.1d多了两种端口类型:预备端口类型(alternate port)和备份端口类型。

   STP(Spanning Tree Protocol)是生成树协议的英文缩写。该协议可应用于环路网络,通过一定的算法实现路径冗余,同时将环路网络修剪成无环路的树型网络,从而避免报文在环路网络中的增生和无限循环。

  STP的基本原理是,通过在交换机之间传递一种特殊的协议报文(在IEEE 802.1D中这种协议报文被称为“配置消息”)来确定网络的拓扑结构。配置消息中包含了足够的信息来保证交换机完成生成树计算。

  生成树协议STP/RSTP

  1. 技术原理:

  STP的基本思想就是生成“一棵树”,树的根是一个称为根桥的交换机,根据设置不同,不同的交换机会被选为根桥,但任意时刻只能有一个根桥。由根桥开始,逐级形成一棵树,根桥定时发送配置报文,非根桥接收配置报文并转发,如果某台交换机能够从两个以上的端口接收到配置报文,则说明从该交换机到根有不止一条路径,便构成了循环回路,此时交换机根据端口的配置选出一个端口并把其他的端口阻塞,消除循环。当某个端口长时间不能接收到配置报文的时候,交换机认为端口的配置超时,网络拓扑可能已经改变,此时重新计算网络拓扑,重新生成一棵树。

  2. 功能介绍:

  生成树协议最主要的应用是为了避免局域网中的网络环回,解决成环以太网网络的“广播风暴”问题,从某种意义上说是一种网络保护技术,可以消除由于失误或者意外带来的循环连接。STP也提供了为网络提供备份连接的可能,可与SDH保护配合构成以太环网的双重保护。新型以太单板支持符合ITU-T 802.1d标准的生成树协议STP及802.1w规定的快速生成树协议RSTP,收敛速度可达到1s。

  3.交换机的端口状态

  交换机的端口在STP环境中共有5种状态:阻塞、倾听、学习、转发、关闭(disable)。
  交换机上一个原来被阻塞掉的端口由于在最大老化时间内没有收到BPDU,从阻塞状态转变为倾听状态,倾听状态经过一个转发延迟(15秒)到达学习状态,经过一个转发延迟时间的MAC地址学习过程后进入转发状态。
  如果到达倾听状态后发现本端口在新的生成数中不应该由此端口转发数据则直接回到阻塞状态。
  当拓扑发生变化,新的配置消息要经过一定的时延才能传播到整个网络,这个时延称为转发延迟(Forward Delay),协议默认值是15秒。
  在所有网桥收到这个变化的消息之前,若旧拓扑结构中处于转发的端口还没有发现自己应该在新的拓扑中停止转发,则可能存在临时环路。为了解决临时环路的问题,生成树使用了一种定时器策略,即在端口从阻塞状态到转发状态中间加上一个只学习MAC地址但不参与转发的中间状态,两次状态切换的时间长度都是Forward Delay,这样就可以保证在拓扑变化的时候不会产生临时环路。

RSTP的改进特性

  A、STP没有明确区分端口状态与端口角色,收敛时主要依赖于端口状态的切换。RSTP比较明确的区分了端口状态与端口角色,且其收敛时更多的是依赖于端口角色的切换。

  B、STP端口状态的切换必须被动的等待时间的超时。而RSTP端口状态的切换却是一种主动的协商。

  C、STP中的非根网桥只能动的中继BPDU。而RSTP中的非根网桥对BPDU的中继具有一定的主动性。

RSTP的P/A协商:快速收敛机制

  P/A机制即Proposal/Agreement机制。其目的是使一个指定端口尽快进入Forwarding状态。其过程的完成根据以下几个端口变量:

  A)Proposing。当一个指定端口处于Discarding或Learning状态的时候,该变量置位。并向下游交换传递Proposal位被置位的BPDU。

  B)Proposed。当端口收到对端的指定端口发来的携带Proposal的BPDU的时候。该变量置位。该指示本网段上的指定端口希望忙进入Forwarding状态。 

  C)sync。当Proposed被设置以后,收到Proposal置位信息的根端口会依次为自己的其他端口置位sync变量。如果端口是非边缘的指定端口是则会进入Discarding状态。

  D)synced。当端口完成转到Discarding后,,会设置自己的synced变量。Alternate、Backup和边缘端口会马上设置该变量。根端口监视其他端口的synced,当所有其他端口的synced全被设置,,根端口会设置自己的synced,然后传回BPDU,其中Agreement闰被置位。

  E)agreed。当指定端口接收到一个BPDU时,如果该BPDU中的Agreement位被置位且端口角色定段是“根端口”,该变量被设置。Agreed变量一旦被置位,指定端口马上转入Forwarding状态。


802.1x —— 基于Client/Server的访问控制和认证协议   

IEEE 802.1 相关协议 - 守望天空 - 凝望天际 体会孤独

    802.1x协议是基于Client/Server的访问控制和认证协议。它可以限制未经授权的用户/设备通过接入端口(access port)访问LAN/WLAN。在获得交换机或LAN提供的各种业务之前,802.1x对连接到交换机端口上的用户/设备进行认证。在认证通过之前,802.1x只允许EAPoL(基于局域网的扩展认证协议)数据通过设备连接的交换机端口;认证通过以后,正常的数据可以顺利地通过以太网端口。

  网络访问技术的核心部分是PAE(端口访问实体)。在访问控制流程中,端口访问实体包含3部分:认证者--对接入的用户/设备进行认证的端口;请求者--被认证的用户/设备;认证服务器--根据认证者的信息,对请求访问网络资源的用户/设备进行实际认证功能的设备。

  以太网的每个物理端口被分为受控和不受控的两个逻辑端口,物理端口收到的每个帧都被送到受控和不受控端口。其中,不受控端口始终处于双向联通状态,主要用于传输认证信息。而受控端口的联通或断开是由该端口的授权状态决定的。认证者的PAE根据认证服务器认证过程的结果,控制"受控端口"的授权/未授权状态。处在未授权状态的控制端口将拒绝用户/设备的访问。受控端口与不受控端口的划分,分离了认证数据和业务数据,提高了系统的接入管理和接入服务提供的工作效率。

工作过程

    (1.当用户有上网需求时打开802.1X客户端程序,输入已经申请、登记过的用户名和口令,发起连接请求。此时,客户端程序将发出请求认证的报文给交换机,开始启动一次认证过程。 
  (2.交换机收到请求认证的数据帧后,将发出一个请求帧要求用户的客户端程序将输入的用户名送上来。 
  (3.客户端程序响应交换机发出的请求,将用户名信息通过数据帧送给交换机。交换机将客户端送上来的数据帧经过封包处理后送给认证服务器进行处理。 
  (4.认证服务器收到交换机转发上来的用户名信息后,将该信息与数据库中的用户名表相比对,找到该用户名对应的口令信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字传送给交换机,由交换机传给客户端程序。 
  (5.客户端程序收到由交换机传来的加密字后,用该加密字对口令部分进行加密处理(此种加密算法通常是不可逆的),并通过交换机传给认证服务器。 
  (6.认证服务器将送上来的加密后的口令信息和其自己经过加密运算后的口令信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息,并向交换机发出打开端口的指令,允许用户的业务流通过端口访问网络。否则,反馈认证失败的消息,并保持交换机端口的关闭状态,只允许认证信息数据通过而不允许业务数据通过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值