基于UDP协议的实时可靠的网络通信技术在磁浮仿真中的应用.docVIP

基于UDP协议的实时可靠的网络通信技术在磁浮仿真中的应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于UDP协议的实时可靠的网络通信技术在磁浮仿真中的应用.doc

基于UDP协议的实时可靠的网络通信技术在 磁浮仿真中的应用 本文论述了一种实时可靠的网络通信解决方案,它能够满足 磁浮仿真系统的体系架构中上层工作站、中间层服务器、底层管理计 算机之间复杂多变的网络通信要求,降低仿真系统中应用层和通信层 的耦合性。通信方案设计了统一的报文格式,采用UDP协议二次封装 的办法兼顾网络通信的可靠性与实时性;选取共享内存技术实现仿真 系统应用层和通信层之间的进层间通信,保证通信进程的独立性。此 外,在通信层的构建中,辅以配置文件记录通信目的IP地址、本机绑 定端口和通信对端接受端口号等信息,做到通信层的灵活可配置。 关键词网络通信;UDP二次封装;共享内存;进程间通信 TN92A1674-6708 (2011) 55-0181-02 1研究背景 磁浮仿真系统大致可以为分3个层次,底层是彷真子系统的仿真 管理计算机,中间层是仿真支撑服务器,上层是工作站仿真计算机。 所有外围环境仿真设备通过以太网与底层子系统的仿真管理计算机相 连,仿真管理计算机对其仿真子系统进行统一管理,它将子系统外围 仿真设备的工况信息实时向上推送。仿真支撑服务器与所有底层子系 统管理计算机和上层工作站均有通信需求,是报文收发的中转站,它 将、工作站及其执行结果的信息记入数据库备查,或用于数据分析。 上层工作站用于集成管理底层的子系统,它注入故障下达测试命令到 底层子系统管理计算机并等待应答。此外,底层子系统管理计算机之 间也互相传递信息。这些计算机中仿真系统在处理接收和发送数据上 的工作大多是相同的,如果能够简化它们在数据通信上的工作,将对 系统的设计和效率存很大的提高作用。网络通信方案的设计,即可将 系统中各模块处理网络通信的部分抽取出来,封装成一个相对独立的 模块。 2影响因素分析 磁浮仿真系统中底层管理计算机上运行的仿真软件是不同编程语 言实现的,各自重新构建通信接口有困难,底层、中层、上层不同计算 机之间的通信要求也各异。通过对磁浮仿真系统中多个模块的通信要 求分析,可以得到模块间的数据通信具有以下特点: 1)多点对多点传输数据。如果采用面向连接的方式进行通信,则 需耍每个模块都各自维护到其它模块的多个连接,处理起来很不方便, 并且不利于扩充模块。因此适合无连接的通信; 2)模块间的数据通信具有突发性,通信数据量不规则、不连续。 比较适合采用报文转发方式传输; 3) 通信目的计算机的IP地址可能改变,需要可配置; 4) 模块的数量可能扩充,也就是说,在同一台计算机上运行的不 同模块的通信节点可能有多个,需要可配置; 5) 模块问传输数据必须保证通信的可靠性和数据的正确性; 6) 某些通信要求实时性,通信异常导致陈旧数据必须清除。 3方案设计 根据第2节的影响因素分析,了解到通信方案需要解决四个问题, 即通信接门问题、实时性可靠性均衡问题、IP端门可配置问题。首先, 解决通信接口问题,需要将系统的数据通信工作独立出来,与原本系 统的其他应用隔离开。因此,引入这样两个概念一一通信层进程和应 用层进程。通信层进程负责为应用层提供通信服务和其他辅助服务, 如通信日志记录、通信状态监控等;应用层进程即原本系统各模块运 行的应用进程,两者间数据通信靠本机进程间通信维系。基于确保实 时性和大数据量的通信要求,本机进程间通信选取的方法是共享内存, 然后分别为通信层和应用层提供读写共享内存的接口,即使用DLL(动 态链接库)的方式分别加载到通信层程序和应用层程序中。其次,解 决实时性可靠性均衡问题,从多点通信和实时性的考虑出发,决定了 选取无连接且传输更高效的UDP协议。然而,UDP协议不能保证可靠 性,于是想到了对UDP协议进行二次封装,形成一种兼顾通信的可靠 性与实时性的新协议一一RUDP协议。最后,采用通信层进程读取.ini 配置文件的配置信息的方法来解决IP端口可配置问题。 3.1本机进程间通信 本机应用层与通信层之间的进程间通信需要借助共享内存技术、 动态链接库技术来实现。 共享内存技术是通过内存映射文件的方式来实现的。内存映射文 件是文件内容到进程虚拟地址空问的复制。文件的内容的拷贝称为文 件映像,而操作系统用来维持该拷贝的内部结构称为文件映射对象。 另一个进程通过使用第一个进程的文件映射对象建立映像,可以在它 自己的虚拟地址空间建立完全一样的文件映像,这样就达到了进程间 共享数据的目的。 设计方案将共享内存分为两种。一种发送报文时使用,应用层进 程向此共享内存内写入报文,通信层进程分配线程采用轮循或接收消 息通知的方式读取共享内存中的待发送报文,并通过套接字将其发送 到目的计算机的通信层进程。这种共享内存可称之为发送结点共享内 存。另一种与此相反,接收报文时使用,通信层进程接收到报文后, 根据报文首部判断与之对应的目的应用层,

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档