capwap学习笔记——初识capwap(五)(转)
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(五)(转)的更多相关文章
- capwap学习笔记——初识capwap(一)(转)
初识CAPWAP 2.1 CAPWAP简介 CAPWAP——Control And Provisioning of Wireless Access Points Protocol Specificat ...
- capwap学习笔记——初识capwap(一)
2 初识CAPWAP 2.1 CAPWAP简介 说了半天CAPWAP,连全称都还没说,汗-- CAPWAP--Control And Provisioning of Wireless Access P ...
- capwap学习笔记——初识capwap(四)(转)
2.5.7 CAPWAP传输机制 WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯. CAPWAP协议支持UDP和UDP-Lite [RFC3828]. ¢ 在IPv4上,CAPWAP控制 ...
- capwap学习笔记——初识capwap(四)
2.5.7 CAPWAP传输机制 WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯. CAPWAP协议支持UDP和UDP-Lite [RFC3828]. ¢ 在IPv4上,CAPWAP控制 ...
- capwap学习笔记——初识capwap(五)
3. CAPWAP Binding for IEEE 802.11 ¢ CAPWAP协议本身并不包括任何指定的无线技术.它依靠绑定协议来扩展对特定无线技术的支持. ¢ RFC5416就是用来扩展CAP ...
- capwap学习笔记——初识capwap(三)(下)
2.5.6.25 Image Data to Reset WTP下载image后重启,重新设置DTLS连接 ¢ WTP: ü 当image的下载完成,或者ImageDataStartTimer定 ...
- capwap学习笔记——初识capwap(三)(转)
2.5.6 CAPWAP状态机详解 2.5.6.1 Start to Idle 这个状态变迁发生在设备初始化完成. ¢ WTP: 开启CAPWAP状态机. ¢ AC: 开启CAPWAP状态机. ...
- capwap学习笔记——初识capwap(二)(转)
2.5.1 AC发现机制 WTP使用AC发现机制来得知哪些AC是可用的,决定最佳的AC来建立CAPWAP连接. WTP的发现过程是可选的.如果在WTP上静态配置了AC,那么WTP并不需要完成AC的发现 ...
- capwap学习笔记——初识capwap(三)
2.5.6 CAPWAP状态机详解 2.5.6.1 Start to Idle 这个状态变迁发生在设备初始化完成. ¢ WTP: 开启CAPWAP状态机. ¢ AC: 开启CAPWAP状 ...
随机推荐
- 【面试笔试算法】Problem 9: 腾讯2016年研发实习笔试题:最长回文子串
(一)题目 问题:求给定字符串s的回文(palindrome)子串中,长度最大的回文子串的长度. 回文(palindrome)是指从左往右读和从右往左读字符串,看到的字符串都是一样的.比如" ...
- C++多重继承与虚拟继承
本文只是粗浅讨论一下C++中的多重继承和虚拟继承. 多重继承中的构造函数和析构函数调用次序 我们先来看一下简单的例子: #include <iostream> using namespac ...
- 【UML 建模】UML建模语言入门-视图,事物,关系,通用机制
. 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. UML视图 1. Ration ...
- Xcode两种调试小技巧
1."全局"断点 正常情况下如果代码有错误,会直接触发SIGXXXX信号,然后中断在main函数里. 但是我们还是不知道到底是什么引发了异常信号.我们可以在断点导航器中添加一个全局 ...
- Spring 官网下载zip jar
第一步:打开官网:http://www.springsource.org/download/community: 第二步:点击图片 第三步:点击图标 第四步:找到如下链接,点击进去 第五步:再找到如下 ...
- Android Xlistview的源码浅度分析 监听ListView上下滑动 以及是否到顶和底部
如转载 请注明出处 http://blog.csdn.net/sk719887916 比如我们很多项目中会用到listview 并且要对listview滑动方向进行判断 也有需要的到listview是 ...
- Hadoop基本知识,(以及MR编程原理)
hadoop核心是:MapReduce和HDFS (对应着job执行(程序)和文件存储系统(数据的输入和输出)) CRC32作数据交验:在文件Block写入的时候除了写入数据还会写入交验信息,在读取 ...
- vicoapp使用备忘
vico是一个模式编辑器,意味着没用过vi之类编辑器的童鞋用起来肯定觉得很不习惯. 模式切换 i:切至编辑模式,在光标前插入 a:切至编辑模式,在在光标后插入 I:类似于i,不过在行首插入 esc键: ...
- climbing stairs(爬楼梯)(动态规划)
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- VMS项目总结
开发完一个项目后,如果能够很好的对这个项目做个总结,对我们以后的项目开发以及个人技术的积累都会有很大的帮助.最近在外派公司做完一个系统,在此进行一下深入的总结,也希望给读者带来一些个启示. 一.系统介 ...