作者:王彬 张妍妍 陈亮
摘要:Ad Hoc网络是由一组带有无线收发装置的移动节点组成的一个多跳的临时性的自治系统。Ad Hoc网络与有线网络相比有很多非凡点,会导致传统的网络协议栈在Ad Hoc下不能有效使用。解决的办法是使Ad Hoc网络的网络协议栈满足比传统协议栈更高的要求: 物理层要能实现分布式多点发起的同步,媒体访问控制(MAC)层要能治理多个分布站点随机的收发行为,网络层要能高效地治理分布式的路由协议,传输层要针对各种不同的业务进行优化。
要害词:自组织网络;协议栈;路由
Abstract:An Ad Hoc Network is a multi-hop, temporary and autonomous system composed by mobile nodes with wireless receiving and sending functions. Compared with wired networks, the Ad Hoc network has some unique characteristics that sometimes may cause the traditional network protocol stacks not to function well in Ad Hoc networks. The solution to this problem is to make the Ad Hoc protocol stack meet mUCh higher requirements as follows, while compared with the traditional protocol stack. The physical layer is required to achieve synchronization initiated by distributed multiple nodes. The Media Access Control (MAC) layer should be able to manage the random receiving and sending at distributed multi-stations. The network layer should effectively manage the distributed routing protocols. The transport layer should have the capability to optimize the configuration for different services.
KeyWords:Ad Hoc network; protocol stack; routing
Ad Hoc网络是由许多带有无线收发装置的通信终端(也称为节点、站点)构成的一种自组织的自治系统。因特网工程任务组(IETF)对Ad Hoc网络的定义是:一个移动Ad Hoc网络可以看作是一个独立的自治系统或者是一个对因特网的多跳无线扩展。作为一个自治系统,它有自己的路由协议和网络治理机制;作为多跳无线扩展,它应该对因特网提供一种灵活、无缝的接入。
与其他通信网络相比,Ad Hoc网络有很多特点:
(1)无中心节点
Ad Hoc是一种完全意义的分布式网络,网络中没有严格的控制中心节点,所有节点的地位平等,是一个对等式网络。节点可以随时加入和离开网络。任何节点的故障不会影响整个网络的运行,因此具有很强的抗毁性。
(2)自组织
自组网相对常规通信网络而言,最大的区别就是可以在任何时刻、任何地点不需依靠基础设施的支持,快速构建起一个移动通信网络。
(3)多跳路由
当节点要与其覆盖范围之外的节点进行通信时,需要中间节点的多跳转发。与固定网络的多跳不同,Ad Hoc网络中的多跳路由是由普通的网络节点完成的,而不是由专用的路由设备完成。网络中的每一个网络节点扮演着多个角色,它们可以是服务器、终端,也可以是路由器。更重要的是,由于网络拓扑结构的变化,网络路由是随时变化的。网络拓扑结构变化的不可预知性增加了路由的难度。
(4)动态变化的网络拓扑结构
自组网中,网络节点可以以任意速度和任意方式在网中移动,加上无线发送装置发送功率的变化、无线信道间的互相干扰因素、地形等综合因素的影响,节点间通过无线信道形成的网络拓扑结构随时可能发生变化,而且变化的方式和速度都是不可猜测的,网络拓扑结构会出现分割和合并。
这些特点是传统固定网络或移动网络等需要基础设备的网络所不具备的,灵活性是Ad Hoc网络区别于其他网络的最显著的优点,但是灵活性也带来一定的缺点:
(1)单向无线信道
自组网采用无线信道通信,由于地形环境或发射功率等因素影响可能产生单向无线信道。在常规网络中,节点间通常基于双向的有线或无线信道进行通信。这些单向信道为常规路由协议带来3个严重的影响:感知的单向性、路由单向性和汇点不可达性。
(2)传输带宽
由于自组网采用无线传输技术作为底层通信手段,而由于无线信道本身的物理特性,它所能提供的网络带宽相对有线信道要低得多。除此之外,考虑到竞争共享无线信道产生的碰撞、信号衰减、噪音干扰、信道间干扰等多种因素,网络节点可得到的实际带宽远远小于理论上的最大带宽值。随着网络节点的增加,治理开销呈指数增加,真正用于业务数据的有效传输带宽急剧下降。
(3)安全性
自组网是一种非凡的无线移动网络,由于采用无线信道、有限电源、分布式控制等技术和方式,所以更加轻易受到被动窃听、主动入侵、拒绝服务、剥夺“睡眠”、伪造等各种网络攻击。
这些缺点增加了AdHoc网络治理的开销。正是由于AdHoc网络与传统的固定网络的巨大区别,其网络协议栈也有比传统协议栈更高的要求,物理层要能实现分布式多点发起的同步;媒体访问控制(MAC)层要能治理多个分布站点随机的收发行为;网络层要能高效地治理分布式的路由协议;传输层要针对各种不同的业务进行优化等等。本文分别从网络协议栈中的物理层、链路层、网络层、传输层和应用层等几个层次进行网络协议栈的通用要求分析。
1 物理层
Ad Hoc网络的物理层要解决的问题主要包括:物理信道成型、物理层同步、高吞吐量技术的采用与改造、安全性的提高等。
物理信道成型负责频率选择、载波产生和监听、信号监测、调制、数据的发送接收等。Ad Hoc网络物理层可以选择和参考的标准包括IEEE 802.11、IEEE 802.16、蓝牙和高性能无线局域网(HiperLAN)等标准所定义的物理层。IEEE 802.11物理层标准明确地定义了无线节点的Ad Hoc工作模式;IEEE 802.16中的网格网(Mesh)工作模式与Ad Hoc类似,只是减少了移动性。
物理层的同步是网络工作的前提。由于组网的随意性,终端的移动性,处于平等地位的Ad Hoc分布式网络中的终端的物理层同步就变得非常难以解决。以IEEE 802.11的Ad Hoc网络为例,虽然物理层是以基于预约的载波侦听/冲突避免机制实现,不像WiMAX或者GSM等同步时分系统,需要对时间进行严格等同单位的划分。但是,预约的基本单位还是时间,分布式系统的正常工作还是建立在物理层时间基准之上的,否则,时间基准差异造成的碰撞的概率就会增加。另外,具有分布式特点的Ad Hoc网络中的终端的移动性是随意的,且没有处于中心位置的固定的基础设备,每一时刻的同步基准都会更改,所以网络传输的时延就必须随时更新,为了达到物理层的同步,每个终端都要计算它与当前时刻的处于网络治理者之间的时间提前量,并持续地维持该值。物理层之上的其他各层才能在一个较为精准的基础上开展各自所负责的任务。能完成上述功能的环境是非常复杂的,由于无线信道的时变特性,Ad Hoc网络的灵活移动性,要设计出一个准确地计算各个节点的物理层同步基准的模型还需要考虑到信道的特征。
无线网络中,为了提高传输效率和频谱利用率,物理层一般采取高阶调制、多输入多输出(MIMO)、正交频分复用(OFDM)、空时编码等方法。
高阶调制对信道的质量要求比较高,要求信道的一致性要好,不太适合于Ad Hoc网络的多变环境。
MIMO技术通过多入多出技术实现传输数据量的增加,现在正在制订的IEEE 802.11n就是基于这种技术的。OFDM利用相互正交的子载波实现数据加倍。
空时编码利用空间信息和时间信息,进一步提高物理层正交的维数。但是这种技术更适合于固定宽带无线接入系统,或者有一端固定的传统基础模式网络,且由于复杂度过高,实现起来会增加设备的成本。
网络吞吐量的提高仅仅通过物理层技术是不够的,需要协议栈的各个层面整体配合。试验数据表明,随着全连通网络内的节点的增加和业务服务质量(QoS)要求的提高,网络治理开销增加,有效业务带宽会有明显的下降。
物理层还需要考虑通信安全性,如设备认证、通信数据加密等。
2 链路层
链路层主要实现网络节点的寻址、流量控制、差错控制、业务汇聚、QoS保障机制等。一般把链路层分成MAC子层和逻辑链路子层。
2.1媒体访问控制子层
MAC子层治理和协调多个用户共享可用频谱资源,需要解决MAC层同步、网络组织与治理、多路复用与竞争解决、路由维护与邻居发现、安全性等问题。
多路复用与竞争解决主要表现在信道划分机制和信道分配机制上。信道划分机制包括频分、时分、码分、空分以及以上方法的组合。
时分将时间分割成时隙,按照周期重复的方式将时隙分配给用户。时分的困难是多个节点之间的同步。时分在动态信道分配上具有较好的灵活性,可以实现单用户多时隙,区分用户分配带宽。另外,时分还因为每个节点间歇式地发送数据和接收数据,很轻易实现非发送数据周期休眠,降低节点的能耗。
频分将系统带宽划分为互不交叠的信道,实现简单。缺点是不够灵活,很难将多个信道按需分配给一个用户。在频分机制下,节点始终处于工作状态,能量损耗是频分系统的难题。
在码分机制中,用户使用不同的扩频码,接收者基于扩频码特性来区分不同的用户。码分的一个好处是几乎不需要在时间或频率上对用户进行动态协调,缺点是实现起来较复杂。
在突发业务模式下,最有效的信道分配机制是随机接入法;在连续业务流模式下,需要采用某种调度机制来防止冲突,确保连续的连接。MAC协议的困难通常是在获得较好公平性和吞吐量的情况下如何有效减少能量损耗。
随机接入代表着竞争,通过竞争的方式来共享和使用有限的信道资源。一般随机接入法都通过载波侦听多路访问(CSMA)机制来监听和退避,以减少冲突。CSMA在单跳环境下可以很好地工作,但是多跳环境下,由于隐藏终端(Hidden Stations)的存在,CSMA检测和避免冲突的能力急剧下降。暴露终端(EXPosed Stations)问题也会降低信道的利用率。随机接入协议适合于网络中具有大量的突发业务的用户,即用户数大于可用信道数且每个用户的传输要求是随机和突发的。但当用户具有较连续或较长的业务分组需要发送时,因为冲突的增加,随机接入的性能变差。在这种情况下需要借助于调度机制以一种更加系统的方式为用户分配信道。
调度机制应保证每个节点在相应的信道上发送/接收分组而不与邻居节点发生冲突,同时尽可能高效地使用可用的时间、频率或码字资源。即使采用调度接入协议,在网络的初始化阶段也需要竞争方式的随机接入协议的支持,如IEEE 802.16。随机接入协议提供初始化竞争,并为连续的数据传输建立合适的调度表。
网络的组织与治理要求MAC层通过一系列的治理帧和控制帧实现节点的发送顺序控制、子网形成、接入网络动作、退出网络动作。
Ad Hoc没有核心控制点,网络的信息分布在网络中的各个节点上。如何以较小的治理代价对这些信息进行有效地组织和使用是MAC层面临的难题。
MAC子层也有一个MAC层同步的问题。以IEEE 802.11为例,传统基础模式下的MAC子层的同步是通过处于网络核心位置的固定的无线接入点(AP)以每100 ms发送的信标(Beacon)帧实现的。每个终端在接收到Beacon帧后更新自己的MAC层时间基准,该基准是终端阶段用于预约信道时发送请求发送/预备接收(RTS/CTS)的基础。在Ad Hoc网络下,由于没有固定位置的AP,所有节点都是终端节点,每个节点都可以发送Beacon帧。
IEEE 802.11中Ad Hoc下MAC同步的设计是:第一个开机的节点首先发Beacon帧,并认为是网络中的AP角色;随后进入网络的节点首先扫描,接收到Beacon帧之后,更新自己的时刻,和接收到的Beacon帧保持同步,并设置RTS/CTS以及Beacon帧退避所需要的计时计数区;在新的Beacon帧发送时刻到来时,每个节点都从Beacon帧退避区中取随机等待值(仅在第一次时这样),等待值结束后就发出Beacon帧;假如在退避等待期间接收到了Beacon帧,则停止等待值的更新,等待下一次发送时刻;假如有两个节点同时等待到,则Beacon帧会碰撞,两个节点同时以二进制指数退避法退避,本次Beacon帧的发送会由其他节点完成。
对于全连通网络,这样的方法既可以满足Ad Hoc的灵活性,又可以以较低的网络开销实现MAC同步。但是当网络规模不断扩大后,节点之间已经不能实现全连通,就必须对网络进行划分,在更小的范围内实现同步,而整个网络的同步问题就变得非常复杂,效率也就急剧下降,如何有效地对多跳范围内的节点治理和组织是MAC层设计的技术难点之一。
在Ad Hoc网络中还要考虑的是路由协议的辅助实现功能。由于路由协议必须及时更新,路由发现过程需要MAC层的配合。以IEEE 802.11为例,节点的地址的变化最早就体现在MAC层上。MAC层在控制帧和治理帧的发送过程中随路实现路由发现阶段的网络地址广播是非常方便的。
MAC层同样面临着通信安全性的要求,需要考虑节点认证和数据加密。
2.2逻辑链路子层
逻辑链路层(LLC)实现流量控制、差错控制和业务汇聚。在流量控制和业务汇聚过程中还要体现出业务的区别,为实现QoS创造条件。
无线Ad Hoc网络中的链路层设计存在很多困难,无线信道特性较差,容量低,多径衰落会引起信号幅度和相位的随机抖动,时延传播引发符号间干扰,广播特性造成节点间干扰。
链路层设计的目标是获得接近信道容量限制的数据率,并使用相对少的能量来减少信道损伤。衰落信道下的研究结果表明在信道状况较好时应增加发送功率和速率以提高信道的利用率。
链路层协议通过使用差错控制机制来保护数据比特,以减少信道错误的影响,如自动重发请求(ARQ)和前向纠错码(FEC)[1]。ARQ虽然可以增加分组投递的可靠性,但重传将耗费过多的能量和更多地占用带宽,并且增加分组投递时延,在有实时传输要求的网络下是不可用的。FEC虽然可以克服ARQ的缺点,但是较复杂的编解码机制会带来额外的分组开销。对于Ad Hoc网络,逻辑链路层要求在网络开销和信道容量方面进行必要的平衡。
业务汇聚要根据业务属性对业务数据进行区分,对于相同QoS要求的业务进行打包;对于不同QoS要求的业务,要根据优先级和节点的发送能力确定每次发送的数据;流量控制同时要控制数据的发送和接收,避免拥塞,滑动窗口协议是最常见的方法。虽然逻辑链路层的功能比较单一,但是这些功能都是环环相扣的,如何让这些功能协调统一以达到高效运作是逻辑链路层面临的主要问题。
3 网络层
网络层是Ad Hoc网络中最重要的一层,大量具有Ad Hoc特点的功能都要在网络层实现。网络层面临的主要问题是多跳路由协议,邻居节点维护等。
3.1邻居发现
邻居发现是网络初始化的一个基本过程,从节点的角度看,该过程是节点在最大发送功率约束和最小链路性能限制下,确定可以与其直接建立通信链路的邻居节点的数量和身份的过程。
节点使用的发送功率越高,邻居节点数量越大,网络全连通能力越强。邻居发现通过发送一定功率的探测信号来检测邻居节点数是否满足最小连接度要求,假如不满足,可以逐渐增加发送功率重复探测。每个节点需要的邻居节点的数量依靠于网络配置和节点分布。随节点移动性的增加,网络全连通的能力也不断下降。
Ad Hoc网络的节点密度是指单位面积内的节点数,节点密度是时变的。对于给定的传输范围,当节点密度增加时,每个节点获得的信道带宽将降低,但业务数据经过的平均跳数会减少。通常路径长度随传输范围的增加而线性减少,而参与竞争的节点数量随传输范围的增加而呈平方关系增长。
在能够维持网络连通的前提下,较小的节点度可以提供较高的网络吞吐量,但是路径长度较大。有研究表明最优的节点度为6~8[2]。较大的节点度会减小系统的有效容量,但是路径长度小。节点密度过低并不可取,会减小网络的连接度,增加网络分区的概率。Ad Hoc网络下需要某种机制以适应节点密度的变化,具体可以通过两种方法:一是功率控制,通过调节节点发送功率来获得合适的节点度;二是波束天线,用较窄的波束宽度提供较高的空间重用率,从而适应节点密度的增高。
3.2路由协议
现存的用于有线和无线网络中的路由协议无法满足无中心、自组织网络的Ad Hoc的组网要求。由于Ad Hoc中子网的不确定性,网络节点的移动性和网络拓扑结构的变化性,对网络地址的分配、路由信息的发现、路由信息的更新以及最佳路径的判定提出了要求。一方面,每个节点都存在担当路由网关的可能,每个节点都要参与路由信息的传递与更新,以确保在任何时刻,每两个节点之间都是可达的;另一方面,每个节点都参与的上述过程会带来大量的治理开销,降低网络效率,同时还可能出现环形路径。如何对这两个方面实行折衷需要根据Ad Hoc网络的规模和应用进行非凡的设计来解决。
3.2.1单播路由协议
单播路由是最基本的路由功能。Ad Hoc网络中单向信道的存在,无线信道的广播特性所产生的链路冗余,动态变化的网络拓扑结构等原因使得有线网络的路由协议并不适合于Ad Hoc网络环境下使用。常规路由协议使用到Ad Hoc网络下,长期处于非收敛状态,产生路由回环的几率也很高。Ad Hoc网络的单播路由协议可以分成平面路由协议、分级路由协议(混合路由)和地理位置辅助路由协议[3]。
平面路由协议分成先验式路由、反应式路由和洪泛路由。先验式路由周期性地发送路由信息来计算到所有可能目的节点的路径,尽管可以在静态的拓扑下获得较高的路由质量,但在大的动态网络中可扩展性很差;反应式路由的策略是按照需要使用查询响应机制来寻找和维护路径,从而降低了维护路由信息所需的网络开销,缺点是建立路由的时延大,查询得到的路由质量较低;洪泛路由不需要了解网络拓扑,向所有目的节点广播,在负载较轻时相当健壮,但会消耗大量带宽和能量,只适应拓扑变化较快的小型网络。
分级路由中,网络的逻辑结构是层次性的,网络动态地组织成簇或区,骨干部分由较为稳定、综合性能较好的骨干节点组成。一般在簇内使用先验式路由协议,而在簇间使用反应式路由来屏蔽簇内的拓扑信息的细节。分级路由的优点是扩展性强,适合大规模整体移动环境。
地理位置辅助路由中节点可以借助于全球定位系统(GPS)或其他手段获得准确的位置信息,从而可以在较低网络开销下获得较好的寻址性能;缺点是成本会有增加,实现复杂。
当节点移动性较高时,除了洪泛路由,其他路由的性能严重下降,此时为了克服洪泛的缺点,可以采用多路径路由[4],分组在几条路经上同时传输,从而提高分组投递率。
3.2.2多播(广播)路由协议
多播(广播)路由是实现Ad Hoc网络基本应用的基础。多播路由协议的要害是确定分组的发送方到接收群组各成员的分发树。
在Ad Hoc网络环境下,对多播通信的支持有着重要的意义。Ad Hoc网络的使用者通常是具有协同工作关系的用户群体,根据协同关系可以形成不同的群组,而群组通信必须有多播路由协议提供支持。另外,使用多播路由,分组只需一次发送,就可以到达多个或全部其他节点,可以提高网络带宽的利用率。
目前在有线网络环境下,对多播路由协议的研究主要分为两类:源分发树算法和共享分发树算法。
在源分发树算法中,对每一对节点要单独构造分发树,一个群组会有多个分发树存在。共享分发树算法针对一个群组只构造一棵分发树。源分发树的优点是单独构造的分发树可以降低数据分组的网络延时,优化传输性能;缺点是由于有多个分发树的存在,所有发送节点消耗的网络带宽总和要高于共享分发树,路由维护的复杂度和网络开销都会增加。因此,从网络带宽的使用效率和消耗上看,共享分发树算法更适合在Ad Hoc网络环境下使用。
由于目前在有线网络环境下使用的共享分发树算法大多是根据底层单播路由协议提供的距离-矢量信息,采用逆向路径转发机制建立和更新多播分发树,所以在Ad Hoc网络环境下使用依然存在问题。Ad Hoc网络环境下,拓扑结构的变化速度要比单播路由协议计算路由的速度快,也比多播路由协议的反应速度快,分发树的构造往往赶不上网络的变化,这是共享分发树所面临的最大的问题。假如采用链路状态法的多播路由协议,如多波开放式最短路径优先协议(MOSPF),这个问题将更严重。在一个中等大小的Ad Hoc网络环境中,要做到路由信息的变化与拓扑结构的变化迅速保持一致是非常困难的。
总之,在Ad Hoc网络环境中,对于多播路由协议的设计的要害在于如何有效迅速地对网络拓扑结构发生的变化作出反应。
4 传输层
传输层负责排序接收的数据并将其送交相应的应用程序,检测分组的错误和重传分组。最常用的传输层协议包括数据报协议(UDP)和传输控制协议(TCP)。TCP面向连接、保证分组的可靠按需到达,具有流量控制和拥塞控制机制,实现复杂,开销大。当前的TCP是为有线网络环境设计的,不能区分拥塞、传输错误以及路由失效引起的分组丢失,不适于无线环境非凡是Ad Hoc网络环境,因此需要修改和加强。
语音业务是Ad Hoc网络中的常见业务。这就要使用到实时传送协议/实时传输控制协议(RTP/RTCP)和信令控制传输协议(SCTP)。RTP建立在UDP的基础之上,SCTP替代TCP传输呼叫信令方面的数据。
在不同的网络规模和结构下,不同长度的业务数据对网络会造成不同的影响。一方面,长度大的数据的传输会占据较长的网络传输时间,因网络环境变化造成的重传会增加网络的负担;另一方面,太短的数据的传输会因为治理开销的比例增加而降低网络的效率。可以针对不同的网络环境适配最佳的数据长度。
5 应用层
应用层的关注重点是网络效率问题。目前Ad Hoc网络要确保能够应用的QoS,几乎是不可能的。尽管链路层和网络层的自适应机制能够为应用提供一定的QoS保障,但是这种QoS会随着信道条件、网络拓扑和用户要求的变化而变化,因此应用需要根据网络提供的QoS进行变化。此外,还可以采用QoS协商机制通过降低低等级用户的QoS来提高高等级用户的服务质量。由于不同的应用具有不同的QoS要求,它们可以互相协调以获得可以接受的服务性能。节点的有限能量要求网络性能和网络寿命的折衷,这些折衷也是随网络的变化而动态变化的。
6 结束语
Ad Hoc网络由于自组织和多跳的存在,对网络协议栈的各个层次都提出了和有线网络不同的要求,非凡是对于MAC层和网络层。设计优秀的网络协议栈必须考虑到Ad Hoc网络的特点,并在各方面的影响因素中进行折衷,以获取最高的效率和最小代价的平衡。
7 参考文献
[1]曾家智.计算机网络[M]. 成都: 电子科技大学出版社,, 2002.
[2]RAMANATHANR.Making Ad Hoc networks density adaptive [C]//Proceedings of Milcom: Vol 3,?May 11-15 ,2001, Anchorage, AK,USA. Piscataway, NJ,USA, 2001, 957-961.
[3]HONGXiao-yan,XU Kai-xin, MARIO Gerla. Scalable routing protocols for mobile Ad Hoc networks [J]. IEEE Network, 2002 ,16 (4) :11-21.
[4]MAOS,LIN S, et al. Reliable transmission of video over ad2hoc net2 works using automatic repeat request and multiple2path transport [C]//Proceedings of 2001 Fall IEEE Vehicular Technology Conference, Atlantic City, NJ, October 2001.
作者简介:
王彬,西安电子科技大学毕业,硕士。现工作于中兴通讯股份有限公司中心研究院西安研究所,从事IEEE802.11和IEEE802.16相关技术的研究和产品开发,主要研究方向为IEEE802.11负载均衡和快速切换、IEEE 802.16。已申请10项发明专利。 张妍妍,电子科技大学信息工程专业毕业。现为中国网络通信集团有限公司四川省分公司计划建设部高级数据主管。曾参与中国网通IP骨干网建设的多项省级重大项目。长期从事数据网络的规划和建设治理工作。 陈亮,电子科技大学计算机通信专业毕业,硕士。现为中国网络通信集团公司四川省分公司大客户部技术支撑主管。曾负责中国网通(控股)四川分公司成都城域IP数据网络、SDH传输网络的规划建设。长期从事数据通信的规划与研究工作。(张翀编辑)
进入讨论组讨论。