初识CAPWAP
2.1 CAPWAP简介
CAPWAP——Control And Provisioning of Wireless Access Points Protocol Specification。其由两个部分组成:CAPWAP协议和无线BINDING协议。
前者是一个通用的隧道协议,完成AP发现AC等基本协议功能,和具体的无线接入技术无关。后者是提供具体和某个无线接入技术相关的配置管理功能。这么说吧,前者规定了各个阶段需要干什么事,后者就是具体到在各种接入方式下应该怎么完成这些事。
CAPWAP协议在2009年4月的RFC5415中发布,无线BINGDING协议目前只出台了接入方式为802.11的RFC,也是2009年4月发布的,RFC编号为5416。
PS:漂移一下,顺带提一下802.11、802.15、802.16、802.20等无线接入方式的区别。
**********************************************************************************************************************
目前,IEEE802旗下的无线网络协议一共有802.11、802.15、802.16和802.20等四大种类,这四大类协议中又包含各种不同性能的子协议,显得很混乱的样子……
IEEE802.11体系定义的是无线局域网标准(WLAN,Wireless Local Area Network),针对家庭和企业中的局域网而设计,应用范围一般局限在一个建筑物或一个小建筑物群(如学校、小区等)。
IEEE802.15定义的其实是无线个人网络(WPAN,Wireless Personal Area Network),主要用于个人电子设备与PC的自动互联,这类设备包括手机、MP3播放器、便携媒体播放器、数码相机、掌上电脑等等。
IEEE802.16是一种广带无线接入技术(Broadband Wireless Access,BWA),主要用于远距离、高速度的通讯环境,定义的是城域网络(MAN,Metropolitan Area Network),性能可媲美Cable电缆、DSL、T1专线等传统的有线技术。IEEE802.16包含802.16和802.16a两项子协议,前者的作用距离为2公里,传输速率在30Mbps至130Mbps之间,而802.16a的传输距离可达到50公里,速率也能达到75Mbps—看得出,在上述各种无线通讯技术中,还没有哪项技术可以在有效范围和性能标准上都盖过IEEE802.16a。
IEEE802.20与802.16在特性上有些类似,都具有传输距离远、速度快的特点。不过802.20是一项移动广带接入技术(Mobile Broadband Wireless Access,MBWR),他更侧重于设备的可移动性,例如在高速行驶的火车、汽车上都能实现数据通讯(802.16无法做到这一点)。
**********************************************************************************************************************
CAPWAP协议的主要功能:
AP自动发现AC,AC对AP进行安全认证,AP从AC获取软件映像,AP从AC获得初始和动态配置等。此外,系统可以支持本地数据转发和集中数据转发。
瘦AP架构让AC具有了对整个WLAN网络的完整视图,为无线漫游、无线资源管理等业务功能的实现提供了基础。
2.2 一些名词
¢ 无线控制器(AC):网络实体,在网络架构的数据层,控制层,管理层或者联合起来提供WTP到网络的访问服务。
¢ CAPWAP控制信道:一个双向信道,由AC的IP地址,WTP的IP地址,AC控制端口,WTP控制端口,传输层协议(UDP或者UDP-Lite)定义,在这之上可以收发CAPWAP的控制报文。
¢ CAPWAP数据信道:一个双向信道,由AC的IP地址,WTP的IP地址,AC数据端口,WTP数据端口,传输层协议(UDP或者UDP-Lite)定义,在这之上可以收发CAPWAP的数据报文。
¢ STATION:一个包含无线接口的设备
¢ 无线终端WTP:物理或者网络实体,包含一个射频天线和无线物理层可以传输和接收 STA在无线存取网络的数据。
2.3 CAPWAP的模式
CAPWAP协议支持两种模式的操作:Split MAC和Local MAC。
Split MAC:在split MAC模式下,所有二层的无线数据和管理帧都会被CAPWAP协议封装,然后在AC和WTP之间交换。
如下图中所示,从一个Station收到的无线帧,会被直接封装,然后转发给AC。
Local MAC:本地转发模式允许数据帧可以用本地桥或者使用802.3的帧形式用隧道转发。在这种情况下,二层无线管理帧在WTP本地已经处理,然后转发给AC。
下图显示了本地转发模式,Station传送的无线帧被封装成802.3数据帧,然后转发给AC。
2.4 CAPWAP的负载类型
CAPWAP协议传输层运输两种类型的负载:
¢ 数据消息
封装转发无线帧
¢ 控制消息
管理WTP和AC之间交换的管理消息
CAPWAP数据和控制报文基于不同的UDP端口发送,且可以被分段,因此数据和控制报文可以超过MTU长度。
2.5 CAPWAP会话创建过程
CAPWAP协议从发现阶段开始。WTPs发送一个发现请求消息,任何接收到这个请求的AC将会回应一个发现响应报文。接收到发现响应报文,WTP选择一个AC来建立一个 基于DTLS的安全会话。为了建立DTLS安全连接,WTP将需要一个预先提供的数据,将在后面说明。CAPWAP协议报文将会被分段成网络支持的最大长度。
一旦WTP和AC完成了DTLS会话建立,两者之间会交换配置,来在版本信息上达成一致。在这个交换过程之间,WTP可能会接收到规定设置,然后会开启这些设置。
当WTP和AC之间完成版本和设置的交换,并且WTP已经开启,CAPWAP协议将被使用来封装AC和WTP之间发送的无线数据帧。如果用户数据或者协议控制数据长度超过 WTP和AC之间的MTU会导致CAPWAP协议将L2层帧分片。被分片的CAPWAP报文将会被重新组成原来的封装报文。