购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.4 无线Mesh网络

无线Mesh网络是在移动自组织网络和无线传感器网络基础上发展起来的一种新兴无线移动互联网络。相比移动自组织网络,无线Mesh网络具有相对稳定的拓扑结构;相比无线传感器网络,无线Mesh网络在放宽能耗约束性的同时提出了高带宽的传输需求。无线Mesh网络为用户提供高速的无线接入服务。

3.4.1 无线Mesh网简介

无线Mesh网(Wireless Mesh Network)在20世纪90年代被提出,起源于美国国防部高级研究计划局资助的分组无线网络研究,最初是为了满足战场生存的需要。20世纪90年代后期,随着一些技术的公开,无线Mesh网络成为移动通信领域一个公开的研究热点,其技术已在美国军方得到应用,民用领域的应用亦开始起步。传统的无线网络可分为两类:集中式无线网络和分布式无线网络。集中式无线网络,如无线局域网或蜂窝网,网络内必须有一个中心点(称为AP或基站),网络中所有通信都必须经过中心点,即使网络中两个节点距离很近也无法直接通信。除此之外,中心点覆盖区域有限,无法对用户的移动性提供很好的支持。分布式无线网络,如移动自组织网络,节点间可以进行对等通信,扩大了网络覆盖范围,对用户移动性提供了很好的支持,但是,网络拓扑结构变化太快,实现比较困难,一般认为移动自组织网络适合军事通信领域,不太合适民用通信领域。为了将两种传统无线网络技术的优点融合起来,学者们提出了无线Mesh网的概念。

1.无线Mesh网基本概念

无线Mesh网是一种动态的自组织、自配置、自治愈的无线网络,具有布设方便、开销小、易于维护、易于扩展的特点。其主要目标是在大范围内提供高速的无线接入。无线Mesh网包括两类节点:Mesh路由器和Mesh客户端。Mesh路由器间通过互联形成无线Mesh网,构成整个网络的骨干,大大扩展了无线网络的覆盖范围。无线Mesh网结构如图3-22所示。由于Mesh路由器有多个,当其中一部分不能工作时,节点可接入到其他路由器继续工作,因此,无线Mesh网具有更好的容错能力。Mesh路由器的位置一般是固定的,且有电源供应,这样可以形成较为稳定的拓扑结构,可提供更高的网络性能。无线Mesh网可被看成有线因特网(Internet)的扩展。部分Mesh路由器有网关或网桥功能,可与互联网进行连接,为用户提供高速的网络接入服务。

图3-22 无线Mesh网结构

Mesh路由器和Mesh客户端对软硬件的要求不同。Mesh路由器除具备传统的路由功能以外,还需要组织、维护无线Mesh网连接。Mesh路由器一般配有多个接口。部分Mesh路由器具有网关、网桥功能,可以实现与其他网络的互联。通过这些节点,无线Mesh网可接入互联网,也可将其他无线网络整合到一起。Mesh路由器为Mesh客户端提供回程。Mesh客户端也有基本的路由功能,但相比Mesh路由器,其软硬件都相对简单,一般只有一个接口,只使用一种无线信号。使用IEEE 802.11或IEEE 802.16标准的无线客户端可直接接入无线Mesh网,如果客户端没有无线网卡,则可通过有线方式直接连接到无线Mesh路由器上。从移动的角度来说,Mesh客户端可分为固定节点和移动节点,其中移动节点依靠电池供电,受能源限制较大。

无线Mesh网的连接方式多种多样,从接入方式来划分,可分为有线连接和无线连接;从连接双方的节点角度来划分,通常有用户—无线路由、无线路由—无线路由和无线网关—互联网三种连接,某些网络体系结构中还支持用户—用户连接。用户可通过现有的多种无线接入技术接入无线路由器,如IEEE 802.11标准、IEEE 802.16标准、蓝牙或其他方式,如果没有无线网卡,则可通过有线方式(如以太网或USB),直接连到Mesh路由器上。

