毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc

上传人:文库蛋蛋多 文档编号:2400996 上传时间:2023-02-17 格式:DOC 页数:54 大小:1.20MB
返回 下载 相关 举报
毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc_第1页
第1页 / 共54页
毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc_第2页
第2页 / 共54页
毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc_第3页
第3页 / 共54页
毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc_第4页
第4页 / 共54页
毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc》由会员分享,可在线阅读,更多相关《毕业设计基于网络编码的机会网络数据分发研究与仿真1.doc(54页珍藏版)》请在三一办公上搜索。

1、1 引言1.1 研究问题现状近年来,无线通信技术得到了飞速的发展,新技术不断出现,其中移动通信系统的3G技术已经进入应用普及阶段,并朝第四代通信系统方向演进。国家中长期科学和技术发展规划纲要(2006一2020)中已经明确提出了未来通信领域的竞争将集中反映在特殊环境和新兴应用领域中的通信网络能力及通信技术的竞争上1。其中新兴应用领域涉及到的移动网络技术更是被作为前沿技术中的重点。目前,移动通信的快速发展使得移动网络带宽逐渐增大,移动应用不断丰富,移动终端的处理能力越来越强。为了适应不同的应用需求,各具特色的网络结构和无线网络技术不断涌现,包括无线个域网(如IEEE802.15)、无线局域网(如

2、IEEE802.lla/b/g/i/n)、无线城域网(如802.16、802.20)、无线移动广域网(如2G、3G)、卫星网络,以及无线自组织(Ad Hoc)网络、无线传感器网络(Wireless Sensor Network,WSN)等等。而WIFi、WIMax、UWB等无线接入网络和GPRS、B3G、UMTS等蜂窝移动网络等基础设施与技术的完善为移动应用提供了在任何时间、任何地点访问所有网络服务的可能性。在上述的各种网络发展后,一种节点移动范围更大,网络大多数都是不连通的新型网络出现了,这种类型的网络被称为机会网络,机会网络是一种不需要源节点和目的节点之间存在完整路径,利用节点移动带来的相

3、遇机会实现网络通信的自组织网络。经过近几年的发展,机会网络技术研究与应用已经取得了一定的进展,但是,总体而言目前相关研究还处于一个刚起步的初级阶段。随着移动应用业务的增加以及机会网络商业化,机会网络技术的全面应用与深入仍然要解决很多极具挑战性的问题,如复杂环境下的路由、数据时延与网络开销均衡问题、移动状态下网络可靠性以及安全问题等等。同时在一些领域,机会网络的相关技术标准尚未形成,尤其在国内对于这类高延迟的特殊通信网络的研究才刚刚起步。规划信息化发展战略中不仅强调了信息产业以及信息技术的发展,同时也提出了将宽带无线移动通信、新兴及特殊应用领域的网络通信等核心关键技术研究作为我国信息技术的主要发

4、展方向之一。因此,对机会网络数据分发展开研究将为正确理解机会网络拓扑与数据传输特点提供可行性依据,有助于推进现有关键技术的可扩展性,并对提高机会网络数据传输可靠性,探索节点移动模型对机会网络服务性能保障的影响,推动相关技术的深入研究有重要现实的意义。2000年,R.Ahlswede等人基于网络信息流的概念提出了网络编码的思想,通过允许中间节点既实现路由功能又实现编码功能,达到组播的最大流量2。为使得网络编码具有实际可用性,Li等人提出了线性网络编码的概念,证实节点进行线性网络编码运算,具有可行性,能够达到最大流传输理论极限3。Ho等人推广了这一概念,提出了有限域下随机线性网络编码的思想,并证实

5、其有效性4。之后,随机线性网络编码被应用于各个方面的研究,用于提高网络吞吐量、能量利用效率。网络编码彻底改变了通信网络中信息处理和信息传输的方式,被认为是进入 21世纪后信息处理和信息传输研究领域上最重要的理论成果之一。网络编码的核心思想是允许通信网络中的节点对传输的信息进行操作和处理(如有限域中的运算等),而不再局限于存储与转发。与传统的基于存储和转发的路由传输机制相比,网络编码能显著改善数据分发系统性能,如提升网络吞吐量,节约传输带宽和均衡网络负载等。网络编码具有重要的理论价值和广泛的应用前景,其研究已经引起了学术界和产业界的广泛关注和高度重视。国际知名大学、科研机构和公司,如普林斯顿大学

