3. CAPWAP Binding for IEEE 802.11

¢ CAPWAP协议本身并不包括任何指定的无线技术。它依靠绑定协议来扩展对特定无线技术的支持。

¢ RFC5416就是用来扩展CAPWAP对IEEE 802.11网络的支持。其中定义了控制消息字段,新的控制消息,消息元素。

¢ 注意,这个协议仅支持IEEE 802.11-2007规范,并不支持IEEE 802.11-2007 standard中定义的ad hoc网络模式(即点到点模式,也就是IBSS),也不适用于four-address格式的数据帧(这种数据帧一般用于网桥,在IEEE 802.11-2007标准中没有指定这种用法)。协议并不支持IEEE 802.11n。

一些术语:

Basic Service Set (BSS):基础服务集合(中控型基本服务集)。指由被控制的STA及其控制结构组成的无线网络。

Independent Basic Service Set(IBSS):独立基础服务集,也称为特别网络,它是由一系列彼此相互连接的,没有基础架构的站点组成的一个 802.11 网络,是专为点对点连接。IBSS模式没有无线基础设施骨干,但至少需要2台STA。

3.1 绑定标识符

根据RFC5415中4.3章节对CAPWAP头部的描述,其中的WBID字段标识了所绑定的无线技术。针对802.11,该字段取值为1。

3.2 功能划分

由于CAPWAP是与协议无关的,因此当绑定802.11时,就需要将802.11所要求实现的功能进行划分,即将802.11所提供的功能按照提供者(AC还是WTP)来划分,以明晰各自需要实现的功能。简而言之,就是AC和WTP需要各自实现哪些802.11中的功能。

3.2.1 Split MAC

¢ Split MAC

在IEEE802.11中,AC与WTP在split MAC中的分工如下:

由此可知,在split MAC中,分布和集成服务都在AC来完成,因此所有的用户数据都在WTP和AC之间以隧道传送。但是,所有实时的IEEE802.11服务,包括Beacon和Probe响应帧,都在WTP被处理。

关联请求等和802.1x的EAP协议和RNSA密钥管理功能也都在AC上完成。这表明了Authentication, Authorization, 和Accounting (AAA)也都在AC上完成。

IEEE802.11的控制模块都在AC上完成,实时调度和队列功能都在WTP上完成。注意,这个并不代表AC不能提供额外的策略和调度功能

使用802.1X终端用户认证和Advanced Encryption Standard-Counter模式与CBC-MAC 协议 (AES-CCMP)加密。

'( - )'代表帧是在WTP上处理。

处理过程如下:

WTP生成一个IEEE 802.11 Beacon帧,其中包括Robust Security Network Information Element (RSNIE),即支持802.1X和AES-CCMP。

WTP处理Probe请求,回应对应的Probe响应。WTP可以选择是否转发这个请求给AC。

WTP转发IEEEE 802.11认证和关联帧给AC。

一旦关联成功,AC发送一个Station Configuration Request给WTP。

如果WTP提供加密解密服务,一旦客户端完成IEEE802.11密钥交换,AC发送另一个 Station Configuration Request。

WTP转发所有接收到的IEEE 802.11管理帧给WTP。

所有的IEEE 802.11 station数据帧在WTP和AC之间以隧道传送。

注意:当802.11的加解密是在WTP完成时,WTP必须将发送给AC的数据帧进行解析,并且保证帧格式和未受保护的802.11帧格式一致。对于AC发送给WTP的数据帧,AC必须将帧中的保护字段置为0,以保证WTP能够对帧进行正确处理。当802.11的加解密是在AC完成时,WTP不应该对发送给AC的数据帧进行解析。

3.2.2 Local MAC

¢ Local MAC

在IEEE802.11中,AC与WTP在local MAC中的分工如下:

在local MAC模式,集成服务在WTP上完成,分布服务可以在WTP或者AC上完成。如果位于AC,station生成的报文并不被用原来的格式转发给AC,而是被封装成802.3的帧形式。

IEEE 802.1X [IEEE.802-1X.2004], EAP, and IEEE RSNA Key Management [IEEE.802-11.2007]功能都处于AC。因此,WTP必须转发所有的IEEE 802.1X, EAP, and RSNA Key Management报文给AC,并且转发AC的响应给station。

