关闭

[置顶] WLAN控制器 - CAPWAP协议简介

3271人阅读 评论(0) 收藏 举报
分类:

WLAN控制器 - CAPWAP协议简介

1.   背景介绍

传统的WLAN网络都是为家庭内少量移动用户的接入而组建的。因此,只需要一个无线路由器(AP)就可以搞定了,无线路由器承担了所有的网络配置和转发的作用,功能丰富,这种无线路由器成为胖AP,例如现在家用的无线路由器就是胖AP。胖 AP将WLAN的物理层、用户数据加密、用户认证、QoS、网络管理、漫游技术以及其他应用层的功能集于一身,功能全,结构复杂。

随着无线网络的发展,现在需要部署无线设备的地方越来越多,胖AP的弊端也随之显现出来:

  • WLAN建网时需要对成百上千的AP进行逐一配置:网管IP地址、SSID和加密认证方式等无线业务参数、信道和发射功率等射频参数、ACL和QOS等服务策略,很容易因误配置而造成配置不一致。
  • 为了管理AP,需要维护大量AP的IP地址和设备的映射关系,每新增加一批AP设备都需要进行地址关系维护。
  • 接入AP的边缘网络需要更改VLAN、ACL等配置以适应无线用户的接入,为了能够支持用户的无缝漫游,需要在边缘网络上配置所有无线用户可能使用的VLAN和ACL。
  • 察看网络运行状况和用户统计时需要逐一登录到AP设备才能完成察看。在线更改服务策略和安全策略设定时也需要逐一登录到AP设备才能完成设定。
  • 升级AP软件无法自动完成,维护人员需要手动逐一对设备进行软件升级,费时费力
  • AP设备的丢失意味着网络配置的丢失,在发现设备丢失前,网络存在入侵隐患,在发现设备丢失后又需要全网重配置。

 

在这种情况下,瘦AP+AC的组网方式应用而生。瘦AC和AC功能职责

  • 无线接入控制器(AC设备)负责:无线网络的接入控制,转发和统计、AP的配置监控、漫游管理、AP的网管代理、安全控制;
  • 瘦AP负责:802.11报文的加解密、802.11的PHY功能、接受无线控制器的管理、RF空口的统计等简单功能。

 

2.   基于瘦AP+AC的无线网络架构

基于瘦AP+AC的无线网络架构如下所示:

 

图 1 无线网络架构

实线方框为一个企业级大型WLAN的网络拓扑结构。

所有的无线接入终端,如:智能手机、笔记本等称为STA。STA根据自己的位置选择最佳的无线接入点(AP)进行接入,STA和AP通过802.11无线网络进行互联互通。

每个AP都通过有线网络同AC设备相连,由AC完成对AP和STA的配置,如IP分配,STA是否允许访问外网等。每个AP同AC设备通过CAPWAP报文进行交互联通,CAPWAP协议是在传统的IP报文上封装CAPWAP隧道头形成的,所以AP和AC交互的这个有线线路被称为CAPWAP隧道。AP只负责802.11无线报文和CAPWAP报文的转换和转发工作。从而可以看出,AP的功能单一、独立,所以称之为瘦AP。

每个AP对应一个BSS,BSSID一般配置为AP设备的IP地址。AP设备向外广播的无线网络名称叫做SSID,如上图中虚线所示。一个AP设备根据设备参数,可配置多个SSID。每个SSID就相当于一个局域网,对应AC设备上的一个VLAN,是一个完全隔离的局域网络。通过SSID可以将一个企业内网分割企业不同的部门,如财务部、销售部、外来用户等,完全进行隔离保护。可以将多个瘦AP配置为一个SSID,如SSID1;也可以将一个瘦AP单独配置为一个SSID,如SSID2。如SSID1中,有2个AP设备,就相当于有2个BSSID,那么在此SSID内广播的报文会被复制广播到两个AP设备上,即广播到SSID下所有的BSS上。

无线接入控制器(AccessController)位于整个网络架构的核心位置,同所有的内部服务器和AC设备相连。AC完成WLAN内部设备的配置和管理,如通过DHCP服务器完成AP和STA的IP分配,通过PORTAL服务器完成对STA的广告推送,通过认证服务器完成AP和STA接入认证等。同时WLAN的所有数据报文的转发工作,如内网有线网络的互通,同外部Internet的互通等通信,均由AC完成所有报文的转发。AC是所有AP复杂功能提取集中,是整个大型WLAN的大脑和制高点,对整个WLAN进行控制和策略配置。

 

3.   CAPWAP协议介绍

3.1    概述

CAPWAP是Control AndProvisioning ofWireless AccessPoints ProtocolSpecification的缩写,意为无线接入点的控制和配置协议。CAPWAP是一个通用的隧道协议,完成AP发现AC等基本协议功能,和具体的无线接入技术无关。CAPWAP协议定义了如何对接入点进行管理、业务配置,包含的主要内容有:

  • AP对AC的自动发现及AP&AC的状态机运行、维护
  • AC对AP进行管理、业务配置下发
  • STA数据封装CAPWAP隧道进行转发

CAPWAP是由IETF(互联网工程任务组)标准化组织于2009年3月定义。CAPWAP协议在2009年3月的RFC5415[1]中发布。CAPWAP协议是整个WLAN的南向接口协议,相当于OpenFlow协议的角色。

 