6、、麻省理工学院(MIT)、贝尔实验室(Bell Lab)、AT&T 的香农信息实验室和微软公司(Microsoft)等都积极投入对网络编码的研究,并取得了一些重要的研究成果。我国的香港中文大学(CUHK)、清华大学、中国科学技术大学、西安电子科技大学和南京大学等也对网络编码展开了研究,并取得一定的进展。机会网络经常出现链路断裂,网络不连通的状况,在这种情况下,节点一般并不丢弃数据包,相反节点传输数据一般采用“存储一携带一转发”的模式,传统的机会网络中,中间节点只进行数据的存储与转发操作,但是运用网络编码的机会网络中,中间节点可以对接收到的数据块进行随机线性组合编码,可以增大单次传输的数据量。随

7、着网络规模的日趋庞大、各种网络方案和协议日趋复杂,分析、实验和仿真等方法成为了当前进行网络技术研究的有效手段。研究网络仿真技术成为了现代通信网络设计的重要环节,在通信网络性能研究中起关键性作用。在众多网络仿真软件中NS2具有免费、源代码开放、易扩展等等优点而备受研究人员的青睐。NS2是一个开源的网络仿真软件,可以再windows/unix上运行,且所有源代码公开,对于进行网络的研究和扩展非常方便。本课题研究的内容就是在仿真平台NS2下设计并建立机会网络模型,理解网络编码的原理,在NS2中编程实现基于分簇的随机线性网络编码数据分发的仿真并与一般的网络编码比较其网络吞吐量和时延性能。1.2 本文的

8、内容组织本文内容组织如下:先分别介绍了机会网络、网络编码原理及仿真平台NS2的各种知识,然后使用NS2构建机会网络拓扑,编出各个代码脚本,在NS2上仿真实验,得出数据并画图进行说明验证。2 机会网络及网络编码相关知识2.1 机会网络的概念机会网络是一种特殊的自组织网络,它不需要存在端到端的完整路径,充分利用了节点移动带来的相遇机会(contact),实现数据逐跳转发,并最终传送到目的节点5。从本质上来看,机会网络否定了传统网络中数据传输的一个根本前提在路由期间或者数据传递期间,存在一条或者多条源端到目的端的路径。机会网络中的相遇(contact)概念是指节点之间发生的一次联系。当节点(如:车辆

9、、移动用户)进入彼此的通信范围之内时,则发生通信,当两者离开彼此通信范围时,则链路断开,停止通信。在机会网络中,contact是机会性的,而非确定性的。图2.1是一个机会网络示意图,t1时刻源节点S希望将数据传输给目标节点D,但S 和D 位于不同的连通域而没有通信路径,因此,S 首先将数据打包成消息发送给邻居节点3,由于3并没有合适的机会转发下一跳节点,它将消息在本地存储并等待传输机会,经过一段时间到达t2 时刻,节点3运动到节点4的通信范围并转发给节点4,在t3时刻,节点4将消息传输给目标节点D,完成数据传输。图2.1 机会网络示意图机会网络的部分概念来源于早期的延迟容忍网络DTN(dela

10、y tolerant network)6研究。DTN最初是容迟网络研究组(DTNRG)为星际网络IPN(interplanetary network)7通信而提出来的,其主要目标是支持具有间歇性连通、延迟大、错误率高等通信特征的不同网络的互联和互操作,如互联Internet和传感器网络、移动自组织网络等。DTN网络体系由多个底层运行独立通信协议的DTN域组成。域间网关利用“存储-转发”的模式工作,当去往目标DTN域的链路存在时转发消息,否则,将消息存储在本地持久存储器中等待可用链路。机会网络可以看成是具有一般DTN 网络特征的无线自组网。2.2 机会网络的构架机会网络的体系结构与传统Inter

11、net传输结构的最大区别在于束层(BundleLayer),它位于传输层和应用层之间,它跟底层协议相互配合,使得应用程序可以跨过多个区域实现通信。机会网络节点使用束层来发送和接受数据,并保证逐跳转发的可靠性以及端到端的确认。该架构非常灵活,既保证了各层的共性,又避免非法使用其他层。1、束层为了实现“存储-携带-转发”的消息交换机制,机会网络在节点的应用层和传输层之间插入了一个新的协议层束层。使用束层的一个主要原因是在机会网络中,传输延时差异很大,当一个数据包丢失时,整个传输的数据成为无用数据。因此为了避免这样的事情发生,将数据打包成一个较大的消息,称之为束,并使之不能轻易分割成更小的片段。机会

