本文译自IEEE802.11s的9.32节。

1.概述

mesh转发是指在mesh路径选择好的链路层路径上转发MSDU和MMPDU。mesh路径包含在转发信息中。转发信息(如mesh路径的存活时间)可以在转发途中更新。

转发信息是由主动mesh路径选择协议创建的,用于MSDU转发的。基本的转发信息包括目的mesh STA地址、下一跳地址、precursor列表和该转发信息的存活时间。precursor列表中的一项包含precursor mesh STA的地址和该项的存活时间。如果precursor中的一项更新了,存活时间是当前值和更新值里的最大值。如果某一项超时了,就会从precursor列表中删除。precursor用来标识每个帧的真实发送者,并用于链路失效的通知。

转发信息如果超时,也就失效了。

主动路径选择协议可以在转发信息中定义额外的参数。详细的处理机制定义在13.10.8.4小节中。

2.MBSS中的帧地址

mesh数据帧和多跳 action 帧要求多跳MSDU转发。本节主要讨论帧的地址类型。

在单播数据帧和多条action帧中,address1和address2对应特定mesh link上的mesh STA的接收地址(RA)和发送地址(TA)。address3和address4对应mesh路径上的目标端STA和源端STA。

mesh 控制域的地址扩展模式表明帧中的mesh控制域携带了一个地址扩展模式字段。mesh控制域中的address5和address6对应端到端的目的地址(DA)和源地址(SA).比如当外部STA与内部STA通过proxy mesh gate通信时需要用到。

源mesh STA指一条mesh路径上的第一个mesh STA。并简称为Mesh SA。

目的mesh STA指mesh路径上的最后一个mesh STA。简称Mesh DA。

在组播mesh数据帧中,address1和address2对应组地址和mesh STA的发送地址。address3对应该组播报文的Mesh SA.

简而言之,在mesh中,

TA和RA是mesh link上的两个mesh STA的mac地址。

mesh SA和mesh DA是mesh path上首尾两个mesh STA的mac地址。

SA和DA表示最终通信两端的mac地址,如果他们也是mesh网络的一部分,则SA=mesh SA;DA= mesh DA。此时可以不携带地址扩展模式字段,省去SA和DA两个地址,退化成四地址模式。

3.单播帧的寻址和转发

一个mesh STA发给另一个meshSTA的MSDU帧应该使用四地址模式。如果最终的SA或者DA与mesh SA或者mesh DA不一样,应该携带扩展地址字段。最终的SA可以是与mesh STA共存的eth接口或者ap模式下的普通client发出的报文。

一旦接收到一个单播报文,mesh STA应该做如下操作:mesh STA应该解密报文,并检查它的真实性,如果它不是来自mesh peer的,就应该丢弃。mesh STA应该检查是否address3是一个已知的mac地址,如果是未知地址,则要么触发地址发现流程来寻找路径,要么通知address2的mesh STA该地址不可达,要么丢弃该报文。如果address2不在precursors列表中,这个帧要丢弃。

如果帧没有丢弃,并且收到多次,mesh STA应该根据9.32.7进行重复帧检测,并丢弃它们。

如果address3和自己的地址不匹配,但是是一个转发信息中已知的mac地址,就应该按如下方式转发:到该目的地的转发信息的存活时间设置成初始值到该源地址的转发信息的存活时间设置成初始值到目的地的precursor list的每一项的存活时间设置成初始值和当前值的最大值到源地址的precursor list的每一项的存活时间设置成初始值和当前值的最大值mesh TTL减一,如果等于0就丢弃该报文mesh STA转发该报文,addres1设置为下一跳地址,自己的地址设置为address2.

如果address3与自己的地址匹配到address4的转发信息的存活时间设置为初始值到address4 的precursor list的每一项的存活时间设置成初始值和当前值的最大值如果地址扩展模式为00,接收该帧给上层,自己处理该帧。(mesh STA上没有birdge,与其他mesh STA互相ping)如果地址扩展模式为10,并且address5等于address3,说明mesh STA是最终目的地,接收该帧给上层,自己处理该帧。(mesh STA上没有birdge,非mesh STA与自己互ping)如果地址扩展模式为10,那就继续转发出去,进入DS处理。(mesh STA上有birdge,与其他mesh STA的其他接口之间互相ping)

其他情况就不详细描述了,单播理解了,组播就不难理解了。

相关文章