WLAN基础

CAPWAP

CAPWAP的集中转发和本地转发

  • 集中转发:所有STA的数据报文和AP的控制报文都是通过CAPWAP隧道转发到AC,再由AC集中交换和处理。因此AC不但要对AP进行管理,还要作为AP流量的转发中枢
  • 本地转发:AC只对AP进行管理,业务数据都是由本地直接转发。即AP管理流封装在CAPWAP隧道中,转发给AC,由AC负责处理。AP的业务流不加CAPWAP封装,而直接由AP转发给上联交换设备,然后交换机进行直接转发。

CAPWAP的报文格式

  • CAPWAP是基于UDP端口的应用层协议,可承载两类数据信息:数据信息和控制信息

  • 这两类信息对应AP与AC通信所使用的两个消息通道:数据通道和控制通道

  • 两个信道基于不同的UDP端口发送:控制报文端口为UDP 5246,数据报文端口为UDP 5247

    image

在控制通道中,传递的控制信息既包括AC对AP进行工作参数配置的控制信息,也包括对CAPWAP会话进行维护的控制信息。控制信息报文中除“发送请求”及“发现响应”是明文传输以外,其他的强制使用DTLS(Datagram Transport Layer Security,数据包传输层安全协议保护),而数据消息报文可选择是否使用DTLS。

CAPWAP隧道建立过程

image

  1. AP通过DHCP获取IP地址

    image

  2. AP通过“Discovery发现机制”寻找AC

    image

    AP可以通过DHCP的Option信息获取AC的IP地址列表,或可以预先对AP配置AC IP列表

    AP可以通过单播或多播寻找AC:

    • 单播寻找AC:如果AP存在AC IP列表,则通过单播发送报文给AC;
    • 广播寻找AC:如果AP不存在AC IP列表或单播没有回应时,则通过广播发送报文寻找AC;

    AP会给AC IP列表的所有AC发送“Discover request”报文,当AC收到后会发送一个单播“discover response”给AP。因此,AP可能收到多个AC的“discover response”,AP将根据AC响应数据包中的AC优先级或者其它策略(如AP个数等)来确定与哪个AC建立CAPWAP连接

  3. AP和AC建立DTLS连接

    image

    DTLS是指 Datagram Transport Level Security,即数据报安全传输协议,它提供了UDP传输场景下的安全解决方案,能防止消息被窃听、篡改、身份冒充等问题。

    AP在收到AC的响应消息后,开始与AC建立CAPWAP隧道。由于从Join开始的控制报文都必须经过DTLS加密传输,所以在本阶段AP和AC将通过协商建立DTLS链路

  4. 在AC中注册AP的Join过程

    image

    AP和AC建立CAPWAP隧道连接后,AC与AC开始建立控制通道,在建立控制通道的过程中

    • AP通过发送Join request报文将AP的相关信息(如AP版本信息、胖瘦模式信息等)发给AC
    • AC收到消息后,将检验AP是否在黑白名单中,之后AC会检查AP当前版本,如果AP的版本与AC要求的版本不匹配,AP和AC会进入Image Data状态做固件升级,并更新AP的版本,如果AP的版本符合要求,则发送join response报文(主要内容为:用户配置的升级版本号、握手报文间隔/超时时间、控制报文优先级等信息)给AP,然后进入Configuration状态。
  5. Image Data固件升级

    image

    AP对比AC的版本信息,如果AP版本号较旧,则AP将在CAPWAP隧道上开始更新软件版本。AP在软件更新完成后会重新启动,重新进行AC发现,建立CAPWAP隧道等过程。

  6. AP配置请求

    image

    AP在AC中注册成功且固件信息检测通过后,AP将发送“Configuration Status Request”报文给AC,报文包括AC名字、AP当前配置状态等信息。

    AC收到AP的配置请求报文后,将对AP的现有配置和AC设定配置进行匹配检查,如果不匹配,AC会通过“Configuration Status Response”报文将最新的AP配置信息发送给AP,实现AC对AP的配置进行覆盖。

  7. AP状态事件响应(State Event)

    image

    AP完成配置更新后,AP将会发送“Change State Event Request”信息,其中包含了Radio、Result、Code等配置信息,当AC接收到“Change State Event Request”报文后,会对AP配置信息进行数据检测,如果不匹配,则重新进入第六步(AP配置请求),如果检测通过AP将进入工作(RUN)状态,开始提供无线接入服务。

    除了AP完成第一次配置更新会发送状态事件响应数据包外,AP自身工作状态发生变化时也会通过发送“Change State Event Request”数据包告知AC

  8. AP工作状态(RUN)

    AP开始工作后,需要与AC保持互联,它通过发送两种报文给AC来维护AC和AP的数据隧道和控制隧道。

    数据隧道:

    image

    • Keep-Alive报文用于AP和AC双方确定CAPWAP中数据隧道的工作状态,确保数据隧道保持畅通。AP通过周期性发送"Keep Alive"到AC,AC收到后将确认数据隧道状态

      • 如果正常,则AC也将回应“Keep Alive”,AP保持当前状态继续工作,定时器重新开始计时

      • 如果不正常,则AC会根据故障类型进行自动排障或告警。

    控制隧道:

    image

    • AP通过周期性发送“Echo Request”报文给AC,并希望得到AC的回复以确定控制隧道的工作状态,该报文包括AP和AC间控制隧道的相关状态信息。
    • 当AC收到“Echo Request”报文后,将检测控制隧道的状态,没有异常则回应“Echo Response”报文给AP,并重置超时定时器。如果有异常,则AC会进行自检程序或告警
  9. AP配置更新管理

    image

    当AC在运行状态时需要对AP进行配置更新操作时,AC通过发送“Configure update request”报文给AP,AP收到该消息后将发送“Configure update Response”报文给AC,并进入配置更新过程。

posted @ 2022-10-23 01:21  未来的你!  阅读(427)  评论(0)    收藏  举报