(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5874815
(24)【登録日】2016年1月29日
(45)【発行日】2016年3月2日
(54)【発明の名称】高可用性グランド・マスタ・クロックを実装するためのネットワークおよび方法
(51)【国際特許分類】
H04L 7/00 20060101AFI20160218BHJP
H04L 5/14 20060101ALI20160218BHJP
【FI】
H04L7/00 990
H04L7/00 930
H04L5/14
【請求項の数】10
【全頁数】14
(21)【出願番号】特願2014-508645(P2014-508645)
(86)(22)【出願日】2012年5月2日
(65)【公表番号】特表2014-520419(P2014-520419A)
(43)【公表日】2014年8月21日
(86)【国際出願番号】AT2012050058
(87)【国際公開番号】WO2012151598
(87)【国際公開日】20121115
【審査請求日】2014年5月8日
(31)【優先権主張番号】A641/2011
(32)【優先日】2011年5月6日
(33)【優先権主張国】AT
(73)【特許権者】
【識別番号】509261854
【氏名又は名称】エフティーエス コンピューターテクニク ジーエムビーエイチ
(74)【代理人】
【識別番号】100091683
【弁理士】
【氏名又は名称】▲吉▼川 俊雄
(74)【代理人】
【識別番号】100179316
【弁理士】
【氏名又は名称】市川 寛奈
(72)【発明者】
【氏名】ステイナー,ウィルフリード
(72)【発明者】
【氏名】バウワー,ギュンター
(72)【発明者】
【氏名】シュワルツ,マーティン
【審査官】
阿部 弘
(56)【参考文献】
【文献】
米国特許出願公開第2005/0117596(US,A1)
【文献】
特表2005−536084(JP,A)
【文献】
小堺康之,次世代変電所における時刻同期技術,東芝レビュー,日本,2011年 4月 1日,P. 24-27
【文献】
Yasuyuki Kozakai ET AL,Keeping clock accuracy on a master clock failure in substation network,International IEEE Symposium on Precision Clock Synchronization for Measurement Control and Communication (ISPCS) 2010,米国,IEEE,2010年 9月27日,P. 25-29
【文献】
Astrit Ademaj ET AL,Time-Triggered Ethernet and IEEE 1588 Clock Synchronization,International IEEE Symposium on Precision Clock Synchronization for Measurement, Control and Communication (ISPCS) 2007,米国,IEEE,2007年10月 1日,P. 41-43
【文献】
伊藤将志,小堺康之,IEEE1588におけるMaster clock冗長構成時の高精度時刻同期手法,電子情報通信学会2010年総合大会,日本,電子情報通信学会,2010年 3月16日,B-7-14,P. 165
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7
H04G
H04L 5
H04L 12
(57)【特許請求の範囲】
【請求項1】
複数のノードおよび複数の接続を備え、各接続が少なくとも2つのノードを接続して、ネットワークプロトコルによるメッセージ交換を含むノード間通信をできるようにするネットワークであって、前記ネットワークは、IEEE1588標準に準拠する高可用性グランド・マスタ・クロック(301)を実装するサブシステムを形成する複数のノード、および少なくとも1つの双方向通信リンク(401)を備え、
前記サブシステムは、前記サブシステムを形成する前記ノードの少なくとも1つの故障を許容するように構成され、
前記双方向通信リンク(401)のそれぞれは、IEEE1588Masterクロック(201)および/またはIEEE1588Slaveクロック(201)を、前記高可用性グランド・マスタ・クロック(301)を実装する前記サブシステムに物理的に接続するためにそれぞれ構成され、
前記高可用性グランド・マスタ・クロック(301)は、前記高可用性グランド・マスタ・クロック(301)がIEEE1588ベスト・マスタ・クロック・アルゴリズムによりベストマスタとして選択されることを保証するIEEE1588Announceメッセージを生成および送信するように構成され、
前記サブシステムは、少なくとも2つの冗長な標準的IEEE1588グランド・マスタ・クロック(101)に接続可能(402)であり、前記高可用性グランド・マスタ・クロック(301)は、前記冗長な標準的IEEE1588グランド・マスタ・クロック(101)から送られたIEEE1588Syncメッセージを受信したことの応答として、IEEE1588Syncメッセージを生成するように構成され、前記高可用性グランド・マスタ・クロック(301)で生成されたIEEE1588SyncメッセージはIEEE1588Masterクロック(201)および/またはIEEE1588Slaveクロック(201)に送信され、
a)前記高可用性グランド・マスタ・クロック(301)は、前記冗長な標準的IEEE1588グランド・マスタ・クロック(101)からIEEE1588Syncメッセージ、およびIEEE1588Announceメッセージを読み込むが、読み込んだIEEE1588Syncメッセージを転送はせず、
b)前記高可用性グランド・マスタ・クロック(301)により生成されるIEEE1588Syncメッセージにより示されるタイミング情報は、前記冗長な標準的IEEE1588グランド・マスタ・クロック(101)から受信したIEEE1588Syncメッセージのタイミング情報の平均値、中央値、フォールトトレラントな平均値、もしくはフォールトトレラントな中央値、またはこの値のオフセットを表す、ことを特徴とする、ネットワーク。
【請求項2】
前記高可用性グランド・マスタ・クロック(301)は、どんなIEEE1588SyncメッセージもIEEE1588Announceメッセージも、前記冗長な標準的IEEE1588グランド・マスタ・クロック(101)に送信も転送もしないように構成されることを特徴とする、請求項1に記載のネットワーク。
【請求項3】
前記サブシステムは、前記高可用性グランド・マスタ・クロック(301)を実現するように構成されたTTEthernetシステムとして実現され、前記TTEthernetシステムは、1つのネットワーク・インタフェース・カード(501)または複数のネットワーク・インタフェース・カード(501)、および1つのスイッチ(601)または複数のスイッチ(601)から構成され、各ネットワーク・インタフェース・カード(501)は、双方向通信リンクにより少なくとも1つのスイッチ(601)に接続されることを特徴とする、請求項1または2に記載のネットワーク。
【請求項4】
前記TTEthernetシステム自体がIEEE1588グランド・マスタ・クロック(701)を実装する、請求項3に記載のネットワーク。
【請求項5】
前記ネットワークは、少なくとも2つの冗長な標準的IEEE1588グランド・マスタ・クロック(101)に接続可能であり、前記TTEthernetシステムは、冗長な標準的IEEE1588グランド・マスタ・クロック(101)からIEEE1588同期メッセージを受信したことの応答としてIEEE1588Syncメッセージを生成するように構成され、
a)すべての故障していない標準的IEEE1588グランド・マスタ・クロック(101)が、自分のローカルの時間認識に従って同じ時点に自分の前記IEEE1588Syncメッセージを生成し、
b)TTEthernet圧縮機能を使用して、冗長な標準的IEEE1588グランド・マスタ・クロック(101)からIEEE1588Syncメッセージを収集し、新しいIEEE1588Syncメッセージを生成する、
ことを特徴とする請求項3に記載のネットワーク。
【請求項6】
前記TTEthernet圧縮機能は、前記TTEthernetスイッチ内に実装される、請求項5に記載のネットワーク。
【請求項7】
複数のTTEthernet圧縮機能が、前記TTEthernetスイッチ内に実装される、請求項5または6に記載のネットワーク。
【請求項8】
すべての冗長な標準的IEEE1588グランド・マスタ・クロック(101)が、自分のIEEE1588SyncメッセージをすべてのTTEthernet圧縮機能に送信するように構成され、各圧縮機能が、新しいIEEE1588Syncメッセージを生成する、請求項7に記載のネットワーク。
【請求項9】
標準的IEEE1588MASTERクロック(201)または標準的IEEE1588Slaveクロック(201)が、前記高可用性グランド・マスタ・クロック(301)により作り出されたような冗長なIEEE1588Syncメッセージを受信するように構成され、それにより、前記IEEE1588MASTERクロック(201)または前記IEEE1588Slaveクロック(201)は、前記冗長なIEEE1588Syncメッセージにより運ばれた前記高可用性グランド・マスタ・クロック(301)からの前記タイミング情報の前記平均値、前記中央値、前記フォールトトレラントな平均値、または前記フォールトトレラントな中央値を使用して、自分のローカルクロックを補正する、請求項1〜8のうちいずれか一項に記載のネットワーク。
【請求項10】
請求項1〜9のうちいずれか一項に記載のネットワークを実装する方法であって、
a)IEEE1588標準による高可用性グランド・マスタ・クロック(301)を実装するサブシステムを形成する複数のノードを提供し、前記サブシステムを形成する前記ノードの少なくとも1つの故障を許容するようにサブシステムを構成するステップ、および
b)IEEE1588Masterクロック(201)および/またはIEEE1588Slaveクロック(201)を、高可用性グランド・マスタ・クロック(301)を実装する前記サブシステムに物理的に接続するためにそれぞれ構成された少なくとも1つの双方向通信リンク(401)を確立するステップ、
から構成される方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ工学の技術分野の方法およびシステムに関し、より詳細には、ネットワークによってノードが接続されるコンピュータシステムのノード内のローカルクロックを同期させる方法に関する。より具体的には、本発明は、IEEE1588標準(IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control System(ネットワーク化された測定および制御システムのための高精度クロック同期プロトコルのためのIEEE標準))のために、好ましくは、現在のバージョンのIEEE1588−2008だけでなく互換性のある将来の任意のバージョンに関しても、グランド・マスタ・クロックを、詳細には高可用性グランド・マスタ・クロックを提案する。本発明は、複数のグランド・マスタ・クロックがシステム内で同時に動作することができるようにすることにより、IEEE1588で規定されるような同期方法を改善する;したがって、本発明は、IEEE1588の再選択プロトコルを陳腐化する。このために、本発明は、高可用性グランドマスタを実装する方法を提供し、さらに、前記方法を実現する(サブ)システムを提供する。本発明の一実現形態では、IEEE1588のための高可用性グランドマスタを実装するために、TTEthernetネットワークが使用されてもよい。
【背景技術】
【0002】
本発明は、コマンドアプリケーションおよび/または制御アプリケーションを実行する空間的に分散したコンピューティングノード(略して「ノード」と呼ぶ)のネットワークから構成されるコンピュータシステム、たとえば容器内の圧力を制御する化学プラント内のコンピュータシステムの性能を改善するのに役立つ。このようなコンピュータシステムは、該当するセンサを使用して、容器内の実際の圧力をモニタし、センサ読出値をあらかじめ規定された上限と比較し、アクチュエータを、たとえばヒータを動作させて、あらかじめ規定された上限に実際の圧力をほぼ一致させてもよい。このようなコンピュータシステムが一般に「リアル・タイム・システム」と呼ばれる場合が多いのは、これらのシステムの機能が、通常のオフィス・コンピュータ・システムで十分な、正しい出力を作り出す必要があるだけでなく、この出力をしばしば非常に厳しく規定された時間的限界の範囲内で作り出す必要があるためである。
【0003】
リアル・タイム・システムのノードは、典型的には、実時間の推移を計測することができるローカルクロックを装備する。空間的に分散したノード内のこれらのローカルクロックを互いに同期させる方法をコンピュータシステムが実装することが工学的慣行であり、その結果、リアル・タイム・システムの任意の2つのノード内の、任意の2つの正しく機能しているクロックが、任意の時点に実時間で非常に似た値を有する。正しく機能しているノードの2つのローカルクロックの値の最大差を「精度」と呼ぶ;換言すれば、精度は、任意の時点に実時間で、ネットワーク内の任意の2つの同期した、故障していないクロック間の最大距離として規定される。「故障していない」とは、デバイスが、その仕様に従って動作していることを意味し、「同期した」とは、デバイスが(たとえば、電源投入またはリセットの後に)うまく始動したことを意味する。IEEE1588標準は、ローカルクロックを同期させる、このような方法を規定する。詳細には、IEEE1588で説明される方法は、コンピュータシステム内の他すべてのノードが同期する、「グランド・マスタ・クロック」と呼ばれるちょうど1つの同期マスタを選択することに基づく。グランド・マスタ・クロックが故障した場合、IEEE1588は、該当するノードがコンピュータシステム内に存在する場合、新しいグランド・マスタ・クロックを選択する、「PTP」と呼ばれる再選択プロトコルを明記している。いくつかの用途では、再選択プロトコルは、システム内の精度の低下につながる可能性がある、および/またはコンピュータシステム内のすべてのノードが同じ新しいグランド・マスタ・クロックを一貫して選択することを保証することができないために、受け入れることができない。
【0004】
本発明に関連して、「IEEE1588デバイス」の形のどんな表現も、IEEE1588標準と互換性のある「デバイス」、たとえばネットワークノード、Masterクロック、Slaveクロックなどに関するものとして理解される。同様に、「IEEE1588メッセージ」の形のどんな表現も、IEEE1588標準に従って形成された「メッセージ」(たとえばSyncメッセージ、Announceメッセージなど)と理解される。用語「マスタ」および「スレーブ」は、本明細書ではIEEE1588標準で規定されるような意味で使用される:要するに、IEEE1588Masterは、「単一の高精度時間プロトコル(Precision Time Protocol、PTP)通信経路に関連するマスタクロック、すなわち、この経路上の他すべてのクロックが同期する時間の供給源であるクロック」である(IEEE1588−2008、5ページ);およびIEEE1588Slaveは、ネットワーク内の他のクロック(すなわち、マスタクロック)に同期するSlaveクロックである。IEEE1588MasterおよびIEEE1588Slaveは、IEEE1588グランド・マスタ・クロックを時間の最終的供給源とする同期階層を形成する。したがって、ネットワーク内のノードが、たとえば、グランド・マスタ・クロックに直接同期し(IEEE1588Slaveの役割を示す)、かつ自分に同期する他のノードと通信するとき(したがって、IEEE1588Masterの働きをする)、同時にIEEE1588MasterおよびIEEE1588Slaveの両方であってもよい。
【0005】
この開示の範囲内で、ノードはまた、「エンドシステム」と呼ばれる。さらに、エンドシステムを接続するネットワークは、物理的接続および「スイッチ」から構成され、2つのエンドシステムが、少なくとも1つのスイッチを介して互いに接続され、物理的接続は、エンドシステムをスイッチに接続するだけでなく、スイッチをスイッチに接続する。エンドシステムはローカルクロックを有する。スイッチはローカルクロックを有してもよい。このようなローカルクロックは、発振器のような物理的構成要素である。したがって、ローカルクロックは実時間を完全に表すのではなく、実時間より速いまたは遅い場合がある。ローカルクロックおよび理論的に完全なクロックの間の速度差が、一般にクロックの「ドリフト率」と呼ばれる。コマンドおよび制御アプリケーションの範囲で使用されるクロックのドリフト率の典型的値が、約何十ppmまたは数百ppmの範囲である。ドリフト率は、実時間の推移と共に、異なるエンドシステムおよび/またはスイッチのローカルクロックの値を逸脱させる。したがって、ローカルクロックは、ローカルクロックの最大距離が、精度と呼ばれるあらかじめ規定された限界を超えないように、互いに定期的に再整列されなければならない。この再整列過程は、クロックの「同期」と呼ばれる。
【0006】
エンドシステムおよび/またはスイッチのローカルクロックを互いに同期させるために、エンドシステムおよび/またはスイッチは、同期メッセージの形で情報を互いに交換する。同期メッセージのタイプ、およびこれらの同期メッセージをどのように交換しなければならないかという規則が、一般に「同期プロトコル」と呼ばれる。IEEE1588は、このような同期プロトコルを規定する。
【0007】
本発明にとって特に関心があるのが、IEEE1588標準の以下のタイプの同期メッセージ:「IEEE1588Announceメッセージ」および「IEEE1588Syncメッセージ」である。IEEE Announceメッセージは、ネットワーク内の1組のエンドシステムおよび/またはスイッチからちょうど1つのグランドマスタを決定するために、IEEE1588同期プロトコルにより使用される。グランドマスタは、ネットワーク内にIEEE1588Syncメッセージを継続的に送信する。IEEE1588Syncメッセージを受信し、かつIEEE1588標準を実装するエンドシステムおよび/またはスイッチは、IEEE1588Syncメッセージを使用して、自分のローカルクロックをグランドマスタのローカルクロックに同期させる。
【0008】
IEEE1588Announceメッセージは、IEEE1588同期プロトコルの一部であるPTPプロトコルで使用される。PTPプロトコルに関与するエンドシステムおよびスイッチはそれぞれ、ネットワーク内のすべてのエンドシステムおよびスイッチにIEEE1588Announceメッセージを定期的に送信する。PTPプロトコルに関与するエンドシステムおよびスイッチはそれぞれ、これらのIEEE1588Announceメッセージのうちベストのものを選択し、その個々の送信側を同期用グランドマスタとして使用する。ベストのIEEE1588Announceメッセージの決定は、異なる送信側のIEEE1588Announceメッセージを互いに比較することにより、受信側でローカルに行われる。1組の受信されたIEEE Announceメッセージ内にちょうど1つベストのIEEE1588Announceメッセージが存在することが、PTPプロトコルにより保証されている。
【0009】
フォールトトレランスの観点から、IEEE1588標準は、いわゆる「順次冗長性(sequential redundancy)」を実装する同期プロトコルを規定している。これは、現在のグランドマスタが故障した場合、IEEE1588標準のPTPプロトコルが新しいグランドマスタを再選択することを意味する。一般に順次冗長性、およびIEEE1588で規定される具体的な方法には2つの主要な欠点がある。第一に、再選択過程は瞬時に行われるのではなく、実時間で一定継続期間がかかる。これは、この再選択時間の間、IEEE1588MasterおよびIEEE1588Slaveが自分のローカルクロックを同期させることができるグランドマスタが存在しないことを意味する。その結果、IEEE1588MasterおよびIEEE1588Slaveのローカルクロックは、互いにドリフトする。したがって、精度(すなわち、任意の2つの故障していないローカルクロックの最大差)は、これらの潜在的に長い非同期期間を考慮する必要がある。この非同期の結果として、精度は、ある種の用途では許容できないほど長くなる場合がある。同期に対するIEEE1588順次冗長性手法の第2の大きな欠点が、ある種の重大な故障シナリオで「一貫性」およびグランドマスタ「可用性」を保証できないことである。これは、ある種のシナリオでは、たとえば、グランドマスタが悪質な故障モードで故障したとき、IEEE1588MasterおよびIEEE1588Slaveが新しいグランドマスタをいつでも選択する、および/または同じグランドマスタを一貫して選択することをIEEE1588が保証することができないことを意味する。
【0010】
システムにグランドマスタを継続的に再選択させる、グランドマスタのこのような故障モードの一例が、「断続的に」故障するグランドマスタである。これは、故障したグランドマスタが、IEEE1588Announceメッセージを短期間だけ送信することがあるが、IEEE1588Syncメッセージを送信することができないことを意味する。故障したグランドマスタは、IEEE1588Announceメッセージを送信するたびに、新しいグランドマスタとして再選択される。選択された直後に、故障したグランドマスタが、IEEE1588SyncメッセージおよびIEEE1588Announceメッセージを送信できないとき、新しいグランドマスタが選択される。しかしながら、新しいグランドマスタが選択された直後、故障したグランドマスタが自分のIEEE1588Announceメッセージを再び送信してもよく、したがって、他の再選択過程を引き起こす。したがって、故障したグランドマスタの動作する/動作しない故障挙動のこの継続が、システムにグランドマスタを継続的に再選択させる。一貫性のないグランドマスタ選択につながる他の例示的故障が、現在のグランドマスタのIEEE1588SyncメッセージおよびIEEE1588AnnounceメッセージをIEEE1588MasterおよびIEEE1588Slaveのサブセットだけに中継する、故障したスイッチである。したがって、現在のグランドマスタからのメッセージがないので、残りのIEEE1588MasterおよびSlaveは、他の(すなわち、第2の)グランドマスタを再選択する。
【先行技術文献】
【非特許文献】
【0011】
【非特許文献1】IEEE1588標準(IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control System(ネットワーク化された測定および制御システムのための高精度クロック同期プロトコルのためのIEEE標準))
【非特許文献2】IEEE1588−2008
【非特許文献3】IEEE1588−2008、5ページ
【非特許文献4】IEEE1588−2008、88ページ
【非特許文献5】IEEE1588−2008、89ページ、
図27
【発明の概要】
【発明が解決しようとする課題】
【0012】
上記に鑑みて、上述の欠点を克服する方法および実装形態を提供することが本発明の目的である。本発明は、独立クレームで説明する方法および実装形態を提供する。独立クレームは、本発明のさらに有利な展開形態を説明する。
【課題を解決するための手段】
【0013】
詳細には、本発明の第1の様態によれば、複数のノードおよび複数の接続を備え、各接続が少なくとも2つのノードを接続して、ネットワークプロトコルによるメッセージ交換を含むノード間通信をできるようするネットワークに基づき、本発明によるネットワークは、
a)IEEE1588標準による高可用性グランド・マスタ・クロックを実装するサブシステムを形成する複数のノードであって、サブシステムは、前記サブシステムを形成する前記ノードの少なくとも1つの故障を許容するように構成された複数のノード、および
b)IEEE1588Masterクロックおよび/またはIEEE1588Slaveクロックを、高可用性グランド・マスタ・クロックを実装するサブシステムに物理的に接続するためにそれぞれ構成された少なくとも1つの双方向通信リンク
を備える。
【0014】
この解決策は、順次冗長性の代わりに、または順次冗長性に加えて、「並列冗長性」を使用する「高可用性グランドマスタ」(high−availability grand master、HAGMと略す)の概念に基づく。IEEE1588では任意の所与の時間に、最大で1つのノードがグランドマスタの役割を果たしているが、本発明は、グランドマスタ、すなわちHAGMが、複数のノードから構築される方法および実装形態を提供する。この解決策は、複数のグランド・マスタ・クロックがシステム内で同時に動作することができるようにし、したがって、IEEE1588の再選択プロトコルを陳腐化することにより、IEEE1588で規定されるような同期方法を改善する。この解決策は、ネットワークの起動および動作中に信頼性を高め、特性を改善する、グランド・マスタ・クロックのフォールトトレラントな実現形態をさらに可能にする。これは、グランド・マスタ・クロックのうち1つが故障した場合、他のグランド・マスタ・クロックへの切り替えを行う必要があるのではなく、IEEE1588Syncメッセージを提供する少なくとも1つの他のグランド・マスタ・クロックがすでに存在し、ネットワーク内のローカルクロックが同期することを保証することを意味する。常に動作しているこのような時間サービスは、シームレスに、中断することなく動作しなければならない多くのきわめて重要な用途の必要条件である。
【0015】
他の様態では、本発明はまた、本発明によるネットワークを実装する方法を提供し、方法は:
a)IEEE1588標準による高可用性グランド・マスタ・クロックを実装するサブシステムを形成する複数のノードを提供し、前記サブシステムを形成する前記ノードの少なくとも1つの故障を許容するように構成するステップ、および
b)IEEE1588Masterクロックおよび/またはIEEE1588Slaveクロックを、高可用性グランド・マスタ・クロックを実装するサブシステムに物理的に接続するためにそれぞれ構成された少なくとも1つの双方向通信リンクを確立するステップ
を含む。
【0016】
本発明の他の様態が、本発明による高可用性グランド・マスタ・クロックを実装するサブシステムに関与するように構成されたTTEthernetおよび/またはネットワークノードに関する。
【0017】
本発明の他の一展開形態では、本発明によるHAGMは、そのIEEE1588AnnounceメッセージがベストのIEEE1588Announceメッセージとして常に選択される方法で、IEEE1588Announceメッセージを生成し、IEEE1588Masterおよび/またはIEEE1588Slaveに送信するように構成される。このタイプのアナウンスメッセージは、高可用性グランド・マスタ・クロックが、IEEE1588ベスト・グランド・マスタ・クロック・アルゴリズムによりベストマスタとして選択されることを保証する。一実装形態では、これは、HAGMのIEEE1588AnnounceメッセージをIEEE1588標準による可能なベストAnnounceメッセージとして構成することにより行うことができる。
【0018】
IEEE1588MasterクロックおよびIEEE1588Slaveクロックは、グランドマスタからのIEEE1588Syncメッセージを使用して、自分のローカルクロックを同期させる。IEEE1588MasterおよびIEEE1588Slaveのローカルクロックがすべてグランドマスタに同期したとき、ローカルクロックはまた、互いに同期することに留意されたい。
【0019】
本発明の他の展開形態では、少なくとも2つの冗長な標準的IEEE1588グランド・マスタ・クロックにネットワークを接続することができ、高可用性グランド・マスタ・クロックは、冗長な標準的IEEE1588グランド・マスタ・クロックから送られたIEEE1588Syncメッセージを受信したことの応答としてIEEE1588Syncメッセージを生成するように構成され、それにより、
a)高可用性グランド・マスタ・クロックは、IEEE1588Syncメッセージを消費し、IEEE1588Announceメッセージは、冗長な標準的IEEE1588グランド・マスタ・クロックを形成し、これらのIEEE1588Syncメッセージを転送せず、
b)高可用性グランド・マスタ・クロックにより生成されたIEEE1588Syncメッセージにより表されるタイミング情報が、標準的IEEE1588グランド・マスタ・クロック(101)から受信した前記IEEE1588Syncメッセージのタイミング情報の平均値、中央値、フォールトトレラントな平均値、もしくはフォールトトレラントな中央値、またはこの値のオフセットを表す。
【0020】
詳細には、前述の2つの展開形態に関連して、高可用性グランド・マスタ・クロックは、どんなIEEE1588SyncメッセージもIEEE1588Announceメッセージも、冗長な標準的IEEE1588グランド・マスタ・クロックに送信も転送もしないように構成されてもよい。これは、さまざまなグランド・マスタ・クロック間の起こり得る衝突を回避するのに役立つ。
【0021】
本発明の一実現形態では、この複数のノードうちいくつかのノードが同時にIEEE1588グランドマスタの役割を果たす。これは、IEEE1588グランドマスタの役割を果たしているノードのうち1つまたは複数が故障した場合でさえ、正しく動作しているノードが、HAGMを形成する複数のノードの中に残されているかぎり、HAGMは同期した時間を依然として維持することができる、すなわち、IEEE1588Syncメッセージを送信することができることを意味する。
【0022】
同期した時間をさらに改善された手法で維持することができる、本発明の他の様態によれば、IEEE1588グランドマスタの複製に加えて、HAGMは、「フォールトトレラントなクロック同期」方法を実装する。このフォールトトレラントなクロック同期方法は、冗長なIEEE1588グランド・マスタ・ノードからのメッセージを入力として使用し、新しいIEEE1588メッセージを生成する。詳細には、上記で説明したように、HAGMは、HAGMをシステム内のベスト・グランド・マスタとして示すIEEE1588Announceメッセージを生成し、一実現形態では、IEEE1588Announceメッセージのための情報を、コンピュータシステムを設計するときに静的に構成することができる。HAGMのIEEE1588Syncメッセージは、HAGMを形成している複数のノードの冗長なIEEE1588グランドマスタの現在のローカルクロック時間の統合見解を表す。フォールトトレラントなクロック同期方法は、ローカルクロックの時間のこのような統合見解を確立するために使用される。業界で使用される周知のフォールトトレラントなクロック同期方法が、たとえば、TTPプロトコルまたはTTEthernet「圧縮機能」で使用される「フォールトトレラントな平均値」である。
【0023】
本発明の特に有利な一実現形態では、HAGMは、TTEthernetネットワーク内に実装されてもよい;この場合、TTEthernet圧縮機能が、最適なフォールトトレラントなクロック同期方法として使用されてもよい。換言すれば、本発明によるサブシステムが、高可用性グランド・マスタ・クロックを実現するように構成されたTTEthernetシステムとして実現されてもよく、TTEthernetシステムは、1つのネットワーク・インタフェース・カードまたは複数のネットワーク・インタフェース・カード、および1つのスイッチまたは複数のスイッチから構成され、各ネットワーク・インタフェース・カードは、双方向通信リンクにより少なくとも1つのスイッチに接続される。このTTEthernetシステムは、それ自体IEEE1588グランド・マスタ・クロックを実装してもよい。
【0024】
本発明のこの実現形態によるネットワークは、少なくとも2つの冗長な標準的IEEE1588グランド・マスタ・クロックにさらに接続可能であってもよく、前記TTEthernetシステムは、冗長な標準的IEEE1588グランド・マスタ・クロックからIEEE1588Syncメッセージを受信したことの応答としてIEEE1588Syncメッセージを生成するように構成され、
a)すべての故障していない標準的IEEE1588グランド・マスタ・クロックが、自分のローカルの時間認識に従って同じ時点に自分のIEEE1588Syncメッセージを生成し、
b)TTEthernet圧縮機能を使用して、冗長な標準的IEEE1588グランド・マスタ・クロックからIEEE1588Syncメッセージを収集し、新しいIEEE1588Syncメッセージを生成する。
この場合、TTEthernet圧縮機能を、TTEthernetスイッチ内に実装することができる。代わりにまたはさらに、複数のTTEthernet圧縮機能をTTEthernetシステム内に実装することができる。この場合の有用な他の一発展形態では、すべての冗長な標準的IEEE1588グランド・マスタ・クロックが、自分のIEEE1588SyncメッセージをすべてのTTEthernet圧縮機能に送信するように構成されてもよく、各圧縮機能が、新しいIEEE1588Syncメッセージを生成する。
【0025】
本発明の他の一様態では、標準的IEEE1588Masterクロックまたは標準的IEEE1588Slaveクロックが、高可用性グランド・マスタ・クロックにより作り出されたような冗長なIEEE1588Syncメッセージを受信するように構成され、それにより、IEEE1588MASTERクロックまたはIEEE1588Slaveクロックは、冗長なIEEE1588Syncメッセージにより運ばれる高可用性グランド・マスタ・クロックからのタイミング情報を使用して、自分のローカルクロックを補正する。タイミング情報は、たとえば:タイミング情報の平均値、中央値、フォールトトレラントな平均値、またはフォールトトレラントな中央値というタイプのうち1つとすることができる。
【0026】
以下、本発明の詳細、適切な展開形態および利点が図面で示す例示的実施形態からさらに明らかになるであろう。
【図面の簡単な説明】
【0027】
【
図1】IEEE1588Master/Slaveに接続されたHAGMを示す。
【
図2】3つの冗長な外部IEEE1588グランド・マスタ・クロックの時間情報を使用して、IEEE1588Master/Slaveを同期させるHAGMを示す。
【
図3】エンドシステムおよびスイッチから構成されるTTEthernetネットワークの形のHAMGであって、TTEthernetエンドシステムのいくつかがIEEE1588グランド・マスタ・クロックを実装するHAGMの一実現形態を示す。
【
図4】エンドシステムおよびスイッチから構成されるTTEthernetネットワークの形のHAGMであって、TTEthernetスイッチが、3つの外部IEEE1588グランド・マスタ・クロックから受信した入力から、それに応答してフォールトトレラントなIEEE1588同期メッセージを生成するHAGMの一実現形態を示す。
【発明を実施するための形態】
【0028】
以下の例示的実施形態は、本発明の可能な実現形態のうちいくつかを説明する。図は、本発明によるネットワークサブシステムの具体的な実施形態に対応する例示的解決策を示す;サブシステムは、好ましくはTTEthernetシステムである、より大きなネットワーク(図示せず)の一部であってもよい。当然のことながら、本発明は、ここで示す実施形態に限定されず、ここに示す実施形態は、図示するおよび/または説明する実施形態だけに本発明の範囲を限定すると解釈されるべきではない;むしろ、当業者は、添付の特許請求の範囲に入る他の修正形態および実装形態を容易に考案されよう。ここで提示するすべての解決策および様態は、例示的性格のものであり、互いに自由に組み合わせることができる。
【0029】
図1は、物理的接続401を介してIEEE1588同期メッセージをIEEE1588Master/Slave201に送信するHAGM301を示す。
図2は変形ネットワークレイアウトを示し、HAGM301は、物理的接続402を介して送信される冗長なIEEE1588グランド・マスタ・クロック101の時間情報を使用して、自分が物理的接続401を介してIEEE1588Master/Slaveに送信するIEEE1588同期メッセージを作り出す。本発明によれば、
a)高可用性グランド・マスタ・クロック(301)は、以下でさらに説明するように、複数の物理的デバイスから構成される、
b)高可用性グランド・マスタ・クロック(301)は、複数のデバイスのうち1つまたは複数のデバイスの故障を許容することができる、および
c)IEEE1588Masterクロック(201)および/またはIEEE1588Slaveクロック(201)は、1つまたは複数の双方向通信リンク(401)を介して高可用性グランド・マスタ・クロック(301)に物理的に接続される。
【0030】
図1および
図2のHAGM301は、IEEE1588標準に従うグランド・マスタ・クロックを形成し、ネットワークの構成要素の一部またはすべてを備えることができる、本発明によるサブシステムにより実現される。このサブシステムの形成に関与するネットワークノード(または簡単にノード)は、たとえば、コンピュータ、ネットワーク・インタフェース・カード(NIC)、イーサネットスイッチ、イーサネットコントローラを一体化したマイクロプロセッサなどであってもよい。
【0031】
図3は、エンドシステムおよびスイッチ601から構成されるTTEthernetネットワークの形のHAGM301の一実現形態を示し、エンドシステムのすべてが、TTEthernetネットワーク・インタフェース・カード(NIC)501を装備し、エンドシステムのいくつかがIEEE1588グランド・マスタ・クロック701を実装する。IEEE1588のHAGMクロック301のこのTTEthernetに基づく実現形態は、物理的接続401を介してIEEE1588同期メッセージをIEEE1588Master/Slaveに冗長的に送信する。TTEthernetのNIC501およびスイッチ601は、従来技術から公知のように自走ローカルクロックを使用してトランスペアレントクロックを実装する。TTEthernetのトランスペアレントクロックの機能は、IEEE1588のエンド・ツー・エンドおよびピア・ツー・ピアのトランスペアレントクロック機能に類似する。プロトコル制御フレーム(PCF)のため、および構成可能な1組の他のフレームのために、TTEthernetスイッチは、フレームの待ち時間を計測する。次いで、この遅延プラス構成可能な値が、フレームの専用フィールドに書き込まれる。構成可能な値は、ワイヤの遅延を補償するためのものであり、したがって、ピア・ツー・ピアのトランスペアレントクロックの(より融通性がないが)より安価な一代替形態である。
【0032】
図3に示すサブシステムは、IEEE1588タイムラインをTTEthernetに同期させることができるようにするだけでなく、TTEthernetが故障動作のIEEE1588グランド・マスタ・クロックをシミュレートすることができるような方法でネイティブTTEthernet機構を活用する方法を示す互換モードの一例を示す。このために、3つのNIC501が3つの1588グランド・マスタ・クロック701を実装する。これらのクロック701は、自分のローカルクロックに従って同じ時点で自分の同期メッセージを定期的に提供するように構成され、これにより、これらのクロック701がこれらの最初の同期メッセージを消費し、かつグランド・マスタ・クロック701の平均値(または中央値)を反映する時点に新しいIEEE1588同期メッセージを作り出すような方法で、スイッチ601内の圧縮マスタ(compression master、CM)機能を拡張することができるようになる。グランド・マスタ・クロックが万一故障する場合、故障はCMによりマスクされる;グランド・マスタ・クロックが存在していないこと、または誤った値は、十分に多数のグランド・マスタ・クロックが存在するという前提で、平均化(または中央値)機能により補償される。CM自体の故障は、グランド・マスタ・クロック701に、両方のCMに自分の同期メッセージを送信させる(これはスイッチ601により実現される)ことにより緩和することができ、両方のCMは、次に、同一IEEE1588同期メッセージを生成し、通信経路401により示されるレガシーIEEE1588装置に同一IEEE1588同期メッセージを転送する。次いで、このレガシー構成要素は、同一IEEE1588同期メッセージのいずれか1つを選んでも、これらの同期メッセージ自体に対して平均計算を実行してもよい。これが、本発明の範囲内で、異なるフォールトトレランス特性をもたらす。
【0033】
図示するような種類の構成は、IEEE1588デバイスが、安全性が重視されるシステム自体の一部であるので、たとえば、フォールトトレラントな方法で同期される必要がある使用事例を有する。
【0034】
サブシステム301の構成は、HAGMのIEEE1588Announceメッセージが、IEEE1588標準による可能なベストAnnounceメッセージとみなされることを保証する。これは、たとえば、HAGMのgrandmasterPriority1(IEEE1588−2008、88ページ)をネットワーク内の可能な最高の優先順位に固有に設定することにより行うことができる。その結果、PTPプロトコルは、データ設定比較アルゴリズム(IEEE1588−2008、89ページ、
図27)を使用してHAGMをベストクロックとして選択する。あるいは、HAGMのIEEE1588アナウンスメッセージが、IEEE1588に指定されるような決定アルゴリズムを使用して、ベスト・マスタ・メッセージとして選択されることを保証する他の構成が可能である。ネットワーク内のノードの構成を考慮すると、データセット比較アルゴリズムを使ってシステム内のノードの構成を比較することにより、ベストマスタとして選択されるようにHAGMの構成を決定することは簡単である。
【0035】
図4は、外部のIEEE1588グランド・マスタ・クロック101の同期メッセージを、物理的接続402を介してスイッチ601に引き渡される入力として使用する、TTEthernetネットワークの形のHAGM301の他の実現形態を示す。スイッチ601は、外部のIEEE1588グランド・マスタ・クロックからのIEEE1588同期メッセージを統合し、物理的接続401を介して新しいIEEE1588同期メッセージを他のIEEE1588Master/Slave構成要素201に送信する。
【0036】
図4は、IEEE1588およびTTEthernetの間の他の互換モードを示す。この実施形態は、スイッチがIEEE1588トラフィックを識別し、トラフィックの遅延を計測し、該当するフィールドに補正値を設定するようにTTEthernetスイッチ内に機能を直接実装する。これにより、外部のIEEE1588グランド・マスタ・クロック101から、選択されたリンク402を介したスイッチ601への、およびさらにリンク401を介したデバイス201への通信が実現される。
【0037】
他の変形形態(図示せず)では、外部のIEEE1588グランド・マスタ・クロック101は、TTEthernetのNIC501に接続されてもよい。IEEE1588同期メッセージが、TTEthernetのNIC内の機能を使用してトンネルされる。このために、NIC501は、IEEE1588フレームを、TTEthernetスイッチ601により認識されるように変換する。
【0038】
このような構成の1つの使用事例が、TTEthernetシステム自体のためのテスト設定である;IEEE1588の同期したタイムラインを使用して、TTEthernetアルゴリズムが正しく実装されているかどうかを、たとえば、PCFが時間的に正しくディスパッチされているかどうかを計測することができる。
【0039】
たとえば、好都合には、以下の要件は、TTEthernetネットワークで単一のフォールトトレランスを達成するのに役立つ場合がある:
【0040】
1つまたは複数の受信ノードにメッセージをフォールトトレラントに送信する各送信ノードが、チャネルとしても知られるネットワークを通って少なくとも2つのノード独立な経路を介して受信ノードに接続される。チャネルは互いにノード独立であるが、送信ノードおよび受信ノードは2つの(または3つ以上の)チャネルを共有する。
【0041】
この一般的な要件は、クロック同期とは無関係である。
【0042】
クロック同期に関与するためには、TTEthernet仕様に規定されるように、
*各ノードがSync Client(同期クライアント)機能を実装する必要がある
*少なくとも4つのノードがSync Master(同期マスタ)機能を実装する必要がある
*2つの経路の各々の上で、少なくとも1つのノードがCompression Master(圧縮マスタ機能)を実装する必要がある。
このようなネットワークは、単一フォールトトレラント構成でTTEthernetプロトコルを実装すると言われている。
【0043】
TTEthernetはまた、第3のチャネルを使用し、少なくとも7つのノードがSync Master機能を実装する二重フォールトトレラント構成をサポートする。