使用AES-CCMP用于加密:

WTP产生IEEE 802.11 Beacon报文

WTP处理Probe Request,并回答一个Probe Response

WTP转发IEEE 802.11 Authentication和Association给AC。

一旦关联成功,AC发送一个Station Configuration Request给WTP。

WTP转发所有的EEE 802.1X and IEEE 802.11 key exchange报文给AC。

WTP转发所有的IEEE 802.11 Management Action报文给AC。

WTP也可以使用802.3报文格式或者802.11报文格式把客户端数据报文用隧道发送给AC。

3.3 STA漫游

Once a client has successfully associated with the network in a

secure fashion, it is likely to attempt to roam to another WTP.

Figure 6 shows an example of a currently associated station moving

from its "Old WTP" to a "New WTP". The figure is valid for multiple

different security policies, including IEEE 802.1X and Wireless

Protected Access (WPA) or Wireless Protected Access 2 (WPA2) [WPA].

如果一个已经成功连接到WTP的STA想要移动到新的WTP,称这种行为为“漫游”。

3.4 Group Key Refresh

由于BSS的Group Key (GTK)需要间隔刷新。在Split MAC的情况下,AC需要复制所有的广播报文,更新key的索引,让报文以当前和新的GTK的方式重复发送,来保证BSS上所有的station都能收到广播包。在Local MAC的时候,这个过程由WTP来完成。

Basic Service Set(BSS): A set of stations controlled by a single coordination function.

AC用IEEE 802.11 Configuration Request作为信号,表明需要更新GTK。然后,AC开始对每个station更新GTK。在这个过程中,AC(split MAC)或者WTP(Local MAC)必须复制广播报文,用新的和当前的GTK加密。当AC完成GTK更新,AC传输一个IEEE 802.11 Configuration Request带有新的GTK。

3.5 CAPWAP Data Channel QoS Behavior

CAPWAP IEEE 802.11 binding规范提供了WTP对IEEE802.11数据报文的QOS支持。

3.5.1 IEEE 802.11 Data Frames

当WTP上创建WLAN的时候,会使用一个默认的QOS服务策略,使得WTP对每个关联的station使用默认的QOS值。

AC可以通过发送Update Station QoS message修改这个QOS策略。

除了默认的策略,IEEE 802.11协议也允许每个station要求自己有特别的QOS策略,具体是通过TSPEC信息元素来实现。

WTP使用Differentiated Services Code Point (DSCP)或者802.1p来实现QOS机制,但是这两种方式并不是不能共存的,AC可以要求WTP不使用,使用其中的任何一种,或者两种同时使用。

802.11 WTP Quality of Service message的Tagging Policy字段用来标示选择何种QOS策略,如下所示:

0 1 2 3 4 5 6 7

+-+-+-+-+-+-+-+-+

|Rsvd |P|Q|D|O|I|

+-+-+-+-+-+-+-+-+

P表示WTP使用的是802.1p机制来实现QOS,D表示WTP使用的是DSCP机制来实现QOS,其余三个字段的意思请参考RFC 5416的2.6.1.1章节和2.6.1.2章节。

DSCP

DSCP差分服务代码点(Differentiated Services Code Point),IETF于1998年12月发布了Diff-Serv(Differentiated Service)的QoS分类标准. 它在每个数据包IP头部的服务类别TOS标识字节中,利用已使用的6比特和未使用的2比特字节,通过编码值来区分优先级.

DSCP 是“IP 优先”和“服务类型”字段的组合。为了利用只支持“IP 优先”的旧路由器,会使用 DSCP 值,因为 DSCP 值与“IP 优先”字段兼容。

每一个DSCP编码值都被映射到一个已定义的PHB(Per-Hop-Behavior)标识码。

通过键入DSCP值,电话、Windows客户和服务器等终端设备也可对流量进行标识。

IEEE 802.1P

IEEE 802.1P:有关流量优先级的 LAN 第二层 QoS/CoS 协议

IEEE 802.1p:LAN Layer 2 QoS/CoS Protocol for Traffic Prioritization

