(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf_第1页
(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf_第2页
(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf_第3页
(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf_第4页
(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(计算机科学与技术专业论文)卫星网络半实物模拟仿真平台研究与设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国防科学技术大学研究生院学位论文 摘要 基于卫星移动组网的通信网络是未来网络技术主要发展方向,对国防科技,社会信 息化有非常重要的意义。而关于卫星网络系统的模拟仿真平台是国内外的研究热点。 本项目的核心目标在于设计实现一个综合卫星网络半实物模拟仿真平台,以便对于 卫星通信网络系统的软硬件、组网以及协议等设计测试和验证起到很好的辅助作用,从 而在卫星网络这样投资巨大的系统实施之前,做好相关的前期工作。 本文首先根据项目设计的广泛背景,跟踪国内外现状研究了其有关的各个方面的资 料,然后提出了一种新型的半实物卫星网络模拟仿真平台概念,并研究探讨了其设计的 基本原则和框架。同时基于网络模拟和网络仿真对于半实物网络模拟仿真这种新颖的网 络系统研究方式做了全面的诠释,提出其完整的概念探讨研究了其实现原理,并提出 了一种有效实现半实物网络模拟仿真的新型模型。最后基于平台设计,研究探讨了平台 实现所需的关键技术。重点实践了其中基于包截获的网络模拟仿真联合技术,并进行了 测试验证。 对于综合卫星网络半实物模拟仿真技术的研究还剐转q 起步,本文傲了卫星网络路由 交换验证平台的相关基础工作,还需要进一步的细化完善。这是一个很有前景的领域, 相信今后会得到更好的发展。 关键词:卫星网络,半实物,模拟,仿真 第1 页 国防科学技术大学研究屯院学位论文 a b s t r a c t m o v i n gs a t e l l i t en e t w o r ki sam a j nd e v e l o p m e n td i r e c t i o no ft 1 1 ef u t u r en e t w o r kt e c h n i q u e i th a sm u c hi n e a n i n gt ot h en a t i o n a ld e f c n 5 es c i e n c ea n dt e c h n 0 1 0 9 y ,a 1 5 0t 0t l l es o c i e t yw h i c h j sj n f o m a t i o n - b a s e d t h es i m u l a t i o na n de m u l a t i o nt e s t b e df o rs a t e l l i 钯n e t w o r ki sad o m e s t i c a n di n t e m a t i o n a lr e s e a r c hh o t s p o t t h ec o r et a r g e to ft h ep r o j e c tl i e si nd e s i g l l i n ga n d c a r r y i n g0 u tac o m p r c h e n s i v es a t e l l i t e n e t w o r ks i m u l a t i o na i i de m u 王a c i o nt e 灼e di no r d e r 幻d e 正g n ,v 嘶f y 国防科学技术大学研究生院学位论文 臣且录 图2 f 3 2o n e 仿真模式图8 图2 3 3 、1 网络模拟基本架构示意图8 图2 3 3 z 网络仿真示意图9 图2 3 1 4 1n s e 仿真流程图一l o 图2 3 4 2n s e o p a q u em o d e 示意图1 0 图2 ,3 r 4 ,3n s ep r o t o im o d e 示意图1 l 图2 3 4 1 4n s e 半实物网络模拟仿真模式一“ 图2 3 5 1 流模型图1 3 图2 3 5 2 包模型图1 4 图2 3 5 3 混合模型与流模型和包模型的比较1 5 图2 3 6g a l i l e o 模拟体系结构图1 6 图2 3 7 三维显示仿真示意图1 7 图3 3t c 彤毋协议栈层次通信示意图2 3 图3 3 1 2 单机网络模拟仿真模型图2 5 图3 3 2 1 分布式网络仿真模型图一2 5 图3 3 2 2 分布式网络模拟仿真协议栈图2 6 图4 3 1 ,1 综合卫星网络半实物模拟仿真平台概念框架图3 1 图4 3 1 2 联合模拟仿真概念框架图3 2 图4 3 2 平台功能模块图3 3 图4 - 3 3 平台层次图3 3 图4 3 4 分布仿真系统结构图一3 4 图4 3 5 卫星网络模拟模型框架图一3 5 图4 3 6 网络模拟仿真框架图3 6 圈4 3 7 卫星星座显示系统框架3 7 图4 4 1 1 传统网络模拟模型- 3 8 图4 4 1 2 隧道网络模拟模型3 8 图4 4 3 网络模拟仿真通用库实现界面4 0 图5 1 1w i n d o w s 系统的网络体系结构4 1 图5 2 1n d i s 结构图一4 4 图5 2 2 1n d i s 删d 层次图4 5 图5 2 2 1 2n d i s 框架图一4 6 图5 2 3 1 包截获处理的n d i s 实现框架一一4 7 国防科学技术人学研究生院学位论文 图5 2 3 2 具体处理模型图 图5 2 ,4 接收数据包的流程图一 图5 3 2 包的处理框架一 图5 3 3 数据包发送流程图 图5 4 1 1n d i sn 。t o o n em u x 【m d 框架 图5 4 1 ,2 虚拟结点通信示意图 图6 2 系统兼容性测试图 图6 3 功能性测试图 图6 4 实际环境测试图一 图6 5 1 包截获性能测试图 图6 5 2 包截获处理系统运行性能图 第v 页 棚棚棚艘册捣栅栅栅册棚|i| | | | = 二= | | 目防科学技术人学研究生院学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 兰= 三:= 兰= 三= 兰三:三= = := = = = = = = = = = = 表目录 表2 f 3 1 1 不同的卫星轨道分类 表2 3 1 ,2 典型的中低轨道卫星系统的星座组成 表3 1 2 四种网络设计方法比较表 6 6 1 9 第v i 页 一 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 学位论文题目:卫星圆终主塞堑搓型笾裹壬鱼煎壅生遮盐 学位论文作者签名:焦整日期:劢了年五月彩日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电亍 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目:里星圆终主塞抱搓拯笾墓壬佥盟塞量遮主 学位论文作者签名:丝坠 作者指导教师签名:二毕 日期:万年t 2 月萝日 日期:。一r 午l 。月甲日 国防科学技术火学研究生院学位论文 第一章绪论 1 1 研究背景 网络作为信息栅格的基础,一直是学术界和工程技术领域研究热点。目前因特网技 术在经济、国防等社会各个领域广泛应用,但还面临着很多技术问题,如带宽、容量、 可靠性、安全性、易用性、易访问性、服务时间等。 促进网络技术发展的需求发生了重大改变,网络已经从辅助技术变为了核心技术, 信息系统的中心已经从计算机转变为网络。在以网络信息为巨大需求的应用背景下,以 因特网技术为主的传统网络技术面临巨大挑战,需要以一个新的视角重新审视网络。还 有一个需要重视的问题,目前网络技术的研究多集中在保持网络基本体系不变的情况下, 针对个别问题和需求对网络体系局部进行调整和优化,虽然短期内使问题有所改善,但 从长远来看,可能南辕北辙,越发偏离正确方向。应该尽快开展相关的前瞻性预先研究。 信息栅格技术将是今后十至二十年信息系统发展的主要技术方向。将会成为电子信 息系统非常重要的技术体系,也将成为国防信息综合处理和集成的关键,没有信息栅格 技术就无法形成有效的一体化信息服务技术。因此,信息支撑系统的发展应将信息栅格 软件技术作为一个重大技术专项研究,而基于卫星栅格系统组网的天地空海一体化网络 将是未来网络技术的主要发展方向,并对国防科技有非常重要的意义。 卫星综合信息系统的核心就是卫星栅格网络系统。卫星综合信息网是以应用卫星为 基本物理构架,通过星间链路的互连和对各种卫星系统多源数据的融合处理,实现信息 网络跨越式发展,而提出的具有时代性、前瞻性的研制任务。卫星综合信息网将极大地 提高卫星系统的整体效能与信息保障水平,并将成为未来信息基础设旌的重要组成部分。 卫星综合信息网的时间和空间基准由网络本身支持,通过与地基系统的校准,完成 天地一体化协同,大大降低对地面系统的依赖。其中用户卫星完全可以不依赖地面基准, 自主完成对地观测对象的定位、定时、定向及属性识别,形成以地面参照为背景的综合 信息,提供不同用户使用。其基本要素包括: 由网络本身提供时间和空间坐标基准; 由网络提供对地观测目标多元素特征信息,经融合处理,完成目标的定位、定时、 定向及属性判断: 由网络天基端接纳地基系统的参与和应用。 卫星综合信息网的基本特征和发展方向是: 应用卫星互通互连,形成互相支持的立体构架: 卫星系统功能离度集中,系统效费比高; 多源信息高度融合,认证信息可信度高; 第1 页 国防科学技术大学研究生院学位论文 真,国内外都在进行积极的研究,并有相对比较成熟的成果和应用,本文将基于总体设 计的角度进行研究。 1 0 4 本文结构 全文共分七章,各章组织如下: 第一章给出了课题研究的概要情况,包括课题的研究背景、研究内容等。 第二章对课题进行了分析,并对涉及的相关背景领域进行了研究。 第三章提出并诠释了半实物网络模拟仿真的完整橛念,并着重研究了其原理。 第四章给出了平台的整体设计框架及其关键技术的研究探讨。 第五章实践了提出的部分关键技术,详细介绍了实现细节。 第六章进行了系统的测试,展示了测试的结果。 最后一章给出本文的结论,并对下一步的工作进行了展望。 第3 页 国防科学技术人学研究生院学位论文 第二章课题分析研究 本课题是一个预研项目,从立项以来,还处于基础研究的阶段,对整个系统所设计 的各个方面进行资料技术积累,对其概念原理以及设计框架和实现技术进行论证和试验, 由于课题提出的规模比较庞大,概念比较新颖,而研究刚刚起步,所以项目还比较“空”, 而我研究的重点是系统的整体概念设计以及比较新颖的半实物网络模拟仿真技术,所以 前期对于课题本身的分析研究非常重要,面对这样一个相对“空”的项目如何思考,不 能束手无策,应该对涉及的相关领域进行研究,理清思路,建立联系,提出基本概念, 步步深入,摸索出研究的路线。 2 1 面临的问题 如前所述,该项目是一项复杂的系统工程,而作为复杂系统的重要研究手段,总体 概念设计模拟仿真需要先行,而其中建立一个综合半实物卫星网络模拟仿真平台将是整 个卫星喇络系统软硬传的设计实现韶测试验汪的基础。对于基于卫星组网的通信系统这 样超大规模的项目来说,一个优秀的综合模拟仿真平台将会对系统软硬件、组网蛆及运 彳亍协议的设计、测试验证和最后的实现起到不可或缺的关键作用,其设计的好坏直接关 系到最后整个系统的成败。当前所面临的问题就是怎样分析设计这样一个综合半实物卫 星网络模拟仿真平台。 基于卫星组网的通信系统是关系国防科技,社会信息化的重要项目,有关其模拟仿 真平台的设计也是国内外的研究热点,是比较新颖的概念。虽然现在网络模拟、网络仿 真、星座三维显示仿真和卫星网络建摸等领域都已经有了糨当的技术成果,但是实际上 _ 并没有出现真正意义上的综合卫星网络模拟仿真平台。目前已有的网络模拟仿真软硬件 基本上仅专注于各自的领域,仅注重于模拟或者仅注重于仿真,而且各自设计架构的出 发点不同,并不符合综合模拟仿真的需要,其功能上也有所偏重与缺失,使得它们并不 能满足我们的需求。所以,设计一种新型综合卫星半实物模拟仿真平台,使其能够适用 于卫星通信系统软硬件、组网和协议的设计测试和验证,将是一项具有相当挑战性的关 键技术项目。 半实物网络模拟仿真将是该软件平台引入的新颖功能,其实现技术比较复杂,对其 实现技术的探讨和实践也将是面i 晦的重点所要解决的问题。 2 2 本文工作重点 卫星网络半实物模拟仿真平台是个复杂庞大的项目,本文工作重点就在于对平台 第4 页 国防科学技术人学研究生院学位论文 的总体概念没计进行分析研究,提出一种新型综合的卫星网络半实物模拟仿真平台的概 念原型,给出一套完整的可行的设计方案,同时将着力鳐决其中提出并面临的比较新颖 的半实物网络模拟仿真的实现问题。 由于没有现行的可参考的完整方案,本文的想法是先建立在目前国内外对于网络模 拟、网络仿真、卫星网络建模、星座三维显示仿真等相关各个领域的研究之上,综合其 各个部分的特点再将其联合起来,提出一个综合完整的模型,同时保证其创新的概念设 计思想,并对其中的关键实现技术进行探讨实践。 2 3 相关研究工作 2 3 1 卫星移动网络 近几年来,具有星间链路( i n t e r - s a t c l i t el i n k ,i s l ) 的宽带卫星网络技术发展迅速 3 8 1 。宽带卫星网络同地面网络的结合将有助于缓解地面骨干网络的拥塞并向i n t e r n e t 的 边缘提供更快、更方便和灵活的接入,也为个人用户的全球移动接入提供可能。如何利 用不同轨道的卫星组建卫星网络成为人们研究的热点。卫星网络在全球数据通信中正变 得越来越重要i 1 1 。它不仅能够提供全球覆盖,具有连续的商带宽性能,而且还支持灵活 和可扩展的网络配置。当前,全球有一半以上的区域不能通过地面网络覆盖。通过使用 卫星接口,在本地构建的网络可以很方便地与世界其他地方实现互联。同时,卫星网络 也是地面网络的一个可选备份,当地面网络不可用或者出现拥塞时,可以通过卫星网络 传送数据流。毫无疑问,卫星网络将成为下一代i n t e r n e t 不可缺少的组成部分【2 j 。 传统的通信卫星都是处于地球同步轨道上( g e o s t a t i o n a r y - e a r t ho r b i t ,g e o ) 。典 型地,g e o 卫星采用弯管式转发器为地面两点之间的通信完成数据转发。这种形式是固 定的,没有路由可言纠。随着p 流量和实时多媒体应用需求的增长,有必要从新的角度 考虑卫星通信系统。特别是星上处理技术和小卫星技术的发展,使利用星间链路把各种 类型的卫星连接在一起组成卫星网络成为可能。星间链路可以用来传输信号、网络管理 信息以及数据流。与传统的地球同步轨道( g e o ) 卫星不同,中轨道( m e o ) 和低轨道 ( l e o ) 卫星具有更多的优势,比如往返延迟低( 典型值为1 0 - l o o n l s ) 、对地面终端的 功率要求低等,利用i s l 组成卫星网络是真正实现全球通信的更好选择。但是,中低轨 道卫星围绕地球表面的高速运动使卫星网络的拓扑结构具有了时变特性,主要包括: 1 卫星移动使不同轨道面上的卫星之间的i s l 长度持续变化,从而使网络拓扑持 续变化; 2 卫星之间的可视角的变化导致在某些特定时刻和区域不能维持i s l : 3 对于极地星座,不同运动方向的轨道面之间存在缝隙,使维持i s l 比较困难。 深入分析卫星星座网络的动态特征对研究卫星网络的协议栈,特别是星座网络中的 第5 页 国防科学技术大学研究生院学位论文 路由选择具有重要意义。 卫星轨道 卫星在地球的外层空间中以一定的规律围绕地球做高速运动,其运动轨迹称为轨道。 根据使用目的、覆盖要求和技术水平的不同,卫星轨道可以具有多种形式,与此相对应 的分类方法也各不相同。表2 3 1 1 给出了卫星轨道的不同分类: 表2 3 1 1 不同的卫星轨道分类 依据类型l类型2类型3 轨道形状圆形轨道椭圆形轨道 轨道平面倾角( i )赤道轨道i = o 度极地轨道i = 9 0 度倾斜轨道0 度( i 9 0 度 轨道高度( h )低轨道h 2 0 0 0中轨道同步轨道h = 3 5 7 8 6 k m k m5 0 k m 珏 2 5 0 c 啦m 是否与地面保持静止对地静止轨道对地非静止轨道 关系 卫星星座 具有相同的类型和功能,为了共同目的而设计为在相同的、互补的轨道上运转。并 在若同管理下的一组相似卫星组成的系统称为星座。而星座网络一般指星座中各卫星节 点具有建立i s l 能力的星座,如t r i d i u m i a 1 5 ( 铱系统) 、t e l e d e s i c 6 】等。为了分析不同轨 道高度的星座网络的特征,我们也把g p s 星座看 乍具有i s l ,实际的g p s 系统串并没有 i s l 。表2 3 1 2 给出了3 个典型的中低轨道卫星系统的星座组成,表中同时给出了不同 轨道面间的卫星相位差和轨道面夹角。 表2 3l2 典型的中低轨道卫星系统的星座组成 参数 l r i d i u mt e l e d e s i c g p s 轨道高度( k m ) 7 8 01 3 5 02 0 2 0 0 轨道面数 61 26 每个轨道面上的卫星数 1 12 44 每颗卫星维持的最大i s l 数 484 轨道倾角( 度) 8 6 48 7 45 5 轨道闻闻隔( 度) 3 2 t 了31 53 2 ,7 3 异轨卫星相位差( 度) 一1 6 4 一1 59 0 卫星网络体系结构 卫星网络般指在空间段的各种卫星通过i s l 连接在起组成的网络。为了实现使 用l s l 组成空间两络,根据不同的应用需求,一个卫星网络的体系结构一般有三种选择, 即l e o 卫星网络、l e o m e o 卫星网络和多层卫星网络。 第6 页 国防科学技术人学研究生院学位论文 通常,在卫星网络中,主要有三种类型的链路: i s l :卫星之间的通信链路。同轨道面上相邻卫星之间的i s l 称为轨道内i s l ,不同 轨道面上相邻卫星之间的1 s l 称为轨道间i s l 。一颗卫星可以同时维持4 至8 条i s l 。轨 道内i s l 可以一直存在,而轨道间的i s l 可能会在某一时间段内短暂关闭。 轨道间链路( i n t e r - o r b i t a ll i n k ,i o l ) :不同层次卫星之间的i s l 。比如g e o 卫星 与m e o 卫星之间的i s l 就是一种i o l 。 用户数据链路( u s e r d a t a l i n k ,u d l ) :卫星与地面网关或者移动用户之间的链路。 一颗卫星可以同时维护多条u d l 。 卫星网络中的路由 卫星网络中的路由可以分为两部分,i s l 网络路由和边界路由。边界路由解决卫星 网络与地面网络之间的融合。一般情况下若非特殊说明,卫星网络中的路由都是指i s l 网络路由。 2 3 2 卫星网络模拟仿真平台 目前在该领域提出类似概念设想的仅有美国国家宇航局的卫星网络和架构研究组 f n a s ag l e n nr e s e a r c hc e n t e rs a t e l l i t en e t w o r k sa n da r c h i t e c t u r e sb r a n c h ) ,其目标是通过 设计实现一个模拟仿真平台使得能够在可控环境下对卫星网络中软硬件、组网和协议进 行设计测试和验证,并且已经释放出一个实验性的针对卫星网络的仿真器o n e ”,目前 的版本是3 0 ,工作在s o l a r i s 平台上,但是功能还非常简单,距离完善的网络模拟仿真 功能的概念还有相当距离。 目前o n e 的功能仅仅是一个简单的软件路由器,它要求运行s o l a r i s 系统的主机上 有两块以上的网卡。o n e 接受脚本输入,输入的脚本包括对星空距离、链路带宽、链路 状态、转播时延、丢包率等参数的描述,o n e 运行时将根据参数进行计算,模拟脚本描 述的星间链路状态,将从一个网卡接口上传入的网络包进行相应的时延丢包等处理后送 至另一个网卡接口上,这样对于网络数据包流来说就仿真了一个虚拟的星空链路环境。 o n e 的仿真模式示意圈【s 】如图2 3 。2 所示。 第7 页 国防科学技术大学研究生院学位论文 ,、 1 竺竺! i h o s t a 卜一 i 。一: - i 弋:岁 图2 3 2o n e 仿真模式图 2 3 3 网络模拟与网络仿真 网络模拟与网络仿真是现代进行网络系统研究的重要手段。 网络模拟注重的是在概念上对网络层次特征进行抽象【2 ”,建立尽可能近似的模型, 通过软件模拟构造一个完全虚拟可控的抽象网络环境,在此环境中对网络拓扑,协议算 法等软部件进行设计验证和测试,一种来自g a l i l e op r o j e 吐的典型的网络模拟基本架构 示意图【16 】如图2 3 3 1 所示。所以网络模拟的优势在于可控性和可再生性i 冽,但它仅是一 种近似真实的结果。网络模拟器是由软件实现的。目前流行的网络模拟器有 n s 2 1 9 l 【2 3 1 。o p n e t 【1 0 1 o m n e t + + 【1 等。 图2 33 i 网络模拟基本架构示露图 第8 页 国防科学技术疆嘶蚝¥郭疆“萋等 霪j 琵裂苇嘴丽噶翼羹菥:舌苔磊醪雏零雒箭新。糙舞薯眨薷型转霹美辫渊嶷蓬囊i 耗j 妊| ;i l l 3 , 藿瑟摧拦罾荦尘: 鬻弹殴髯诬查歪透明模式中穗潆: :j :限俩澎憾孺灌臻:不可理解的鞯翱亲真垂i 四f 晷抄矧擎剐办1 因曩刘啦蝴鸳窝势制巨j 蚤州剥管:葱蕊超嘲疆苘0 哞雏蠢种i 隧嘲湖瞧 更喊咧滔糍凄萌理嫩重尚荆j 滑蠢差鞭辎期乳辋强弱转聪燮姐 f j :似剿疑醵。礴搿蒿 瀚澎狴兹嚣酵私娃。葫翁辨甜美勖薹划斟鬻j 誊瞧弹垡圆滓喊噬遵疆蔼 篓篓萋;螽堇鬟妻萋l 墨嗣釜毫窿晕7 弱。 謇耋翼驻麒弱葫蟋蒌办1 刘劐蠢篝臻臀浚窭虱i 黠辨酾釉靳繇醐一逝慨噤喇狲堰在 协议模式虫模拟器能i 圳品川罄b 掣到一嚣答誊蕊辑;笺她耐畦酯弱醛孵酣稚斛黔皤 罄靠养蔼稚j 衍嚣其孙翼习甄刊麓晦籀托稚施鲜祥:渤淮滢溶i - :f j 童蒜谨憔举噬峰藩落 咝髦瑟 x 国防科学技术人学研究生院学位论文 一个简单的流网络模型i ”1 如图2 3 5 i 所示: s 妇血豇i s , u m t m 4 cx cx 图2 3 5 1 流模型图 。 在使用流模型方法的网络中,系统间的数据流被建模成流经管道的流量。为了方便 讨论,假定没有循环的流动,网络中只包正反馈。但是基本的模型方法也能够被应用到 负反馈网络中。在网络模型中的每个位簧,数据流被使用如下六个过程来建模: 1 a ( t ) :此位置的输入流速率,它建模了在该位置收到数据的汇集速率( b i t s e e ) 。 它可以是前一个位置的输出,过滤微端口驱动程序,实现特定的协议或其他诸如数据包加密、认证等功能。 w i n d o w s 使用n d i s 函数库实现n d i s 接口。所有的网络通信最终必须通过n d i s 完成。 n d i s 横跨传输层、网络层和数据链路层。n d i s 的结构如图5 2 1 。 图5 2 ,1n - d i s 结构图 n d i s 结构分为三层: 网络接口卡驱动程序( m i n i p o an e t w o r ki n t e f f a c ec a r dd r i v e r s ) 管理网络接口卡,n i c 驱动程序在它的下端直接控制网络接口卡硬件,在它的上端提供个较高层的驱动能够 使用的接口,这个接口般完成以下的一些任务:初始化网卡,停止网卡,发送和接收 数据包,设置网卡的操作参数等等; 中间层驱动程序( i n t e r m e d i a t ep r o t o c o ld r i v e r ) 在协议驱动程序和微端口驱动程序之 间。在商层的传输层驱动程序看来,中问层驱动程序像个微端口驱动程序,而在底层 的微端口驱动程序看来,它像一个协议驱动程序。使用中间层驱动程序的最主要的原因 第4 4 i显示子系统 驱动程序分配数据包,将用户发来的数据拷贝到数据包中,然后通过n d i s 将数据包发 送到低层的驱动程序,这个低层的驱动程序可能是中间层驱动程序,也可能是微端口驱 动程序。它在自己的下端也提供一个协议层接口,用来与低层驱动程序交互,其中最主 要的功能就是接收由低层传来的数据包,这些通讯基本上都是由n d i s 完成的。 离散事件】 酪堡萄闫墨涛1 1 雾共蘩出童蠼兰l 并罄掌矛窑 霎藩誊酉聋 蓁 目倒乐琢 ; j 一! 弃矗彗巨母 ;矧靠穆彗争。l 剑瓤毳矬 过薹遵豳捌 雾 * 妈”豇骢茧篓计滠 啪剐辨砰静 ! r ,m 彭竹自雕孺菲竹薹迥消箍掳鋈孵 ! 5 2 2 n d i s 中间层驱动 按照上节对于n d i s 结构的描述,可以知道基于包截获的半实物网络模拟仿真联合 的关键技术在于n d i si m d ( i m e r m e d i a t ed r i v e r ) 即n d i s 中闻层驱动。中间层驱动的机制 实际上是基于对于n d i sm i n i p o r ti n t e r f a c e 和n d i sp r o t o c o li n t e r f a c e 两层接口间的内部 绑定,对于流通的网络包的诸如分析、截获等的处理技术主要便是基于其接口绑定的方 式关系,如图5 2 2 1 所示。 图5 2 2 1n d i si m d 层次图 实现将基于n d i s 5 1 规范,应用n d i s 中间层驱动程序,n d i s 框架如图5 ,2 2 2 所 示。 国防科学技术火学研究生院学位论文 模拟仿真部分 卫星星座显示系统 图4 3 7 卫星星座显示系统框架 4 4 平台关键技术的分析探讨 该平台的设计涉及到很多的技术,其中一些是关键技术。关键技术将提出新的概念 模型,同时将对该技术进行分析探讨,下面介绍所涉及的关键技术。 4 4 1 一种新型联合模拟仿真模型一隧道技术 前序章节已经提到应当结合网络模拟和网络仿真的各自优势,从而真正实现半实物 网络模拟仿真,隧道技术便是这样种关键技术使得能够真正意义上做到联合网络模拟 仿真。一般的网络模拟如图4 4 1 1 所示,所有的节点链路模型都是模拟建构的,包括模 拟的网络协议栈都是简化的甚至并没有协议层次的概念,这样的模拟模型自然也事先并 不会考虑与真实网络通信的仿真能力,所以造成了先天上的缺陷,同时模拟的可靠性准 确性依赖建模的近似度。 然而在要求接入硬件实物进行联合测试的需求下,通过网络仿真将实物接入是可行 办法,但是这样的连接比较生硬。能够从新考虑,结合网络模拟和网络仿真的各自优势, 建立一种新型的模型框架,模型足够的简单自然,满足设计需要,而又不失效率,实现 两者的无缝联合,从而真正实现半实物的网络模拟仿真联合。 第3 7 页 国防科学技术大学研究生院学位论文 4 4 2 虚拟网桥与虚拟网卡 上面提到了隧道技术需要建立虚拟网桥和虚拟网卡。虚拟网桥的基础是虚拟网卡, 因为运行模拟仿真平台的机器不可能提供许多真实的硬件网卡供任意数目的虚拟节点使 用,所以基于单独的网络接口创建若干虚拟网卡和地址便可以解决问题,其作用在于让 每一个模拟节点拥有类似真实节点的通信能力。因为单独的真实网络接口只收集该网络 接口地址的数据包,在基于虚拟网卡的基础之上,虚拟网桥的作用在于在单独的网络接 口上监听收集模拟网络环境中模拟节点的虚拟网卡地址的有关信息,并负责虚拟地址和 真实地址之闯的数据包传递,从而真正的将模拟弼络和真实两络联结起来,并且在此基 础上可以实现分布式模拟仿真。下面主要是虚拟网卡的实现技术,而虚拟网桥相关的另 一部分监听真实网络技术会在下面的网络联合模拟仿真小节叙述。 虚拟网卡及虚拟网桥基于w i n d o w s 的实现技术涉及w i n d o w s 内核驱动程序开发, 需要使用d d k l 3 2 1 ( d r i v e rd e v e l o p m e n tk i t ) 驱动开发包进行开发,具体实现需要应用网络 驱动接口规范n d i s 框架p 列( n e t w o r kd r i v e ri n t e r f a c es p e c i f i c a t i o n ) 。 开发基于w i n x p n d i s 5 1 规范,应用中间层驱动程序( i n t e r m e d i a t e p r o t o c o ld r i v e r ) , 虚拟网卡和虚拟网桥的n d i s 实现框架是一种n - t 0 一o b e m u x i n t e r m e d i a t e d r i v e r ( 具体见 后一章) ,即用以实现基于单一真实网络接口的多个虚拟网卡,中间层驱动通过内部基于 绑定对于真实接口的操作,构造多个对于虚拟接口操作的结构,暴露给上层的协议层多 个m i n i p o r t 接口,而协议层并不能察觉中间层虚拟作用的存在,而通过调用虚拟的 m i n i p o r t 接口间接的操作真实的m i n i p o r t 接口。 4 4 3 网络联合模拟仿真 联合网络模拟仿真同样需要n d i s 的框架实现,但实现有所不同,同时网络仿真中 的截获监听功能将协助虚拟网桥的实现。其n d i s 实现框架是一种f i l t e ri n t e r m e d i a t e d r i v e r ( 具体见后一章) ,中间层驱动处于每个真实网络接口之上进行监听截获过滤,而 上层的协议层察觉不到这一层的动作。 同时,基于前面提到过的通用型库设计目标,给出如图4 4 3 的实现界面,具体将在 后一章中进行描述。 第3 9 页 国防科学技术大学研究生院学位论文 图5 2 2 2n d i s 框架圈 n d i s 中间层驱动程序在n d i s 中起着转发上层驱动程序送来的数据包,并将其向下 层驱动程序发送的接口功能。当中间层驱动程序从下层驱动程序接收到数据包时,它要 么调用n d i s m x x x l n d i c a t e r e c e i v e 函数,要么调用n d i s m i n d i c a t e r e c e i v e p a c k e t 函数向上 层指示该数据包。 中间层驱动程序通过调用n d i s 打开和建立个对低层n i c 驱动程序或者n d i s 中 间层驱动程序的绑定。中间层驱动程序提供m i n i p o r t s e t l n f o r m a t i o n 和 m i n i p o r t q u e r y l n f o r m a t i o n 函数来处理高层驱动程序的设置和查询请求,某些情况下,可 能还要将这些请求向低层n d i s 驱动程序进行传递,如果其下边界是面向无连接的可通 过调用n i d s r e q u e s t 实现这功能,如果其下边界是面向连接的则通过调用 n i d s c o r e q u e s t 实现该功能。 中间层驱动程序通过调用n d i s 提供的函数向网络低层n d i s 驱动程序发送数据包。 例如,下边界面向无连接的中间层驱动程序必须调用n d i s s e n d 或n d i s s e n d p a c k e t s 来发 送数据包或者包数组,而在下边界面向连接的情况下就必须调用n d i s c o s e n d p a c k e t s 来 发送包数组数据包。如果中问层驱动程序是基于非n d i sn i c 驱动程序的,那么在调用 中间层驱动程序的m i n i p o r t s e n d 或m i n i p o r t ( c o ) s e n d p a c k e t s 函数之后,发送接口对n d i s 第4 6 页 国防科学技术大学研究生院学位论文 a p p l i c a t i o n 亘 黑 心、 ? 1 i 、 d “ j 一- ir _ 一 厄蠹】 l _ 曩一 厂 1 k m e m 冒e p a c k c t l 1 广j i n t e m e d j a t e ! 竺! 竺! 竖儿 d n v e r n i cd r i v e r j 图5 2 3 2 具体处理模型图 5 2 4 具体截获方法 显然,具体的网络包截获处理需要在驱动的接受数据过程中完成,那么需要对驱动 接受数据的流程进行详细的分析,从而在适当的时候进行包的截获。 驱动接收数据流程: 图5 2 4 为接收数据包的流程图。数据接收的路线比较复杂,有许多种情况,不同类 型的网卡,接收数据的路线也不尽相同。这里仅对目前大多数网卡接收数据包的处理过 程进行介绍。 底层驱动使用n d i s m i n d i c a t e r e c e i v e n d i s m e t h l n d i c a t e r e c e i v ej 骱ii - 层已经收到数 据报文: 在p t r e c e i v e 中如果通过n d i s g e t r e c e i v e d p a c k e t 不能得到一个完整的p a c k e t ,那就 直接调用n d i s m e t h l n d i c a t e r e c e i v e 等函数通知n d i s : 当底层驱动收到了个完整的数据报文,它会调用 n d i s m e t h l n d i c a t e r e c e i v e c o m p l e t e ,然后n d i s 会调用中间层的p t g e c e i v e c o m p l e t e : 中间层驱动的p t r e c e i v e c o m p l e t e 同样的会调用n d i s m e t h i n d i c a t e r e c e i v e c o m p l e t e , 通知n d i s 已经收到了完整的报文: 国防科学技术大学研究生院学位论文 当上层协议驱动得知底层已经收到了完整的数据报文以后,可能会讽甩 n d i s t r a n s f e r d a i a ,要求下层把剩余的数据传上来: 5 的调用会导致n d i s 调用中间层的m p t r a l l s f j r d a t a 例程。在m p t r a n s f e r d a 忸中, 做同样的调用n d i s t r a l l s f e r d a t a ; 当底层驱动做好了一个完整韵p a c k e t ,它会涌用n d ;订r a n s f i r d a l a c o m p l e t e ;同样在 p t t r a l l s f e r d a t a c o m p l e t e 中,会做出同样的调用。 通过上面的流程分析可以看出,对来自外部网络的数据包的截获、分析及处理,可 以p t r e c e i v e 函数中实现。在p t r e c e j v e 函数中进行适当的处理即可完成网络包的截获 这也是以后对于包的处理的基础。 图5 2 4 接收数据包的流程图 5 3 半实物网络模拟仿真中包处理技术实现 5 3 1 包的处理功能 在驱动完成截获包的基本功能之后,为了达到半实物网络模拟仿真联合的目标,必 然要对截获的包进行处理。驱动对感兴趣的i p 即内部模拟环境的虚拟结点的i p 进行截 获以后,由于联合模拟仿真还必须能够使虚拟结点能够以自身的i p 向外部实际网络环境 或名接入的硬件缩点发送数箍包,这里显然需要对网络包进行处理,对包头中的域进行 处理并且发送。 包处理的主要功能模块包括:协议处理、处理规抛u 和日志。 第4 9 页 国防科学技术大学研究生院学位论文 1 协议处理 在真实网络环境即t c p 诤网络中,所有往来的信怠都被分割成许许多多一定长度的 信息包,信息包的包头中包括疋源地址、口目标地址、内装协议、t c p 加d p 目标端口、 i c m p 消息类型、包的进入接口和出接口等信息。包处理可以检查所有通过的信息包中 的包头信息,并按照用户所设定的过滤规则过滤信息包。按照设定某一疋为感兴趣的话, 从这个地址而来的所有信息都会被截获。由此可见,其基础核心技术是前面实现的在 w i n d o w s 操作系统下的网络数据包拦截。 2 处理规则设置 处理规则就是对计算机所使用网络的内制协议进行设置,使网络数据包处理模块可 以根据设置对网络数据包进行处理,从而达到系统的模拟仿真联合功能。包的处理规则 方式可分为两种:一种是定义好的处理规则。就是把处理规则定义成几种方案,这样不 需要针对性功能的用户,也可以根据自己的需要灵活的设置不同的处理方案。还有一种 就是用户自定义的处理规则。这需要用户在了解所需的情况下,根据自己的处理需要对 某个协议进行单独设置。 由于在软件中,处理规则的设置和数据包的处理一般是分两个模块完成的,因此在 软件的实现上就涉及到了这两个模块之间的信息交互。理想的设计将基于w i n d o w s 操作 系统,利用应用程序与设备驱动程序之间一些相互通信的技术来实现这两个模块间的信 息交互。 3 日志 琶志是包处理应当具有的重要功能,它记录着软件监听包括截获处理动作发生的一 切事件,比如感兴趣虚拟结点数据包的来源、协议、端口、时 x 国防科学技术大学研究生院学位论文 这部分实现比较容易,应用程序通过c r e a t e f i l e 0 函数获取设备驱动程序的句柄后, 就可以使用如d e v i c e l o c o n t r o l 0 、r e a d f i l e o 或w r i t e f i l e o 这样的w i n 3 2 函数来实现与设 备驱动程序之间的通信。 2 设备驱动程序给应用程序发送消息 这部分的实现比前者复杂,归纳起来有以下五种实现方式:异步过程调用( a p c ) 、 事件方式( v x d ) 、消息方式、异步f o 方式和事件方式( w d m ) 。其中前3 种方法主要用 于v x d 中,后2 种方法主要用于w d m ,其中最常用的是事件方式。 在事件方式下,应用程序首先创建一个事件,然后将该事件句柄传给设备驱动程序, 接着创建个辅助线程,等待事件的有信号状态,自己则接着干其它事情。设备驱动程 序获得该事件的句柄后,将它转换成能够使用的事件指针,并存储起来以便后面使用。 当设备驱动程序有事件告诉应用程序时就将事件设置为有信号状态,这样应用程序的辅 助线程即可马上知道这个消息并进行相应的处理。 图5 3 2 包的处理框架 5 3 3 具体处理方法 由于对包的处理的功能完成后,需要将处理过的包发送给虚拟结点,所以具体处理 的重点在于对发送数据包的处理,那么对于驱动发送数据包的流程需要进行分析,找到 具体的处理方法。 驱动发送数据流程: 图5 3 3 为发送数据包流程图。下面对其处理过程进行简单的介绍。 第5 1 页 国防科学技术大学研究生院学位论文 p r o t o c o ld r i v e rl a y e r 调用n d i s s e n d 向下层发送数据报文; m p s e n d m p s e n d p a c k e t 例程根据上层传下来的数据报文分配,调用n d i s s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论