Mesh路由器之间的连接通常采用能提供高速无线连接的IEEE 802.11、IEEE 802.16技术,由于无线Mesh网的特点,因此一般采用多点到多点的连接方式。这是无线Mesh网的关键所在,通常也是瓶颈所在,这种连接通常也被称作回程。网关到互联网的连接多采用有线方式,大大扩展了无线Mesh网的资源和使用范围。从流量来划分,可以分为两种,一种是用户和互联网的交互,另一种是用户之间的数据流,前者占绝大部分。

2.无线Mesh网体系结构

无线Mesh网体系结构可分为三类:有基础架构的无线Mesh网(Infrastructure WMN),客户端无线Mesh网(Client WMN)和混合式无线Mesh网(Hybrid WMN) [77]

(1)有基础架构的无线Mesh网

在有基础架构的无线Mesh网中,Mesh路由器可以形成网络的骨干,为Mesh客户端提供回程,通过有网关功能的路由器接入互联网中。无线Mesh网用户通过有线或无线方式接入无线Mesh网骨干,因为Mesh路由器有网桥功能,所以用户可使用不同的无线或有线技术。相比WiFi和WiMAX,这种体系结构大大扩展了无线网络的覆盖范围。网络间的通信通过无线多跳实现。但用户之间不能直接进行交互,即使两个用户相邻很近,信号可互相覆盖,且使用同种无线信号,他们之间的通信仍需要通过Mesh路由器,降低了网络的效率。

(2)客户端无线Mesh网

客户端无线Mesh网没有Mesh路由器,只有Mesh客户端,客户端使用同样的无线技术,类似传统的移动自组织网络。相比有基础结构的无线Mesh网,这种结构对客户端的要求比较高,客户端不但要有路由功能,而且要组织和维护无线Mesh网连接。这种结构布设方便,适合在没有基础架构的情况下快速搭建无线网络平台。但是,它对终端要求比较高,不能接入到互联网。

(3)混合式无线Mesh网

混合式无线Mesh网是前两种结构的混合体。如图3-23所示,Mesh网可扩大无线覆盖范围,为用户提供接入,同时可将不同的网络互联,提供网络间互操作。如果距离和无线技术允许,则用户可以直接进行通信。它大大扩展了无线网络的使用范围,是无线Mesh网中非常有前景的一种应用方式,也是能够体现无线Mesh网特性的应用方式。

图3-23 混合式无线Mesh网

3.4.2 无线Mesh网MAC协议

现有无线网络MAC层协议可分为两类:集中式接入MAC协议和分布式接入MAC协议。集中式接入MAC协议中有一个中心控制点,它将各个节点的接入请求整合起来,然后进行集中调度,如TDMA和轮询(polling)。分布式接入MAC协议的控制功能分布在各个节点上,每个节点监听信道,当发现信道空闲时,发送信号,如CSMA/CA。但这些协议在无线Mesh网中不适用。集中式接入方式需要网络中有一个中心节点,由于无线Mesh网分布式可扩展的系统结构,因此这种方法是不可行的。CSMA/CA协议提供的方法只适用于一跳的无线网络,在多跳的无线网络中性能并不理想,因此,它也不适用于无线Mesh网。

1.无线Mesh网MAC协议基础

无线网络中的MAC层是不完善的,原因有三个,一是无线链路不稳定;二是由于天线设备的半双工特性,导致它在某一时刻只能进行接收或者发送,无法像有线链路一样“边听边说”;三是MAC层协议不能提供可靠的性能,如CSMA/CA只是“尽力而为”的协议,不能提供任何保证。在无线Mesh网这种多跳环境中,这个问题更加严重。

(1)无线Mesh网MAC层的问题

无线Mesh网MAC层面临两个主要问题,即隐藏终端问题和暴露终端问题。暴露终端问题会使节点损失传输机会,导致系统的吞吐量急剧下降。隐藏终端问题会导致发送冲突,进而引起重传,会增加网络的传输负担。在单信道环境中,可通过监听信道来解决隐藏终端问题,如IEEE 802.11标准使用RTS/CTS虚拟载波检测来避免隐藏终端问题。

