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

2.5.7 CAPWAP传输机制

WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯。

CAPWAP协议支持UDP和UDP-Lite [RFC3828]。

¢ 在IPv4上,CAPWAP控制和数据通道使用UDP。此时CAPWAP报文中的UDP校验和必须设置为0。AC上的CAPWAP控制报文端口为UDP众所周知端口5246,数据报文端口为UDP众所周知端口5247 ,WTP可以随意选择CAPWAP控制和数据端口。

¢ 在IPv6上,CAPWAP控制通道一般使用UDP,而数据通道可以使用UDP或者UDP-Lite。UDP-Lite为默认的数据通道传输协议。当使用UDP-Lite协议的时候,校验和必须为8. UDP-Lite使用的端口与UDP一致。

2.5.8 分片、重组、MTU发现

CAPWAP协议在应用层上提供IP报文的分配和重组服务,由于使用隧道机制,报文分片中间的传输媒介来说是透明的。因此可以在任何网络架构(防火墙,NAT等)上使用CAPWAP协议。

CAPWAP实现的分片机制也有局限和不足,协议RFC4963中详细描述。

CAPWAP执行MTU发现来避免分片。

一旦WTP发现AC,且想要与这个AC建立一个CAPWAP会话,它必须执行一个Path MTU (PMTU)发现。IPv4的PMTU发现过程在RFC1191中详细描述。IPv6使用RFC4821。

2.5.9 报文格式

CAPWAP协议可靠机制要求消息必须成对,由请求和响应组成。所有的请求消息的消息类型值都为奇数,所有的响应消息类型值都为偶数。

如果WTP或者AC接收到了一个不认识的消息,消息类型是奇数,那么会将消息类型值加一,然后响应给发送者,并且在响应中带有“不认识的消息类型”元素。如果不认识的消息类型为偶数,那么这个消息将会被忽略。

2.5.9.1 UDP-Lite协议的简单介绍

UDP-Lite协议更加适应于网络的差错率比较大,但是应用对轻微差错不敏感的情况,例如实时视频的播放等。

那么它与传统的UDP协议有什么不同呢?

传统的UDP协议是对其载荷(Payload)进行完整的校验的,如果其中的一些位(哪怕只有一位)发生了变化,那么整个数据包都有可能被丢弃,在某些情况下,丢掉这个包的代价是非常大的,尤其当包比较大的时候。

在UDP-Lite协议中,一个数据包到底需不需要对其载荷进行校验,或者是校验多少位都是由用户控制的,并且UDP-Lite协议就是用UDP协议的Length字段来表示其Checksum Coverage的,所以当UDP-Lite协议的Checksum Coverage字段等于整个UDP数据包(包括UDP头和载荷)的长度时,UDP-Lite产生的包也将和传统的UDP包一模一样。事实上,Linux对UDP-Lite协议的支持也是通过在原来的UDP协议的基础上添加了一个setsockopt选项来实现控制发送和接受的checksum coverage的。

2.5.9.2 CAPWAP报文的简单介绍

CAPWAP控制协议包括两个永远不会被DTLS保护的消息:Discovery Request和Discovery Response。

报文格式如下:

clip_image002[1]

其余的CAPWAP控制协议报文必须被DTLS协议加密,因此包括一个CAPWAP DTLS Header。

clip_image004[1]

CAPWAP协议对数据报文的DTLS加密是可选的。

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值