资源预览内容
第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
亲,该文档总共5页全部预览完了,如果喜欢就下载吧!
资源描述
NS多信道协议仿真现状研讨1. 引言近年来,随着无线通信逐渐深入人心,WMN MANETW 3G等无线网络及相关技术取得了长足的进步,即包括了网络体系结构、节点角色功能以及适用应用场景的开展,也有硬件设备、配套网络协议及传输技术的开展。这些新技术中的一个值得关注的热点内容便是无线多信道传输技术及相关协议的研究。传统的单信道技术,网络中的所有数据和信令都通过一条信道进行传输,网络性能受到极大限制,无法满足日益开展的无线通信需求。而多信道技术那么可以使无线网络具备多个可用信道,节点能够同时使用多个信道进行通信,因而通常能够极大的提升网络带宽和系统容量,还可在一定程度上解决单信道无线网络无法解决的技术问题,如暴露发送/ 接收终端问题。目前已有诸多较成熟的技术可用于实现多信道通信,例如 FDMA TDMA CDMM SDMA可见多信道通信成为了当前和未来无线通信领域的一个重要开展方向。网络协议仿真作为开展协议研究的重要手段,具备了本钱低、效率高的特点,因而也势必随着多信道协议的开展而开展,为多信道协议研究提供更好的支撑。目前众多的专用网络仿真软件中比拟著名的有NS2、 OPNE、T GloMoSim和MATLAB。其中NS (Networksimulator )以其免费使用、源码开放、可扩展性强及结果可信度高等特点,在协议研究领域得到了极为广泛的应用,尤其适合高等院校等研究机构使用。NS2作为NS的第二个版本,也是目前使用最多的版本。目前 NS2 并不支持多信道协议的仿真,不过由于其开放源码和可扩展性强的特点,研究者可以根据需要自行对其扩展。本文论述了重要的 NS2多信道扩 展的实现方式,比照分析其优缺点和适用场景,为今后基于 NS2进行多信道协 议的研究和仿真奠定根底。2. NS 与无线网络仿真2.1 NS根本原理NS是一种离散事件仿真器1 o离散事件仿真,是指以 系统定义的事件为驱动进行的仿真,特定的事件产生后会改变系统状态,触发系统处理事件并完成特定工作。仿真系统的典型事件包括分组到达、定时器到期等。仿真系统内的时间推进也是由事件发生来确定的,因此仿真系统只需花费较少的运行时间就能模拟真实环境中较长的时间,使得协议验证的效率大大NS是由C+林DOTcl这两种面向对象的语言编写而成,因此大局部组件都 是由相互关联的两个类来实现的:一个 C+谈和一个OTcl类。这种方式称为分 裂对象模型(Split ObjectModel )。 NS 这种分裂对象模型,一方面使用C+语言实现组件的主要功能,从而利用 C+胡言的高执行效率使仿真获得较好性 能;另一方面又利用了OTcl 这种解释执行语言的灵活性,可随意修改其代码而无需重新编译,因此可以用来方便的对组件进行组装和编写仿真场景脚本等。上述关系可以简单的描述为:C+S写的仿真对象通过OTcl语言组装在一起, 并根据 OTcl 编写的场景脚本配置运行仿真。NS2中具备丰富的仿真组件和仿真模型,每一类模型或组件都对应着一定的应用场景和功能。无线网络的仿真便需要使用其中的无线仿真相关模型和组 件。2.2 移动节点模型NS2中对无线网络进行仿真采用的是被称为“移动节点 Mobile Node 的仿真模型。此模型最初源于CMU的Monarch工作组对NS的移动性扩展2。现有的 NS2多信道仿真扩展都是以移动节点模型为根底,通过对其结构和组件进行改 造而实现的。NS2 无线仿真本质上是由移动节点作为核心,并附加各种支持特性而构成,以实现对多跳ad-hoc网络和无线局域网等的模拟。NS2中有两种节点模型, 分别称为MobileNode和SRNode两者的区别在于网络层的分组分发机制和适 用的路由协议不同。MobileNode 模型使用更为广泛。移动节点中与多信道仿真密切相关的组件的含义和功能如下:Channel 物理传输信道:连接所有节点的组件。无线仿真中,由 NS的 通用操作指导模块GOD对象进行控制。NetIF 网络接口:模拟硬件接口的组件类似于收发器,移动节点通过这个接口访问信道。NetIF 为每个向下传输的分组写上传输功率等信息,接收节点的NetIF 使用无线传输模型来判断该分组是否具有被接收/捕获 /检测的最低功率。Radio Propagation Model RPM无线传输模型:无线传输模型用来计算每个分组在到达接收节点时的信号强度。在移动节点的网络接口层有一个接收功率阈值,当接收到的分组的信号强度小于该阈值时,这个分组就被标记为错误并被MAC层丢弃掉。MAC介质访问控制:MAC协议组件,用于仿真具体的 MAC协议。NS2 中已经实现了几种典型的 MAC协议例如IEEE 802.11 DCF和基于前导的 TDMA o要进行新MAO议的仿真验证时那么使用自行开发的协议替换该组件。IFq 接口队列:IFq被实现为一个优先级队列,它给每个路由协议分组赋予优先级并将分组插入队列头。它可以对队列的所有分组进行过滤,删除那些有特定目的地址的分组。LL 逻辑链路:逻辑链路层协议组件,可用于仿真具体的LL协议。NS2中实现的LL组件除了完成根本的分组传递功能外,还连接了一个ARP模块。ARP地址解析协议:地址解析协议组件用于IP地址到硬件MAC地址的转换。RTagent 路由代理:路由协议组件,主要实现以下三个功能:自己的路由代理与邻居之间交换路由分组;路由逻辑使用路由代理收集到的信息来进行真正的路由计算;利用计算出的路由表进行分组转发。使用自行开发的路由协议替换即可实现对路由协议的仿真。2.3 根本工作流程根据上述组件功能描述,NS移动节点的根本工作流程可分为节点向外发送分组和节点从外部接收分组两种,它们都可以用分组经过的组件路径表示:向外发送分组的路径为RTagent - LL ARP - IFq -MAC - NetIF RPM - Channel ;接受分组时的路径那么为Channel -NetIF RPM - MAC - LL ARP - RTagent 。由此也可以看出,移动节点模型只具备单一的信道组件,节点内各个协议层组件也只具备一条对外通信链路。因此,虽然目前NS2的无线仿真能够较好的实现单信道通信,但并不支持对无线多信道协议的仿真。3. NS 多信道仿真扩展现状尽管目前并没有正式版本支持多信道协议的仿真,不过因为NS的开源和可扩展特性,研究者可以自行开发以参加新功能。目前已有的一定的NS2多信道扩展的研究成果,能够支持特定类型多信道协议仿真。这些相关工作主要包括TENS Hyacinth、Ramon和MMS群多信道扩展方法。3.1 TENSTENS The Enhanced Network Simulator ,增强的NS 3 多信道扩展方法主要针对ns-2.1b9a 版本上实现的IEEE 802.11 协议进行扩展,例如MAC和物理层模型,在增强该协议实现的同时为 NS2引入了多信道仿真的能 力。TENS方法通过在物理层的C+咬现中采用多路复用的方式实现了多信道, 信道的选择那么是通过在Tcl 脚本中指定一个信道号变量来实现。另外,该方法通过修改Tcl 源文件ns-mobilenode.tcl ,将物理层等复制了多份,从而把多个信道相关的组件组合到了一个节点之中。TENS多信道方法主要目标在于仿真出能够被IEEE 802.11 DSSS版本协议使用的多个信道以及信道间的干扰,因此实现机制上与NS2已有的802.11协议耦合紧密,通用性较差。不过该方法采用的修改Tcl 源码复制并组合多信道的方式具有一定启发性。3.2 HyacinthHyacinth4 多信道扩展方法最初是由纽约州立大学在ns-2.1b9a 版本上实现,之后又被其他研究者移植到ns-2.26 以及 ns-2.29 版本上。与TENS方法相比,Hyacinth方法是为了实现对多信道路由协议的仿真, 因此扩展时涉及的协议层次更高修改内容也更广。该方法在仿真器中预先定义了 11 个不同信道以仿真IEEE 802.11b 物理层中定义的11 个信道,通过修改 ns-lib.tcl 文件中节点配置相关的Tcl 命令 node-config 方法,将其中的 5 个信道静态配置给了仿真中的每个节点。另外,Hyacinth 又修改了create-wireless-node 函数和 add-interface 函数,为每个节点静态复制5份网络接口卡相关组件包括 MAC?口 LL等,并按照信道和接口的次序就它 们连接在一起,以此满足其路由协议的静态分配信道策略5 。Hyacinth 方法成功实现了针对具有多个网络接口卡的多信道路由协议的仿真模型,为多信道路由协议的仿真做出一定奉献。其信道配置方式过于静态不 易灵活使用,且多信道能力的使用依赖特定的路由协议。1.3 RamonRamon6移信道扩展方法在ns-2.29版本上实现,也主要是针 对多信道路由协议的仿真。该方法大局部的修改都集中在Tcl 源码中。首先,在ns-lib.tcl 文件中参加记录多信道数量的变量numifs_,以及多个函数用于操作该变量,并修 改node-config 函数根据信道数设置节点的信道变量chan。之后类似 Hyacinth 方法修改create-wireless-node 函数和 add-interface 函数,参加复制网络接口卡组件和连接信道的功能,不过Ramon方法使用循环语句根据numifs_的值动态的构建多个网络接口卡,使得信道的配置更加灵活。每个节点 的多个网络接口卡通过add-interface 函数连接到一个路由代理上,使得路由协议可以直接使用和管理这些接口,以仿真具有多个接口的路由协议。Ramon方法尽可能的考虑到配置的灵活性,扩充了许多配置用的Tcl接口,再配合对应C+&件的少量修改,就可通过在仿真场景脚本中调用这些接口,实现对信道/接口数量进行设置。经过 Ramon方法扩展后的多信道仿真模型组 件结构。Ramon多信道仿真模型具备了多组并行的网络接口卡组件NetIF、MACIFq 和 LL 等,接口各自连接着一个固定信道,不同接口之间相互独立互不 影响;上层的路由协议实体统一管理这些接口。综上,Ramon方法能够仿真静态分配信道信道与网络接口一一绑定的多信道路由协议,且各种参数配置灵活,扩展后仿真模型的体系结构比Hyacinth 更为合理。不过其接口只具备一个固定信道的特点,不能满足需要网络接口动态切换信道的路由协议如 DSDV-MC7的仿真需求。另外,Ramon 方法的信道管理由路由协议实现,MAC协议只能使用一个信道,所以也无法仿 真基于MAC层实现的多信道协议。1.4 MMSMMMSMMulti-channel MAC Simulation Model ,多信道 MAC仿真模型 8 实现在 ns-2.29 版本上,与前面几种方法不同,该方法主要以MAC层的多信道协议作为仿真对象。为此,MMSM1型将移动节点模型中的与信道直 接相关的各个组件Channel和NetIF 复制多份,通过修改 Tcl和C+硼代 码将其组合到一个节点中,并受到 MAC协议组件白控制。MMSMf于相关源码的 修改思路类似于Ramon方法,也是
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号