除单跳环境中的问题以外,多信道环境下的MAC层还面临新的问题。当有多个信道可供使用时,节点经常会更换信道以减少与邻居节点的冲突。但节点监听只局限在一个信道上,它不可能获得其他信道上的收发情况,当协调出现问题时,就可能出现监听时信道空闲而发送时产生冲突的问题,即多信道隐藏终端问题。多信道隐藏终端问题有两种解决方法:一种方法是使用时间同步,所有节点在某一时刻同时使用同一信道来协商之后使用的信道;另一种方法是单独使用一个信道来进行控制。

对于无线Mesh网,多跳会给MAC层带来新的问题,表现在如下三个方面:第一,在无线环境中,每一跳都需要竞争信道,都会有延时,多跳过程累积的延时可能非常大;第二,在某一跳传输中采用信道A,但在下一跳中,信道A可能忙,信道B空闲,有必要切换信道,会导致多跳过程中不停切换信道,增大节点选择信道的开销;第三,当节点移动导致网络拓扑发生变化时,选择下一跳将会是个很大的问题,在多跳环境中,这个问题会更加突出。

(2)无线Mesh网MAC层协议分类

针对上述问题,学者们对无线Mesh网MAC协议进行了深入研究。不同的MAC层协议建立在不同的物理层假设基础之上,因此,可根据物理层的不同情况将无线Mesh网MAC协议分为三类:单信道MAC协议、多信道单收发器MAC协议、多信道多收发器MAC协议。其中,单信道MAC协议的研究集中在对现有IEEE 802.11 MAC协议的改进上,以使它更适应无线多跳环境,从而提高网络容量和减少能耗。但是,单信道的资源太少,冲突比较严重。为了解决上述问题,学者们提出了多信道单收发器MAC协议,对于多信道,可充分利用信道间不干扰的特性来开发并发功能,设计出性能更高的MAC协议。多信道单收发器MAC协议使一根天线可以支持多个信道,当一个信道冲突时,可转换到另一个信道,从而解决冲突问题。但是,同一时间,一根天线只能工作在一个信道上,不能同时进行收发,网络容量仍很有限。为了提高网络容量,进一步的改进是让节点拥有多个收发器,使得不同收发器可工作在不同信道上,这样就可同时进行收发操作。仅依靠MAC层信息很难解决多跳导致的问题,可能需要用到网络层的网络拓扑信息,需要使用跨层设计,这部分内容将在3.4.3节中“无线Mesh网中的跨层设计”部分详细介绍。

2.单信道MAC协议

IEEE 802.11的DCF(分布式协调功能)使用4路握手机制(RTS-CTS-DATA-ACK)进行通信。考虑两个互为邻居的节点同为发送者的情况,如图3-24所示,节点A、B同为发送者,此时通信是可以同时进行的。同理,当节点A、B同为接收者的时候,并发的情况也是允许的,但IEEE 802.11的DCF会阻止这种情况的发生,这就是暴露终端问题。

图3-24 节点A、B可同时发送的情况

为了开发这种情况下的并行性,A. Acharya等人提出了MACA-P协议 [78] ,其关键改进是允许邻居节点同步其接收期,也就是说,邻居节点能改变自己的收发状态。为了实现该方案,MACA-P协议修改了DCF,在握手过程中引入了控制空隙,使得另一对节点有机会进行另一次握手,从而增加了并发传输的可能性。

为了使用上述机制,节点必须知道其邻居节点的收发状态以及何时在收发状态间做切换,为此,MACA-P协议需要对节点做一些改进,即每个节点通过监听RTS/CTS信息,维护一个邻居节点状态表,邻居节点状态分为三种:接收、发送和空闲。当一个节点想发送信息时,必须确保邻居节点中没有处于接收状态的节点,同理,当节点想接收信息时,必须确保邻居节点中没有处于发送状态的节点。

下面举例说明,在图3-24中,节点A想向节点C传输数据,节点B想向节点D传输数据,但节点B在节点A的传输范围内,MACA-P协议可以使这两个传输同时进行,其工作流程如图3-25所示。

1)节点A向节点C发送RTS信息。

2)经过SIFS后,节点C向节点A回复CTS信息。

3)由于MACA-P协议引入了控制间隙,因此,在节点C和节点A协商后的空隙内,节点B和节点D也可进行一次协商,与节点A和节点C的协商类似。

图3-25 MACA-P协议应用示例流程图

