概要
仿真技术经过数十年的发展,已经形成了各式各样的可独立运行的、分布式异构仿真系统,且由于各系统分期建设,造成体制差别较大,各仿真分系统“烟囱林立”,各自为政,彼此之间在资源共享、数据互通、仿真业务流程协同等方面不够充分和完善,造成仿真软硬件资源利用率低下、多领域多分系统参与的集成与调度、软件部署、系统运维、试验管理与呈现等环节难以协调集成。
针对分布式实时系统中的实时数据交互要求,对象管理组织OMG(Object Management Group)发布了数据分发服务规范DDS (Data Distribution Service)。DDS基于发布-订阅机制,提供了强大的数据服务质量控制策略QoS(Quality of Service),突出了以数据为中心、模块之间松耦合等技术特征,实现了分布式系统中数据实时、可靠、高效分发,非常适合于开放性和动态性较强的分布式应用系统,被广泛应用与国防、工业自动化、分布控制、分布仿真、机器人、电信等领域。
技术原理
DDS提出全局数据空间的概念,按照逻辑上的<数据类型-主题>来组织标识系统中的所有数据,发布者和订阅者在该全局空间中分别发布和订阅自己需要的<数据类型-主题>,通过DDS处理后再进行数据传送,将传统的C/S(Clinet/Server)模式转为以数据为中心的服务模式,在该模式中数据并非存在于所有计算机的地址空间中,它仅仅存在于哪些它感兴趣的应用程序的本地缓存中。从整个分布式的系统角度来看,DDS全局数据空间里面包含了发布者和订阅者感兴趣的数据,为各分系统间的实时传输和松耦合关联提供了支撑。对需要数据的分系统来说,只需要订阅自己的主题消息,不管消息来自何处;对需要对外共享数据的分系统来说,只需要发布自己的主题消息数据即可,不管谁获取了消息。因此,各分系统之间通过DDS云形成了松耦合的集成关系,只要接入了DDS全局数据空间,就可以获取这里面的主题消息,隐含地和其他分系统发生关系,产生弱关联。
目前,在仿真试验测试领域中有些分系统形成了自己特有的仿真体系,与外界交互是通过以太网协议(TCP/UDP)来交换数据,与DDS全局数据空间无法交融,也无法共享体系级的数据环境,达不到系统集成目的。一般来说,通过TCP/UDP进行网络通信,是需要知道对方的IP地址和端口号的,通信双方形成了事实上的紧耦合关系。若一方程序失败、硬件设备或者网卡损坏,也或者人工调配设备等原因,会导致通信无法联络,系统无法运行。要想改善这种紧耦合与位置相关的通信特征,迫切需要DDS网关数据交换技术来进行支撑。
采用DDS网关数据交换技术后,通信双方不必知道彼此的IP地址和端口号,哪怕你更换另外一台设备或者主机,通过DDS主题即可进行联络。因此,原来采用TCP/UDP通信协议的分系统将原先通过TCP/UDP发送的数据通过DDS主题发布,接入DDSDDS全局数据空间,共享数据。而原先TCP/UDP通信的接收端,基于DDS订阅这个主题数据,然后封装成TCP/UDP,发送给自己。这样,就实现了DDS云边端的数据协同。
技术优势
(1)解决遗留系统集成难的问题。一些老旧系统,很难按照DDS技术体系进行改造,这时候,在不改造原有系统的情况下,加入这种方法,可轻松实现系统集成,实现原有系统保值增效功能;
(2)改善分系统之间的耦合关系。原先分系统之间的耦合是通过TCP/UDP通信来完成,双方需要知道对方的IP地址和端口号,形成了事实上的紧耦合关系。采用DDS云边端数据接入方法后,分系统之间通过DDS主题建立联系,形成了弱耦合的关系,通信一方可发布数据至DDS云端,通信的另一方加入DDS云后可随时订阅数据。
(3)数据交换高效。DDS网关内含有提高数据处理性能的多线程技术、高效存取的数据缓存技术等,且线程各司其责,便于系统扩展和维护。该方法支持多系统同时接入,也支持某一数据包向DDS多域多主题映射和发布,提高了系统集成效率。
小结
美国DARPA完成的“动态网络适应任务优化”(DyNAMO)项目中,展示了一种分布式网关新型软件,该软件在模拟竞争环境中的各种条件下,成功地为所有数据链路提供不间断的网络连接,兼容现有的数据链路硬件,消除了中央网关的单点故障问题。因此,在网络战、多域战、全域战、马赛克战等作战概念的影响下,DDS网关技术在数据互联、互通、互操作等系统集成方面具有广阔的应用前景。