IEEE 802.1P 规范使得第二层交换机能够提供流量优先级和动态组播过滤服务。优先级规范工作在媒体访问控制(MAC)帧层(OSI 参考模型第二层)。802.1P 标准也提供了组播流量过滤功能,以确保该流量不超出第二层交换网络范围。

802.1P 协议头包括一个3位优先级字段,该字段支持将数据包分组为各种流量种类。IEEE 极力推荐网络管理员实施这些流量种类,但它并不要求强制使用。流量种类也可以定义为第二层服务质量(QoS)或服务类(CoS),并且在网络适配器和交换机上实现,而不需要任何预留设置。802.1P 流量被简单分类并发送至目的地,而没有带宽预留机制。

802.1P 是 IEEE 802.1Q (VLAN 标签技术)标准的扩充协议,它们协同工作。IEEE 802.1Q 标准定义了为以太网 MAC 帧添加的标签。VLAN 标签有两部分:VLAN ID (12比特)和优先级(3比特)。 IEEE 802.1Q VLAN 标准中没有定义和使用优先级字段,而 802.1P 中则定义了该字段。

802.1P 中定义的优先级有8种。尽管网络管理员必须决定实际的映射情况,但 IEEE 仍作了大量建议。最高优先级为7,应用于关键性网络流量,如路由选择信息协议(RIP)和开放最短路径优先(OSPF)协议的路由表更新。优先级6和5主要用于延迟敏感(delay-sensitive)应用程序,如交互式视频和语音。优先级4到1主要用于受控负载(controlled-load)应用程序,如流式多媒体(streaming multimedia)和关键性业务流量(business-critical traffic) - 例如,SAP 数据 - 以及 "loss eligible" 流量。优先级0是缺省值,并在没有设置其它优先级值的情况下自动启用。

3.6 Run State Operation

Run状态是AC和WTP的正常状态。

当WTP收到一个WLAN Configuration Request message,它必须回应一个WLAN Configuration Response message,并且继续停留在run状态;

当AC发送一个WLAN Configuration Request message或者从WTP收到该消息的应答,它也必须继续停留在run状态。

PS:WLAN Configuration Request message和WLAN Configuration Response message的作用和格式,请参考3.7章节。

3.7 IEEE 802.11 Specific CAPWAP Control Messages

该章节定义了一些CAPWAP的控制消息,这些消息仅仅适用于802.11绑定时。

IEEE 802.11 WLAN Configuration Request

¢ 由AC发送给WTP,用于改变WTP上提供的服务。这个报文可以用于创建,升级或者删除WTP上的WLAN。

¢ 该消息可能由手动的管理配置导致(比如,删除一个WLAN),也可能是自动在WTP上创建一个WLAN。如果是后者,那么这个报文将会在AC收到CAPWAP Configuration Update Response(参考[RFC5415] 8.5章节)后发送。

¢ 收到这个控制报文之后,WTP将会作出要求的修改,然后发送一个IEEE 802.11 WLAN Configuration Response。

¢ WTP可能提供多个WLAN,因此,每个WLAN用一个数字索引来定义。例如,一个支持16个SSID的WTP,可以接受16个IEEE 802.11 WLAN Configuration Request来创建一个WLAN。

¢ 索引是WLAN的基本标识符,AC可能尝试来做到它管理的所有WTP上相同的WLAN用相同的索引号来定义。AC如果不支持这种方法的话,必须使用其他的方法来维持一个WLAN-Identifier-to-SSID映射表。

IEEE 802.11 WLAN Configuration Response

由WTP发送给AC,用于响应IEEE 802.11 WLAN Configuration Request,告诉请求的配置是否成功,或者发生了错误。