4)利用节点A与节点C协商过程中产生的RTS和CTS中的时间信息,节点B、D可将自己传输DATA和ACK的时间调节到与节点A、C相应传送同步的时刻,当发送DATA时,节点A、B都是发送者,当接收ACK时,二者都是接收者。其中, T data T ack 都以较长的时间为准,所以不会发生冲突。

3.多信道单收发器MAC协议

IEEE 802.11标准使用的频率中包含了多个信道,其中,IEEE 802.11a包括12个不重叠的信道,IEEE 802.11b包括3个不重叠的信道。在多信道环境中,利用信道数目的优势,让需要通信的互不干扰的节点工作在同一信道上,可能会互相干扰的节点则工作在不同信道上,这样可以降低冲突,提高网络容量。但是IEEE 802.11的MAC协议并不支持多信道,为此,研究人员对多信道MAC协议做了深入研究。

(1)经典的多信道单收发器MAC协议

DBTMA协议是一种较早支持多信道的协议 [79] 。它将一个普通信道分成两个子信道:一个控制信道和一个数据信道,控制信道使用忙音来避免隐藏终端问题,但是没有提高网络的吞吐量。HRMA协议是一种使用慢速跳频扩频(FHSS)机制的多信道协议 [80] 。节点事先确定一个跳频模式,当两个节点通过RTS/CTS握手后,可使用确定的跳频模式来进行通信,多个通信可在不同的跳频模式下同时进行。接收者触发的使用双轮询机制的跳频协议 [81] 使用了与HRMA类似的方法,但是是由接收者来初始化避免冲突的握手机制。这类机制的缺点在于只能用于使用跳频的网络中,不能用于其他网络,如使用直序扩频(DSSS)的网络。在这些研究成果的基础上,研究人员研究了一些较新的多信道MAC层协议。

(2)MMAC协议

为了解决多信道隐藏终端问题,J.So等人提出了一种多信道MAC协议MMAC [82] ,MMAC协议利用时间同步的方法来解决多信道隐藏终端问题。MMAC协议将时间分为不同的时间段,以beacon(信标)帧作为开始,在beacon中插入一个时间段,该时间段内的所有节点切换到同一信道来协商传输信道,这样该问题简化为单信道中的协商问题。

在协商过程中,为了避免多节点同时发送beacon而产生冲突,MMAC协议使每个节点随机选择一个后退时间,然后开始发送。为了保证当beacon开始时节点切换到统一信道而不会破坏该beacon前的数据传输,MMAC协议设定:如果当前beacon所剩时间不够传输数据,则阻止信息的传输。这样能保证所有节点在同一时间切换到统一信道,从而避免了多信道隐藏终端问题。

在信道分配方面,MMAC协议中的节点都各自维护一个PCL(Preferable Channel List,优选信道列表),将信道根据使用情况按照偏好程度分为高、中、低三种状态。节点采用类似IEEE 802.11节能模式中的ATIM信息,采用三路握手机制(ATIM、ATIM—ACK、ATIM—RES)来协商信道。当节点A有数据发给节点B时,节点A向节点B发送ATIM,其中包含节点A的PCL,节点B根据自己的PCL和节点A的PCL来寻找一个合适的信道。MMAC协议中的信道选择算法如图3-26所示。

其中,“低”状态中信道count值是指邻居节点中使用该信道通信的节点对的数目。因为节点在一个beacon只能和一个邻居节点通信,所以,如果它需要和多个节点通信,则其他节点必须等到下一beacon。

图3-26 MMAC协议中的信道选择算法

MMAC协议选择信道的机制比较复杂,而且在beacon开始时协商好信道后,在后面传送每个数据包时仍需协商,信令开销很大。

(3)SSCH协议

为了简化协商信道的机制和减少信令开销,Paramvir Bahl等人提出了一种数据链路层的协议使用时隙种子的信道跳变(Slotted Seeded Channel Hopping,SSCH) [83] 。SSCH是一种分布式协议,可用来协调信道切换。

SSCH协议使用信道跳变的基本思想来避免冲突,每个节点会选择一个信道跳变计划,并将包调度在不同信道上。每个节点会将自己的信道跳变计划传送给邻居节点,在收到该消息后,邻居节点可根据具体情况更新自己的信道跳变计划。

