时间触发的容错实时通信系统和装置
引用专利
[1]EP 1 512 254 of 5/10/2005:Time-Triggered(TT)Ethernet.
[2]EP 2 145 431 of 4/7/2008:有效及可靠地传输时间触发以太网信息的通信方法及设备
[3]US 7,334,014 of 02/19/2008:Consistent time service for fault-tolerant distributedsystems.
[4]US 7,649,912 of 1/19/2010:Time synchronization,deterministic data delivery andredundancy for cascaded nodes on full duplex Ethernet networks
其他文献:
[5]Kopetz,H.(1997).Real-Time Systems,Design Principles for Distributed EmbeddedApplications;ISBN:0-7923-9894-7.Boston.Kluwer Academic Publishers.
技术领域
本发明涉及用于容错的时间触发通信,以及用于在分布式实时计算机系统的通信系统中建立带有已知精度的容错全局时间(globalen Zeit)的系统和装置。
背景技术
分布式实时系统包括多个计算节点(即为终端系统,应用软件在其中运行)以及通用通信系统(终端系统经由其而彼此互相交换消息)。带有良好精度的全局容错时基必须在分布式实时系统中建立,以使终端系统可检查实时信息的时间有效性,并进行同步的分布式行动。建立容错全局时基须执行复杂的同步算法。根据本发明,为了减轻终端系统的这些同步任务,在通用通信系统中进行分布式容错时钟同步,使得该些终端系统可使用简单的容错主从同步,而获提供全局时间(参见指导用书[5],第3章)。
许多已知的时钟同步方法,如在引用专利[1]至[4]中所公开的方法,使用终端系统的时钟来建立全局时间。因此,为了实现这一点,必须在终端系统中执行复杂的同步算法。如本发明所述,容错时间并不是在终端系统中建立,而是在通信系统中建立的。为了这个目的,设有容错切换单元(容错切换器),其含有四个独立的切换单元,每个切换单元各自形成自主的故障包容单元(FCU)。这四个切换单元通过交换报文,共同建立容错时基。该四个切换单元中的其中两个会形成相应的切换对,因此容错切换单元含有两对切换对。切换对的两个切换单元各自定期向比较器发送同步报文,而该比较器仅会在所收到的该两则同步报文几乎同时到达并内容一致时向终端系统转发同步报文。由于容错切换单元含有两对切换对,此方法容许一切换对中有任何故障。
容错通信和容错时钟同步的新颖方法的确切步骤将以附图为基础,于下文更详细描述。
本发明的目的是通过用于容错时钟同步以及用于时间触发的容错实时通信的方法,而得以实现的,该方法使用多个终端系统以及一个或多个容错切换器,其分别经由至少两条通信信道而连接起来,其中各容错切换器含有第一和第二切换对,该第一切换对含有第一和第二切换器,而该第二切换对则含有第三和第四切换器,且其中该四个切换器各自经由通信信道而连接至其余三个切换器,而其中该四个切换器经由通信信道,使用已知的以报文为基础的内部容错同步算法,建立带有已知精度的内部全局容错时基,且其中多个终端系统可经由与终端系统相关的比较器而分别连接至该两对切换对,而其中第一终端系统经由第一通信信道向第一切换对、及经由第二通信信道向第二切换对发送将被发送至终端系统的相应报文副本,且其中该第一比较器经由通信信道向第一切换器、及经由通信信道向第二切换器发送到达的报文,而其中该第三比较器经由通信信道向第三切换器、及经由通信信道向第四切换器发送到达的报文,且其中该四个切换器切换该些到达的报文,而若报文被发往至第二终端系统,则该些切换器将经由通信信道而向与第二终端系统相关的第二比较器发送相应报文副本,且其中该第二比较器会在时间上的第一报文到达后立即开启带有时限D的时窗,若在这时间间隔D期间未有这报文的第二副本到达第二比较器,则第二比较器将丢弃该报文,而若在这时间间隔D期间有这报文的第二副本到达,则第二比较器将逐位元比较该两则报文,而若该比较器发现了位元错误,则其会中断发送报文,并丢弃该报文,而若这报文的所有位元均无异,则其将经由第二通信信道向第二终端系统完整发送报文,且其中第二切换对以类似方式继续进行,因此在无故障的情况下,报文的两个经检查副本会到达终端系统,而若该两个切换对的其中之一因发生故障或检测到错误而丢弃该报文,则有一正确报文仍会到达第二终端系统,且其中除终端系统收到的报文外,容错切换器亦会定期向所有已连接的终端系统发送两则在切换器中生成的同步报文,其中第一切换对会发送一同步报文,而第二切换对则发送另一报文,而其中同步报文到达终端系统的时间会与同步报文的数据字段(Datenfeld)中所含的时间对应。
有利地,该两对切换对被设置成在空间上彼此分开。
在本方法的一个变体中,加签的报文被用作时钟同步的一部分。
在另一变体中,在收到外来同步报文后,容错切换器将其内部已同步的时间调适至外来同步报文所预定的时间。
有利地,该些切换器延迟报文仅数个位元长度,并使用直通式(cut-through)方法将报文切换至比较器。
在本发明的一个变体中,比较器延迟报文仅数个位元长度,并使用无错误直通式方法将报文切换至终端系统。
终端系统连接至容错切换器,有利地发送混合了事件驱动、带宽受限或时间触发的报文。
有关终端系统被允许的时间行为的先验规划信息置于切换器中,使得切换器可检测到终端系统的发生故障的时间行为。
有利地,所提供的用于切换器的先验规划信息是带有发送方的电子签署的。
若用于切换器的先验规划信息是加密的,则更为有利。
在本发明的一个变体中,该先验规划信息可在操作期间被动态地更改。
有利地,比较器是以多重发讯的方法操作的。
在本发明的又一变体中,该些通信信道上不同的信号传播时间由切换对补偿。
有利地,该些终端系统产生和使用的报文对应以太网的标准。
本发明的目的以用于时间触发的容错实时通信的装置进一步实现,该装置包括一个或多个容错切换器,该些切换器各自经由至少两条通信信道而连接起来,其中各容错切换器含有两对切换对,第一切换对含有第一和第二切换器,而第二切换对则含有第三和第四切换器,且其中该四个切换器各自经由该些通信信道而连接至其余三个切换器,而其中多个终端系统可经由相应的与该终端系统相关的专用比较器而连接至该两对切换对,且其中一个或多个上述方法步骤是在该装置中实行的。
发明内容
本发明的目的为在分布式实时系统的容错通信系统中建立容错全局时间。为了这个目的,设有容错报文切换单元,其包括四个独立的切换单元。这四个独立的切换单元共同建立容错时间。该些终端系统经由两条独立的失效沉默通信信道而连接至容错报文切换单元,使得即使部分容错切换单元或有一通信信道失效,时钟同步和网络连接仍得以保存。
附图说明
将以附图为基础,描述本发明的上述目的和其他新特性。
图1显示了容错通信系统的结构的例子,其包括多个容错切换单元。
图2显示了容错切换单元的内部设计。
具体实施方式
将以含有三个切换器和多个终端系统的例子为基础,于下文描述本新颖方法的一可行实施方案。这例子显示了在权利要求书中所述的本方法许多可行实施方案中的一个特定实施方案。
图1显示了含有三个容错切换单元101、102和103(下称切换器)和八个终端系统111至118的组态。一个终端系统为前端计算机,部分分布式实时应用程式在其中运行。由于必须容许一个通信信道失效,因此该三个切换器101、102和103分别以两条通信信道121和122的方式彼此间连接起来。每个切换器,例如切换器101,含有两对切换对151和152,而各切换对包含两个切换器。每个切换器各自形成自主的故障包容单元(FCU)。该终端系统111经由通信信道121而连接至容错切换器101的左切换对151,并经由通信信道122而连接至右切换对152。类似地,其余的终端系统112至118各自经由一条通信信道而连接至容错切换器的一对切换对,并经由另一条通信信道而连接至另一对切换对。
图2显示了容错切换器200的内部设计。本发明并未限定可连接至切换器的终端系统的数量n,其取决于容错切换器的具体设计。一般而言,n介乎8和16之间。举例来说,四个终端系统分别连接至容错切换器101的上面和下面皆可。为了简化图2,在该容错切换器200中仅显示了两个终端系统,即第一终端系统221和第二终端系统222。
该容错切换器200包括两对切换对201和202。该第一切换对201包括两个(非容错)切换器211和213(即第一切换器211和第二切换器213)、以及比较器231和233(即第一比较器231和第二比较器233)。该第二切换对202包括两个(非容错)切换器212和214(即第三切换器212和第四切换器214)、以及比较器232和234(即第三比较器232和第四比较器234)。
因此,各终端系统均与两个比较器相关,一个为右切换对的而另一个为左切换对的。如本发明所述,该些比较器亦可为多重发讯的,以致在每一情况中,带有n个输入端/输出端251和252以连至n个终端系统221和222的比较器位于切换对中。该四个切换器211、212、213、214各自形成自主的故障包容单元(FCU)。该四个切换器211、212、213、214经由通信信道240、241而与彼此连接起来。
使用第一切换器211的例子:该第一切换器211经由通信信道240而连接至水平地相邻和垂直地相邻的切换器,在此情况下这些为第二切换器213和第三切换器212,并经由这些切换器而连接至第四切换器214。或者该第一切换器211经由通信信道241而连接至第四切换器214,并经由这切换器或合适的通信信道240、241而连接至其余的切换器。此外,如在图2中所示,该第一切换器211可经由通信信道240而连接至该些水平地相邻和垂直地相邻的切换器(第二切换器213和第三切换器212),并经由通信信道241而连接至第四切换器214。
因此,必定至少设有通信信道240,而通信信道241则可省去(见下文)。
内部同步报文会定期经由这些通信信道240、241而交换,以建立带有已知精度P的内部全局容错时间。举例来说,就如在指导用书[5]的第3章中所说明般,这是通过以用于内部时钟同步的、以报文为基础的容错时钟同步算法的方式而达成的。
若提供的内部同步报文是带有发送方的电子签署,则如本发明所述,该两个连接241是不需要的。在安全关键的应用程式中,将该两对形成容错切换器的切换对201和202设置成在空间上彼此远离是有利的,以便容许在空间上于同一位置发生的故障(空间邻近故障)。在此情况下,减少将切换对连接至两个通信信道240之间的连接线的数量是有利的。
选定的切换器(例如在图1中的切换器103)或配备了时间源(例如GPS时间接收器)的终端系统可为该些已连接的切换器预定外部时基。这是经由含有外部时间的外来同步报文而达成的。在收到这样的外来同步报文后,接收到的容错切换器必须将其内部时间同步调适至外部预定时间。若外部时间源失效,则容错内部同步算法会维持全局时间。外部时间源亦可用于将切换器211、212、213、214的时钟式样动态地调适至外部时间的式样.
若第一终端系统221拟向第二终端系统222发送报文,则这报文同时会经由第一通信信道251而发送至在第一切换对201中的第一比较器231,并经由第三通信信道253发送至在第二切换对202中的第三比较器232。这报文的形式可对应某一标准,例如广泛使用的以太网标准或AFDX标准,或者任何指定地址信息必须包含在报文的报头(Header)中的其他标准,以让切换器211、212、213、214可使用快速的直通式方法切换报文。
报文可由第一终端系统221以时间触发、带宽受限或事件驱动的方式发送。在报文为时间触发的情况下,可对切换器211、212、213、214提供先验的规划信息,其指定了允许终端系统发送时间触发的报文的时间。然后,切换器211、212、213、214就可检测到第一终端系统221在不当时间发送时间触发的报文,并将之丢弃。在报文为带宽受限的情况下,可对切换器211、212、213、214提供先验的规划信息,其指定了允许发送带宽受限报文的带宽。若第一终端系统221发送的带宽受限报文超出了所允许的带宽,则切换器211、212、213、214可拒绝再接收报文。
草稿系统会在报文发送前先向切换器211、212、213、214发送先验规划信息,该信息可与电子签署一同提供,使得切换器211、212、213、214可检验这信息是否源自经授权的草稿系统。而一替代方案,是以加密形式发送规划信息。可在操作期间,通过发送含有该新规划信息和将要应用该新规划信息的时间的新报文,动态地更改该先验规划信息。
将在下文详述在第一切换对201中的报文处理。为了进行切换,从第一通信信道251到达第一比较器231的报文,由第一比较器231经由通信信道242而转发至第一切换器211,并经由通信信道243而转发至第二切换器213。由于在报文的报头中所含的地址信息所致,第一切换器211会经由通信信道244而向指定地址的比较器转发报文,第二切换器213则会经由通信信道245而向指定地址的比较器转发报文,而例子中的比较器为第二比较器。一旦将发送至第二比较器233的在时间上为第一的报文从该两个切换器211或213其中之一到达第二比较器233时,第二比较器233就会开启带有先验预定时限D的时窗。若在这时窗D期间,在时间上为第二的报文尚未从第一切换对201中的另一切换器到达,则该比较器会丢弃第一报文,其后亦会丢弃第二报文(若其有到达)。若在这时窗D期间,第二报文从第一切换对201中的另一切换器到达,则第二比较器233会逐位元比较该两则报文,并立即经由第二通信信道252而向指定地址的(第二)终端系统222转发该报文。可使用无错误直通式方法对该两则报文进行比较,即是说到达的位元流仅会在第二比较器233中短暂延迟,并被不断地进行比较,而若位元比较的结果是正确无误的,则会被立即转发。如果发生故障,至(第二)终端系统222的位元流会被中止。由于每则报文均含有CRC字段,因此(第二)终端系统222可检测到被中止的报文并将之丢弃。
在第二比较器233中报文的必要延迟的持续时间取决于时钟同步的精度P,其大体上由同步周期的持续时间和所用振荡器的质量限定。必须储存在比较器中的位元数取决于精度P和数据传输的带宽。
比较器231、232、233、234被设计成一个比较器无法储存整则报文,且无比较器有如何形成报文的正确CRC字段的信息。因此,发生故障的比较器极不可能生成在句法上正确但在内容方面不正确的报文,或在与第一211或第三212切换器所产生时间不同的时间发送在句法上正确但在内容方面不正确的报文。因此,第一切换对201仅会在四个子系统231、211、213和233的功能全部均无故障、而经由信道251、242、243、244、245和252传输的报文无故障地进行时,经由第二通信信道252而将在句法上正确的报文转发至(第二)终端系统222。因此,第一切换对201会在第二通信信道252执行失效沉默抽象化(fail-silentAbstrakion):要么其产生正确时间范围和数值范围的报文,要么其不产生报文。第二切换对202的功能与第一切换对201类似。
除由终端系统接收的报文外,容错切换器200定期向所有已连接的终端系统发送两则由内部生成的同步报文,其中几乎同时地,左(第一)切换对201经由第一通信信道251和第二通信信道252而发送同步报文,而右(第二)切换对经由第三通信信道253和第四通信信道254而发送第二同步报文。同步报文到达终端系统的时间与在同步报文的数据字段中所含的时间对应。由于通信信道251、252、253、254上的信号传播时间因这些信号传播时间在该些通信信道有不同的持续时间而不同,因此或须更正同步报文到达终端系统的时间。这项更正可在终端系统中或者在切换对201、202中进行。
因此在并无故障的情况下,(第二)终端系统222会收到两则正确的同步报文,一则经由(第二)通信信道252而另一则经由(第四)通信信道254,其到达时间相差不超过精度P。若在一对切换对中发生了故障,则(第二)终端系统222仍会收到一则正确同步报文。
经济利益
本发明使得在使用标准组件(即是说并未具备自检特性的组件)时可有容错时基和容错切换器,而其容许在故障包容单元(FCU)中建立任何错误。图2显示了故障包容单元的以下子系统:四个切换器211、212、213、214和四个比较器231、232、233、234。须特别注意,最后一个子系统(即比较器)是在向终端系统输出报文前设置的。由于有上述设计措施,因此即使比较器本身并非设计成自检的检查器,但可排除发生故障的比较器产生在句法上正确但在内容方面不正确的报文的可能。
如本发明所述,含有容错时钟同步的容错切换器设计会获得以下附加的重要经济利益:
●避免了在发生故障时产生不正确的结果。这特性在安全关键系统中尤其重要。
●通过容许故障,容错切换器与非容错切换器相比,可靠性显著提高。
●仅须开发测试和验证时钟同步算法一次,便可在多种应用中使用。
●通过将容错时钟同步从终端系统移至通信系统,终端系统变得简单和符合成本效益得多。
●可非常低廉地在VLSI芯片中实行在通信系统中的时钟同步的通用解决方案。