12、网络中一般不存在从源节点到目的节点的端到端的连接,因此束会存储在中继节点上并等待合适机会进行传输。一个束必须包含的信息有:源端地址、目的端地址、起始时间、束的生存时间、数据长度及服务类型等。此外,对于具体的应用,可能还需要一些状态域和认证消息,例如,监管传送请求等。2、监管传送束层提供了一种简单的并且不需要应答的投递机制,但框架本身提供了两种可能的方法来提高可靠性:端到端的应答和监管传送。通过监管传送,可以保证端到端的可靠性。在特定的环境下,这种机制可以更好地利用资源,例如源节点可以将已经投递成功的束在缓存中释放掉。3、机会网络中的节点一个束的源端和目的端是由端点号EID(Endpoint-I

13、dentifier)来标识的。EID中包含一个或多个机会网络节点。当目的地收到该束时,认为该束传递成功。EID可以类比于DNS(Domain Name System)中的统一资源标识(URI,Uniform Resource Identifier),并且与路由或拓扑组织结构没有必然联系。区域名是早先提出的一个概念,一个完整的地址由区域号和节点号组成。基于这种区域的概念,束首先投递到目的节点所在的区域,然后再投递到目的节点。4、服务分类按重要性不同,束层引入了三类服务:1、大块束(bulk bundles),只需要较小的投入,当有资源可用时就可以提供这种服务;2、正常束(normal class

14、 bundles),比大块束优先级要高,但比“加快束”(expedited bundles)优先级要低;3、加快束,这类服务只是针对来自同一个端点的束而言,例如:当大块束与加快束来自不同的端点时,即使加快束比大块束优先级高,但大块束仍有可能比加快束先传递。5、安全机会网络框架提供了一个可选的安全构架,使用逐跳、端到端的授权和诚信机制,主要的困难是如何对网络进行控制和如何转发控制消息。没有进行认证的节点不能够通过机会网络发送数据,并且不能利用该网络以外的节点进行数据转发。2.3 机会网络拓扑特点1、多跳网由于无线通信的距离受限制,机会网络中节点之间的通信通常需要借助其他节点的中继转发才能实现,便

15、形成了多跳通信路径。2、动态的网络拓扑机会网络中节点间的相互连通性构成了网络的拓扑结构。由于机会网络中的节点可以以随机的速度和方式移动,加上发射功率的变化,以及无线信道的干扰大小不断变化等因素,节点间通过无线通信形成的网络拓扑结构可能随时发生变化,而且变化的方式和速度都是难以预料的。3、分布式控制在机会网络中,为了实现网内节点之间的通信,需要解决无线资源使用、路由发现等控制问题。由于机会网络没有预设的基础设施,也就没有预设的中心控制节点,所以只能采用分布式控制的方式来完成。4、对等性机会网络中节点与节点可以直接互通,每个节点都相同,无主从之分,每个节点都能够支持逻辑上的自发自收,即节点直接的来

16、去双向链路都相同。因此,无机会网络节点的无线通信装置一般采用时分双工方式(TDD)。5、临时自组织性若干个无线节点聚集到一起时,他们便临时自组织性地形成了一个无线通信网络,该临时性包括:网络成员的临时性,网络组织的临时性,网络拓扑的临时性,网络路由的临时性,网络无线资源分配采用按需临时分配等。6、链路带宽受限机会网络采用无线传输技术作为其基本通信手段,与有线传输技术相比,它具有较低的传输带宽。并且由于各个节点分布式竞争使用信道,使得每个移动节点实际使用的带宽远小于物理层所提供的最大传输速率。7、能量受限机会网络内的移动节点一般需要依靠电池来提供能量,因此,节省功率将使自组网技术中一个需要高度重

17、视的问题。8、有限的安全性机会网络由于采用分布式控制、无中心、临时组织等原因,它比一般的无线网络更易受到安全方面的威胁。2.4 机会网络节点移动模型节点移动模型描述了节点的移动模式,包括位置、速度等特征的变化,广泛应用于自组网协议性能的分析和评价,是自组织网络的基础研究之一。传统的MANET假设网络是全连通的,节点的移动对路由层以上的协议是“屏蔽”的。因此一般从网络拓扑角度去分析移动模型对协议性能的影响,如拓扑连通率、节点连通度等,而机会网络中的移动模型研究是以刻画节点相遇特征为核心的。这是因为在机会网络中的数据传输依赖于节点移动带来的相遇机会,而节点的相遇概率和相遇时间分布是由节点的移动模型