在信道跳变计划中,SSCH协议引入(信道,种子)对来描述节点的信道使用情况,其中信道是指节点现在使用的信道,种子是节点自己选的随机值,下一次信道=信道+种子mod可用信道数。设信道和种子对为( x i a i ),在IEEE 802.11a中,有12个不重叠的信道,对于节点, x i 可选0~11中的一个值, a i 可取1~12中的任意值。信道变化公式见式(3-3)。

为了进一步增大信道的差异性,SSCH协议中选取多个(信道,种子)对来控制信道,每次选定信道后占用一个时隙,为了避免节点一直在不同信道工作而造成网络在逻辑上的分离,在一段时间中,会专门加入一个校验时隙,在该时隙节点切换到同一信道并进行通信。

下面举例说明,假设有两个(信道,种子)对,3个不重叠的信道,奇数时隙的信道由( x 1, a 1)对决定,偶数时隙的信道由( x 2, a 2)对决定,校验时隙使用统一的信道。参考图3-27,其中A和B选择在奇数时隙通信,所以二者在奇数时隙采用了统一的(信道,种子)对,而在偶数时隙采用不同的(信道,种子)对,以便与其他节点进行通信。A在第一个时隙的信道由(信道,种子)对(1,2)决定,在第二个时隙的信道由(信道,种子)对(2,1)决定,第三个时隙的信道仍由(1,2)决定,不过此时信道变为(1+2)mod 3=0。

图3-27 SSCH协议中信道选择机制

SSCH协议可布设在与IEEE 802.11兼容的网卡上,具有较好的应用前景。实验证明,在一些多跳、单跳无线环境中,它能显著增加网络容量。但是,SSCH协议没有给出较好的信道初始分配和种子选取方法,在信道较少的情况下,出现冲突的可能性仍然很大。

单收发器在同一时间只能工作在一个信道,且只能进行收或发的工作,在增大网络容量方面的表现仍然一般。

4.多信道多收发器MAC协议

随着设备制造技术的发展,在一个节点上配置多个天线成为可能,多收发器可工作在不同信道上,同时为节点提供多个传输通道,能更进一步提高网络容量。为此,研究人员又开发了多信道多收发器MAC协议。多信道多收发器MAC协议一般是在多信道单收发器MAC协议基础上进行改进:可利用增加的收发器承担控制功能以减少干扰,也可利用多收发器承担传输功能以增大网络容量。

(1)DCA协议

Wu等人提出了动态分配信道(Dynamic Channel Assignment,DCA)协议 [84] ,使用一个固定信道来传输控制信号,其他信道传输数据,每个节点使用了两个收发器,所以可同时在控制信道和数据信道上监听。在RTS/CTS中,通信双方会协商好发送数据使用的信道。因为其中一个天线一直在监听控制信道,所以可避免多信道隐藏终端问题。该协议不需要同步,信令开销较小。但是,控制信令单独占用一个信道,浪费较大。

(2)干扰感知的信道分配机制

为了充分利用多信道优势来增大网络容量,Krishna N. Ramachandran等人提出了一种动态分配信道的机制 [85] 。该方法使用一种中心分配的、干扰感知的信道分配算法和相应的信道分配协议来增大网络容量。每个Mesh路由器使用一种新的干扰感知机制来测量和邻居节点的干扰程度,并使用多信道干扰模型(Multi-radio Conflict Graph,MCG)。

(3)MIACR协议

为了减少端到端延时,Joo Ghee Lim等人提出了多接口改进信道预留(Multiple Interface Advance Channel Reservation,MIACR)协议 [86]

无线Mesh网中MAC层延时有两个方面,一是当帧在不同接口协议栈上下层间转换时产生的跨层延时;二是竞争产生的延时,包括控制帧花费时间和基于竞争的MAC协议的回退时间,以及时间同步导致的开销,而且包在路径的每一跳都需要竞争信道,在多跳中,该延时的累计效应非常大。MIACR协议使用了标签交换机制来减少跨层延时,使用预约信道机制来减少多跳延时。

3.4.3 无线Mesh网路由协议

1.无线Mesh网路由协议基础