3.2    CAPWAP报文

CAPWAP报文是在传统TCP/IP报文基础上封装CAPWAP隧道头形成,使用UDP协议作为基础。CAPWAP报文细分为:

  • CAPWAP控制报文:完成如STA上下线配置、STA IP地址配置等工作,通过CAPWAP控制隧道转发。
  • CAPWAP数据报文:内部封装STA上网的数据报文。数据报文通过CAPWAP数据隧道进行转发。
  • CAPWAP保活报文:STA和AP可能随时掉线,通过定时发送keep alive报文,AC可以得知STA和AP的状况,从而更新内部的转发表项。保活报文应该算是控制报文的一种,比较特殊的是,CAPWAP保活报文通过CAPWAP数据隧道进行转发,这在后面的实现里会有特殊的处理流程。

 

CAPWAP报文构成如下图所示:


图 2 CAPWAP报文构成

CAPWAP报文组成如下:

  • CAPWAP DATA: 如果是CAPWAP数据报文,传统的TCP/IP报文作为CAPWAP DATA;如果是CAPWAP控制报文,WLAN的状态变化等控制信息作为CAPWAPDATA,即CONTORL H,这部分可以按照标准CAPWAP协议定义,也可以是厂商自定义。 在CAPWAP DATA基础上封装CAPWAP隧道头就形成了CAPWAP报文。
  • CAPWAP H:CAPWAP头,记录CAPWAP协议相关信息
  • UDP:CAPWAP通过UDP协议进行通信,根据UDP的端口号指明CAPWAP的隧道类型。端口5246是CAPWAP控制隧道,端口5247是CAPWAP数据隧道。
  • IP:CAPWAP目的设备的IP地址,通过IP指明目的AP设备或目的AC设备。
  • ETH:CAPWAP目的设备的MAC地址。

 

3.3    CAPWAP整体转发模型

基于CAPWAP报文整体转发模型如下所示


图 3 CAPWAP报文转发总体模型

 

转发模型主要流程如下:

 

  • CAPWAP数据隧道转发流程:STA通过802.11网络将数据报文发送给AP,AP将802.11报文转换为传统TCP/IP报文,封装CAPWAP隧道头后通过CAPWAP数据隧道(UDP 5247)转发至AC设备,AC设备去除CAPWAP隧道头,提取TCP/IP报文后发送给目标服务器。AC收到目标服务器响应报文,在响应报文基础上封装CAPWAP隧道头后通过CAPWAP数据隧道(UDP 5247)转发给AP,AP去掉CAPWAP隧道头,将响应报文转换为802.11格式后发送给STA。STA数据协议报文,CAPWAP保活报文均通过CAPWAP数据隧道转发。
  • CAPWAP控制隧道转发流程:AP收到STA状态变化信息,如上下线等。AP形成标准控制信息内容,在控制信息前部封装CAPWAP隧道头形成CAPWAP控制报文。AP通过CAPWAP控制隧道(UDP 5246)将控制报文转发至AC设备,AC接收到控制报文后对内部的转发表项进行相应的处理。如果AC需要返回相应报文,同样封装CAPWAP控制报文头,之后通过CAPWAP控制隧道(5246)转发至目标AP。AP去掉CAPWAP控制报文头,在内部进行响应处理。如果AP需要返回响应报文,形成802.11控制信息后发送给STA设备。 
  • AP自身数据报文转发流程:AP设备形成传统TCP/IP报文,并不进行CAPWAP隧道封装,通过传统以太网络转发至AC设备。 

3.4    CAPWAP流程举例

CAPWAP隧道的建立流程如下图所示


图 4 CAPWAP隧道建立流程

 

按照前面拓扑所示,DHCP服务器和AC设备有线相连,AP设备同AC设备有线相连。

协议的具体细节和状态变化不是本文关心的重点,本文主要关心转发过程。隧道建立过程中,主要转发流程如下:

  • AP形成DHCP报文后,不封装CAPWAP隧道头,直接将DHCP报文通过AP自身数据报文转发流程广播给直连的AC设备。注意此时AP设备不知道AC设备的IP地址,只是采用广播形式进行广播。AC设备将DHCP报文转发给DHCP服务器。
  • DHCP服务器进行DHCP响应,发送DHCP响应报文给AC设备,报文中带有AC设备的IP地址和分配给AP设备的IP地址。AC设备将DHCP响应报文直接转发给AP设备,不进行CAPWAP封装。AP设备收到DHCP响应报文,配置自身IP地址,然后记录AC设备的IP地址。此时AP已经发现了AC设备的IP地址。
  • AP设备开始根据AC设备的IP地址,形成CAPWAP控制报文,通过CAPWAP控制隧道(UDP 5246)发送给AC设备,完成AP的配置上线过程。AC收到控制报文后进行响应,更新响应的路由流表,然后形成CAPWAP控制报文进行响应,同样通过CAPWAP控制隧道(UDP 5246)发送给AP设备。此过程中,因为互相知道对方IP地址,均为单播形式。如上图所示,从discovery request到configurationupdate response均是AP配置上线过程的CAPWAP隧道报文,遵循CAPWAP控制隧道转发流程

 

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:102763次
    • 积分:1690
    • 等级:
    • 排名:千里之外
    • 原创:138篇
    • 转载:13篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论