18、决定的。因此,相比于传统的MANET,移动模型对机会网络研究更加重要。2.4.1 独立同分布的理论移动模型许多学者研究了3个经典的独立同分布移动模:Random Way Point8(RWP) Random Walk(RW)和Random Direction9(RD)。这些模型下的节点相遇特征可用两个参数来刻画:相遇时间(meeting time,简称MT)和相遇间隔时间(inter meeting time,简称IMT)。MT 是指两个节点从静止开始到第一次相遇(进入通信范围)经过的时间间隔,而IMT 是指两个节点前后两次相遇的时间间隔。文献9都分别从不同的角度证明了上述3个移动模型的节点期

19、望相遇时间(expected meeting time)服从指数分布或其尾部服从指数分布,并基于此分析了多种路由协议的延时性能。文献10推导出RW模型下期望相遇间隔时间的分布也服从指数分布,而文献11推导了RD模型和RWP模型下的期望相遇间隔时间分布,并证明了RWP和RD模型下相遇时间和相遇间隔时间的尾部分布是无记忆的。2.4.2 基于统计的实际移动模型除了从理论来推导以外,一些研究人员还利用统计方法,通过收集实际环境中节点的运动轨迹来研究节点的移动特征。MIT 的Reality Mining项目12记录了MIT校园中100个携带蓝牙智能手机的学生和职工为期9个月的移动轨迹和相遇数据;UCSD

20、 的Wireless Topology Discovery13收集了11周内300个无线PDA与Wi-Fi接入点的相遇数据;剑桥大学的Haggle项目14则记录了若干个带有蓝牙接口的iMote设备在校园的相遇情况。此外,他们还在INFOCOM参会期间进行了类似的实验;UMass研究小组15收集并分析了由公交车上的Wi-Fi节点组成的机会网络DieselNet实际运行中的相遇规律。文献2通过分析文献13中的数据集发现,实际节点的移动具有社区特性,节点相遇时间服从近似的幂律分布,而不是根据经典移动模型推导出的指数分布,这些成果证实了传统的移动模型并不一定适用于实际节点的移动特征,但研究人员在对于使

21、用何种分布的移动模型问题上一直存在争议。文献16试图统一这两种类型的移动模型,作者从理论上推导出在一个有限边界的移动空间中,节点相遇间隔时间服从指数分布,如果去掉有限边界的条件,按照RW模型移动的节点相遇间隔就与统计观察到的结果相一致,服从近似幂律分布。2.4.3 基于社区的移动模型人所携带设备组成的网络是机会网络的一个主要应用,探索适用于这类场景且便于数学分析的移动模型机会网络研究的一个重点。基于由人组成的机会网络节点移动实际表现出的社区特性,一些研究人员提出了基于社区的移动模型(community based model)。该模型下的节点并不是随机选取移动位置,而是考虑了3种情况来决策下一

22、步移动位置:1)节点偏好,节点比其他节点更倾向于去往某个特定位置或遇到特定节点;;2)节点异构性:某些节点能够到达所有位置,遇到所有其他节点;3)行为时变性:节点移动随着时间变化。Musolesi等人17结合社会网络理论提出了一种基于社区的移动模型。该模型根据节点之间联系的紧密程度,将节点分布在多个在不同区域的社区,然后计算不同社区对每个节点的吸引力,并以此确定节点是否移动以及朝哪个目标区域移动。Spyropoulos 等人18,19提出了时变的社区移动模型,每个节点的工作周期由正常移动周期和集中移动周期组成,每个周期内,节点随机选择一个社区作为它的本地社区。节点在每个周期都有两种移动状态,L

23、ocal epoch和Roaming epoch。前者是选择在本地社区内移动,后者是在其他地方漫游。节点在两个状态之间以一定的概率来切换,形成一个马尔可夫链,概率大小由所处的移动周期来确定。例如,在集中移动周期内,节点访问本地社区的概率较高。2.5 网络编码的概念思想在传统网络中,结点仅对接收的数据进行存储和转发,难以达到网络传输的最大吞吐量和带宽利用率,若数据传输路径出现瓶颈链路,则网络数据传输性能将受限于瓶颈链路。对此,在网络中引入网络编码技术,增加结点对数据的编码运算功能,节约网络链路的带宽资源,减小网络数据传输中瓶颈链路的影响。网络编码(network coding)是一种融合编码和路