无线Mesh网路由协议在满足将包进行正确路由的基础上,还必须具有很好的可扩展性,以适应其规模可扩展的特性。由于Mesh客户端的移动性,无线Mesh网路由需要支持用户的移动,能快速重新发现或恢复路由,为上层协议提供更好的稳定性。无线Mesh网要提供多种无线网接入,所以无线Mesh网路由还应该有很好的可调节性,应该能自适应异质网络。

根据协议主要目的的不同,可以将无线Mesh网路由协议分为基于移动自组织网络的路由协议、控制洪泛的路由协议、利用有利时机的路由协议和考虑公平性的路由协议。基于移动自组织网络的路由协议是指将移动自组织网络中的协议进行修改以使它适应无线Mesh网环境;控制洪泛的路由协议可减少路由协议的开销;利用有利时机的路由协议利用了传统路由协议忽略的一些信息来提高路由的效率;考虑公平性的路由协议主要考虑采取多径路由协议来对网络负载进行分流。

2.无线Mesh网路由协议种类

(1)控制洪泛的路由协议

传统无线多跳路由大多是针对网络拓扑变化频繁的网络(如移动自组织网络)设计的,因此,路由发现和路由维护开销都很大。但在无线Mesh网中,网络拓扑基本上是稳定的,只需要在变化路径的局部范围内更新,没有必要频繁地更新全网的路由状态,利用该优势,可以缩小路由更新信息洪泛的范围,减少路由的开销。

1)LOLS路由协议。

局部按需链路状态(Localized On-demand Link State,LOLS)路由协议 [87] 是针对固定的无线网络环境提出的路由协议,利用了无线Mesh网骨干拓扑不经常变化的特性。LOLS路由协议引入了两个新的概念:链路的长期开销和短期开销,分别表示链路平常和现在的开销。为了控制开销,短期开销比较频繁地发给邻居节点,而长期开销则要经过较长时间才发送。

在LOLS路由协议中,由长期开销形成的拓扑构成了基础拓扑(base topology)。如果短期开销比长期开销大,则该链路被认为是一条差的链路。短期开销只会“告知”给邻居节点,且只有变化时才触发。

LOLS路由协议中的关键算法是黑名单协助转发(Blacklist-Aided Forwarding,BAF)机制。在BAF机制中,每个转发包都会携带一个黑名单,其中包括它经过的差的链路。中间节点根据黑名单中的信息和基础拓扑上的其他信息来计算到目的节点的最优路径。同时,中间节点也会更新黑名单信息,如果最优路径经过一条差的链路,则中间节点会将它加入黑名单。如果在下一跳到目的节点的开销小于该黑名单中包含的到目的节点的最小开销,说明下一跳后黑名单信息对选择路径已没有帮助,则中间节点将黑名单清空。

2)MMRP。

移动Mesh路由协议(Mobile Mesh Routing Protocol,MMRP) [88] 是由MITRE公司提出的无线Mesh网路由协议,为每个数据包设置了生存期,类似OSPF中的机制。当节点发送一个路由消息后,就减去预计的发送该消息需要的时间。如果生存期已过,则抛弃该包,也不再进行重传。

(2)利用有利时机的路由协议

在路由算法的传输过程和寻路过程中,往往会产生一些冗余信息,在传统路由算法中,这些信息并没有被加以利用,造成了一定的信息浪费。为了充分利用这些信息,学者们考虑了如何利用这些信息,或通过增加一些小的开销来设计性能更好的路由算法。这类协议被称作利用有利时机的路由协议,其中有代表性的协议有利用有利时机的多跳无线路由协议ExOR和利用有利机会路由协议ROMER(Resilient Opportunistic Mesh Routing)

利用有利时机的多跳无线路由协议ExOR [89] 将路由和MAC子层的功能结合起来,提高了多跳无线网络的传输量。ExOR协议在转发一个包时,首先会广播该包,然后从实际接收到广播包的节点中选择一个合适的节点来转发包。其关键技术在于只有“最好”的接收者能转发包,从而避免了重复包的发送。

