计算机系统和在计算机系统的计算机之间交换数据电文的方法

文档序号:6455823阅读:523来源:国知局
专利名称:计算机系统和在计算机系统的计算机之间交换数据电文的方法
技术领域
本发明涉及一种用于控制铁路应用的、具有两个互相交换数据电文的冗余 的计算机的计算机系统以及与此相关的方法。
背景技术
对于安全技术的铁路运行过程,特别必须满足高的安全性和可用性条件。 因此,用于控制铁路应用的数据处理通常被冗余地实施。为此使用两台处理相 同程序并且互相交换数据电文的计算机。按照这种方式,在一台计算机出现故 障的情况下保证了,还可以继续正确地处理数据,而不会导致铁路运行过程的 故障。在此,功能正常的计算机在另一台计算机的故障的持续期间接管整个数 据处理。然而,如果在两个计算机之间的连接不是冗余的,如在冗余的行车控 制计算机情况下,则出现可用性问题。在冗余的计算机之间的简单连接情况下, 双重的故障(例如计算机的故障和在计算机之间的连接的故障),不可避免地导 致运行故障,因为功能正常的计算机经过故障的连接接收不到数据并且由此不 能控制对应的铁路应用。在双重故障的情况下不再具有可用性。因此绝对必要 的是,紧接在第一故障之后维护人员在出现第二故障之前立即排除该问题。

发明内容
本发明要解决的技术问题是,提供一种具有两个互相交换数据电文的冗余 的计算机的计算机系统,以及一种用于电文交换的相应的方法,它们即使在双 重故障情况下也具有可用性。
上述关于这种类型的计算机系统的技术问题是如下地解决的计算机经过 两条冗余的总线互相连接,而数据电文包含序列号并分别经过两条总线被传输。
关于方法的技术问题是如下地解决的为了在计算机系统的计算机之间交 换数据电文,接收数据电文的计算机根据序列号在两条总线功能正常情况下双 重接收相同的数据电文,而在一条总线故障的情况下识别不相同的或没有接收
3的数据电文并且对每个序列号过滤出一个完整的数据电文并送至进一步处理。
为了将可用性扩展到在两个计算机之间的连接也出现故障的情况,冗余地 进行该连接是不够的。为此必须附加地考虑,在一条总线故障的情况下通过从 故障的总线转换到第二条总线而不丢失待传输的数据电文。由于这个原因,双 重发送数据电文,确切地说既经过第一总线也经过冗余的总线发送。利用连续 的序列号附加地扩展两个数据电文,根据该序列号接收的计算机一方面可以过 滤双重的电文另一方面可以识别丢失的或不完整的电文。通过数据电文的双重 发送,保证了在一条总线出现故障时不会丢失数据电文。由于数据电文的双重 发送,发送的计算机不必进行检验,以确定两条总线中的哪条被取消并且现在 经过哪条总线发送数据电文。此外具有优势的是,在数据电文的发送期间一条 总线发生故障的情况下,该数据电文尽管如此还是被接收,因为双重的但却是 相同的电文经过功能正常的总线被接收。如果数据电文由于在发送期间 一条总 线的故障仅仅是零碎地被接收的计算机接收,则该数据电文在接收侧也是可识 别的。该有错的数据电文被丟弃,而经过另一条总线被接收的第二相同的电文 被允许进一步处理。
为了确定总线故障,接收数据电文的计算机将完整接收的数据电文的序列 号加一,并且将经过另一条总线期待的、但没有被接收或者不是完整被接收的 数据电文的序列号保留并且不加一。各个期待的序列号在接收侧是已知的。如 果具有该序列号的数据电文被接收,则其被进一步传输或者被进一步处理并且 期待的序列号被加一。在接收双重的电文时其序列号不再等于新的期待的序列 号并且该数据电文被丢弃。当数据电文不被传输时,相同的原理也起作用。
为了保证,在数据电文没有被接收或被不完整接收、但是随后是正确的数 据电文传输的情况下,不是一般地丟弃所有随后的数据电文,在预定数量的双 重接收的、其序列号不一致的数据电文之后,将事先没有加一的序列号与加一 的序列号匹配。接收的计算机将其送至计数器,在该计数器中登记已经被丢弃 的数据电文的数量。该数量可以被规划。在超过特定数量时进行被允许进一步 处理的数据电文的序列号接管,从而接收的计算机用该序列号进一步处理。按 照这种方式保证了 ,在定义数量的被丟弃的数据电文之后双重的数据电文又可 用于处理。由此,在发送的和接收的计算机之间的附加的通信也被取消,在该 通信情况下发送的计算机必须将其重新开始通知给接收的计算机,由此接收的 计算机可以复位其下 一期待的序列号。200780032820.7
说明书第3/4页