24、由的信息交换技术,在传统存储转发的路由方法基础上,通过允许对接收的多个数据包进行编码信息融合,增加单次传输的信息量,提高网络整体性能。Ahlswede等人于2000年提出了网络编码概念,指出对组播网络中的某些节点附加额外的编码操作能使源与组播成员间达到最大流最小割心的组播速率。网络编码一经提出便引起了国际学术界的广泛关注,其理论和应用已成为通信领域研究的新热点网络编码在提高网络吞吐量、改善负载均衡、减小传输延迟、节省节点能耗、增强网络鲁棒性等方面均显示出其优越性,可广泛应用于Ad Hoe网络,传感器网络、P2P内容分发、分布式文件存储和网络安全等领域。经过几年的发展,网络编码的理论研究已取得重

25、要进展,在应用基础和工程实践方面的研究正在全方位展开。网络编码已成为一项融合信息论、代数学、图论、网络流理论和优化理论等多学科的交叉技术,且日益引起更多研究者的关注,其对现有的网络体系结构、协议设计方法、信息交换方式和网络管理模式带来了革命性的变化。网络编码的基本思想是使网络中的节点不仅具有存储转发的功能,他们还能够打若干个待转发的数据包进行编码压缩成一个数据包,然后转发给相应的接收节点,并且以足够大的概率保证它的接收节点能够顺利地解码恢复出原始的数据包,从而减少传输次数,提高网络吞吐量,降低网络延迟。以一个简单的具代表性的蝴蝶网络来描述网络编码的思想,一下均假设每条链路单位时间只能传输单位b

26、it的数据数据信息量。图2.3和图2.4中分别是利用网络编码前后的网络传输状态,该网络有一个源节点S,两个端节点Y,Z以及其余4个T,W,U,X是四个中转节点。在图2.2中,b1和b2都是源s向端节点y和x发出的两个单位bit的信息,当b1和b2到达w节点时,由于一次只能处理一个单位的信息,所以W只能选择发送其中之一,而另一个则必须送入等待队列,因此,要使Y和Z这两个目的节点都要收到这两个信息,则W必须至少传送两次;图2.3表示的是网络编码方法,节点W对输入的信息进行网络编码操作(“+”表示模二加),然后将操作结果 b1 + b2(称为编码信息)发送至输出链路(W,X),然后又通过链路(X,Y

27、)和(X,Z),最终传送给信宿 Y 和 Z。当信宿 Y 收到 b1 和 b1 + b2后,通过逆过程的译码操作 b1 + (b 1 + b 2)就能恢复出信源 S 发出的 b2,这样使得信宿 Y 同时收到了 b1 和 b2。按照同样的方式,信宿 Z 也可恢复出信源发出的 b1(通过译码操作b 2 + (b 1 + b2))而同时收到 b1 和 b2。也就是说,基于网络编码的数据分发模式实现了该组播的理论传输容量。可见,与传统的路由传输方式相比,网络编码提升了网络的吞吐量。 图2.2 网络结构 图2.3 普通的存储转发 图2.4 运用网络编码从上述实例可以看出,基于网络编码的数据分发的具体实施过

28、程是:具备编码条件的中间节点(比如该节点的入度至少为 2,如图2.4中的节点 W 就具备编码条件,节点 T,U 和 X 等则不具备编码条件,只能执行存储和转发操作)对接收到的数据信息按照一定方式的处理(编码),然后传输给下一级的网络节点,收到信息的下一级节点如果具备编码条件,又对其接收的信息按照同样的方式进行处理和传输,如此反复,直到所有经过处理后的信息都汇聚到信宿节点为止。最后,在信宿节点,通过逆过程的操作(译码),即可译出信源发出的原始信息。节点对传输的信息进行如何处理和操作,属于网络编码的码构造问题。如果节点对传输的信息进行线性操作,则称为线性网络编码;否则称为非线性网络编码(Non-l

29、inear Network Coding)。如果网络节点对信息进行操作的系数是随机选取的,则称为随机网络编码;如果是通过算法确定出来的,则称为确定性网络编码。因此,线性网络编码是一种有效的网络编码码构造方式,当前具体的基于网络编码的数据分发系统中均采用线性网络编码作为其码构造方式。图2.4 所示的节点W对输入的信息 b1 和 b2 进行的模二加操作,就是一种最简单的线性网络编码操作方式。2.6 网络编码的应用虽然网络编码提出的初衷是为改善组播传输网络中数据分发系统的传输性能,但随着研究的不断深入,网络编码表现出了越来越广泛的应用前景。目前,网络编码与覆盖网络(Overlay Network)和