ROMER协议 [90] 是一种具有恢复能力的利用有利机会的无线Mesh网路由协议,将长期的利用路由稳定性和短期的利用有利机会的性能进行了很好的权衡。ROMER协议会建立一些候选的从源到目的地的路径,但在实际转发每一个包时,允许该包动态地选择具有最好信道质量的路径,可充分利用带宽。另外,为了在链路失效、AP失效或AP受到攻击等情况下恢复能力,ROMER协议在一定的控制条件下随机地在候选路径上发送若干冗余包。

(3)多径路由协议

在路由协议中,如果只使用最优路径,则会导致该路径负载过重,进而导致丢包,然后可能需要重新寻找另一条最优路径,进而重复上述过程,这种问题称作路由抖动。另外,使用单一路径的传输量有限,可能无法满足某些大数据量传输的需求。利用多条路径同时传输可有效解决这两个问题,为此,学者们在多径路由协议方面做了许多研究。

对于多径路由协议,主要考虑两个关键问题,一是如何发现多条路径并实时对它们进行维护,二是如何在各路径间实现负载均衡。

Wai-Hong Tam等人提出了一种联合的多信道多径控制(Joint Multi-channel and Multi-path control,JMM)协议 [91] 。该协议除选取合适的路径以外,还可考虑其他因素来提高网络吞吐量,如利用数据链路层信息。该协议使用了多信道单收发器,将时间分为时隙,然后协调时隙间信道的使用并将调度流通过两条路径来传输,该机制综合利用了时分(时隙)、空分(多径)和频分(多信道)的方法来避免干扰,可实现高的吞吐量。

3.无线Mesh网中的跨层设计

传统互联网已发展多年,取得了很大的成功。优秀的体系结构是传统互联网快速发展的一个重要原因,分层结构使各层协议能单独设计并优化,简化了问题;分层结构使问题分布在不同层次,每层协议能将错综复杂的底层细节屏蔽并为高层提供统一的接口,这样可以将不同网络融合在一起,这使得网络具有很好的可扩展性。但是,在无线Mesh网中,由于无线链路的特殊性和无线Mesh网的一些特点,使得分层协议无法满足它对性能的要求,为此,学者们提出了一种新的设计思路——跨层设计。

(1)各层协议对跨层设计的需求

跨层设计的主要目的是信息的共享。在跨层设计时,必须合理调节信息在各层间的传递。网络层次有多种模型,典型的有OSI参考和TCP/IP模型。这里,我们采用OSI参考模型的一个变种,即从低到高将网络分为物理层、数据链路层、网络层、传输层和应用层,其中数据链路层包括逻辑链路子层(LLC)和介质访问控制子层(MAC)。在本书中,考虑到重点为MAC子层,有时会直接用MAC子层来代替数据链路层。

物理层 :物理层的作用在于提供信息传输的物理通道。在无线Mesh网中,物理层采用不同的无线标准,不同的调制和编码方式可以组合成不同的链路。这些信息可作为上层协议设计的依据。

数据链路层 :MAC子层是数据链路层中非常重要的一部分,其主要功能是为用户分配信道接入和调度机制,也可向其他层提供链路忙或闲信息,以及提供资源预留等功能。数据链路层的关键是传送调度策略,它影响数据包的延迟大小、带宽等,并最终可能导致网络层路由性能的变化。

在跨层设计方面,MAC子层具有承上启下的作用。向下层看,MAC子层调度需要根据物理层情况进行调节,如3.2节所讲,针对物理层能提供的信道数和天线数,MAC子层调度算法涉及的因素是完全不同的。

网络层 :网络层是网络中非常重要的一层,它将决定分组如何从源端发送到目的端。网络层拥有整个网络的拓扑信息和传输路径的具体信息。路由协议是网络层的核心技术,路径发现是路由协议中非常重要的一环。

在无线多跳环境中,传统的采用最小跳数作为路径判据的协议不能达到较好的性能,选择路径时必须考虑链路的具体情况,如信道数、信号数、链路质量、链路带宽等。在3.3节中,我们可以清晰地看出,每种路由协议都依赖于具体的物理环境,要实现性能较高的路由协议,大多要求物理层提供多信道、多信号,都需要对MAC子层信道分配做出一定的假设。例如考虑路由协议的公平性、安全性等要求,就需要底层为它提供更多的信息。