下面结合附图详细描述本发明。附图中
图1示出了公知结构的计算机通信的原理图,
图2示出了要求保护的计算机系统,以及
图3示出了用于要求保护的通信方法的流程图。
具体实施例方式
图1和2示出了列车总线系统ZB,在该列车总线系统上连接了铁路应用BA,该铁路应用借助行车控制计算机ZLR1和在该计算机出现故障的情况下借助第二冗余的行车控制计算机ZLR2被控制。两个行车控制计算机ZLR1和ZLR2必须始终与当前的过程状态匹配。为此,在两个行车控制计算机ZLR1和ZLR2之间需要数据交换。
在根据图1的公知的解决方案中,数据电文在行车控制计算机ZLR1和ZLR2之间经过简单的连接V被交换。这导致,尽管可以容忍两个行车控制计算机ZLR1和ZLR2之一发生故障,但是不能容忍连接V的附加的故障。后者导致铁路应用的完全失效,因为该铁路应用由于缺乏在尚可运转的行车控制计算机ZLR1或ZLR2上的当前数据而不再能被控制。
为了预防这样的完全失效并且提高计算机系统的可用性,根据图2设置两个行车控制计算机ZLR1和ZLR2经过具有两条总线BUS1和BUS2的冗余的总线连接的冗余的耦合。两条总线BUS1和BUS2互相平行用于在行车控制计算机ZLR1和ZLR2之间的数据电文传输。例如,由第一行车控制计算机ZLR1产生的数据电文经过两条总线BUS1和BUS2准双重地发射并且由接收的行车控制计算机ZLR2双重地接收。为了使接收的行车控制计算机ZLR2可以识别双重的同样的数据电文并且可以分别过滤出一条用于进一步处理的数据电文,将数据电文设置为具有序列号,该序列号对每个新的数据电文增加1。在两条总线BUS1和BUS2的正确的工作方式中,在两条总线BUS1和BUS2上排队等候的数据电文的序列号 一致。
图3示出了用于处理正确的数据电文传输和受干扰的数据电文传输的流程图。如果数据电文由行车控制计算机ZLR1或ZLR2接收(步骤1 ),则首先确定,在接收的数据电文中的当前序列号Akt—TZ是否等于下一个预期的序列号NEXT一TZ (步骤2 )。如果是这样,则将丢弃的数据电文的计数器置为或保留为计数器状态零ResetCounterK)(步骤3 )。序列号加一 NEXT—TZ十+并且作为下一个期待的序列号被存储(步骤4)。数据电文被允许用于处理(步骤5)。
对于在当前的序列号和期待的序列号之间不一致的情况(步骤2),首先确定,被丟弃的数据电文的数量是否已经超过了预定的数量(步骤6),此处为3,ResetCounter>=3。如果是,则如下匹配期待的序列号NEXT—TZ=Akt_TZ (步骤7),使得当前的序列号的尾数被期待的序列号清除。只有当还没有丢弃三个数据电文时,将丢弃的电文的计数器加一 ResetCounter++ (步骤8 )并且将相应的数据电文丟弃(步骤9)。按照这种方式,形成尽可能无错的和自动的数据电文管理。
权利要求
1. 一种用于控制铁路应用(BA)的、具有两个互相交换数据电文的冗余的计算机(ZLR1,ZLR2)的计算机系统,其特征在于,所述计算机(ZLR1,ZLR2)经过两条冗余的总线(BUS1,BUS2)互相连接并且该数据电文包含序列号并分别经过两条总线(BUS1,BUS2)被传输。
2. —种在根据权利要求1所述的计算机系统的计算机之间交换数据电文 的方法,其特征在于,接收数据电文的计算机(ZLR1, ZLR2)根据所述序列 号在两条总线(BUS1, BUS2)功能正常情况下双重接收相同的数据电文,而 在一条总线(BUS1, BUS2)发生故障的情况下识别不相同的或没有接收的数 据电文并且对每个序列号过滤出一个完整的数据电文并送至进一步处理。
3. 根据权利要求2所述的方法,其特征在于,接收数据电文的计算机 (ZLR1, ZLR2)将完整接收的数据电文的序列号加一,并且将经过另一条总线(BUS1, BUS2)期待的、但没有被接收或者不是完整被接收的数据电文的 序列号保留并且不加一。
4. 根据权利要求3所述的方法,其特征在于,在预定数量的双重接收的、 其序列号不 一 致的数据电文之后,将没有加 一 的序列号与加 一 的序列号匹配。
全文摘要
本发明涉及一种用于控制铁路应用(BA)的、具有两个互相交换数据电文的冗余的计算机(ZLR1,ZLR2)的计算机系统,以及一种用于电文交换的相应的方法。为了提高在多个组件发生故障的情况下这样的计算机系统的可用性,本发明提出,这些计算机(ZLR1,ZLR2)经过两条冗余的总线(BUS1,BUS2)互相连接并且该数据电文包含序列号并分别经过两条总线(BUS1,BUS2)被传输。这样进行数据电文交换接收数据电文的计算机(ZLR1,ZLR2)根据所述序列号在两条总线(BUS1,BUS2)功能正常情况下双重接收相同的数据电文,而在一条总线(BUS1,BUS2)发生故障的情况下识别不相同的或没有接收的数据电文并且对每个序列号过滤出一个完整的数据电文并送至进一步处理。
文档编号G06F11/16GK101512494SQ200780032820
公开日2009年8月19日 申请日期2007年8月23日 优先权日2006年9月4日
发明者凯瑟琳·赫斯特德, 格里特·卡斯特, 沃尔夫冈·格拉比 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1