30、无线网络(Wireless Network)等相结合的研究取得了重要的进展,被认为是网络编码最有可能被首先应用的领域。1、 数据分发网络编码最直接的应用就是数据分发,尤其是大范围的数据分发。前面讨论的基于组播网络的数据分发,均是网络编码最典型的应用。Chou 等最早将随机网络编码付诸实施,构建了一个可实用化的网络编码数据分发系统,并在 Washington 大学的Rocketfuel 项目所获得的几个 ISP 骨干网络拓扑上进行了仿真,取得了较好的传输性能。CodedStream 也是在网络中较早进行了基于网络编码的数据分发的尝试71,CodedStream 是一个基于P2P模式的,面向高带宽

31、流媒体的数据分发系统。它按照编码网络分发数据的特性,在覆盖网络上构建一个 K-redundant 路径图作为网络拓扑,网络编码被用于图中“瓶颈”处的数据分发。最初的 CodedStream 在自己的仿真平台上进行了测试,其后续研究将整个思想进一步扩展,并利用 PlanetLab 平台进行了更广泛的测试。网络编码与应用层组播(Application Layer Multicast,ALM)相结合也取得一定进展。应用层组播中的数据分发由客户端主机实现的,端主机具有一定的计算能力,这为网络编码提供了良好的应用环境。而且,应用层组播利用的覆盖网络拓扑可以按需变化,这也恰好可以利用网络编码对动态网络适应

32、性强的优势。Y. Zhu 给出了一个基于网络编码的应用层组播的完整实现。通过对比测试,证明了基于网络编码的应用层组播在网络吞吐量、资源利用率等方面的性能要优于网络层组播和普通的应用层组播。但是在传输迟延和信息冗余等方面不够理想。而且,大多数情况下,网络编码能将应用层组播的吞吐量提升一倍以上。但是,T. Nad等通过进一步的实验证实,由于在执行编码和译码操作时需要一定的I/O和CPU消耗,基于网络编码的应用层组播的传输容量往往无法达到预期。2、 无线网络由于无线链路的不可靠性和物理层广播特性,应用网络编码,可以解决传统路由、跨层设计等技术无法解决的问题。具体来说,网络编码除了提升无线网络的网络吞

33、吐量,还可以减少数据包的传播次数,降低无线发送能耗。采用随机网络编码,即使部分网络节点或链路失效,最终在目的节点仍然能恢复原始数据,从而增强网络的容错性和鲁棒性。此外,无需复杂的加密算法,采用网络编码就可以提高无线网络的安全性等。文献20对网络编码在无线自组织网络(WirelessAd Hoc Networks)、无线传感器网络(Wireless Sensor Networks)和无线网状网(Wireless Mesh Networks)中的应用进行了探讨。J. Yuan提出了一种利用网络编码来优化信息流的路由方法21,以此来提升Ad Hoc网络中数据分发的效率。该方法基于一种在网络层和物理层

34、平衡链路带宽供需的跨层优化策略。Y.Wu等在Ad Hoc组播方面提出了应用网络编码的最小化能量解决方法22,使得传输每比特信息消耗的能量最小,以此来节省Ad Hoc网络中数据分发的能耗。此外,还有一些学者对如何利用网络编码增加Ad Hoc传输的鲁棒性问题进行了研究,如Chen等研究在分布式天线系统和多入多出系统(DAS-MIMO)中,引入网络编码的概念,经过理论推导和实验仿真,证明了无论有无辅助天线,网络编码都能提高网络的性能,尤其是减小系统丢包损耗。相对于Ad Hoc网络,无线传感器网络密度较大,移动性不强,通常运行在无人值守的恶劣甚至危险的远程环境中,能源无法替代,设计有效的策略延长网络的

35、生命周期成为无线传感器网络的核心问题。麻省理工学院的Petrovic等人提出了一种结合网络编码的对无线信号不进行调制的策略23,并证明:运用分布式随机网络编码,未经调制的无线信号能够达到与经过调制的无线信号一样的吞吐量,这样就能节省大量因为模拟器件进行调制而消耗的能量和降低节点的成本。传感器网络需要把节点资源整合起来,实现一个可靠和健壮的网络,基于这种想法,文献35提出了一种结合分布式源编码和网络编码的优化算法,目的是用来提高传感器网络的容错性和可靠性,同时对分布式源编码的压缩效率和鲁棒性进行了折中考虑。Katti等提出的基于机会的网络编码方法(COPE)首次研究了网络编码在无线环境协议层面上

