基于opnet的8023协议仿真内容摘要:
间的区别 [2]。 对无线接入技术的仿真 采用 OPNET 软件对 IEEE802. 16d 网络的 BS、 SS 进行了节点和进程域的研究建模,对 MAC 进程状态进行了系统和详细的分析,研究并编写模块的出口、入口函数。 建立了 802. 16d 的网络仿真平台,对 BS、 SS 模块通信机制进行仿真,并对链路吞吐量等参数进行性能测试与分析。 通过对调度服务中的实时轮询业 务 rtPS 和非实时轮询业务nrtPS 的研究,利用该仿真平台对这两项业务进行了网络仿真,得到二者在仿真平台上的流量关系,并根据业务参数以及优先级关系,可以对所得结果进行详细的对比分析。 对路由协议的仿真 路由网络是由一组带有收发装置的移动节点组成的一个多跳的临时性自治系统。 在任一时刻,节点问通过信道连接形成一个任意网状拓扑结构。 节点可以任意移动,导致网络拓扑结构也随之发生变化。 在路由网络中,节点兼备主机和路由器两种角色。 一方面,节点作为主机运行相关的协同应用程序;另一方面,节点作为路由器需要运行相关的路由协议 ,进行路由发现、路由维护等常见的路由操作,对接收到不是发向自己的分组要进行分组转发。 因为路由网络是一个多跳的移动网络,两个要交换信息的主机可能不能直接进行通信。 在仿真器上建立描述物理网络的布局和资源,它包括节点、连接和端口的网络模型、由 IP 地址唯一标识的网络节点模型和模仿节点模型中每个进程模块的进程模型,当事件到达的时候,仿真核心 去确定 该事件应交给哪个进程进行处理,控制权随后就交给该进程模型,根据到达事件的种类进行相应的处理 ,处理后重新把控制权交回仿真核心。 通过这种方法可以模拟网络吞吐量在路由缓存建立的过 程中的变化过程和在模拟网络中路由请求的延时情况。 论文重点及结构安排 本论文的研究重点为 协议结构的实现和仿真研究,包括 MAC, MAC 控制和 OAM 等协议。 本文系统地研究 协议的分层结构模块和各模块功能的实现原理和实现方案。 论文的第 一 章介绍了 仿真技术 的发展情况,强调了本课题的意义和5 目标。 第二章对 OPNET 软件 作为 网络仿真软件 的优势、 OPNET 软件 系统的结构和工作原理作了介绍,使读者对本论文的研究重点有一个总体的了解。 第三章研究了 协议兼容性和分层结构,从 IEEE 802. 3 以太网协议出发引出与功能实现密切相关的 仿真 分层结构。 第四章按照提出的分层结构对各功能模块的实现作了仿真研 究。 第五章对整个研究做了总结并对以后的工作做了展望。 6 2 OPNET 概述 网络仿真的概念 在网络迅速膨胀的今天,网络研究人员一方面要不断思考新的网络协议和算法,为网络发展做前瞻性的基础研究;另一方面也要研究如何利用和整合现有的资源,使网络达到最高效能。 无论是哪一方面都需要对新的网络方案进行验证和分析。 进行网络技术的研究一般有以下 3 种手段: 分析方法,就是对所研究的对象和所依存的网络系统进行 初步分析,根据一定的限定条件和合理假设,对研究对象和系统进行描述,抽象出研究对象的数学分析模型,利用数学分析模型对问题进行求解 实验方法,就是设计出研究所需要的合理硬件和软件配置环境,建立测试床和实验室,在现实的网络上实现对网络协议、网络行为和网络性能的研究。 仿真方法,应用网络仿真软件建立所研究的网络系统的模拟模型,在计算机上运行这个模型,并分析运行的输出结果。 然而,前两种方法都存在很大的局限性。 分析方法的有效性和精确性受假设限制很大。 当一个系统很复杂时,就无法用一些限制性假设来对系统进行详细描述。 实验 方法的局限性在于成本很高,重新配置或共享资源很难,运用起来不灵活。 而仿真方法在很大程度上可以弥补前两种方法的不足。 仿真方法可以根据需要设计所需的网络模型,用相对较少的时间和费用了解网络在不同条件下的各种特性,获取网络研究的丰富有效的数据。 网络仿真无疑提供了一个方便、高效的验证和分析方法,因此网络仿真技术在现代通信网络设计和研究中的作用正变得越来越大 [3]。 OPNET Modeler 的 体系结构 OPNET 能够准确的分析复杂网络的性能和行为,在网络模型中的任意位置都可以插入标准的或用户指定的探头,以采集数据 和进行统计。 通过探头得到的仿真输出可以以图形化显示、数字方式观察、或者输出到第三方的软件包去。 此外,一系列仿真运行的结果被自动整理到一个单一的 OPNET 输出文件中,以便于比较分析(比如相对于网络负载的端对端延迟)。 7 OPNET 的软件结构 OPNET 软件包主要由三个模块组成: ItDecisionGuru 适合最终用户,它只有仿真、分析功能。 Modeler 在 ItDecisionGuru 基础上增加了建库功能。 Modeler/radio 在 Modeler 上又增加了对移动通信和卫星通信的支持。 ITDecisionGuru、 Modeler、 Modeler/Radio,这三个模块并非相互独立,而是层层嵌套的,采用同一用户界面。 OPNET 的功能 OPNET 由厂家提供的标准库模块有: 、 ATM、 FDDI、 Frame Relay、Ether( 10M 、 100M、 1000M)、 Token Ring、 TCP/IP、 UDP、 RIP、 OSPF、LAPB、 TP DQDB、 HSSB、 J1850、 STB、 CATV、 SNA、 AMPS、 VSAT、circuit switching、 clientsever 等。 第三方提供的库模块有:地形仿真库、大气仿真库、 SUN 网管接口、 HP网管接口等。 OPNET 允许用户使用 FSM(有限状态机)开发自己的协议,并提供了丰富的 C 语言库函数。 OPNET 还提供 EMA(外部模块访问)接口,方便用户进行二次开发。 OPNET 支持面向对象的调试。 对网络拓扑、节点 /设备的体系结构、过程逻辑(状态机 )、传输等不同层次的、不同类型的模型,都有专门的、符合人们习惯的工具来进行编 辑和浏览,而不像某些软件那样从上到下全部用框图表示。 网络设备厂家( HP、 Cisco、 3Com、 Xylan 等)提 供的模型参数全部基于哈佛测试实验室( Harvard test lab)的测试结果。 OPNET 可运行在 SUN、 HP、 Windows NT 等多种工作站平台上。 到目前为止,全球已有多个单位采用 OPNET 技术,用于通信网络研究开发以及网络规划,市场分布包括电信、军事、航天航空、系统集成、咨询服务、大学、行政机关等 [4]。 8 OPNET 的仿真模型库 OPNET 仿真模型库为客户提供了一系列的仿真模型。 在这些仿真模型的基础上,实现对网络的仿真。 OPNET 仿真模型库与其网络仿真引擎( OPNET Modeler, ITGuru, Applicat ion DecisionGuru 等)是分离的。 这种设计方式方便了模型的修改、升级。 OPNET的专业 部门负责对模型库进行及时更新。 同时,客户还可以根据自己的要求定制模型。 OPNET 提供的仿真模型库分成两类 [5]: 标准模型库: 标准模型库可以满足大部分客户的需求。 通常,在 OPNET 的核心产品( Mod eler, ITGuru, Application DecidisionGuru)中,已经包括了标准模型库。 标准模型库分成下述几类: ( 1) 数据链路层 ( 2) 网络层 ( 3) 路由协议 ( 4) 传输层协议 ( 5) 物理层 ( 6) 实用程序 ( 7) 综合仿真目标 ( 8) 应用层 ( 9) 无线模型 ( 10) 厂商设备模型 特殊模型库: 特殊模型库是针对客户的特殊需求或新的技术或某个厂商专有技术而提供的模型库。 特殊模型库必须额外收费。 目前,特殊模型库包括下述几种模型: ( 1) IP 多目广播模型 ( 2) 基于电路交换模型 ( 3) 多协议标签交换模型 ( 4) 通用移动电信系统模型 ( 5) 私有网间接口模型 9 OPNET 的优缺点 OPNET Technology 公司的仿真软件 OPNET 具有下面的优点,使其能够满足大型复杂网络的仿真需要 [6]: 提供三层建模机制,最底层为 Process 模型 ,以状态机来描述协议;其次为 Node 模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。 三层模型和实际的网络、设备、协议层次完全对应,全面反映了网络的相关特性; 提供了一个比较齐全的的基本模型库,包括:路由器、交换机、服务器、客户机、 ATM 设备、 DSL 设备、 ISDN 设备等等; 采用离散事件驱动的模拟机理( discrete event driven),与时间驱动相比,计算效率得到很大提高。 采用混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,既可得到非常细节的模拟结果,也大大提高了仿 真效率。 OPNET 具有丰富的统计量收集和分析功能。 它可以直接收集常用的各个网络层次的性能统计参数,能够方便地编制和输出仿真报告。 提供了和网管系统、流量监测系统的接口,能够方便的利用现有的拓扑和流量数据建立仿真模型,同时还可对仿真结果进行验证。 OPNET 的缺点: 价钱昂贵 OPNET 的单使用者授权费超过 2 万 5 千美金。 价格的因素使得盗版猖獗。 仿真网络规模和流量很大时 , 仿真的效率会降低。 目前解决方法:采用分层的建模方法,汇聚网络流量,简化网络模型;背景流量和前景流量相配合;流量比例压缩方法;优化调整仿真参 数设计;路由流量的简化;结果分析;如何针对不同的统计参数,选择合适的结果收集和处理方法。 软件所提供的模型库是有限的,因此某些特殊网络设备的建模必须依靠节点和过程层次的编程方能实现。 涉及底层编程的网元建模具有较高的技术难度,因为需要对协议和标准及其实现的细节有深入的了解、并掌握网络仿真软件复杂的建模机理。 因此,一般需要经过专门培训的专业技术人员才能完成。 编程的难度限制了OPNET 的普及与推广。 此外,建立在 OPNET 上的仿真平台当前无法脱离 OPNET10 环境,也是 OPNET 的一个局限性。 OPNET对路由协议的仿 真比较适合,但是对链路的仿真好想就只能通过 Pipeline stage 来做。 例如有用户试了把 pipeline stage 中 radio 的 propagation delay model 的传输速度( default 值是光速)改为声波在海水中的速度 1500m/s,但是仿真出来的propagation delay 结果居然没太大的改变。 而根据使用经验 matlab 或者 spw 就比较合适做链路层的仿真。 OPNET 核心函数 OPNET 的通信仿真机制 从宏观上看, OPNET Modeler 提供的功能主要分为两大类:系统建模,即 根据具体要求构建自定义的系统模型;系统仿真,即对现有的系统模型进行性能测试和行为分析。 OPNET 为通信网络和分布式系统的建模和性能评估提供了一个全面的开发环境。 可以说, OPNET 就是一个巨大的软件包,其中包含了大量饿工具,每种工具在建模仿真工程的各个阶段中负责特定的任务。 一个完整的系统建模和仿真工程可以分为 3 个阶段:建立模型、数据采集和仿真以及结果分析,如图 所示: 图 系统建模与仿真流程 OPNET 的核心函数 核心函数 ( Kernel Procedure) 由 OPNET 仿真核心提供,在进程模型或收发信机管道 阶段中调用,他可以是预设的终端函数,也可以是普通的 C/C++函数。 核心函数 具有校准的命名结构 ,增强了代码的可读性,也可为用户提供查找的方便。 它按照不同的操作对象可以划分为若干函数集,核心函数的命名与其所在的函数集联系密切,他的命名系统建模与参数设置 参数重设 置 数据采集和仿真 结果分析 11 规则如下: 核心函数的名称均以“ op_”为前缀,表示这个函数是由 OPNET 仿真核心所提供的。 函数名称的第二部分代表所属函数集,通常由操作对象的名称缩写所表示,如包括数集用 pk 表示、事件函数集用 ev 表示等等。 函数名 称的第三部分代表所属的子函数集,对核心函数进一步进行了分类,如op_pk_nfd_sizeof()中的 nfd。 这一部分对于核心函数的名称不是必需的。 对于核心函数对对象操作的情况,一般对象置于具体的动作之前,如 attr_get 表示取得属性信息( get attributes)。 函数名称中的各部分通过“ _”连接。 为保持代码整体的一致性,用户自定义的函数往往也采用这种命名方式。 OPNET Modeler 建模过程 OPNET Modeler 的仿真建模方法 OPNET 的建模主要有 以 下几种方法: 建立进程模型主要使 用 Process Editor。 在完全自己开发新技术时,在使用库中节点模型但是需要进行底层进程修改时,需要进行这一步来建立进程模型。 而在。基于opnet的8023协议仿真
相关推荐
贝时所占用的资源。 2 硬件开发:用 SOPC Builder 定义 NiosII 处理器系统,用 Quartus 软件定义器件、分配管脚并编译。 3 软件开发: C/C++程序开发,开发定制硬件的驱动程序,定制硬件平台为目标基于 Nios_II的电流 /电压表设计 6 进行编译连接。 4 下载到开发板上进行验证 5 成功完成 NiosII 系统设计 a 硬件开发流程 用 SOPC
版的 Linux系统中普遍采用的 GUI是XWindows系统,但显然它相对于嵌入式系统来说是过于庞大了,嵌入式系统要求西北大学学士学位论文 11 的是一个轻量级的性能可靠和可裁减的 GUI,因此需要重新开发适合嵌人式系统的 GUI。 目前国内外已经推出了很多基于 Linux的 GUI产品,现在比较流行的一些 GUI产品包括 MiniGUI、 MicmWindov,OpenGUI、 QT/
判断该行是否有输入如果没有输入的话 P14P15 电平如果有输入的话P14P15 电平就会触发中断进入中断服务程序获得输入数据键盘的扫描时间很短仅仅几微妙的时间然而按键的时间一次至少需要几十毫秒所以只要有按键按下的话是都可以被扫描到的另外还要考虑键盘的抖动处理 [13]为了防止键盘的扫描而影响其他部分的处理这里采用了定时器 B来检 察是否有按键按下图 43为该部分的程序流程图
数,每个继承类实现自己的功能。 ( 3)节点( Node):节点是对实际网络中分布在不同地理位置的主机、交换机、路由器等网络设备的统一抽象,是构成网络拓扑结构的一个重要组成部分。 ( 4)链路 (Link):链路用来连接节点和路由器。 一个节点可以有一条或多条输出链路 (如路由器 ),所有的链路都以队列的形式来管理分组到达、离开或丢弃,统计并保存字节数和分组数。
模块设计 8088 最小应用系统整体模块功能 该模块是整个系统的硬件控制指挥中心。 由它控制整个系统 运行。 8088 最小应用系统整体模块组成 [4] 该模块有微处理器 8088, 74LS373, 8284 时钟发生器, 74LS138 译码电路等构成。 微处理器 (CPU)、 外部设备 及互联设备在各部件之间提供通信。 Intel 8088 按功能可分为两大部分:执行部分
动态速率转换,当射频情况变差时,可将数据传输速率降低为 ,2Mbps 和 1Mbps,且当工作在 2Mbps 和 1Mbps 速率时可向下兼容。 的使用范围 在室外为 300 米,在办公室环境中则最长为 100 米,适用与以太网类似的连接协议和数据包确认,来提供可靠的数据传送和网络带宽的有效使用。 基本分为两种 : 点对点模式和基本模式,点对点模式是指无线网卡和无线网卡之间的通信方式 ;