capwap学习笔记——初识capwap(五)的更多相关文章

  1. capwap学习笔记——初识capwap(一)(转)

    初识CAPWAP 2.1 CAPWAP简介 CAPWAP——Control And Provisioning of Wireless Access Points Protocol Specificat ...

  2. capwap学习笔记——初识capwap(一)

    2 初识CAPWAP 2.1 CAPWAP简介 说了半天CAPWAP,连全称都还没说,汗-- CAPWAP--Control And Provisioning of Wireless Access P ...

  3. capwap学习笔记——初识capwap(四)(转)

    2.5.7 CAPWAP传输机制 WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯. CAPWAP协议支持UDP和UDP-Lite [RFC3828]. ¢ 在IPv4上,CAPWAP控制 ...

  4. capwap学习笔记——初识capwap(四)

    2.5.7 CAPWAP传输机制 WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯. CAPWAP协议支持UDP和UDP-Lite [RFC3828]. ¢ 在IPv4上,CAPWAP控制 ...

  5. capwap学习笔记——初识capwap(五)(转)

    3. CAPWAP Binding for IEEE 802.11 ¢ CAPWAP协议本身并不包括任何指定的无线技术.它依靠绑定协议来扩展对特定无线技术的支持. ¢ RFC5416就是用来扩展CAP ...

  6. capwap学习笔记——初识capwap(三)(下)

    2.5.6.25 Image Data to Reset WTP下载image后重启,重新设置DTLS连接 ¢  WTP: ü   当image的下载完成,或者ImageDataStartTimer定 ...

  7. capwap学习笔记——初识capwap(三)(转)

    2.5.6 CAPWAP状态机详解 2.5.6.1 Start to Idle 这个状态变迁发生在设备初始化完成. ¢  WTP: 开启CAPWAP状态机. ¢  AC:  开启CAPWAP状态机. ...

  8. capwap学习笔记——初识capwap(二)(转)

    2.5.1 AC发现机制 WTP使用AC发现机制来得知哪些AC是可用的,决定最佳的AC来建立CAPWAP连接. WTP的发现过程是可选的.如果在WTP上静态配置了AC,那么WTP并不需要完成AC的发现 ...

  9. capwap学习笔记——初识capwap(三)

    2.5.6 CAPWAP状态机详解 2.5.6.1 Start to Idle 这个状态变迁发生在设备初始化完成. ¢  WTP: 开启CAPWAP状态机.     ¢  AC:  开启CAPWAP状 ...

随机推荐

  1. HQL的内连接查询

    /** * HQL的内连接查询 * String hql="from Customer c inner join fetch c.linkmans"; */ @Test publi ...

  2. j.u.c系列(10)---之并发工具类:Semaphore

    写在前面 Semaphore是一个计数信号量,它的本质是一个"共享锁". 信号量维护了一个信号量许可集.线程可以通过调用acquire()来获取信号量的许可:当信号量中有可用的许可 ...

  3. netty-socketio 示例代码

    socket.io是一个不错的websocket项目,github上有它的java实现:netty-socketio 及 示例项目 netty-socketio-demo,基本上看看demo示例项目就 ...

  4. 一种高效的序列化方式——MessagePack

    最近在弄一些数据分析方面的内容,发现很多时候数据瓶颈在模块之间的数据序列化和反序列化上了,原来项目中用的是Json,找了一圈发现Json.net在Json序列化库中已经是性能的佼佼者了,便准备从序列化 ...

  5. ISO 7816-4: GET RESPONSE and ENVELOPE command

    http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-4_7_transmission_interindustry_command ...

  6. CSS高速制作图片轮播的焦点

    来源:http://www.ido321.com/858.html 效果图: 演示地址:http://jsfiddle.net/Web_Code/q5qfd8aL/embedded/result/ 代 ...

  7. Snmp学习总结(五)——WindowsServer2008安装和配置SNMP

    一.安装SNMP 在Windows Server 2008以及Windows Server 2008 R2中,SNMP是以一个服务器功能的形式存在的,SNMP的安装步骤如下所示: 1.打开[开始]→[ ...

  8. Mysql5.6主从复制-基于binlog

    MySQL5.6开始主从复制有两种方式:基于日志(binlog):基于GTID(全局事务标示符). 此文章是基于日志方式的配置步骤 环境: master数据库IP:192.168.247.128sla ...

  9. This function or variable may be unsafe Consider using xxx instead

    问题: 在Visual C++ 6.0 以下执行正常的代码放到Visual Studio 20xx系列里就跑不动了,有时候会提演示样例如以下错误: error C4996: 'fopen': This ...

  10. android模拟器修改时间

        我们看右上角的模拟器的时间,是不是和我们现在时间不同步呢   点击主菜单之后,我们找到下边的设置的按钮   下边找到时间和日期, 怎么把页面修改中文, 可以看(安卓模拟器怎么修改语言)的经验 ...