36、的具体实现问题。在COPE协议中,每个节点对传输媒体进行侦听,获得它的邻居节点的状态信息,决定进行编码的机会,并在本地的FIFO缓存结构内进行编码,然后进行基于机会的路由。COPE协议要求每个节点利用本地信息各自决定哪些数据包需要进行编码以及如何进行编码。灵活的设计使得即使在网络交通需求未知或者网络流量剧增、或者发送/接收方动态变化的情况下,COPE协议仍能有效的支持多路单播流。然而该协议需要节点存储数据包并进行编码,如果网络出现拥塞,可能就会耗费较多的节点存储空间。另外,文件共享是无线网状网的一种典型应用,为了评估网络编码对该应用的影响,Hamra等64在理想化MAC协议基础上开发了特定的仿

37、真平台,分别比较了服务时间等性能在节点个数、盲转发(Blind Forwarding)和选择性转发(Selective Forwarding)情况下的表现。实验结果表明应用网络编码得到的改进虽然不如在有线网络中显著,但仍能在很大程度上提高吞吐量、缩短服务时间。2.7 随机线性网络编码的数据分发随机线性网络编码方法的核心思想是利用节点的运算能力,在发送节点线性编码组合不同的信息包,在接收节点获得足够的线性编码组合后,通过运算得到原始信息包,其可用性推广了网络编码理论的应用范围。应用网络编码的理论成果,Gkantsidis 等给出了基于随机网络编码的数据分发系统的原理模型(或称概念模型),如图2.

38、5所示。假设Server节点(存放原始文件的服务器)需分发某文件给 Peer A,首先 Server将该文件分割成 n 个文件块(Block),即B1,B2,B3.Bn,如果使用网络编码,则 Server节点从有限域中选择n个系数C11,C12.C1n构成编码向量(Encoding Vector)c1 =C11,C12.C1n ,并利用该向量对分割后的文件块进行有限域中的线性运算。随 后,Server节点将运算后的编码信息E1 = B1 c 11+ B2 c12 + .+ Bn c1n,分发给 Peer A图2.5 基于随机线性网络编码的数据分发系统的原理模型假设 Peer A 又下载了另外一

39、个编码信息块E2= B1 c 21+ B2 c22 + .+ Bn c2n,该信息来自Server节点或其它邻居节点,当Peer B对PeerA发出下载请求时,PeerA 按照上述同样的方式在有限域中选择系数c 1 , c 2,并对当前缓存的编码信息块 E1和 E2进行线性组合,将运算结果E = E 1c1 + E2 c2分发给Peer B。如果下游节点向 Peer B 请求数据包,则 Peer B按照同样的规则将编码后的数据信息分发给下游节点。对 Peer B收到的 E 而言,其对应的编码向量为c1 c1 + c2 c2。可见,采用网络编码,节点之间不再传输原始的文件块,而是编码信息(块)。

40、当某 Peer 接收到 n 个已编码信息E1 ,E2. ,En后,则有: 公式(2.1)如果公式2.1的系统转移矩阵 C 满秩,即各编码向量之间线性独立,则能通过求解矩阵方程B1,B1.Bn =C-1E1,E2.En T译出各原始文件块B1,B1.Bn ,并恢复出原始文件。由于采用随机网络编码总能保证矩阵C以接近1的概率满秩,基于随机网络编码和图2.5所示的原理模型,文献25构建了一种网络编码数据分发的原型系统:Avalanche。在 Avalanche 系统中,节点之间传输的信息是按照上述原理对原始文件块执行随机网络编码操作后的编码信息。Avalanche 能克服基于存储和转发的数据分发系统

41、(如 BitTorrent 等)的缺陷和不足,可以显著减少节点平均下载时间,进一步提升数据分发系统的传输性能。3 NS2仿真平台3.1 NS2简介NS2,即Network Simulator Version 2,是面向对象的、离散事件驱动的网络环境模拟器,主要用于解决网络研究方面的问题。NS2提供了在无线或有线网络上的TCP、路由、多播等多种协议的模拟。NS2昼以來都在吸收全世界各地研究人员的成果,包括UCB、CMU笏大学和SUN等公司的无线网络方面的代码。NS2足一个面向对象的网络桟拟工具,对以完整地模拟整个网络坏境。NS2使用一整套C+类库实现了大多数常见的网络协议以及链路层模型,利用这些