传输层 :传输层的目标是向用户提供高效的、可靠的和性价比合理的服务。传输层主要包括TCP和UDP两个协议。TCP是面向连接的可靠的传输协议,在传统互联网中取得了巨大成功,但是在无线环境中,其性能却不是很理想。TCP假设丢包是网络拥塞导致的,进而减小传输窗口,但在无线多跳环境中,丢包可能是链路不稳定等因素导致的,此时不仅不应降低传输速率,反而应提高传输速率。

为了提高TCP的性能,需要区分不同丢包情况,这就需要链路层和物理层提供信息。针对不同情况,TCP可“告知”物理层通过改变调制编码方式、改变电源功率等方法来调节信道。对于质量太差的链路,TCP可“告知”网络层,重新启动路由发现机制,寻找一条质量更好的路径。

应用层 :应用层协议根据其具体应用,如数据、音频、在线视频等,对网络的QoS会有不同的需求。为了保证QoS,在网络层进行路由选择时会重点考虑链路跳数、链路稳定性等因素,因为这些参数会对QoS产生影响。数据链路层对各个业务流优先级的设置、调度以及信道选择等的策略制订会影响端到端的QoS。在物理层,选择不同的调制方式和传输功率,会使QoS中的误码率、吞吐量、发送速率等发生变化。因此,对应用层的QoS保证涉及了每个协议层相应的参数设置。

从跨层设计角度来看,如果可以加强各层之间信息的交互,则必然能使网络性能得到优化。跨层设计框架如图3-28所示,从中可以看出,各层间信息可以共享,下层信息对上层决策起指导作用,上层的要求可传到下层,使得下层进行合适的调整。

(2)跨层设计的分类

依据不同的标准,跨层设计可分为不同的类型,如图3-29所示。从耦合程度来划分,跨层设计可分为松耦合和紧耦合。松耦合只是将不同层之间的信息进行传递,没有改变层的体系结构,例如,将MAC子层丢包率或物理层信道状态信息传给传输层,这样TCP就可区分拥塞导致的丢包和链路失效导致的丢包。在紧耦合中,不但有层之间的信息传递,而且不同层要协同优化,不同层的优化算法被看作一个优化问题来解决。例如,在TDMA的无线Mesh网中,时隙分配、信道分配和路径选择可由一个算法来决定。紧耦合协议的极端是将多个层合为一层来考虑优化,例如,将MAC子层的信道选择和网络层的路径选取放在一个算法中进行决定,这样做虽然能减少层间互操作,但是不能与现有互联网协议层兼容。

图3-28 跨层设计框架

图3-29 跨层设计分类

(3)松耦合跨层技术

松耦合跨两层技术在两层间交换信息,不需要修改每层的协议设计。常见的松耦合跨两层技术包括跨物理层与MAC子层设计和跨MAC子层与网络层设计。

松耦合跨多层技术是指在多个层间传递信息,常用的有跨物理层/网络层技术和跨物理层/传输层技术。信息可从下层传递到上层,也可从上层传递到下层。一方面,可将物理层信息传输到网络层来协助发现合适的路由,传输到传输层来协助传输层判断丢包的具体原因;另一方面,可将传输层信息传到物理层来帮助物理层调节传输速率。

(4)紧耦合跨层技术

在紧耦合跨两层技术方面,常用的是物理层、MAC子层和网络层之间的协同优化,因为这三层间的关系非常紧密。

Prasanna Chaporkar等人将网络编码(NC)技术和MAC子层调度结合起来 [92] ,有效地提高了网络的吞吐量。Randeep Bhatia等人使用了跨层机制,设计了一个框架,将网络层路由协议、MAC子层数据调度和物理层流控结合起来,优化解决吞吐量问题 [93]

由于跨层设计破坏了协议层间的透明性,以及现有的体系结构,因此会给协议设计带来一些问题。因此,在跨层设计时,必须遵循一些原则来减小跨层设计的负面影响。 z0Cw4z1gftwN15ZZeQgpWU2CfIOdNBRa/ci7yE24LCcwl/oCprfV+QXwfXmGXZ/1

点击中间区域
呼出菜单
上一章
目录
下一章
×