读书人

AC的设计跟实现

发布时间: 2012-09-25 09:55:59 作者: rapoo

AC的设计和实现

AC的设计和实现

摘要:

本文针对集中式WLAN组网进行分析,研究CAPWAP通信协议。通过对CAPWAP协议分析,介绍了CAPWAP在MIPS单板板上的实现,介绍了AC实现的硬件架构、软件架构、控制面的数据处理流程、转发面的数据处理流程。

AC概述

自1997年IEEE 802.1l标准提出以来,无线局域网(WLAN)从IEEE 802.11a/b/g/n标准的相继提出极大地推动了WLAN发展。随着需求的发展,WLAN已经逐渐大规模发展,传统的WLAN体系(胖AP模式)已经不能够满足大规模组网需求。2005年IETF成立CAPWAP工作组,基于Csico的LAWPP协议,研究大规模WLAN的解决方案以及标准化AP和AC的隧道协议。

无线网络控制器可以实施统一管理和控制,可同时管理多个AP,并为无线接入提供安全策略、QoS 策略、射频管理、无线终端移动管理功能。无线AP支持802.11g(54Mbps/27m)和802.11b(11Mbps/49m),可提供机载天线或扩展天线,扩大覆盖范围。无线网络控制系统软件(WCS)实施整个系统的可视化管理和控制。

CAPWAP工作组对目前主流的WLAN解决方案进行研究后,把WLAN体系结构分成3种:自治式,集中式,分布式。

自主式管理架构是WLAN的传统方式,在这种架构下一个无线终端、Ⅳ1P即完成了AP全部的逻辑功能,可以说,这种架构下WrP与传统的AP的概念是一致的。一方面,802.1l的所有服务都在w印中实现;另一方面,每一个WTP独立完成工作参数的配置。

集中式wLAN是本文的讨论重点,这种架构中出现了访问控制点AC(AccessPoint)。AC能够对多个、n.P进行管理,控制和配置,这正是集中式wLAN的名的原因。集中式WLAN的特点是访问控制点AC与无线终端WTP协调分担802.11的各种服务,并且由AC对多个WTP进行集中配置。

这种架构的局域网能够更好的解决管理,协调配置,射频控制,安全等各方面的问题,使得规模较大的、礼AN更易于管理。

集中式WLAN又可以根据AC和WTP对802.1l功能的分担情况分为三种:分隔型、本地型、远端型。

分布式WLAN又被称为无线网状网或METH。在这种架构中,无线节点自动相互协调组成分布式网络。此外,无线节点可以同时作为AP和路由器,网络中的每个节点都可以发送和接收信号,每个节点都可以与一个或者多个对等节点进行直接通信。在分布式局域网中,数据可以自动重新选择路由。经由通信流量较小的邻近节点进行传输。

Capwap协议介绍

CAPWAP协议定义了AP与AC之间如何通信,为实现AP和AC之间的互通性提供一个通用封装和传输机制。

CAPWAP协议是基于UDP传输层的应用层协议,协议传递的信息分为两类:控制信息和数据信息。控制信息负责AC与WTP之间的管理的交互操作。数据信息是封装后转发的无线数据。两类信息分别使用不同的UDP端口号。CAPWAP信息在WTP与AC间交互时使用DTLS加密机制,保证通信的安全性。

CAPWAP协议支持两种模式的操作:Split MAC和LocalMAC。

Split MAC:在split MAC模式下,所有二层的无线数据和管理帧都会被CAPWAP协议封装,然后在AC和WTP之间交换。

如下图中所示,从一个Station收到的无线帧,会被直接封装,然后转发给AC。

AC的设计跟实现

Local MAC:本地转发模式允许数据帧可以用本地桥或者使用802.3的帧形式用隧道转发。在这种情况下,二层无线管理帧在WTP本地已经处理,然后转发给AC。

下图显示了本地转发模式,Station传送的无线帧被封装成802.3数据帧,然后转发给AC。

AC的设计跟实现

CAPWAP协议数据承载2类数据信息:数据消息和控制消息。。这两类消息对应WTP与AC通信所使用的两个消息通道:数据通道和控制通道。CAPWAP数据通道和控制通道基于不同的UDP端口建立,且可以被分段,因此数据和控制报文可以超过MTU长度。

在数据通道中,WTP与AC交互的信息是被CAPWAP封装转发的802.11无线数据以及保持该通道的信息。在控制通道中,传递的控制信息既包括Ac对WTP进行工作参数配置的控制信息,又包括对CAPWAP会话进行维护的控制信息。

AC的设计跟实现

报文格式

CAPWAP协议规定AC和WTP的通信分为控制报文和数据报文,控制报文只在AC和WTP之间传输,实现配置、管理、监控等功能,数据报文则是将被转发的用户数据帧。2种报文通过不同的UDP端口进行传输,控制报文中除“发现请求,应答”是明文传输以外,其他的强制使用DTLS保护,而数据报文可选择是否使用DTLS。

报文结构如下图:

CAPWAP头部报文格式:

AC的设计跟实现

(1)CAPWAP Preamble:8 位预判码。

(2)HLEN:5 位首部长度,指明CAPWAP 首部的长度。

(3)RID:5 位射频标识符,指明此报文的来源射频。

(4)WBID:5 位无线帧标识符, 指明无线帧类型, 有 IEEE802.11, IEEE802.16 和 EPCGlobal 3 种。

(5)T:1 位数据帧标识符,值为 1 时数据帧是由 WBID指明的类型,值为 0 时是 IEEE802.3 数据帧。

(6)F:1 位分组标志,值为 1 时此报文是一个 CAPWAP报文分组,需要和其他分组重组成完成的报文。

(7)L:1 位分组结束标志,值为 1 时此报文是最后一个分组。

(8)W:1 位选项标志,值为 1 时存在 Wireless Specific Information 选项。

(9)M:1 位选项标志,值为 1 时存在 Radio MAC Address选项。

(10)K:1 位存活标志,指明此报文用于保持连接存活,不能携带用户数据。

(11)Flags:3 位预留标志。

(12)Fragment ID:16 位分组标识符,识别不同的报文分组,ID 相同的分组属于同一个CAPWAP 报文。

(13)Fragment Offset:13 位分组位移,各分组在该CAPWAP 报文中的位置。

(14)Reserved:3 位预留码。

(15)Radio MAC Address:32 位射频 MAC 地址,不足32 位以全 0 填充。指明报文来源射频的 MAC 地址;

(16)Wireless Specific Information:32 位特殊无线信息,不足 32 位以全 0 填充; (17)Payload:数据报文是用户数据,控制报文则是控制消息;

组网方式

AC的连接网络可以划分为2种不同的组网方式:

AC为网关和AC为L2设备

AC的设计跟实现

读书人网 >软件架构设计

热点推荐