一、光纤网简介
在半实物仿真系统等实时系统中,要求系统各部分之间的数据传输具有很高的实时性,而传统的网络技术,如以太网、FDDI等在实时应用中存在以下缺点:(1)数据传输速率不高;(2)数据传输实时性差,传输延迟较大且延迟具有不可预测性;(3)网络通信需要借助多种网络协议来完成,通讯效率较低。
实时光纤反射内存网(Reflective memory network简称实时光纤网)是一种基于高速光纤网络共享存储技术的实时网络。与传统的联网技术相比,它除了具有严格的传输确定性和可预测性外,还具有数据传输速度高、通信协议简单、宿主机负载轻、软硬件平台适应性强等特点。
实时光纤反射内存网(简称实时光纤网)由插在计算机内的光纤接口板通过光纤线连接在一起,形成一个环网(如图1),每个节点的光纤接口板的板载存储器都有其他节点的共享数据拷贝,在逻辑上全网的所有节点共享同一块存储器,数据一点写入,多点同时更新,通过这种方式实现了数据的高速传输与共享。
二、实时网络需求
为提升计算能力,人们自然地想到研发性能更强的计算机,如天河系列等超级计算机应运而生,但超级计算机研制周期长、成本大、应用领域受限。为此,提出了集群系统概念,计算机集群系统是通过网络将PC机或工作站连接起来组成高性能计算系统。集群系统将一个任务并行在多台计算机上执行,组成一个实时系统。
在实时系统中,系统最终结果的正确性不仅依赖于每一步计算得到的逻辑结果,而且依赖于得到结果的时刻,任务的完成时间是实时系统的决定性特征。根据实时性能的要求程度,实时系统可认为两类,即软实时和硬实时系统。对于软实时系统,要求事件相应是实时的,但并不是严格强制的。但是,对于硬实时系统来讲,每个任务都有一个处理截止事件,任务必须在规定的时间内完成,否则会影响全局任务的完成,给系统带来不希望的破坏或者造成不可恢复的灾难性后果。目前许多实时系统都采用硬实时系统,因为具有更强的实时性能。实时系统的应用需要实时互联,构建实时网络,完成数据在网络节点间的实时传输。
实时网络必须具备高速、可靠、可预测三个特点,最重要的是通信的可预测性,可预测性是指实时网络中各个节点之间数据传输的时间是确定的。随着实时网络应用领域的不断扩展,目前已不仅仅局限于计算机集群系统的互联,而是广泛地应用在各种具有实时需求的互联系统中,如半实物仿真、高速数据获取等。
实时网络发展过程中,出现过两种设计思路:基于单一总线的多CPU共享全局内存和基于网络的分布式内存:
相比基于单一总线的多CPU共享全局内存系统,在基于网络的分布式内存体系中每个节点只访问自己的本地内存,不存在内存占有冲突,由于这种方式能够避免大量的总线仲裁控制时间而成为实时网络的主要设计方式。
实时网络要保证高速、可靠、可预测这三大指标,但千兆以太网、光纤通道(Fiber Channel,FC)协议等,在可预测性上很差,首先是因为通过设备驱动和软件网络协议的工作模式增加了额外的不确定开销,其次是同样存在共享冲突和碰撞的问题(如千兆以太网GBE中采用CSMA/CD载波监听多路访问/冲突检测机制、FC协议采用令牌环仲裁等)进一步增加了传输时间的不确定性。光纤反射内存网很好的解决了上述问题。
反射内存网是基于网络的分布式内存硬实时网络的一种设计思想,特点:1)反射内存网硬件实现分布式RAM之间数据的传输、共享,整个过程具有很低的实现延迟;2)反射内存网依靠硬件实现、不需要复杂的网络协议控制,能够在相同的传输带宽下达到更高的有效速率;3)反射内存网对数据的各种处理是通过硬件电路实现,在固定的时钟频率下周期工作,没有不确定的时间开销,确保数据处理的可预测性。
三、光纤反射内存网与以太网比较
1)实时性
反射内存(RFM)是基于环状/星状的,高速复制的共享内存网络。它支持不同总线结构的多计算机系统,并且可以使用不同操作系统来共享高速的、稳定速率的实时数据
基于反射内存构建的实时网络是一种强实时高带宽局域网技术,在互连的计算机间提供高效的数据传输。反射内存网在所有互连的节点中虚拟出一段全局共享的网络内存,在分布系统中实现内存至内存的通信,因此应用程序没有软件开销。每台结点机上插一块反射内存卡,卡上带有双端口内存。每个节点机的各层应用软件可以直接读写反射内存卡上内存。当数据
网络内存网主要是由网络内存卡通过光纤连接而成的,网络上的每台计算机插入一块。网络内存卡形成各个节点,而每个节点的网络内存卡上的存储器中都有网络内存网上其它节点的共享数据拷贝。网络内存卡可以插在多种总线的主板上,如VME、PCI、CompactPCI、PMC接口等。每个网络内存卡都占有一段内存地址,网上任何计算机向本地网络内存卡写数据时,该数据和相应内存地址被广播到网上所有其他网络内存卡并存储在相同的位置。
所以计算机将数据写入其本地网络内存卡后的,极短时间内,网上所有计算机都可以访问这个新数据。网络内存卡使用简单的读写方式,网络内存网上的数据传输是纯硬件操作,不需要考虑网络的通信协议,软件上只需要几行代码就可完成对网络内存卡的读、写操作,因此它与以太网等其他传统网络相比具有更低的数据传输延迟、更快的传输速度,更简单灵活的使用操作,可以满足实时系统快速反应周期的要求,而采用其他网络就很难满足这种要求。
反射内存是一种通过局域网在互连的计算机间提供高效的数据传输的技术,强实时网络设计人员已经越来越多地采用这种技术。反射内存实时局域网的概念十分简单,就是设计一种网络内存板,在分布系统中实现内存至内存的通信,并且没有软件开销。每台计算机上插一块反射内存卡,卡上带有双口内存,各层软件既可以读也可以写这些内存,当数据被写入一台机器的反射内存卡的内存中后,反射内存卡自动地通过光纤传输到其他连在网络上的反射内存卡的内存里,通常,只需几百纳秒的时间延迟,所有的反射内存卡上的内存将写入同样的内容。而各成员在访问数据时,只要访问本地的反射内存卡中的内存即可。VMIC反射内存具有以下主要特点:
(1)高速度和高性能
传输速度达到174M字节/秒。使用光纤,可以连接更多节点(最大到256个节点),具有很高的抗干扰能力。测试结果表明,从数据写入RAM到传到另一个节点的反射内存卡上,只有不到400纳秒的时延。
(2)使用方便
反射内存卡通过向每个节点机提供一套相同的数据备份使得各节点可以并发的访问相同的内容在访问反射内存卡的内存时与访问自身的内存没有差别。各节点间数据一致性是由反射内存卡保证,对应用软件是透明的。安装简单,将反射内存卡插在主板一个可用槽口上,再将各台主机通过光纤网或扁平数据线连在一起即可。
(3)独立于操作系统和处理机
反射内存卡可以VME、PCI、PMC、Compact PCI、Multibus I等多种总线上使用,可以将ALPHA、Power PC、Macintosh、奔腾等计算机通过反射内存卡实时网络连接在一起,组成一个集群系统。
(4)确定的数据传输时间
在反射内存卡中,当数据被写入本地的反射内存卡板的内存中时,就被同时传输到其他相连的计算机上,没有软件延迟,硬件延迟也非常小。光纤反射内存卡在节点间传输数据时只需400纳秒。这种确定的时间延迟为设计实时应用提供了有效的保证。
(5)经济、高效
反射内存卡的数据传输速率大,没有以太网那样要多层协议。其次,反射内存卡使用简单,不需要开发额外通讯软件,利于提高系统的可靠性,也节省了软件的开发费用。
基于反射内存实时网的实现机制
反射内存卡是一组双口内存板。当数据存储到反射内存卡时,板上的高速逻辑会自动将此数据连同地址送到网上的其它反射内存卡板上,数据传递完全由硬件驱动,不需要CPU干预,结果网上下一节点在400纳秒内就会在相同地址处有相同数据。反射内存卡可看成是由网上所有节点共享的单元内存卡,不存在访问限制与仲裁,每个节点就像访问本地内存一样,实现了节点间的数据共享。
(1)数据传输方式
的反射内存卡最大可以连接256个互相独立的节点,共享内存的最大量可以到128M字节,数据传输速度可达174M/秒、节点间距离可以到10KM。反射内存卡支持中断,通过中断机制可以实现节点机之间的通讯同步。
(2)使用中断实现同步
VMIC反射内存卡支持用中断方式通知节点接收数据,当数据被送到某节点时,可以通过中断告诉该节点。反射内存卡提供了三个中断,用户可以定义这些中断的优先级、中断相量及具体功能。
(3)错误管理技术
反射内存卡有错误监测和报告的功能,通过对数据的奇偶校验位的检查,可以发现数据是否有错。反射内存卡提供冗余传输模式,即每次传输数据时都传两份,当第一份出错时,使用第二份。
供应PCI接口反射内存卡
供应VMIPCI5565反射内存卡
供应GE反射内存卡PCI-5565PIORC-110000