42、类的实例可以搭建起整个网络的模型,而且包括具体的细节实现。NS2使用两种编程语言,OTcl(具有面向对象特性的Tcl脚本程序设计语言)和C+,它底层的模拟引擎主要由C+编写,同时利用麻省理工学院的面向对象的工具命令语言OTcl作为模拟时的命令和配置接口语言。一方面,由于C+程序运行速度快,并且可以设计精确、复杂的算法,可以用于模拟各种网络协议,适合于底层的实现。另一方面,具有面向对象特性的Tcl脚本语言通过调用引擎中各类的属性、方法定义网络的拓扑,配置数据源,目的端,建立连接,产生所有事件的时刻表,运行并跟踪模拟结果,还可以对结果进行相应的统计处理或制图,方便网络研究者在短时间内快速地开发和模

43、拟出所需要的网络坏境。C+和OTcl两种语言的对象和变量是通过TclCL关联起来的,C+的类和对象为编译类和编译对象,而OTcl的类和对象为解释类和解释对象,TclCL是在OTcl基础上的封装。图3.1是NS2架构图,描述了Tcl、OTcl和TclCL之间的关系。图3.1 NS2构架图3.2 NS2的特点1、抽象NS模拟器在设计上能够满足网络研究界在模拟方面的多种需。抽象NS具备不同程度的抽象级别,不仅可以对细节进行模拟,也对以对不同层次的总体框架进行模拟。2、仿真NS提供了更加接近真实网络的仿真环境,这是其他仿真软件所不具备的。3、场景生成NS中自带了流最场景生成文件和运动场景cbrgen生

44、成文件setdest,让使用更加方便,当然也支持用户按照自己的实际需要编写场景及运动文件脚本。4、可视化通过其中的网络动画工具Nam,以动画的方式实现网络仿真的全过程,让整个 运动过程一目了然。5、可扩充性可扩充性表现在可以方便的添加新协议,让使用范围更加广泛。3.3 NS2仿真一般流程进行网络仿真前,首先分析仿真涉及哪个层次,NS仿真分两个层次:一个是基于 OTcl编程的层次。利用NS已有的网络元素实现仿真,无需修改NS本身, 只需编写OTcl脚本。另一个是基于C+和OTcl编程的层次。如果NS中没有所需的网络元素,则需要对NS进行扩展,添加所需网络元素,即添加新的C+和 OTcl类,编写新

45、的OTcl脚木。假设用户已经完成了对NS的扩展,或者NS所包含的构件已经满足了要求, 那么进打一次仿真的步骤大致如下:1、开始编写OTcl脚本。首先配置模拟网络拓扑结构,此时可以确定链路的基本特性,如延迟、带宽和丢失策略等。2、建立协议代理,包栝端设备的协议绑定和通信业务量模型的建立。3、配置业务量模型的参数,从而确定网络上的业务量分布。4、设置Trace对象。NS通过Trace文件来保存整个模拟过程。仿真完后, 用户可以对Trace文件进行分析研究。5、编写其他的辅助过程,设定模拟结束时间,至此OTcl脚本编写完成。6、用NS解释执行刚才编写的OTcl脚本。7、对Trace文件进行分析,得出

46、有用的数据。8、调整配置拓扑结构和业务量模型,重新进行上述模拟过程。下面是仿真的流程图:图3.2 NS2进行仿真的基本流程图3.4 NS2仿真的基本组件和使用3.4.1 节点的结构和配置无线网络中的节点是可移动的节点,拥有很多属性,如果使用NS研究无线网络需要在无线节点创建之前对节点的各项属性进行配置。节点的属性配置使用Simulator 类的noed-config 方法,该方法采用可变的模块化结构,以实现不同类型的节点在相同的节点基类下定义。配置好属性以后再创建节点,这是创建节点的基本方式,如需创建不同的节点则重新配置属性以后再创建。下面是使用node-config 配置一个节点属性的例子。

47、set ns new Simulator#建立一个模拟实例set topo new Topography #建立一个拓扑图对象#配置无线节点$ns node-config -adhocRouting AODV #无线路由协议是AODV协议-llType LL #逻辑链路层类型是LL层-macType Mac/802.11 #MAC层协议采用802.11协议-ifqType Queue/DropTail/PriQueue #接口队列类型是IFQ队列-ifqLen 50 #网络接口队列的大小是50-antType Antenna/QmniAntenna #天线模型是全向天线-propType Propagation/TwoRayGround #无线传输模型是TwoRayGround-phyType Phy/WirelessPhy #网络接口类型是无线物理层-channel Channel/WirelessChannel #物理信道类型无线信道-topoInstance $topo #设置拓扑实例-agentTrace ON #开启代理层trace-routerTrace ON #开启路由层trace-macTrace OFF #关闭mac层的trace-movementTrace OFF#关闭移动节点的移动记录设置完节点的属性

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号