Mesh原理描述Mesh基本概念图15-12 Mesh组网图

- MP(Mesh Point):使用IEEE 802.11MAC和物理层协议进行无线通信,并且支持Mesh功能的节点。该节点支持自动拓扑、自动发现路由、数据报文转发等功能。MP节点可以同时提供Mesh服务和用户接入服务。
- MPP(Mesh Portal Point):连接Mesh网络和其他类型网络的MP节点。这个节点具有Portal功能,可以实现Mesh内部节点和外部网络的通信。
- 邻居MP:与某个Mesh节点处于直接通信范围内的MP或MPP,称为该Mesh节点的邻居MP。例如,图15-12中的MP2是MP1的邻居。
- 候选MP:MP准备与之建立Mesh链路的邻居MP。
- 对端MP:已与MP建立起Mesh连接的邻居MP,称为该MP的对端MP。
Mesh实现原理成功建立Mesh链路包括Mesh邻居发现和Mesh连接管理两个过程:
Mesh邻居发现
Mesh连接管理
Mesh连接管理包括Mesh连接建立和Mesh连接拆除两个过程,采用Mesh Peering Open/Confirm/Close三种Mesh连接管理Action帧交互实现。
图15-13 Mesh连接管理原理图

Mesh连接建立
MP在选出候选MP节点后,可以与之发起Mesh连接建立过程。建立Mesh连接的双方MP处于对等地位,双方通过两次Mesh Peering Open/Confirm的交互,完成Mesh连接的建立。
Mesh连接建立后,需要继续进行后续的密钥协商阶段,只有密钥协商成功之后Mesh节点才可以参与Mesh数据转发。
Mesh链路拆除
Mesh连接双方中任意一方,均可以主动向对方发送Mesh Peering Close报文,以关闭双方间的Mesh连接。收到Mesh Peering Close消息的MP,需要向对方MP回应一个Mesh Peering Close消息。
Mesh路由对于Mesh网络来说,任何一个源和目的地之间都会存在多条可用的Mesh链路,并且这些Mesh链路的传输质量会随着周边环境实时变化。因此,必须在Mesh网络内支持选路协议,802.11s标准中定义的HWMP路由协议应运而生。
在802.11s路由协议中,定义了下面几种路由管理帧:- RANN(Root Announcement Frame):网关通告帧,目的是通知其他节点MPP的存在。
- MPP节点定时广播RANN帧。
- MP收到RANN消息后,将TTL减1,更新路径Metric信息,再将其广播出去,不做其他处理。读取RANN帧的内容后,判断RANN中的网关是否已经存在于自己的网关列表中,如果不存在,则在列表中新增该网关的条目;如果存在,则依据RANN中的信息,更新相应条目的信息。
- PREQ(Path Request)与PREP(Path Reply):路由请求帧和路由应答帧。在按需路由模式中,源节点广播PREQ消息建立到目的节点的路由,MP节点收到PREQ帧后,回应路由应答帧。
Mesh网络中支持按需路由和先应路由两种路由选择模式:- 按需路由模式:源节点广播PREQ消息建立到目的节点的路由。如果当前PREQ的序列号比前一个PREQ消息的序列号大或者序列号相同但度量值更优,在收到PREQ消息之后,中间节点创建或者更新到源节点的路由;如果没有到达目的路由,中间节点继续转发PREQ。
- 先应路由模式:根节点周期性地广播RANN消息。当一个Mesh节点收到RANN消息并且需要创建或者更新到根节点的路由时,它会单播发送PREP消息到根,同时将RANN消息继续广播出去。这样,MPP创建一条从根节点到源节点的反向路径,MP创建一条从根节点到源节点的转发路径。
HWMP将先应路由模式和按需路由模式相结合,确保数据帧能够始终通过传输质量最好的Mesh链路传输。
华为MESH特性基于标准802.11s协议开发了私有MESH路由协议并进行优化,其特点是在无线链路搭建时,考虑减少通讯的转发次数,使能基于静态的到目的节点跳数较小的路径构造转发拓扑。
零配置上线零配置(Zero Touch Configure)上线是指在采用AC+FIT AP组建Mesh网络时,仅需要在AP上线前先在AC上对AP进行少量的离线管理配置,而不需要本地直接登录到AP上进行任何配置就可以完成AP的上线过程。该功能为大量AP同时开局的场景提供了极大的便利。零配置的原理如图15-14所示。
图15-14 零配置上线原理图

- MP1上电后,通过默认Mesh ID和默认预共享密钥等信息与已成功关联到AC的邻居MP2进行Mesh Peering Open/Confirm交互,建立临时的非安全的Mesh连接,并建立到MPP节点的路由。
- MP1节点通过建立的Mesh连接与DHCP server交互获取到自己和AC的IP地址。
- MP1节点通过建立的Mesh连接发现AC并完成与AC的关联,建立临时的CAPWAP隧道,并从AC获取配置信息。
- MP1获取到新配置后,通过Mesh Peering Close消息主动断开临时的非安全的连接。
- MP1用新的mesh配置再次进行Mesh Peering Open/Confirm交互,然后完成密钥协商,协商出MP间通信的最终密钥,最后建立正式的安全的Mesh链路。
- MP1以更新后的配置重新与AC建立安全的CAPWAP隧道。
- 当MP1长时间无法与MP2建立mesh链路,则恢复默认配置,重新从步骤1开始,直到MP1以更新后的配置重新与AC建立安全的CAPWAP隧道。