2 初识CAPWAP

2.1 CAPWAP简介

说了半天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报文将会被重新组成原来的封装报文

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. 读think in java有感

    .... 2.2.1 保存到什么地方 程序运行时,我们最好对数据保存到什么地方做到心中有数.特别要注意的是内存的分配.有六个地方都可以保存数据: (1) 寄存器.这是最快的保存区域,因为它位于和其他所 ...

  2. USB2.0 速度识别--区分低速-高速-全速

    USB2.0是向下兼容USB1.X的,即USB2.0支持高速,全速,低速的USB设备 (HIGH-SPEED,FULL-SPEED,LOW-SPEED),而USB1.X不支持高速设备. 因此如果高速设 ...

  3. 飘逸的python - 中文编码长度有趣的现象

    最近在做验证用户姓名的功能时发现这样一个现象.   >>len(u'打怪者') #unicode 3 >>len(u'打怪者'.encode('gbk')) #gbk 6 &g ...

  4. 基于设备树的TQ2440 DMA学习(4)—— client驱动

    作者 彭东林pengdonglin137@163.com 平台 TQ2440Linux-4.9 概述 前面分析了DMA控制器驱动,下面我们调用DMAENGINE的API写一个MEM2MEM的驱动 正文 ...

  5. 加快Qemu Aarch32虚拟开发板的启动速度

    软件版本 Qemu: 2.8.0 虚拟开发板: vexpress-ca9 概述 之前的博文介绍了将Python移植到开发板上, 根文件系统采用的是ramdisk, 这个文件系统的缺点是修改的内容重启会 ...

  6. SUSE Linux – Zypper 命令示例

    來源:http://www.linuxidc.com/Linux/2014-11/109214.htm Zypper是SUSE Linux中用于安装,升级,卸载,管理仓库.进行各种包查询的命令行接口. ...

  7. C#编程(七十)----------dynamic类型

    原文链接 : http://blog.csdn.net/shanyongxu/article/details/47296033 dynamic类型 C#新增了dynamic关键字,正是因为这一个小小的 ...

  8. 多个Jar的合并操作

    同事要写Android平台下的打包工具,遇到需要将多个jar合并成一个jar的问题.这里列一下操作步骤: 1.将所有jar文件复制至某临时目录中,通过jar命令解压得到所有的.class文件 > ...

  9. unity 打包资源及网络请求资源包

    第一步 导包 在Assets新建一个Editor目录 新建一个Test类 using UnityEngine; using System.Collections; using UnityEditor; ...

  10. ubuntu php 安装

    ---apache2sudo apt-get install apache2 ---phpsudo apt-get install libapache2-mod-php5 php5 php5-gd p ...