JP2007511986A - 双方向性の編組リング型ネットワーク内における方向的な整合性の強化 - Google Patents
双方向性の編組リング型ネットワーク内における方向的な整合性の強化 Download PDFInfo
- Publication number
- JP2007511986A JP2007511986A JP2006541630A JP2006541630A JP2007511986A JP 2007511986 A JP2007511986 A JP 2007511986A JP 2006541630 A JP2006541630 A JP 2006541630A JP 2006541630 A JP2006541630 A JP 2006541630A JP 2007511986 A JP2007511986 A JP 2007511986A
- Authority
- JP
- Japan
- Prior art keywords
- node
- channel
- neighbor
- data
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/43—Loop networks with decentralised control with synchronous transmission, e.g. time division multiplex [TDM], slotted rings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/437—Ring fault isolation or reconfiguration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一実施形態においては、1つのノードは、そのノードを1つのチャネルへ通信可能に結合するためのインターフェースを含む。そのチャネルは、そのノードを、第1の方向における第1の隣のノードおよび第1の隣の隣のノードへ通信可能に結合する。第1の隣のノードが、送信を行うようにスケジュールされており、そのノードが、第1の隣のノードからそのチャネルを介してデータを受信する場合に、そのノードは、そのデータを第1の隣の隣へ転送し、第1の隣の隣から他のデータを受信し、そのデータを他のデータと比較し、そのデータを、その比較を示す情報と共にそのチャネルに沿って中継する。
Description
本出願は、これと同じ日付に出願された下記の出願に関連し、これらのすべてを参照により本明細書に組み込む。
「UNSYNCHRONOUS MODE BROTHER’S KEEPER BUS GUARDIAN FOR A RING NETWORKS」という名称の米国特許出願第 / 号(弁理士整理番号H0005059)。
「UNSYNCHRONOUS MODE BROTHER’S KEEPER BUS GUARDIAN FOR A RING NETWORKS」という名称の米国特許出願第 / 号(弁理士整理番号H0005059)。
「CLIQUE AGGREGATION IN TDMA NETWORKS」という名称の米国特許出願第 / 号(弁理士整理番号H0009280)。
「SYNCHRONOUS MODE BROTHER’S KEEPER BUS GUARDIAN FOR A TDMA BASED NETWORK」という名称の米国特許出願第 / 号(弁理士整理番号H0009281)。
「SYNCHRONOUS MODE BROTHER’S KEEPER BUS GUARDIAN FOR A TDMA BASED NETWORK」という名称の米国特許出願第 / 号(弁理士整理番号H0009281)。
「HIGH INTEGRITY DATA PROPAGATION IN A BRAIDED RING」という名称の米国特許出願第 / 号(弁理士整理番号H0009279)。
「MESSAGE ERROR VERIFICATION USING CHECKING WITH HIDDEN DATA」という名称の米国特許出願第 / 号(弁理士整理番号H0005061)、本明細書では「H0005061出願」とも呼ばれる。
以降の説明は、一般に通信システムに関し、より詳細には分散型のフォルトトレラントな通信システムに関する。
分散型のフォルトトレラントな通信システムは、例えば1つの不具合が場合によっては1人または複数の人間の負傷または死亡につながる可能性のあるアプリケーションにおいて使用される。このようなアプリケーションは、本明細書では「安全が決定的に重要となるアプリケーション」と呼ばれる。安全が決定的に重要となるアプリケーションの一例は、航空機あるいはその他のエアロスペースビークル内に含まれるセンサおよび作動装置をモニタおよび管理するために使用されるシステム内に存在する。
そのような安全が決定的に重要となるアプリケーションにおいて使用するために一般に検討される1つのアーキテクチャが、TTA(Time−Triggered Architecture)である。TTAシステムにおいては、複数のノードが、例えばTTP/C(Time Triggered Protocol/C)あるいはFLEXRAYプロトコルを使用して、2つの複製された高速の通信チャネルを介して相互に通信する。いくつかの実施形態においては、そのようなTTAシステム内のノードのうちの少なくとも1つが、例えばTTP/A(Time Triggered Protocol/A)を使用して、2つの複製された低速のシリアル通信チャネルを介して1つまたは複数のセンサおよび/または作動装置に結合される。
このようなTTAシステムの1つの構成においては、さまざまなノードが、2つの複製された通信チャネルを介して相互に通信し、これらの通信チャネルのそれぞれは、スター型トポロジを使用して実装される。このような構成においては、それぞれのチャネルは、1つの独立した中央集中型のバスガーディアンを含む。このような中央集中型のバスガーディアンのそれぞれは、それぞれのチャネルごとの単一障害点を表す。別の構成においては、TTAシステムは、リニアバス型トポロジを使用して実装され、ここでは、さまざまなノードが、2つの複製された通信チャネルを介して相互に通信し、それぞれのノードは、そのノードが結合されるそれぞれの通信チャネルごとに別々の独立したバスガーディアンを含む。すなわち、2つの通信チャネルが使用される場合には、それぞれのノードは、2つの独立したバスガーディアンを含む。しかし、それぞれのノード内に複数の独立したバスガーディアンを提供することは、(例えば、それぞれのノード内に複数のバスガーディアンを提供することに関連してコストが増加するために)一部のアプリケーションには適さない可能性がある。
一実施形態においては、1つのノードは、そのノードを1つのチャネルへ通信可能に結合するためのインターフェースを含む。そのチャネルは、そのノードを、第1の方向における第1の隣のノードおよび第1の隣の隣のノードへ通信可能に結合する。第1の隣のノードが、送信を行うようにスケジュールされており、そのノードが、第1の隣のノードからそのチャネルを介してデータを受信する場合に、そのノードは、そのデータを第1の隣の隣へ転送し、第1の隣の隣から他のデータを受信し、そのデータを他のデータと比較し、そのデータを、その比較を示す情報と共にそのチャネルに沿って中継する。
別の実施形態においては、1つのネットワークは、第1のチャネルを介して相互に通信可能に結合されている複数のノードを含む。そのチャネルは、それぞれのノードを、第1の方向におけるそのノードの第1の隣のノードおよびそのノードの第1の隣の隣のノードへ通信可能に結合する。それぞれのノードごとに、そのノードの第1の隣のノードが、送信を行うようにスケジュールされており、そのノードが、その第1の隣のノードからそのチャネルを介してデータを受信する場合に、そのノードは、そのデータを第1の隣の隣へ転送し、第1の隣の隣から他のデータを受信し、そのデータを他のデータと比較し、そのデータを、その比較を示す情報と共にそのチャネルに沿って中継する。
別の実施形態は、少なくとも1つのチャネルを介して相互に通信可能に結合されている複数のノードを含むネットワーク内において通信を行う方法である。この方法は、それぞれのノードにおいて、そのノードの第1の隣のノードが、そのチャネル上においていつ送信を行うようにスケジュールされているかを判断するステップを含む。この方法は、それぞれのノードにおいて、そのノードの第1の隣のノードが、そのチャネル上において送信を行うようにスケジュールされているときに、そのノードの第1の隣のノードによって送信されたデータを受信するステップと、そのデータをそのノードの第1の隣の隣へ転送するステップと、第1の隣の隣から他のデータを受信するステップと、そのデータを他のデータと比較するステップと、そのデータを、その比較を示す情報と共にそのチャネルに沿って中継するステップとをさらに含む。
特許請求される本発明の1つまたは複数の実施形態の詳細については、添付の図面および以降の説明において示される。その他の特徴および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
さまざまな図面における同様の参照番号および記号は、同様の要素を示す。
図1は、通信ネットワーク100の一実施形態を示すブロック図である。通信ネットワーク100は、複数のノード102を含む。ネットワーク100のそれぞれのノード102は、少なくとも1つのチャネル106に通信可能に結合される。データがチャネル106内を流れる所与の方向に向かって、チャネル106は、それぞれのノード102を、そのノード102にとってデータの受信元である少なくとも2つの他のノード102(本明細書では「受信元ノード」とも呼ばれる)と、そのノード102にとってデータの送信先である少なくとも2つの他のノード102(本明細書では「送信先ノード」とも呼ばれる)とに通信可能に直接(すなわち、1つのホップのみで)結合する。一実施形態においては、受信元ノード102のうちの1つが、「一次」受信元ノード102として指定され、その他の受信元ノード102が、「二次」受信元ノード102として指定される。1つのノード102が、チャネル106上で所与の方向にデータを「中継」する場合には、そのノード102は、そのチャネル106および方向に関するデータを一次受信元ノード102から受信し、そのチャネル106および方向に関する受信データを、そのノード102用に指定された送信先ノードのそれぞれへと転送する。1つのノードによって二次受信元ノード102から受信されたデータは、後述のさまざまな比較オペレーションのために使用され、および/または適切なデータが一次受信元ノードから受信されない場合には中継される。1つの所与のノード102が、チャネル106に沿って所与の方向にデータを「送信」する場合には(すなわち、その所与のノード102が、ネットワーク100上でやり取りされるデータのソースである場合には)、そのノード102は、そのチャネル102および方向に関するデータを、そのノード102用に指定された送信先ノード102のそれぞれへ送信する。
図1に示されている特定の実施形態においては、複数のノード102は、「編組リング型の」トポロジを有するリング104内に配置され、そこでは複数のノード102は、複数の通信チャネル106を介して相互に通信する。図1に示されている特定の実施形態においては、8つのノード102が、2つの複製された通信チャネル106を介して相互に通信する。その他の実施形態においては、異なる数および/またはタイプのノード102および/またはチャネル106、ならびに/あるいは異なるネットワークトポロジが使用される。
ネットワーク100の実施形態は、さまざまなメディアアクセススキームを使用して実装される。例えば図1に示されている実施形態は、ここでは、TDMA(time division multiple access)メディアアクセススキーム(例えば、TTP/CあるいはFLEXRAYプロトコルで実施されるメディアアクセススキーム)を使用して実装されるものとして説明される。その他の実施形態においては、その他のメディアアクセススキームが使用される。
図1に示されている8つのノード102はまた、図1においてAからHの文字で個々にラベル付けされ、また本明細書では個々に「ノードA」、「ノードB」などと呼ばれる。本明細書において使用される際、「隣のノード」(あるいは単に「隣」)とは、リング104内における所与のノード102のすぐ次のノードのことである。それぞれのノード102は、2つの「隣のノード」102、すなわち時計方向のもの(本明細書では「時計方向の隣のノード」あるいは「時計方向の隣」とも呼ばれる)と、反時計方向のもの(本明細書では「反時計方向の隣のノード」あるいは「反時計方向の隣」とも呼ばれる)とを有する。例えばノードAにとっての隣のノード102とは、時計方向のノードHと、反時計方向のノードBである。
さらに、本明細書において使用される際、所与のノード102にとっての「隣の隣のノード」(あるいは単に「隣の隣」)とは、その所与のノード102の隣のノード102のさらに隣のノード102のことである。それぞれのノード102は、2つの隣の隣のノード102、すなわち時計方向のもの(本明細書では「時計方向の隣の隣のノード」あるいは「時計方向の隣の隣」とも呼ばれる)と、反時計方向のもの(本明細書では「反時計方向の隣の隣のノード」あるいは「反時計方向の隣の隣」とも呼ばれる)とを有する。例えばノードAにとっての2つの隣の隣のノードとは、時計方向のノードGと、反時計方向のノードCである。
2つの通信チャネル106は、それぞれ「チャネル0」および「チャネル1」として図1において個々にラベル付けされている(また本明細書でも、そのように呼ばれる)。図1に示されている実施形態においては、チャネル106のそれぞれは、複数のポイントツーポイントの一方向性のシリアルリンク108を使用して形成される。チャネル0は、ノード102をリング104に沿って時計方向に相互接続し、チャネル1は、ノード102をリング104に沿って反時計方向に相互接続する。その他の実施形態においては、その他のタイプのリンクが使用される。例えば、そのようなその他の一実施形態においては、双方向性のリンクが使用され、本明細書に記載のデバイス、システム、および技術は、通信が発生するそれぞれの方向ごとに実行される。
本明細書において使用される際、リンク108が、第1のノード102「から」第2のノード102「へ」接続されるものとして説明される場合には、そのリンク108は、そのリンク108を介してデータを第2のノード102へ送信するための第1のノード102用の通信パスを提供する。すなわち、その一方向性のリンク108の方向は、第1のノード102から第2のノード102へという方向である。
リンク108は、それぞれのノード102からそのノードの時計方向の隣のノード102へ接続される。リンク108はまた、それぞれのノード102からそのノードの時計方向の隣の隣のノード102へも接続される。例えば、1つのリンク108が、ノードAからノードHへ接続され、1つのリンク108が、ノードAからノードGへ接続される。これらの時計方向のリンク108は、チャネル0を構成し、図1においては実線を使用して示されている。
リンク108は、それぞれのノード102からそのノードの反時計方向の隣のノード102へ接続される。リンク108はまた、それぞれのノード102からそのノードの反時計方向の隣の隣のノード102へも接続される。例えば、1つのリンク108が、ノードAからノードBへ接続され、1つのリンク108が、ノードAからノードCへ接続される。これらの反時計方向のリンク108は、チャネル1を構成し、図1においては破線を使用して示されている。
所与のノード102をそのノードのそれぞれ時計方向および反時計方向の隣のノードへ接続するリンク108は、本明細書では「ダイレクト」リンク108とも呼ばれる。所与のノード102をそのノードのそれぞれ時計方向および反時計方向の隣の隣のノードへ接続するリンク108は、本明細書では「スキップ」リンク108とも呼ばれる。
図1に示されている特定の実施形態においては、チャネル0に関して、それぞれのノード102ごとの受信元ノードは、そのノードの反時計方向の隣および反時計方向の隣の隣であり、それぞれのノード102ごとの送信先ノードは、そのノードの時計方向の隣および時計方向の隣の隣である。本明細書に記載の実施形態においては、一次受信元ノードは、そのノードの反時計方向の隣である(ただし、その他の実施形態においては、一次受信元ノードは、そのノードの反時計方向の隣の隣である)。図1に示されている特定の実施形態においては、チャネル1に関して、それぞれのノード102ごとの受信元ノードは、そのノードの時計方向の隣および時計方向の隣の隣であり、それぞれのノード102ごとの送信先ノードは、そのノードの反時計方向の隣および反時計方向の隣の隣である。本明細書に記載の実施形態においては、一次受信元ノードは、そのノードの時計方向の隣である。
図1に示されている特定の実施形態においては、ネットワーク100は、ピアツーピアネットワークとして実装され、そこでは、それぞれの送信は、ネットワーク100のそれぞれのノード102によって受信されるよう意図されている。その他の実施形態においては、それぞれの送信は、特定の宛先ノードを対象とする。さらに、本明細書に記載の実施形態では、データは、ネットワーク100内においてデータのフレームの形態でやり取りされるが、その他の実施形態においては、データのその他のユニットがネットワーク100を介してやり取りされるものと理解されたい。
本明細書において図1〜5に関連して記載されている実施形態では、ネットワーク100内のノード102は、非同期化モードおよび同期化モードという少なくとも2つのモードで動作する。同期化モードで動作している場合には、ノード102は、グローバルタイムベースに同期化され、TDMAメディアアクセススキームに従って送信を行う。このようなTDMAメディアアクセススキームに伴って、ネットワーク100内のノード102が所与のスケジュール期間またはラウンド中のどの時点で送信を行うかを確定するために、スケジュールが使用される。所与のスケジュール期間中に、ネットワーク100内のさまざまなノード102は、送信を行うためのそれぞれのタイムスロットを割り当てられる。すなわち、任意の所与のタイムスロットに関して、そのタイムスロットに割り当てられたノード102は、そのタイムスロットの間に送信を行うことができる(本明細書では「スケジュールされたノード」102とも呼ばれる)。この実施形態においては、スケジュールされたノードは、図2に関連して後述する処理を実行する。ネットワーク100内のその他のノード102は、図3A〜3Bおよび4A〜4Bに関連して後述する中継処理を実行する。
ノード102が、非同期化モードで動作している場合には、それらのノード102は、まだグローバルタイムベースに同期化されておらず、まだTDMAスケジュールに従って送信を行っていない。図7A〜7Bは、一実施形態において、非同期化モードで動作中のネットワーク100のノード102によって実行される処理の少なくとも一部を示している。
図2は、図1のネットワーク100内においてデータを送信する方法200の一実施形態を示す流れ図である。図2に示されている方法200の実施形態については、ここでは、本明細書において図1〜5に関連して記載されている実施形態内で実施されるものとして説明する。方法200は、TDMAスケジュールに従って同期化モードで動作している1つのノード102によって実行される。それぞれのノード102は、このような実施形態においては、そのノード102が、スケジュールされたノード102である場合に(すなわち、現在のタイムスロットが、TDMAスケジュールによってそのノード102に割り当てられている場合に)、方法200の処理を実行する。図2のコンテキストにおいては、方法200の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法200のその他の実施形態は、その他の方法で実装される。
現在のノード102は、そのノード102がTDMAスケジュールに従ってネットワーク100上で送信を行うことができるとその現在のノード102が判断した場合に(ブロック202)、方法200の処理を実行する。ネットワーク100内のそれぞれのノード102は、そのような判断を行うのに必要な情報を保持する。図1〜5の実施形態においては、そのような情報は、TDMAスケジュール、およびノード102が同期化される対象であるグローバルタイムベースに関連する情報を含む。
現在のノード102が送信を行うことができ、かつそのノード102が、送信すべきデータを有する場合には(これは、ブロック204においてチェックされる)、その現在のノード102は、データのフレームを、チャネル0に沿って、その現在のノードの時計方向の隣および時計方向の隣の隣へ送信し(ブロック206)、チャネル1に沿って、その現在のノードの反時計方向の隣および反時計方向の隣の隣へ送信する(ブロック208)。現在のノード102は、そのフレームをその現在のノードの時計方向の隣および反時計方向の隣へ、それぞれのダイレクトリンク108を使用して送信する。現在のノード102は、そのフレームをその現在のノードの時計方向の隣の隣および反時計方向の隣の隣へ、それぞれのスキップリンク108を使用して送信する。このような実施形態の一実装形態においては、現在のノード102は、チャネル0上のフレームをその現在のノードの時計方向の隣および時計方向の隣の隣へ送信する第1のトランシーバと、チャネル1上のフレームをその現在のノードの反時計方向の隣および反時計方向の隣の隣へ送信する第2のトランシーバとを含む。
1図3Aは、図1のネットワーク100内においてデータを中継する方法300の一実施形態を示す流れ図である。1つのノードがデータを「中継」する場合には、そのノード102は、1つまたは複数の受信元ノードからデータを受信し、その受信したデータを1つまたは複数の送信先ノードへと転送する。すなわち、ノード102がデータを中継している場合には、そのノード102は、そのノード102が他のノードへと転送しているデータのソースではない。図3Aに示されている方法300の実施形態については、ここでは、本明細書において図1〜5に関連して記載されている編組リング型の実施形態内で実施されるものとして説明する。その他の実施形態においては、方法300は、その他のネットワークトポロジを使用して実施される。方法300を実施できるその他のネットワークトポロジの一例が、2つの「シンプレックス」リングチャネルを含むネットワークトポロジである。このようなシンプレックスリング型ネットワークの一実装形態においては、ネットワークは、図1に示されているトポロジと同様のトポロジを使用するが、それぞれのノードをその時計方向の隣の隣および反時計方向の隣の隣へ通信可能に結合するスキップリンクは存在しない。
方法300は、TDMAスケジュールに従って同期化モードで動作している1つのノード102によって実行される。それぞれのノード102は、このような実施形態においては、そのノードの両隣のうちの一方が、現在のタイムスロットにとってのスケジュールされたノード102である場合に、方法300の処理を実行する。図3Aのコンテキストにおいては、方法300の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法300のその他の実施形態は、その他の方法で実装される。
現在のノード102は、その現在のノード102の両隣のうちの一方が現在のタイムスロットの間に送信を行うようにスケジュールされているとその現在のノード102が判断した場合に(これは、ブロック302においてチェックされる)、方法300の処理を実行する。このような隣は、この図3Aのコンテキストにおいては「スケジュールされた隣」とも呼ばれる。図1〜5の実施形態においては、現在のノード102は、TDMAスケジュールと、そのノード102が同期化される対象であるグローバルタイムベースとを含む情報に基づいて、この判断を行う。
現在のノード102が、その両隣のうちの一方が現在のタイムスロットにとってのスケジュールされたノードであると判断した場合には、その現在のノード102は、そのスケジュールされた隣から発生してその現在のノード102によって受信されたフレームを、そのスケジュールされた隣から、そのスケジュールされた隣をその現在のノード102へ結合するダイレクトリンク108を介して中継するだけである。すなわち現在のノード102が、スケジュールされた隣以外のノード102から発生するフレームを受信した場合には、その現在のノード102は、そのフレームを中継しない。
現在のノード102が、スケジュールされた隣からのフレームの受信を開始した場合には(これは、ブロック304においてチェックされる)、その現在のノード102は、その送信が、ネットワーク100内において実施される1つまたは複数のポリシーに準拠しているかどうかをチェックする。図3Aに示されている特定の実施形態においては、現在のノード102は、送信が、例えば、そこにおいて送信を開始しなければならない特定のウィンドウを指定する時間的なポリシーに準拠しているかどうかをチェックする(これは、ブロック306においてチェックされる)。TTP/CあるいはFLEXRAYプロトコルがサポートされるこのような実施形態の一実装形態においては、現在のノード102は、送信が、サポートされるプロトコルの時間的な送信要件に準拠しているかどうかをチェックする。図3Aに示されている実施形態においては、送信が時間的なポリシーに準拠していない場合には(例えば、SOS(slightly−off−specification)の障害が発生した場合には)、現在のノード102は、現在のフレームを中継しない(ブロック308)。(図3A内で点線を使用して示されている)代替実施形態においては、送信が時間的なポリシーに準拠していない場合には、現在のノード102は、その送信が時間的なポリシーに準拠していないことを示す情報(例えば、添付または共有された整合性フィールド)と共に現在のフレームを中継する(ブロック309)。別の実施形態(図示せず)においては、送信が時間的なポリシーの第1の側面に準拠していない場合には、現在のノード102は、その送信を中継せず、またその送信が(第1の側面には準拠している一方で)その時間的なポリシーの別の側面に準拠していない場合には、現在のノード102は、その送信がそのポリシーのその側面に準拠していないことを示す情報と共に現在のフレームを中継する。
送信が時間的なポリシーに準拠している場合には、現在のノード102は、その送信が1つまたは複数のその他のポリシーに準拠しているかどうかをチェックする(ブロック310)。例えば一実施形態においては、現在のノード102は、送信が1つまたは複数のセマンティックポリシー(例えば、セマンティックなプロトコル状態のフィルタリングを実施するポリシー)に準拠しているかどうかをチェックする。それぞれのフレームが、そのフレームのコンテンツに基づいて計算されるCRC(cyclic redundancy check)フィールドを含む別の実施形態においては、現在のノード102は、そのCRCフィールドをチェックして、スケジュールされたノードからその現在のノード102へそのフレームを送信する過程で何らかのエラーがそのフレーム内に取り込まれているかどうかを判断する。このようなポリシーの別の例は、コード化層実施ポリシーである。別の例においては、フレーム長ポリシーが使用され、現在のノード102は、現在のフレームの長さをチェックする(このような例においては、フレーム長ポリシーに準拠しない場合には、例えば図3Aのブロック309に関連して説明したように処理が行われることになる)。
送信が、その他のポリシーのうちの1つまたは複数に準拠していない場合には、現在のノード102は、その送信を中継しない(ブロック308)。(図3A内で破線を使用して示されている)代替実施形態においては、現在のノード102は、その送信が1つまたは複数のポリシーに準拠していないことを示す情報(例えば、添付または共有された整合性フィールド)と共に現在のフレームを中継する(ブロック309)。別の実施形態(図示せず)においては、送信が第1のポリシーに準拠していない場合には、現在のノード102は、その送信を中継せず、またその送信が(第1のポリシーには準拠している一方で)別のポリシーに準拠していない場合には、現在のノード102は、その送信が後者のポリシーに準拠していないことを示す情報と共に現在のフレームを中継する。
あるいは、送信がすべてのポリシーに準拠している場合には、現在のノード102は、現在のフレームを、その現在のフレームの受信元であるチャネルに沿って、その現在のノードの次の隣および次の隣の隣へ中継する(ブロック312)。例えば、スケジュールされたノードがノードAであり、現在のノードがノードBである場合には、その現在のノードは、現在のフレームをノードC(チャネル1に沿ってノードBの次の隣)へ、およびノードD(チャネル1に沿ってノードBの次の隣の隣)へ中継する。
その他の実施形態においては、現在のノード102は、送信が、上述のポリシーにとって代わりとなるあるいは追加となるその他のポリシーに準拠しているかどうかをチェックする。例えば、このようなその他の一実施形態においては、現在のノード102は、スケジュールされたノードによる送信の方向に関する整合性を(例えば、図12に関連して後述する方法で)チェックし、そのフレームが方向に関する整合性を伴って送信されたかどうかを示すフィールドをそのフレームに添付する。
図3Bは、図1のネットワーク100内においてデータを中継する方法350の別の実施形態を示す流れ図である。図3Bに示されている方法350の実施形態については、ここでは、本明細書において図1〜5に関連して記載されている編組リング型の実施形態内で実施されるものとして説明する。その他の実施形態においては、方法350は、その他のネットワークトポロジを使用して実施される。方法350を実施できるその他のネットワークトポロジの一例が、2つの「シンプレックス」リングチャネルを含むネットワークトポロジである。このようなシンプレックスリング型ネットワークの一実装形態においては、ネットワークは、図1に示されているトポロジと同様のトポロジを使用するが、それぞれのノードをその時計方向および反時計方向の隣の隣へ通信可能に結合するスキップリンクは存在しない。
方法350は、TDMAスケジュールに従って同期化モードで動作している1つのノード102によって実行される。それぞれのノード102は、このような実施形態においては、そのノードの両隣のうちの一方が、現在のタイムスロットにとってのスケジュールされたノード102である場合に、方法350の処理を実行する。図3Bのコンテキストにおいては、方法350の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法350のその他の実施形態は、その他の方法で実装される。
現在のノード102は、その現在のノード102の両隣のうちの一方が現在のタイムスロットの間に送信を行うようにスケジュールされているとその現在のノード102が判断した場合に(これは、ブロック352においてチェックされる)、方法350の処理を実行する。このような隣は、この図3Bのコンテキストにおいては「スケジュールされた隣」とも呼ばれる。図1〜5の実施形態においては、現在のノード102は、TDMAスケジュールと、そのノード102が同期化される対象であるグローバルタイムベースとを含む情報に基づいて、この判断を行う。
方法350においては(図3Aの方法300と同様に)、現在のノード102が、その両隣のうちの一方が現在のタイムスロットにとってのスケジュールされたノードであると判断した場合には、その現在のノード102は、そのスケジュールされた隣から発生してその現在のノード102によって受信されたフレームを、そのスケジュールされた隣から、そのスケジュールされた隣をその現在のノード102へ結合するダイレクトリンク108を介して中継するだけである。すなわち現在のノード102が、スケジュールされた隣以外のノード102から発生するフレームを受信した場合には、その現在のノード102は、そのフレームを中継しない。しかし図3Aの方法300の場合とは異なり、図3Bの方法350においては、現在のノード102は、ブロック308〜310に関連付けられている「バスガーディアン」の処理を実行しない。
現在のノード102が、スケジュールされた隣からのフレームの受信を開始した場合には(これは、ブロック354においてチェックされる)、その現在のノード102は、その受信したフレームを、そのフレームの受信元であるチャネルに沿って、その現在のノードの次の隣および次の隣の隣へ中継する(ブロック356)。例えば、スケジュールされたノードがノードAであり、現在のノードがノードBである場合には、その現在のノードは、ノードAから受信したフレームをノードC(チャネル1に沿ってノードBの次の隣)へ、およびノードD(チャネル1に沿ってノードBの次の隣の隣)へ中継する。
図4A〜4Bは、図1のネットワーク100内においてデータを中継する方法400の一実施形態を示す流れ図である。図4A〜4Bに示されている方法400の実施形態については、ここでは、本明細書において図1〜5に関連して記載されている実施形態内で実施されるものとして説明する。方法400は、TDMAスケジュールに従って同期化モードで動作している1つのノード102によって実行される。それぞれのノード102は、このような実施形態においては、そのノード102が現在のタイムスロットの間に送信を行うようにスケジュールされておらず、かつそのノードの両隣のいずれもが現在のタイムスロットの間に送信を行うようにスケジュールされていない場合に、方法400の処理を実行する。図4A〜4Bのコンテキストにおいては、方法400の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法400のその他の実施形態は、その他の方法で実装される。
現在のノード102は、その現在のノード102が現在のタイムスロットの間に送信を行うようにスケジュールされておらず、かつその現在のノードの両隣のいずれもが現在のタイムスロットの間に送信を行うようにスケジュールされていない場合に(これは、図4Aのブロック402においてチェックされる)、方法400の処理を実行する。図1〜5の実施形態においては、現在のノード102は、TDMAスケジュールと、そのノード102が同期化される対象であるグローバルタイムベースとを含む情報に基づいて、この判断を行う。
現在のノード102が現在のタイムスロットの間に送信を行うようにスケジュールされておらず、かつその現在のノードの両隣のいずれもが現在のタイムスロットの間に送信を行うようにスケジュールされておらず、またその現在のノード102が、チャネル0上におけるその現在のノードの反時計方向の隣からのフレームの受信を開始したとその現在のノード102が判断した場合には(これは、ブロック404においてチェックされる)、その現在のノード102は、チャネル0上におけるその現在のノードの反時計方向の隣から受信されているフレームを、チャネル0上におけるその現在のノードの反時計方向の隣の隣から受信されている任意のフレームと比較する(ブロック406)。図4に示されている実施形態においては、ビットごとの比較が実行される。さらに、図5に関連して後述するように、複数のフレームが、わずかに異なる時点で現在のノード102において受信される可能性が高いため、受信される複数のフレームをデスキューするためにデスキュー機能が使用される。現在のノード102は、チャネル0上におけるその現在のノードの反時計方向の隣から受信されているフレームを、チャネル0に沿って、その現在のノードの時計方向の隣および時計方向の隣の隣へ中継する(ブロック408)。現在のフレームが中継され、比較が完了した後、現在のノード102は、その比較の結果を示す情報を、その現在のノードの反時計方向の隣から受信されたフレーム内に含めて、あるいはそのフレームの後に中継する(ブロック410)。現在のノード102は、その比較の結果を示す情報を、チャネル0に沿って、その現在のノードの時計方向の隣および時計方向の隣の隣へ中継する。一実施形態においては、比較の結果を示す情報は、現在のノード102が、その現在のノードの反時計方向の隣から受信されたフレームに添付する1ビットの添付された整合性フィールドを含む。別の実施形態においては、共有された整合性フィールドが、それぞれのフレームの終わりに含まれる。このような実施形態においては、現在のノード102は、2つのフレームが同一ではないことを比較が示す場合には、共有された整合性フィールドを「負の」値(例えば、「0」の値)に設定し、あるいは2つのフレームが同一であることを比較が示す場合には、共有された整合性フィールドを変更しない。
現在のノード102が、(例えば所定のタイムアウト期間が経過しても)チャネル0上におけるその現在のノードの反時計方向の隣からのフレームを受信せず、その一方でチャネル0上におけるその現在のノードの反時計方向の隣の隣からのフレームの受信を開始した場合には(これは、ブロック412においてチェックされる)、その現在のノード102は、その現在のノードの反時計方向の隣の隣から受信されているフレームを、チャネル0に沿って、その現在のノードの時計方向の隣および時計方向の隣の隣へ中継する(ブロック414)。そのフレームが中継された後、現在のノード102は、チャネル0に関してその現在のノード102において「ミスマッチ」があったことを示す情報を、そのフレーム内に含めて、あるいはそのフレームの後に中継する(ブロック416)。現在のノード102は、この情報を、チャネル0に沿って、その現在のノードの時計方向の隣および時計方向の隣の隣へ中継する。現在のノード102の反時計方向の隣から受信されたフレームはないため、反時計方向の隣から受信されたフレームが、その現在のノード102の反時計方向の隣の隣から受信されたフレームと同一であることはない。
現在のノード102が、チャネル0上におけるその現在のノードの反時計方向の隣からの、あるいはチャネル0上におけるその現在のノードの反時計方向の隣の隣からのフレームを受信しない場合には、その現在のノード102は、現在のタイムスロットの間にチャネル0に沿っていかなるデータも中継しない(ブロック418)。
現在のノード102は、チャネル1から受信したフレームに対しても同じ処理を実行する。現在のノード102が現在のタイムスロットの間に送信を行うようにスケジュールされておらず、かつその現在のノードの両隣のいずれもが現在のタイムスロットの間に送信を行うようにスケジュールされておらず、またその現在のノード102が、チャネル1上におけるその現在のノードの時計方向の隣からのフレームの受信を開始したとその現在のノード102が判断した場合には(これは、図4Bのブロック420においてチェックされる)、その現在のノード102は、チャネル1上におけるその現在のノードの時計方向の隣から受信されているフレームを、チャネル1上におけるその現在のノードの時計方向の隣の隣から受信されている任意のフレームと比較する(ブロック422)。図4に示されている実施形態においては、ビットごとの比較が実行される。さらに、複数のフレームが、わずかに異なる時点で現在のノード102において受信される可能性が高いため、受信される複数のフレームをデスキューするためにデスキュー機能が使用される。現在のノード102は、チャネル1上におけるその現在のノードの時計方向の隣から受信されているフレームを、チャネル1に沿って、その現在のノードの反時計方向の隣および反時計方向の隣の隣へ中継する(ブロック424)。現在のフレームが中継され、比較が完了した後、現在のノード102は、その比較の結果を示す情報を、その現在のノードの時計方向の隣から受信されたフレーム内に含めて、あるいはそのフレームの後に中継する(ブロック426)。現在のノード102は、その比較の結果を示す情報を、チャネル1に沿って、その現在のノードの反時計方向の隣および反時計方向の隣の隣へ中継する。一実施形態においては、添付された整合性フィールドが使用される。別の実施形態においては、共有された整合性フィールドが使用される。
現在のノード102が、(例えば所定のタイムアウト期間が経過しても)チャネル1上におけるその現在のノードの時計方向の隣からのフレームを受信せず、その一方でチャネル1上におけるその現在のノードの時計方向の隣の隣からのフレームの受信を開始した場合には(これは、ブロック428においてチェックされる)、その現在のノード102は、その現在のノードの時計方向の隣の隣から受信されているフレームを、チャネル1に沿って、その現在のノードの反時計方向の隣および反時計方向の隣の隣へ中継する(ブロック430)。そのフレームが中継された後、現在のノード102は、チャネル1に関してその現在のノード102において「ミスマッチ」があったことを示す情報を、そのフレーム内に含めて、あるいはそのフレームの後に中継する(ブロック432)。現在のノード102は、この情報を、チャネル1に沿って、その現在のノードの反時計方向の隣および反時計方向の隣の隣へ中継する。現在のノード102の時計方向の隣から受信されたフレームはないため、時計方向の隣から受信されたフレームが、その現在のノード102の時計方向の隣の隣から受信されたフレームと同一であることはない。
現在のノード102が、チャネル1上におけるその現在のノードの時計方向の隣からの、あるいはチャネル1上におけるその現在のノードの時計方向の隣の隣からのフレームを受信しない場合には、その現在のノード102は、現在のタイムスロットの間にチャネル1に沿っていかなるデータも中継しない(ブロック434)。
一例においては、現在のノード102がノードAであり、ノードEが、現在のタイムスロットの間に送信を行うようにスケジュールされているノードである。このような例においては、ノードAは、チャネル0のそれぞれのダイレクトリンク108を介してノードB(ノードAの反時計方向の隣)からのフレームを受信し、このフレームを、ノードAがチャネル0のそれぞれのスキップリンク108を介してノードC(ノードAの反時計方向の隣の隣)から受信する任意のフレームと比較する。ノードAは、ノードBから受信しているフレームと、その比較の結果を示す情報とを、ノードH(チャネル0に沿ってノードAの次の隣)へ、およびノードG(チャネル0に沿ってノードAの次の隣の隣)へ中継する。このような例においては、ノードAはまた、チャネル1のそれぞれのダイレクトリンク108を介してノードH(ノードAの時計方向の隣)からのフレームを受信し、このフレームを、ノードAがチャネル1のそれぞれのスキップリンク108を介してノードG(ノードAの時計方向の隣の隣)から受信する任意のフレームと比較する。ノードAは、ノードHから受信したフレームと、その比較の結果を示す情報とを、ノードB(チャネル1に沿ってノードAの次の隣)へ、およびノードC(チャネル1に沿ってノードAの次の隣の隣)へ中継する。
図4に示されている実施形態においては、ダイレクトリンク108とスキップリンク108の双方の上で現在のノード102によって複数のフレームが受信された場合には、その現在のノード102は、ダイレクトリンク108上で受信されたフレームを中継する。その他の実施形態においては、ダイレクトリンク108とスキップリンク108の双方の上で現在のノード102によって複数のフレームが受信された場合には、その現在のノード102は、スキップリンク108上で受信されたフレームを中継する。
図5は、一例においては、それぞれ図3および4A〜4Bの方法300および400の比較および中継処理を実施するために使用されるノード102の論理コンポーネントを示すブロック図である。特定の比較および中継処理を実行しているノード102は、図5のコンテキストにおいては、現在のノード102と呼ばれる。チャネル0上で受信されたフレームに対する比較および中継処理を実行するために使用される現在のノード102の論理コンポーネントが、図5に示されている。チャネル1上で受信されたフレームに対する比較および中継処理は、図5に示されている論理コンポーネントと同様の論理コンポーネントを使用して実行されるということを理解されたい。
図5に示されている例においては、現在のノード102は、第1のダイレクトリンクインターフェース502を含み、この第1のダイレクトリンクインターフェース502は、その現在のノード102をチャネル0の反時計方向のダイレクトリンク108へ通信可能に結合し、このチャネル0の反時計方向のダイレクトリンク108は、その現在のノードの反時計方向の隣へ接続される。現在のノード102はまた、第1のスキップリンクインターフェース504を含み、この第1のスキップリンクインターフェース504は、その現在のノード102をチャネル0の反時計方向のスキップリンク108へ通信可能に結合し、このチャネル0の反時計方向のスキップリンク108は、その現在のノードの反時計方向の隣の隣へ接続される。ダイレクトリンクFIFO(first−in−first−out)バッファ506は、第1のダイレクトリンクインターフェース502に結合され、スキップリンクFIFOバッファ508は、第1のスキップリンクインターフェース504に結合される。第1のダイレクトリンクインターフェース502および第1のスキップリンクインターフェース504は、それぞれダイレクトリンク108およびスキップリンク108からデータを受信し、その受信したデータをそれぞれダイレクトリンクFIFOバッファ506およびスキップリンクFIFOバッファ508内に保存する。
現在のノード102は、第2のダイレクトリンクインターフェース510を含み、この第2のダイレクトリンクインターフェース510は、その現在のノード102をチャネル0の時計方向のダイレクトリンク108へ通信可能に結合し、このチャネル0の時計方向のダイレクトリンク108は、その現在のノードの時計方向の隣へ接続される。現在のノード102はまた、第2のスキップリンクインターフェース512を含み、この第2のスキップリンクインターフェース512は、その現在のノード102をチャネル0の時計方向のスキップリンク108へ通信可能に結合し、このチャネル0の時計方向のスキップリンク108は、その現在のノードの時計方向の隣の隣へ接続される。
図5に示されている例においては、現在のノード102は、デスキューおよび比較モジュール514を含み、このデスキューおよび比較モジュール514は、その現在のノードの反時計方向の隣および反時計方向の隣の隣から受信したフレームを「デスキュー」および比較する。図5に示されている特定の例においては、現在のノード102は、単一の送信機516を含み、この送信機516は、その現在のノードの時計方向の隣とその現在のノードの時計方向の隣の隣の双方へデータを送信するために使用される。送信機516の出力は、その現在のノードの時計方向の隣およびその現在のノードの時計方向の隣の隣へそれぞれ送信するために、第2のダイレクトリンクインターフェース510と第2のスキップリンクインターフェース512の双方に結合される。
所与のタイムスロットの間の所与の送信中に、現在のノード102は、通常では第1のダイレクトリンクインターフェース502および第1のスキップリンクインターフェース504上におけるそれぞれのフレームの受信を別々の時点において開始する。例えば、図4のブロック406〜410および414〜418に関連して比較および中継処理が実行される場合には、現在のノード102は、所与の送信中に、通常では第1のスキップリンクインターフェース504上におけるフレームの受信を、第1のダイレクトリンクインターフェース502上における対応するフレームの受信を開始する前に開始する。これは、このような例では、第1のスキップリンクインターフェース504において受信されるフレームが、第1のダイレクトリンクインターフェース502上で受信されるフレームよりも1つ少ないホップを介して進むためである(すなわち、第1のスキップリンクインターフェース504上で受信されるフレームが、現在のノードの反時計方向の隣を「スキップ」するためである)。
図5に示されている例においては、デスキューおよび比較モジュール514ならびに送信機516は、FIFOバッファ506と508の双方が半分満たされるまで待ってから、受信したデータの比較および中継を実行する。その他の実施形態においては、上述のデスキュー技術に加えて、あるいはその代わりに、その他のデスキュー技術が使用される。
図5に示されている特定の例においては、受信された2つのフレームに対するビットごとの比較が、デスキューおよび比較モジュール514によって実行される。
データが第1のダイレクトリンクインターフェース502において受信されると、その受信されたデータは、ダイレクトリンクFIFOバッファ506の入力端へと書き込まれる。また、データがスキップリンクインターフェース504において受信されると、その受信されたデータは、スキップリンクFIFOバッファ508の入力端へと書き込まれる。フレームが第1のダイレクトリンクインターフェース502上において受信されているかどうかの判断は、そのインターフェース502から受信したデータ内から、フレームの始まりを示す区切り文字を検出することによって行われる。同様に、フレームが第1のスキップリンクインターフェース504上において受信されているかどうかの判断は、そのインターフェース504から受信したデータ内から、フレームの始まりを示す区切り文字を検出することによって行われる。
データが第1のダイレクトリンクインターフェース502において受信されると、その受信されたデータは、ダイレクトリンクFIFOバッファ506の入力端へと書き込まれる。また、データがスキップリンクインターフェース504において受信されると、その受信されたデータは、スキップリンクFIFOバッファ508の入力端へと書き込まれる。フレームが第1のダイレクトリンクインターフェース502上において受信されているかどうかの判断は、そのインターフェース502から受信したデータ内から、フレームの始まりを示す区切り文字を検出することによって行われる。同様に、フレームが第1のスキップリンクインターフェース504上において受信されているかどうかの判断は、そのインターフェース504から受信したデータ内から、フレームの始まりを示す区切り文字を検出することによって行われる。
フレームが第1のダイレクトリンクインターフェース502と第1のスキップリンクインターフェース504の双方の上において受信されている場合に、FIFOバッファ506と508の双方が半分満たされると、デスキューおよび比較モジュール514は、第1のFIFOバッファ506および第2のFIFOバッファ508のそれぞれの出力端からのビットの受信を開始し、送信機516は、FIFOバッファ506の出力端からのビットの受信を開始する。デスキューおよび比較モジュール514は、第1のFIFOバッファ506および第2のFIFOバッファ508からビットを受信すると、受信した2つのフレームに対するビットごとの比較を実行する。送信機516は、第1のFIFOバッファ506からビットを受信すると、その受信したビットを、チャネル0に沿って、反時計方向の隣および反時計方向の隣の隣へ中継する。デスキューおよび比較モジュール514は、双方のフレームの終わりを比較すると、それらの2つのフレームが同一であったか否かを示すビットを送信機516へ出力する。送信機516は、デスキューおよび比較モジュール514によって出力されたビットを受信し、中継されるフレームの後にそのビットを送信することによって、中継されるフレームの終わりにそのビットを「添付」する。
フレームが第1のダイレクトリンクインターフェース502上において受信されており、その一方で第1のスキップリンクインターフェース504上では受信されていない場合に、第1のFIFOバッファ506が半分満たされると、デスキューおよび比較モジュール514ならびに送信機516は、第1のFIFOバッファ506の出力端からのビットの受信を開始する。デスキューおよび比較モジュール514は、現在のノード102においてチャネル0に対してミスマッチが生じていることを示すビットを送信機516へ出力する。送信機516は、第1のFIFOバッファ506からビットを受信すると、その受信したビットを、チャネル0に沿って、反時計方向の隣および反時計方向の隣の隣へ中継する。送信機516は、デスキューおよび比較モジュール514によって出力されたビットを受信し、中継されるフレームの後にそのビットを送信することによって、中継されるフレームの終わりにそのビットを「添付」する。
図4の方法400用に実行される処理に関しては、フレームが第1のスキップリンクインターフェース504上において受信されており、その一方で第1のダイレクトリンクインターフェース502上では受信されていない場合に、第2のFIFOバッファ508が半分満たされると、デスキューおよび比較モジュール514ならびに送信機516は、第2のFIFOバッファ508の出力端からのビットの受信を開始する。デスキューおよび比較モジュール514は、現在のノード102においてチャネル0に対してミスマッチが生じていることを示すビットを送信機516へ出力する。送信機516は、第2のFIFOバッファ508からビットを受信すると、その受信したビットを、チャネル0に沿って、反時計方向の隣および反時計方向の隣の隣へ中継する。送信機516は、デスキューおよび比較モジュール514によって出力されたビットを受信し、中継されるフレームの後にそのビットを送信することによって、中継されるフレームの終わりにそのビットを「添付」する。
ネットワーク100の実施形態は、ネットワーク100の複数のノード102が同期モードで動作している間の改善されたフォルトトレランスを提供する。例えばネットワーク100の実施形態は、改善された移送の利用可能度および改善された移送の整合性を提供する。改善された移送の利用可能度は、例えば2つの独立した反対方向の通信チャネル0および1を使用することによって提供される。ネットワーク100内のノード102によって送信されるデータは、2つの独立した通信パスを介してネットワーク100内のその他のノード102のそれぞれへと進む。例えばネットワーク100のノードAによって送信されるデータは、チャネル0上をノードAからノードB、C、D、およびEへと反時計方向に進む第1のパスを介して、またチャネル1上をノードAからノードH、G、F、およびEへと時計方向に進む第2のパスを介して、ノードEへと進む。結果として、これらのパスのうちの一方の上に何らかの単一障害点が生じても、データをノードEへと首尾よく進めることができる別のパスが存在することになる。
図1〜4に示されている実施形態においては、ネットワーク100の全体へ送信されるそれぞれのフレーム内にCRCプロトコルフィールドが含まれる。このようなCRCフィールドは、偶発的なエラーに対処するのに非常に適している。送信側のノードと、その送信側のノードの時計方向の隣および反時計方向の隣との間におけるダイレクトリンク108上のノイズに起因するエラーは、このような偶発的な性格を有する。しかしアクティブなインターステージによってもたらされるエラーは、本質的に相互に関連付けられる可能性があり、これによってCRCフィールドは、そのようなエラーに対処するのにあまり適さなくなる可能性がある。方法400の処理を実行する際にノード102によって実行されるビットごとの比較は、前のノードによってもたらされるいかなるエラーをも検出し、それによって、このようなアクティブなインターステージによって引き起こされるエラーに対処する。このように中継を行うことによって、ネットワーク100内における移送の整合性が改善される。
図6は、このようなノード102が同期化モードで動作している間に図1のネットワーク100内において発生する間抜けなタイミングでのでしゃばりな送信による障害の一例を示すブロック図である。図6に示されている例においては、ネットワーク100内のそれぞれのノード102は、図2〜4の方法200、300、および400を実施する。この例においては、ノードAは、ノードEが送信を行うようにスケジュールされているタイムスロットの間に、間抜けなタイミングでのでしゃばりな送信による障害を有する。この障害によって、ノードAは、チャネル0に沿ってノードAの時計方向の隣のノードHへ、およびチャネル1に沿ってノードAの反時計方向の隣のノードBへ送信を行う。ノードHが、ノードAによって送信されたフレームをチャネル0から受信した場合に、ノードHが、ノードA(ノードHの反時計方向の隣)から受信したフレームと、ノードB(ノードHの反時計方向の隣の隣)から受信したフレームの間で行う比較は、それらの2つのフレームが同一ではないことを示すであろう。結果として、ノードHは、ノードAから受信したフレームを、ミスマッチがノードHにおいて生じたことを示す情報と共にチャネル0上において中継する。同様に、ノードBが、ノードAによって送信されたフレームをチャネル1から受信した場合に、ノードBが、ノードA(ノードBの時計方向の隣)から受信したフレームと、ノードB(ノードBの時計方向の隣の隣)から受信したフレームの間で行う比較は、それらの2つのフレームが同一ではないことを示すであろう。結果として、ノードBは、ノードAから受信したフレームを、ミスマッチがノードHにおいて生じたことを示す情報と共にチャネル1上において中継する。
ノードAの送信によって影響を受けるチャネル0およびチャネル1のリンク108が、破線を使用して図6に示されている。チャネル0内におけるノードAからノードHへのダイレクトリンク108、ならびにチャネル0内におけるノードHからノードGへ、ノードGからノードFへ、およびノードFからノードEへのダイレクトリンクおよびスキップリンク108は、ノードAによる障害を伴った送信によって影響を受ける。チャネル1内におけるノードAからノードBへのダイレクトリンク108、ならびにチャネル1内におけるノードBからノードCへ、ノードCからノードDへ、およびノードDからノードEへのダイレクトリンクおよびスキップリンク108は、ノードAによる障害を伴った送信によって影響を受ける。
ノードEによってチャネル0に沿って送信されたデータは、チャネル0のこの部分におけるリンク108がノードAの送信によって影響を受けないため、ノードD、C、およびBによって受信され、中継される。同様に、ノードEによってチャネル1に沿って送信されたデータは、チャネル1のこの部分におけるリンク108がノードAの送信によって影響を受けないため、ノードF、G、およびHによって受信され、中継される。ノードAの送信によって影響を受けず、ノードEが首尾よく送信を行うことができるチャネル0およびチャネル1のリンク108が、実線を使用して図6に示されている。このようにして、ノードEによって送信されたデータは、ノードAにおいて間抜けなタイミングでのでしゃばりな送信による障害が発生しているにもかかわらず、リング104内におけるノード102のそれぞれに到達することができる。
別の例では、ノード102が同期化モードで動作している間に、図1の通信ネットワーク100内においてSOS(slightly−off−specification)の不具合あるいは障害が発生している。SOSの障害は、1つのフレームが、ネットワーク100内における複数のノード102の受信ウィンドウ内で受信され、かつネットワーク100内におけるその他のノード102の受信ウィンドウのわずかに外側にある場合に発生する。SOSの不具合が発生すると、ノード102の前者のセットは、そのフレームを正しいフレームとして受け入れ、その一方でノード102の後者のセットは、そのフレームを間違ったフレームとして拒絶する。すなわち、ネットワーク100内における正当なノード102の別々のセットが、同一のフレームに対して別々の見方を有することになり、これは望ましくない。
この例では、ノードAにおいてSOSの不具合が発生している。このような不具合においては、ノードAの送信用としてノードAに割り当てられているタイムスロットの間に、障害を抱えるノードAは、ある時点で送信を行い、その結果、(もしもノードAの送信が、リング104の全体に完全に中継されるならば)ノードB、C、H、およびGは、その送信を正しいものとして受信し、ノードD、E、およびFは、その送信を間違ったものとして受信することになる。
ノードBおよびHは、ノードAの隣として、ノードAによる送信が、ネットワーク100内において実施される時間的なポリシーに準拠しているかどうかをチェックする。このような例においては、ノードBは、チャネル1上においてノードAから受信されたフレームが時間的なポリシーに準拠していないと判断し、したがってチャネル1に沿ってそれ以上そのフレームを中継しない。同様に、ノードHは、チャネル0上においてノードAから受信されたフレームが時間的なポリシーに準拠していないと判断し、したがってチャネル0に沿ってそれ以上そのフレームを中継しない。このようにして、そうしたSOSの不具合の影響が緩和される。
ノード102は、非同期化モードで動作している場合には、まだグローバルタイムベースに同期化されておらず、まだTDMAスケジュールに従って送信を行っていない。したがってネットワーク100のノード102は、送信のコリジョンに対処するためのステップを踏まなければならない。図7A〜7Bは、非同期化モードで動作している間に図1のネットワーク100内において通信を行う方法700の一実施形態を示す流れ図である。このような実施形態においては、ネットワーク100内におけるそれぞれのノード102は、そのノード102が非同期化モードで動作している場合に、方法700の処理を実行する。図7A〜7Bのコンテキストにおいては、方法700の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法700のその他の実施形態は、その他の方法で実装される。
図7A〜7Bに示されている方法700の特定の実施形態は、現在のノード102が「目覚めた」場合に(これは、図7のブロック702においてチェックされる)、そのノードによって実行される。例えば現在のノード102は、そのノード102が最初に電源をオンにされたときに、あるいはそのノード102がリセットされた後に、目覚める。現在のノード102が目覚めた場合には、その現在のノード102は、その現在のノード102がリンク108のいずれから受信するいかなるデータも所定の期間中は中継しない(ブロック704)。すなわち現在のノード102は、ネットワーク100内においてその他のノード102によって行われるいかなる送信からのデータも、ネットワーク100のチャネル0および1に沿ってそれ以上は中継しないことによって、そのような送信を「ブロック」する。現在のノード102がそのような送信をブロックする所定の期間は、ここでは「第1のブロック期間」とも呼ばれる。TTP/Cプロトコルが使用されるこのような実施形態の一実装形態においては、第1のブロック期間は、最小のIFG(inter−frame gap)に設定される。
第1のブロック期間が経過すると、現在のノード102は、その現在のノード102が受信するすべての送信をブロックすることをやめる。現在のノード102が、ダイレクトリンク108を介してチャネル0上におけるその現在のノード102の反時計方向の隣からデータを受信した場合には(これは、ブロック706においてチェックされる)、その現在のノード102は、その反時計方向の隣がその受信したデータのソースであるかどうかをチェックする(ブロック708)。一実施形態においては、現在のノード102は、その現在のノード102がチャネル0上における反時計方向の隣から受信しているデータと同じデータをその現在のノード102がチャネル0上におけるその現在のノードの反時計方向の隣の隣から受信しているかどうかを所定の「比較」期間中にチェックすることによって、この判断を行う。現在のノード102が、自分がチャネル0上におけるその現在のノードの反時計方向の隣の隣から同じデータを受信していないと判断した場合には、その現在のノード102は、反時計方向の隣が、その隣から受信しているデータのソースであると結論付ける。現在のノード102が、自分がチャネル0上におけるその現在のノードの反時計方向の隣の隣から同じデータを受信していると判断した場合には、その現在のノード102は、反時計方向の隣は、その隣から受信しているデータのソースではないと結論付ける。
反時計方向の隣が、その隣から受信しているデータのソースではない場合には、現在のノード102は、そのデータを、チャネル0に沿って、その現在のノードの時計方向の隣のノードおよび時計方向の隣の隣へ中継する(ブロック710)。
反時計方向の隣が、その隣から受信しているデータのソースである場合には、現在のノード102は、その反時計方向の隣から発生してチャネル0上において受信したデータを、所定の期間中に中継する(ブロック712)。この所定の期間は、ここでは「中継期間」とも呼ばれる。TTP/Cプロトコルが使用されるこのような実施形態の一実装形態においては、中継期間は、少なくともコールドスタートメッセージがネットワーク100の全体へ送信されるのに十分な長さである。現在のノード102は、このようなデータを、チャネル0に沿って、その現在のノードの時計方向の隣のノードおよび時計方向の隣の隣へ中継する。中継期間中には、現在のノード102は、その現在のノードの反時計方向の隣以外のノードから発生してチャネル0上において受信したいかなるデータも中継しない。
中継期間が経過すると(これは、ブロック714においてチェックされる)、現在のノード102は、反時計方向の隣から発生してチャネル0上において受信したデータを、所定の期間中は中継しない。この所定の期間は、ここでは「第2のブロック期間」とも呼ばれる。TTP/Cプロトコルが使用されるこのような実施形態の一実装形態においては、中継期間は、少なくともネットワーク100内における別のノード102がコールドスタートメッセージの送信を開始するのに十分な長さである。第2のブロック期間中に、現在のノード102が、反時計方向の隣から発生したものではないチャネル0上におけるデータを受信した場合には、その現在のノード102は、その受信したデータを、チャネル0に沿って、その現在のノードの時計方向の隣のノードおよび時計方向の隣の隣へ中継する(ブロック716)。図7A〜7Bに示されている実施形態においては、現在のノード102は、反時計方向の隣から受信されたデータを、チャネル0上におけるその現在のノードの反時計方向の隣の隣から受信された任意の対応するデータと比較することによって、チャネル0上において受信されたそのデータが反時計方向の隣から発生したものであるかどうかを判断する。
第2のブロック期間が経過すると(これは、ブロック718においてチェックされる)、現在のノード102は、反時計方向の隣から発生してチャネル0上において受信したデータをブロックすることをやめる(706へループバックする)。
第1のブロック期間が経過すると、チャネル1に対して同様の処理が実行される。第1のブロックが経過した後に、現在のノード102が、ダイレクトリンク108を介してチャネル1上におけるその現在のノード102の反時計方向の隣からデータを受信した場合には(これは、図7Bのブロック720においてチェックされる)、その現在のノード102は、その時計方向の隣がその受信したデータのソースであるかどうかをチェックする(ブロック722)。一実施形態においては、現在のノード102は、その現在のノード102がチャネル1上における時計方向の隣から受信しているデータと同じデータをその現在のノード102がチャネル1上におけるその現在のノードの時計方向の隣の隣から受信しているかどうかを所定の期間中にチェックすることによって、この判断を行う。現在のノード102が、自分がチャネル1上におけるその現在のノードの時計方向の隣の隣から同じデータを受信していないと判断した場合には、その現在のノード102は、時計方向の隣が、その隣から受信しているデータのソースであると結論付ける。現在のノード102が、自分がチャネル1上におけるその現在のノードの時計方向の隣の隣から同じデータを受信していると判断した場合には、その現在のノード102は、時計方向の隣は、その隣から受信しているデータのソースではないと結論付ける。
時計方向の隣が、その隣から受信しているデータのソースではない場合には、現在のノード102は、そのデータを、チャネル1に沿って、その現在のノードの反時計方向の隣のノードおよび反時計方向の隣の隣へ中継する(ブロック724)。
時計方向の隣が、その隣から受信しているデータのソースである場合には、現在のノード102は、その時計方向の隣から発生してチャネル1上において受信したデータを、中継期間中に中継する(ブロック726)。現在のノード102は、このようなデータを、チャネル1に沿って、その現在のノードの反時計方向の隣のノードおよび反時計方向の隣の隣へ中継する。中継期間中には、現在のノード102は、その現在のノードの時計方向の隣以外のノードから発生してチャネル1上において受信したいかなるデータも中継しない。
中継期間が経過すると(これは、ブロック728においてチェックされる)、現在のノード102は、時計方向の隣から発生してチャネル1上において受信したデータを、第2のブロック期間中は中継しない。第2のブロック期間中に、現在のノード102が、時計方向の隣から発生したものではないチャネル1上におけるデータを受信した場合には、その現在のノード102は、その受信したデータを、チャネル1に沿って、その現在のノードの反時計方向の隣のノードおよび反時計方向の隣の隣へ中継する(ブロック730)。図7A〜7Bに示されている実施形態においては、現在のノード102は、時計方向の隣から受信されたデータを、チャネル1上におけるその現在のノードの時計方向の隣の隣から受信された任意の対応するデータと比較することによって、チャネル1上において受信されたそのデータが時計方向の隣から発生したものであるかどうかを判断する。第2のブロック期間が経過すると(これは、ブロック732においてチェックされる)、現在のノード102は、時計方向の隣から発生してチャネル1上において受信したデータをブロックすることをやめる(720へループバックする)。
以降では、方法700のオペレーションの一例について説明する。この例においては、現在のノード102はノードAであり、ネットワーク100内のノード102は、(例えば、最初のシステムの起動中には)非同期化モードで動作している。ノードAは、最初に電源をオンにされ、目覚めると、第1のブロック期間中は、自分が受信するいかなるデータも中継しない。第1のブロック期間が経過すると、ノードAは、チャネル0上におけるノードBから(すなわち、ノードAの反時計方向の隣から)データを受信する。この例においては、ノードBが、その受信されたデータのソースである。というのも、ノードAは、所定の比較期間内には、ノードC(ノードAの反時計方向の隣の隣)から同じデータを受信しなかったためである。ノードA(この例における現在のノード102)は、ノードBから受信したデータを、中継期間中に中継する。中継期間中には、ノードAは、ノードB以外のノードから発生してノードAによって受信されたいかなるデータも中継しない。中継期間が経過した後、第2のブロック期間中は、ノードAは、ノードBから発生してチャネル0上において受信したデータを中継せず、ノードB以外のノードから発生してチャネル0上において受信したデータを中継する。第2のブロック期間が経過すると、ノードBは、ノードBから発生してチャネル0上において受信したデータをブロックすることをやめる。
このような例においては、ノードBが間抜けなタイミングでのでしゃばりな送信による障害を有し、それによってノードBが継続的にデータのソースとなる場合、現在のノード102(ノードA)は、第2のブロック期間中にノードBの送信をブロックして、代わりにネットワーク100内のその他のノードから発生したデータを中継することによって、ノードBの障害の影響を制限するであろう。
その他の実施形態においては、第1のブロック期間、および第2のブロック期間、ならびに中継期間のうちの1つまたは複数が設定可能である。
その他の実施形態においては、現在のノード102において受信されたデータがそれぞれの隣から発生したものであるかどうかに基づいてそのデータをブロックしたり中継したりする代わりに、その現在のノード102は、そのようなデータがそれぞれの隣から発生したものであるかどうかにかかわらず、そのデータを中継し、その中継するデータがその現在のノード102のそれぞれの隣から発生したものであるか否かを示す情報を、その中継するデータと共に含める。このような一実施形態においては、図2〜5に関連して前述した比較機能を使用して、そのような情報を作成する。例えば、このような実施形態の一実装形態においては、中継されるデータが現在のノード102のそれぞれの隣から発生したものであるか否かを示す1ビットのフィールドが、その中継されるデータに添付される。これらの添付されたフィールドは、例えばソース識別処理における「ホップカウント」として使用することができる。
その他の実施形態においては、現在のノード102において受信されたデータがそれぞれの隣から発生したものであるかどうかに基づいてそのデータをブロックしたり中継したりする代わりに、その現在のノード102は、そのようなデータがそれぞれの隣から発生したものであるかどうかにかかわらず、そのデータを中継し、その中継するデータがその現在のノード102のそれぞれの隣から発生したものであるか否かを示す情報を、その中継するデータと共に含める。このような一実施形態においては、図2〜5に関連して前述した比較機能を使用して、そのような情報を作成する。例えば、このような実施形態の一実装形態においては、中継されるデータが現在のノード102のそれぞれの隣から発生したものであるか否かを示す1ビットのフィールドが、その中継されるデータに添付される。これらの添付されたフィールドは、例えばソース識別処理における「ホップカウント」として使用することができる。
その他の実施形態においては、現在のノード102は、その現在のノード102において受信したデータが隣から発生したものであることを検知すると、その送信が、ネットワーク100内において実施される1つまたは複数のポリシーに準拠しているかどうかを、およびそのような送信が、1つまたは複数のそのようなポリシーに準拠していないかどうかを判断し、その受信したデータを中継しないか、またはそのデータを、そのようなポリシーに準拠していないことを示す情報と共に(例えば、1ビットの整合性フィールドを添付することによって、またはそのデータ内に含まれている共有された整合性フィールドを変更することによって)中継する。
チャネル0および1は、セグメント化されたメディアを含むため、例えばシステムの電源投入時に、ネットワーク100内には複数の「小グループ」が形成される可能性がある。図8は、2つの小グループが図1のネットワーク100内において形成される典型的なシナリオを示している。これらの小グループのそれぞれは、それぞれの小グループ内におけるどのノード102が送信を行うかによって、別々のTDMAスケジュール802または804を有する。この例においては、スケジュール802および804の双方におけるタイムスロットは同じサイズであり、スケジュール802および804は、相互にほぼ180度位相がずれている。スケジュール802は、ノードA、H、G、およびFを含む小グループ(ここでは、「小グループ1」とも呼ばれる)に関連付けられており、スケジュール804は、ノードE、B、C、およびDを含む小グループ(ここでは、「小グループ2」とも呼ばれる)に関連付けられている。ネットワーク内のノード102が送信を行う順序は、ノードA、ノードE、ノードH、ノードB、ノードG、ノードC、ノードF、およびノードDの順であり、ノードE、B、C、およびDのそれぞれは、それぞれノードA、H、G、およびFのそれぞれよりも1/2スロット遅れてその送信を開始する。
この例においては、2つの小グループ802および1204は、安定した状態を保ち、お互いをまったく認識していない。例えばTTP/Cプロトコルの通常の小グループを避ける機能は、複数のリンクのうちの1つだけの上で反対の小グループから見られる「ノイズ」が、すべてのスロット内でメッセージを首尾よく受信することによって相殺されるため、このような小グループの形成を解消(resolve)するのに十分ではない可能性が高くなるということに留意すべきである。
図9は、図1のネットワーク100内における小グループを解消する方法900の一実施形態を示す流れ図である。図9に示されている方法900の実施形態は、図8に示されている例において形成された小グループを解消するのに適している。図9に示されている方法900の実施形態については、ここでは、図1に示されているネットワーク100を使用して実装されるものとして説明するが、その他の実施形態は、その他のネットワーク内においてその他の方法で実装される。方法900は、リング104内のノード102が同期化モードで動作しており、そこで複数の小グループが形成されている場合に使用するのに適している。図9のコンテキストにおいては、方法900の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法900のその他の実施形態は、その他の方法で実装される。
方法900の機能は、現在のノード102が同期モードで動作している場合に(すなわち、それぞれの小グループ内のノード102が、TDMAスケジュールに従って送信を行っている場合に)使用される。同期モードで動作している間、現在のノード102は、同期的な方法でその現在のノードの両隣からのデータを求めてリッスンする(ブロック902)。すなわち現在のノード102は、その現在のノード102によって認識される現在の送信スケジュールによって定義されるタイムスロットの間に、チャネル1上におけるその時計方向の隣からのフレームを求めて、およびチャネル0上におけるその反時計方向の隣からのフレームを求めてリッスンする。現在のノード102は、自分が所定の期間中にその現在のノードの両隣のいずれかから有効なフレームを受信していないかどうかを判断する(これは、ブロック904においてチェックされる)。現在のノード102が所与の期間中に有効なフレームをそこから受信していない隣は、ここでは「静かな隣」と呼ばれる。「有効な」フレームとは、構文的に正しく、かつ現在のノードのスケジュール位置と調和するフレームである。一実施形態においては、スケジュールの位置合せの妥当性は、フレームのコンテンツ内に含めて送信される明示的なスケジュールデータによって確認することができる。別の実施形態においては、スケジュール位置データは、(例えば、H0005061出願に記載されているように)暗にフレームのコンテンツ内に含めて送信することができる。
現在のノード102が、所与の期間中に静かな隣から有効なフレームを受信していない場合には、その現在のノード102は、所与の期間中に静かな隣の隣からのデータを求めて非同期的にリッスンする(ブロック906)。例えば、このような実施形態の一実装形態においては、この所与の期間は、1つのTDMAラウンドに等しい。別の実施形態においては、この期間はゼロである(すなわち現在のノード102は、スキップリンク108上において現在のノードの隣の隣からの有効なフレームを求めて非同期モードで継続的にリッスンする)。
現在のノード102が、このような静かな隣の隣からのデータを求めて非同期的にリッスンする場合には、その現在のノード102は、送信時間あるいはフェーズにかかわらずに静かな隣の隣から送信される構文的に有効ないかなるフレームも受信することができるであろう。結果として、現在のノード102は、その現在のノード102がメンバーになっていない小グループからのメッセージを受信することができるであろう。現在のノード102が、非同期的にリッスンしている間に所与の期間内に静かな隣の隣から有効なフレームを受信しない場合には、その現在のノード102は、その現在のノード102がその時点でメンバーになっている小グループ(ここでは、「現在の小グループ」とも呼ばれる)内に留まる(ブロック920)。
現在のノード102が、非同期的にリッスンしている間に静かな隣の隣から有効なフレームを受信した場合には(これは、ブロック908においてチェックされる)、その現在のノード102は、所与の期間にわたって静かな隣からの第2の有効なフレームを求めて非同期的にリッスンする(ブロック910)。現在のノード102が、非同期的にリッスンしている間に所与の期間内に静かな隣から有効なフレームを受信しない場合には(これは、ブロック912においてチェックされる)、その現在のノード102は、現在の小グループ内に留まる(ブロック920)。現在のノード102が、非同期的にリッスンしている間に静かな隣から有効なフレームを受信した場合には、その現在のノード102は、2つの非同期フレームが、自分たちが同じ小グループから送信されたことを示しているかどうかをチェックする(ブロック914)。一実施形態においては、現在のノード102は、2つの非同期フレームが、同じ小グループのメンバーである複数のノードから送信されたかどうかをチェックする。別の実施形態においては、現在のノード102は、2つの非同期フレームの2つの非同期受信の間に見られる時間が、例えばその2つの非同期フレーム内に組み込まれたフレームスケジュール位置データによって示されるような、それぞれのスケジュールされた送信の間における予想された時間と一致するかどうかをチェックする。その他の実施形態においては、これらのチェックに加えて、あるいはその代わりに、その他のフレーム整合性チェックを実行することができる。
現在のノード102が、自分たちが同じ小グループから送信されたことを示す2つの非同期フレームを受信しない場合には、その現在のノード102は、現在の小グループ内に留まる(ブロック920)。
2つの非同期フレームが、自分たちが同じ小グループ(ここでは、「他の小グループ」とも呼ばれる)から送信されたことを示す場合には、その現在のノード102は、その現在のノード102が現在の小グループから他の小グループへと離脱すべきかどうかを判断する(ブロック916)。現在のノード102が、自分が離脱すべきであると判断した場合には、その現在のノード102は、他の小グループへと向かうバイアスを伴って現在の小グループから離脱する(ブロック918)。そうでない場合には、現在のノード102は、現在の小グループ内に留まる(ブロック920)。
一実施形態においては、現在のノード102は、現在の小グループのサイズ(すなわち、現在の小グループのメンバーであるノードの数)を、他の小グループのサイズ(すなわち、他の小グループのメンバーであるノードの数)と比較することによって、自分が現在の小グループから他の小グループへと離脱すべきかどうかを判断する。他の小グループが現在の小グループよりも大きい場合には、現在のノード102は、現在の小グループから他の小グループへと離脱する。他の小グループが現在の小グループよりも大きくない場合には、現在のノード102は、現在の小グループ内に留まる。このような実施形態の一実装形態においては、他の小グループのサイズは、2つの非同期フレーム内に含まれている明示的な小グループサイズ情報を使用して測定される。別の実装形態においては、他の小グループのサイズは、(例えば、H0005061出願に記載されているように)暗に2つの非同期フレームと共に送信される情報を使用して測定される。別の実装形態においては、他の小グループのサイズは、2つの非同期フレーム内に含めて送信されるその他の情報(例えば、メンバーシップベクトル)から導き出される。別の実装形態においては、現在のノード102は、TDMAラウンドの全体にわたって他の小グループからの送信を求めて非同期的にリッスンし、その後、そのTDMAラウンド中にその現在のノード102が受信した送信の数に基づいて他の小グループのサイズを導き出す。
別の実施形態においては、現在のノード102は、ネットワーク100内における複数のノード102の演繹的な順序付けに基づいて、自分が現在の小グループから他の小グループへと離脱すべきかどうかを判断する。現在のノード102は、現在の小グループのうちのどのメンバーノードが、割り当てられた順序内で先頭に来るかを判断することによって、および他の小グループのうちのどのメンバーノードが、割り当てられた順序内で先頭に来るかを判断することによって、自分が離脱すべきかどうかを判断する。現在のノード102は、ネットワーク100の複数のノード102に対して割り当てられた順序内で、他の小グループの最初のノードが、現在の小グループの最初のノードよりも前に来る場合に、現在の小グループから他の小グループへと離脱する。図10は、このような実装形態のオペレーションの一例を示すブロック図である。図10に示されている例においては、ネットワーク100の複数のノード102は、ノードA、ノードB、ノードC、ノードD、ノードE、ノードF、ノードG、およびノードHという順で順序付けられている。この例においては、他の小グループは、図8に示されている小グループ1のメンバーであるノードを含み、現在の小グループは、図8に示されている小グループ2のメンバーであるノードを含む。他の小グループの最初のノード(ノードA)は、現在の小グループの最初のノード(ノードB)よりも前に来ており、したがって現在のノード102は、この例においては現在の小グループから他の小グループへと離脱することになる。
このような一実施形態においては、現在のノード102は、そのような演繹的な順序付けを使用して、現在の小グループと他の小グループが同じサイズである場合(すなわち、同じ数のメンバーノードを有する場合)にのみ、その現在のノード102が現在の小グループから他の小グループへと離脱すべきかどうかを判断する。
本明細書に記載のシステム、デバイス、方法、および技術は、さまざまなタイプのプロトコル(例えば、TTP/CやFLEXRAYなどのタイムトリガードプロトコル)を実装するノードにおいて実装することができる。図11は、図1に示されているネットワーク100のそれぞれのノード102を実装するのに適しているノード1100の典型的な一実施形態を示すブロック図である。図11に示されているノード1100は、TTP/Cプロトコルを実装している(ただし、本明細書に記載のシステム、デバイス、方法、および技術は、TTP/Cプロトコルの代わりに、あるいはTTP/Cプロトコルに加えて、その他のプロトコルを使用して実装することもできるという点を理解されたい)。それぞれのノード1100は、ホスト1110およびTTP/Cコントローラ1112を含む。ホスト1110は、ネットワーク100を介してやり取りされるデータを提供するアプリケーションソフトウェア1114を実行する。例えば一実装形態においては、ホスト1110は、安全が決定的に重要となるコントロールアプリケーションを実行するコンピュータである。ホスト1110は、TTP/Cコントローラ1112を使用して、通信ネットワーク100内のその他のノード102と通信する。TTP/Cコントローラ1112は、TTP/Cプロトコルの機能を実施する。TTP/Cプロトコルは、3つの基本的なサービスを、ホスト1110上で実行されるアプリケーションソフトウェア1114に提供する。TTP/Cプロトコルは、決定論的なメッセージ送信、グローバルタイムベース、およびメンバーシップサービスを提供し、それによってそれぞれのノード1100は、現在どのノードが送信を行っているかがわかる。
TTP/Cコントローラ1112は、ホスト1110と、TTP/Cコントローラ1112のその他のコンポーネントとの間におけるインターフェースとして機能するCNI(communication network interface)1116を含む。図11に示されている実施形態においては、CNI1116は、デュアルポートメモリ1118(ここでは、CNIメモリ1118とも呼ばれる)を使用して実装される。CNIメモリ1118は、ホスト1110によって、およびTTP/Cコントローラ1112内に含まれているTTP/Cコントローラユニット1120によってアクセスされる。このような実施形態の一実装形態においては、CNIメモリ1118は、SRAM(static random access memory)を使用して実装される。バスインターフェース1122は、CNIメモリ1118を複数のバス1124(例えばデータバス、アドレスバス、および/またはコントロールバス)に結合し、これらのバス1124を介して、ホスト1110は、CNIメモリ1118との間においてデータの読み取りおよび書き込みを行う。その他の実施形態においては、CNIメモリ1118は、その他の方法で(例えば、シリアルインターフェースを使用して)アクセスされる。
TTP/Cコントローラユニット1120は、TTP/Cプロトコルを実装するのに必要な機能を提供する。このような実施形態の一実装形態においては、TTP/Cコントローラユニット1120は、プログラマブルプロセッサ(例えば、マイクロプロセッサ)を使用して実装され、このプログラマブルプロセッサは、TTP/Cコントローラユニット1120によって実行される機能を実施するための命令と共にプログラムされる。このような実施形態においては、命令メモリ1126は、TTP/Cコントローラユニット1120に結合される。TTP/Cコントローラユニット1120によって実行されるプログラム命令は、プログラム命令メモリ1126内に格納される。一実装形態においては、プログラムメモリ1126は、読み取り専用のメモリデバイス、あるいはフラッシュメモリデバイスなどの不揮発性のメモリデバイスを使用して実装される。
TTP/Cコントローラ1112はまた、MEDL(message descriptor list)メモリ1128を含み、ここには、TDMA(time−division multiple access)スケジュール、動作モード、およびクロック同期化パラメータに関する構成情報が保存される。MEDLメモリ1128は通常、例えばフラッシュメモリデバイスおよび/またはSRAM(static random access memory)デバイスを使用して実装される。CNIメモリ1118、プログラムメモリ1126、およびMEDLメモリ1128のサイズはいずれも、ホスト1110上で実行されるアプリケーションソフトウェア1114、TTP/コントローラユニット1120上で実行されるプログラム命令、および/または(後述する)バスガーディアン1132の特定のニーズに基づいて選択される。さらに、CNIメモリ1118、プログラムメモリ1126、およびMEDLメモリ1128は、別々のコンポーネントとして図11に示されているが、いくつかの実施形態においては、CNIメモリ1118、プログラムメモリ1126、および/またはMEDLメモリ1128は、1つまたは複数のメモリデバイスへと統合される。
単一のバスガーディアン1132は、TTP/Cコントローラ1112とリンク1108の間におけるインターフェースとして機能する。図11に示されている実施形態の一実装形態においては、バスガーディアン1132は、例えば1つまたは複数のUART(universal asynchronous receiver/transmitter)デバイスを含み、この1つまたは複数のUARTデバイスは、図1に示されているシリアルな、一方向性のポイントツーポイントの、一方向性のリンク108からデータを受信して、そうしたリンク108を介してデータを送信および中継するために使用される。
バスガーディアン1132によってリンク108から受信されるデータは、TTP/Cプロトコルに従って処理するためにTTP/Cコントローラ1112へ渡される。TTP/Cコントローラ1112によって送信されることになるデータは、TTP/Cコントローラユニット1120によってバスガーディアン1132へ渡される。バスガーディアン1132は、TTP/Cコントローラ1112がリンク108上における送信をいつ許可されるか、およびリンク108から受信されたデータをいつ中継するかを決定する。一実装形態においては、バスガーディアン1112は、図2および3に関連して前述した機能の少なくとも一部を実装する。バスガーディアン1132は、データをいつ送信および中継するかを判断するために、TTP/Cコントローラ1120のMEDLメモリ1128内に保存されているMEDL情報にアクセスする。したがって、それぞれのノード102内に含まれるバスガーディアン1132は、そのノード102にとって、およびそのノードの両隣のそれぞれにとって、バスガーディアン1132として機能する。このようにして、それぞれのノード102内の単一のバスガーディアン1132を使用するだけで、ネットワーク100内のノード102に関して、複数のバスガーディアンに関連付けられているフォルトトレランスを達成することができる。
TTP/Cコントローラ1112およびバスガーディアン1132は、別々のコンポーネントとして図11に示されているが、このような実施形態の一実装形態においては、TTP/Cコントローラ1112およびバスガーディアン1132によって提供される機能は、単一の集積回路デバイスへ統合されるということを理解されたい。このような実装形態においては、さらなるリソースの節約(例えばコスト、スペース、および電力)を達成することができる。このような一実装形態においては、プログラマブルプロセッサは、適切なプログラム命令と共にプログラムされ、この適切なプログラム命令は、プログラマブルプロセッサによって実行されると、TTP/Cコントローラ1112およびバスガーディアン1132によって実行されるものとしてここで説明されている機能の少なくとも一部を実行する。その他の実施形態および実装形態においては、TTP/Cコントローラ1112(あるいはその1つまたは複数のコンポーネント)およびバスガーディアン1132(あるいはその1つまたは複数のコンポーネント)は、別々のコンポーネントを使用して実装される。
図12は、図1のネットワーク100内における方向的な整合性を検知する方法の一実施形態を示す流れ図である。図12に示されている方法1200の実施形態については、ここでは、図1に示されているネットワーク100を使用して実装されるものとして説明するが、その他の実施形態は、その他のネットワーク内においてその他の方法で実装される。図12のコンテキストにおいては、方法1200の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法1200のその他の実施形態は、その他の方法で実装される。
所与のノード102(この図12のコンテキストにおいては、「送信側の」ノード102と呼ばれる)がデータを送信する際、その送信側のノード102の両隣のノードのそれぞれは、その送信側のノード102がネットワーク100のチャネル0と1の双方の上で同じデータを送信しているかどうか(すなわち、そこで送信側のノード102が方向的な整合性を伴って送信を行っているかどうか)を判断するために、方法1200を実行する。方法1200は、例えばネットワーク100内のノード102が、複数のノードが1つのTDMAスケジュールに従って送信を行う同期化モードで動作している場合に実行することができる。このような実施形態においては、方法1200は、図3Aあるいは図3Bに関連して前述した処理に加えて、両隣のノードによって実行することができる。方法1200はまた、例えばネットワーク100内のノード102が(例えばシステムの起動中に)非同期化モードで動作している場合に実行することもできる。このような実施形態においては、方法1200は、図7Aあるいは図7Bに関連して前述した処理に加えて、両隣のノードによって実行することができる。
送信側のノード102が送信を行う場合には、その送信側のノードの両隣は、自分たちがその送信側のノードから受信するそれぞれのフレームを、それらの両隣を相互に通信可能に結合するスキップリンク108を介してやり取りする。図12に示されているように、現在のノード102が、その両隣のうちの一方から発生したフレームを受信した場合には(これは、ブロック1202においてチェックされる)、その現在のノード102は、自分がその隣から(すなわち、送信側のノードから)受信しているフレームを、その送信側のノードの他方の隣へ転送する(ブロック1204)。現在のノード102は、送信側のノード102からのフレームを、その現在のノード102をその送信側のノードへ通信可能に結合するダイレクトリンク108から受信する。請求項12のコンテキストにおいては、現在のノード102が送信側のノード102からフレームを受信するチャネルは、ここでは「現在のチャネル」と呼ばれる。現在のノード102は、自分が送信側のノードから受信するフレームを、その送信側のノード102の他方の隣へ、その現在のノード102を現在のチャネル以外のチャネル内の他方の隣へ通信可能に結合するスキップリンク108を介して転送する。
送信側のノードの他方の隣は、自分が送信側のノードから受信するフレームを、現在のノード102へ、その他方の隣を現在のチャネル内のその現在のノード102へ通信可能に結合する他のスキップリンク108を介して転送する。図12のコンテキストにおいては、送信側のノードの他方の隣によって現在のノード102へ転送されるフレームは、ここでは「他のフレーム」とも呼ばれる。現在のノード102は、他のフレームを受信する(ブロック1206)。現在のノード102は、自分が送信側のノードから受信しているフレームを、自分が他方の隣から受信している他のフレームと比較する(ブロック1208)。一実施形態においては、この比較はビットごとの比較である。
現在のノード102は、自分が送信側のノード102から受信しているフレームを、現在のチャネルに沿って中継する(ブロック1210)。例えば送信側のノード102が、現在のノード102の時計方向の隣である場合には、その現在のノード102は、送信側のノード102からチャネル1を介してフレームを受信し、その受信したフレームを、チャネル1に沿って、その現在のノード102の反時計方向の隣および隣の隣へ中継する。送信側のノード102が、現在のノード102の反時計方向の隣である場合には、その現在のノード102は、送信側のノード102からチャネル0を介してフレームを受信し、その受信したフレームを、チャネル0に沿って、その現在のノード102の時計方向の隣および隣の隣へ中継する。
送信側のノードによって送信されたフレームの全体が、現在のノード102によって中継され、そのフレームと、他方の隣によってその現在のノード102へ転送された他のフレームとの比較が完了した後、その現在のノード102は、その比較の結果を示す情報を、送信側の隣から受信されたフレーム内に含めて、あるいはそのフレームの後に、現在のチャネルに沿って中継する(ブロック1212)。一実施形態においては、比較の結果を示す情報は、図4A〜4Bおよび5に関連して前述したように、現在のノード102が、送信側のノードから受信されたフレームに添付する1ビットの添付された整合性フィールドを含む。別の実施形態においては、図4A〜4Bおよび5に関連して前述したように、共有された整合性フィールドが、それぞれのフレームの終わりに含まれる。
例えば、送信側のノードが図1のノードAであり、現在のノードがノードBである場合には、送信側のノードの他方の隣はノードHである。このような例においては、現在のノード(ノードB)は、自分がノードAから受信するフレームを、ノードBをノードHへ通信可能に結合するチャネル0のスキップリンク108を介して、他方の隣(ノードH)へ転送する。同様に、他方の隣(ノードH)は、自分がノードAから受信するフレームを、ノードHをノードBへ通信可能に結合するチャネル1のスキップリンク108を介して、現在のノード(ノードB)へ転送する。ノードBは、自分がノードAから受信するフレームを、自分がノードHから受信するフレームと比較する。ノードBは、ノードAから受信したフレームを、チャネル1に沿ってノードC(ノードBの反時計方向の隣)へ、およびノードD(ノードBの反時計方向の隣の隣)へ中継する。ノードBは、ノードAから受信したフレームの全体を中継し、比較を完了すると、(この例においては)その中継されたフレームに1ビットのフィールドを添付する。
図13は、図1のネットワーク100内における整合性を再構成する方法の一実施形態を示す流れ図である。図13に示されている方法1300の実施形態については、ここでは、図1に示されているネットワーク100を使用して実装されるものとして説明するが、その他の実施形態は、その他のネットワーク内においてその他の方法で実装される。図13のコンテキストにおいては、方法1300の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、そのノード102内に含まれるコントローラ内に実装される。方法1300のその他の実施形態は、その他の方法で実装される。
図13に関連して本明細書に記載されている処理は、任意選択であり、本明細書に記載されているその他のシステム、デバイス、方法、あるいは技術のいずれかを使用する任意の所与のネットワーク100内において必ずしも実施する必要はないということを理解されたい。
方法1300は、一実施形態においては、送信側のノード102ならびにその送信側のノードの時計方向の隣のノード102および反時計方向の隣のノード102以外のノード102によって、それらのノード102が同期化モードで動作している間に実行される。現在のノード102は、その現在のノード102が偶然にも2つのチャネルから4つのフレームを(すなわち、チャネル0を介して反時計方向の隣からのフレームおよび反時計方向の隣の隣からのフレームと、チャネル1を介して時計方向の隣からのフレームおよび時計方向の隣の隣からのフレームとを)受信した場合に、所定の「比較」ウィンドウ内で方法1300の処理を実行することができる。これが起こると、現在のノード102は、「投票」オペレーションにおいて、それらの4つのフレームを相互に比較することができる。
現在のノード102が、その現在のノード102において、その現在のノード102の第1の隣および第1の隣の隣からフレーム(ここでは、「第1のフレーム」と呼ばれる)を受信した場合には(ブロック1302)、その現在のノード102は、その第1のフレームのうちの一方(ここでは、「中継される方の第1のフレーム」とも呼ばれる)を、その第1のチャネルに沿って中継し、図4A〜4Bに関連して前述したのと同じ一般的な方法で、その2つの第1のフレームどうしの間において双方向の比較を実行する(ブロック1304)。その後、現在のノード102が、その現在のノード102において、その現在のノードの他方の隣および他方の隣の隣からフレーム(ここでは、「後の」あるいは「第2の」フレームと呼ばれる)を受信した場合には(ブロック1306)、その現在のノード102は、その第2のフレームのうちの一方(ここでは、「中継される方の第2のフレーム」とも呼ばれる)を、その第2のチャネルに沿って中継し、図4A〜4Bに関連して前述したのと同じ一般的な方法で、その2つの第2のフレームどうしの間において双方向の比較を実行する(ブロック1308)。
現在のノード102が、比較ウィンドウ内において第2のチャネルから第2のフレームを受信した場合には(これは、ブロック1310においてチェックされる)、その現在のノード102は、自分が受信している4つのフレーム(すなわち、第1のフレームおよび第2のフレーム)を使用して投票オペレーションを実行する(ブロック1312)。一実施形態においては、投票オペレーションは、ビットごとの比較において4つのフレームのそれぞれを他の4つのフレームと比較する。2つの第2のフレームどうしの間において不一致があり(これは、ブロック1314においてチェックされる)、その一方で第1のフレームが、相互に同一であり、かつ第2のフレームのうちの一方と同一である(すなわち、「過半数」が存在する)ことが比較によって示される場合には(ブロック1316)、現在のノード102は、前述した通常の中継/双方向比較処理を「無効にする」(ブロック1318)。現在のノード102は、前述した通常の中継および双方向比較処理を実行する代わりに、2つの第1のフレームと一致した第2のフレームを中継し、その中継される第2のフレームと共に、その中継される第2のフレームがその現在のノード102において整合性を伴って受信されたことを示す情報を中継する。すなわち、そうでない場合には、方法400の通常の中継/双方向比較処理に従って整合性フィールドがその中継される第2のフレームに添付されるか、あるいは含まれるが、現在のノード102において実行される通常の中継/双方向比較処理にかかわらず、その整合性フィールドは、その現在のノード102が「一致」を有していたこと(すなわち、中継される第2のフレームを、整合性を伴って受信したこと)を後続のノード102に示す「正の」値に置き換えられる。その他の実施形態においては、その他の投票ルールおよび/または無効化処理が実行されるということを理解されたい。
後のフレームが比較ウィンドウ内において受信されない場合、第2のフレームどうしの間において不一致がない場合、あるいは第2のフレームどうしの間において不一致があるが、過半数が存在しない場合には、現在のノード102は、第2のフレームに対する通常の中継/双方向比較処理を無効にしない(ブロック1320)。
同期化モードで動作している場合には、1つのノード102は、そのノード102が、所与のタイムスロットの間に4つのフレーム(すなわち、そのノードの時計方向の隣からのフレーム、時計方向の隣の隣からのフレーム、反時計方向の隣からのフレーム、および反時計方向の隣の隣からのフレーム)を受信した後に、このような投票オペレーションを実行することができる。図14は、図1に示されているネットワーク100のノード102における投票の方法1400の一実施形態を示す流れ図である。図14に示されている方法1400の実施形態については、ここでは、図1に示されているネットワーク100を使用して実装されるものとして説明するが、その他の実施形態は、その他のネットワーク内においてその他の方法で実装される。図14のコンテキストにおいては、方法1400の処理を実行しているノード102は、ここでは「現在の」ノード102と呼ばれる。一実施形態においては、現在のノード102によって実行されるものとしてここで説明されている機能の少なくとも一部は、図2〜4Bに関連して前述した送信/中継機能を実行する機能と、ネットワーク100を介してやり取りされるデータを使用するノード102上で実行されるアプリケーションとの間におけるインターフェースとして機能する「ボータ」内に実装される。方法1400のその他の実施形態は、その他の方法で実装される。
方法1400は、現在のノード102が同期化モードで動作している場合に、その現在のノード102が所与のタイムスロットの間にネットワーク100から4つのフレームを受信した後に、そのノード102によって実行される。現在のノード102は、4つのフレームのいずれもがその現在のノード102において整合性を伴って受信されているかどうかを判断する(ブロック1402)。この実施形態においては、1つのフレームと共に含まれている添付されたあるいは共有された整合性フィールドが、そのフレームを現在のノード102へ送信および中継する過程でミスマッチがまったく発生していないことを示している場合に、そのフレームは、整合性を伴って受信される。1つのフレームが、現在のノード102において整合性を伴って受信されている場合には、そのフレームは、(例えば、その現在のノード102上で実行されるアプリケーションによって)後続の処理のために使用される(ブロック1404)。
現在のノード102によって現在のタイムスロットの間に受信された4つのフレームのいずれもが、整合性を伴って受信されなかった場合には、その現在のノード102は、その4つの受信したフレームを使用して投票オペレーションを実行する(ブロック1406)。投票オペレーションは、一実施形態においては、それぞれのフレームを、他のチャネル上で受信された他の2つのフレームとビットごとに比較する。2つの比較されたフレームが同一であること(すなわち、「過半数」が存在すること)がビットごとの比較のいずれかによって示される場合には(これは、ブロック1408においてチェックされる)、それらのフレームは、あたかも現在のノード102によって整合性を伴って受信されているかのように(例えば、その現在のノード102上で実行されるアプリケーションによって)使用される(ブロック1410)。比較されたフレームのいずれも同一でない場合には、いずれのフレームも整合性を伴って受信されていなかったとみなされる(ブロック412)。一実施形態においては、現在のノード102内のボータは、単一のフレームを、それによって使用するためにその現在のノード102上で実行されるアプリケーションに提供する。そのアプリケーションに提供されるフレームは、現在のノードにおいて整合性を伴って受信されるフレーム、あるいは整合性を伴って受信されていたと投票後にみなされるフレームである。このようにして、たとえ上述の中継および/または方向的な整合性の処理の結果、4つのフレームが現在のノード102によって整合性を伴わずに受信されているとしても、それらのフレームの整合性は、投票オペレーションによって「再構成する」ことができる。
本明細書に記載のシステム、デバイス、方法、および技術は、図1に示されている特定の編組リング型のトポロジ以外のネットワークトポロジを有するネットワーク内に実装することができる。例えば、本明細書に記載のシステム、デバイス、方法、および技術の少なくとも一部は、ネットワークのさまざまなノードの間において提供されるノード間の接続がさらに多いネットワーク内に実装することができる。このようなネットワークの一例が、「メッシュ型の」ネットワークである。このようなメッシュ型の実施形態の一例においては、それぞれのノードは、(「完全な」メッシュ型のネットワークトポロジの場合には)ネットワーク100内における他のすべてのノードへ、あるいは(「部分的な」メッシュ型のネットワークトポロジの場合には)ネットワーク内における他のノードのサブセットへ通信可能に結合される。このようなそれぞれのノードごとに、およびこのようなメッシュ型のネットワーク内において定義される所与のチャネル内のデータの所与のフローごとに、そのノードが結合されるノードの少なくとも1つのサブセットが、そのノードにとっての受信元ノードとして指定され、そのノードが結合されるノードの少なくとも1つのサブセットが、送信先ノードとして指定される。
さらに、本明細書に記載のシステム、デバイス、方法、および技術の少なくとも一部は、ネットワークのさまざまなノードの間において提供されるノード間の接続がさらに少ないネットワーク内に実装することができる。このようなネットワークの一例が、2つの「シンプレックス」リングチャネルを含むネットワークである。このような一実装形態は、図1に示されている方法で実装されるが、それぞれのノードをその時計方向の隣の隣および反時計方向の隣の隣へ通信可能に結合するスキップリンクは存在しない。例えば方法300の実施形態は、このようなシンプレックスリング型ネットワーク内において使用するのに適している。
さらに、本明細書に記載のさまざまなシステム、デバイス、方法、および技術は、単一のネットワーク内にすべて一緒に実装する必要はなく、このようなシステム、デバイス、方法、および技術のさまざまな組合せを実装することができるという点を理解されたい。
本明細書に記載の方法および技術は、デジタル電子回路内に、あるいはプログラマブルプロセッサ(例えば専用プロセッサや、コンピュータなどの汎用プロセッサ)、ファームウェア、ソフトウェア、またはそれらの組合せと共に実装することができる。これらの技術を具体化する装置は、適切な入力デバイスおよび出力デバイスと、プログラマブルプロセッサと、そのプログラマブルプロセッサによって実行するためのプログラム命令を目に見える形で具体化するストレージメディアとを含むことができる。これらの技術を具体化するプロセスは、入力されたデータ上で動作して適切な出力を生成することによって所望の機能を実行するための命令のプログラムを実行するプログラマブルプロセッサによって実行することができる。これらの技術は、有利なことに、データストレージシステムからデータおよび命令を受信するために、ならびにデータストレージシステムへデータおよび命令を送信するために結合されている少なくとも1つのプログラマブルプロセッサと、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを含むプログラマブルシステム上で実行可能な1つまたは複数のプログラム内に実装することができる。一般にプロセッサは、読み取り専用メモリおよび/またはランダムアクセスメモリから命令およびデータを受け取ることになる。コンピュータプログラム命令およびデータを目に見える形で具体化するのに適したストレージデバイスとしては、例えばEPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内蔵型のハードディスクおよび取り外し可能なディスクなどの磁気ディスク、光磁気ディスク、ならびにDVDディスクを含むすべての形態の不揮発性メモリが含まれる。これらのいずれも、特別に設計されたASIC(application−specific integrated circuit)によって補強するか、あるいはそうしたASIC内に組み込むことができる。
添付の特許請求の範囲によって定義される本発明の複数の実施形態について説明した。これにかかわらず、特許請求される本発明の趣旨および範囲から逸脱することなく、説明した実施形態に対するさまざまな修正を行うことができるということが理解できるであろう。したがって、その他の実施形態は、添付の特許請求の範囲内に収まるものである。
Claims (10)
- ノードを1つのチャネル(106)へ通信可能に結合するためのインターフェース(1130)を含むノード(102)であって、
前記チャネルが、前記ノードを、第1の方向における第1の隣のノード(102)および第1の隣の隣のノード(102)へ通信可能に結合し、
前記第1の隣のノードが、送信を行うようにスケジュールされており、前記ノードが、前記第1の隣のノードから前記チャネルを介してデータを受信する場合に、前記ノードが、
前記データを前記第1の隣の隣へ転送し、
前記第1の隣の隣から他のデータを受信し、
前記データを前記他のデータと比較し、
前記データを、前記比較を示す情報と共に前記チャネルに沿って中継するノード。 - 前記チャネルが、前記ノードを第2の方向における第2の隣のノード(102)へ、および第2の隣のノード(102)へ通信可能に結合する請求項1に記載のノード。
- 前記チャネルが、
前記ノードを、前記チャネルを介して、前記第1の隣のノードへ通信可能に結合する第1のダイレクトリンク(108)と、
前記ノードを、前記チャネルを介して、前記第1の隣の隣のノードへ通信可能に結合する第1のスキップリンク(108)と、
前記ノードを、前記チャネルを介して、前記第2の隣のノードへ通信可能に結合する第2のダイレクトリンク(108)と、
前記ノードを、前記チャネルを介して、前記第2の隣の隣のノードへ通信可能に結合する第2のスキップリンク(108)とを含む請求項2に記載のノード。 - 前記インターフェースが、前記ノードを第2のチャネル(106)へ通信可能に結合し、前記第2のチャネルが、前記ノードを、前記第2の方向における前記第2の隣のノードおよび前記第2の隣の隣へ、ならびに前記第1の方向における前記第1の隣のノードおよび前記第1の隣の隣へ通信可能に結合する請求項3に記載のノード。
- 前記第2のチャネルがリング(104)を含む請求項4に記載のノード。
- 前記チャネルがリング(104)を含む請求項1に記載のノード。
- 前記第1の隣のノードから受信した前記データが、データの少なくとも1つのフレームを含む請求項1に記載のノード。
- 第1のチャネル(106)を介して相互に通信可能に結合されている複数のノード(102)を含むネットワーク(100)であって、
前記チャネルが、それぞれのノードを、第1の方向におけるそのノードの第1の隣のノード(102)およびそのノードの第1の隣の隣のノード(102)へ通信可能に結合し、
それぞれのノードごとに、そのノードの前記第1の隣のノードが、送信を行うようにスケジュールされており、そのノードが、その第1の隣のノードから前記チャネルを介してデータを受信する場合に、そのノードが、
前記データを前記第1の隣の隣へ転送し、
前記第1の隣の隣から他のデータを受信し、
前記データを前記他のデータと比較し、
前記データを、前記比較を示す情報と共に前記チャネルに沿って中継するネットワーク。 - 前記チャネルがリング(104)を含む請求項8に記載のネットワーク。
- 少なくとも1つのチャネル(106)を介して相互に通信可能に結合されている複数のノード(102)を含むネットワーク(100)内において通信を行う方法であって、
それぞれのノードにおいて、
そのノードの第1の隣のノード(102)が、前記チャネル上においていつ送信を行うようにスケジュールされているかを判断するステップと、
そのノードの前記第1の隣のノードが、前記チャネル上において送信を行うようにスケジュールされているときに、
そのノードの前記第1の隣のノードによって送信されたデータを受信するステップと、
前記データをそのノードの第1の隣の隣(102)へ転送するステップと、
前記第1の隣の隣から他のデータを受信するステップと、
前記データを前記他のデータと比較するステップと、
前記データを、前記比較を示す情報と共に前記チャネルに沿って中継するステップとを含む方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US52389203P | 2003-11-19 | 2003-11-19 | |
US52386503P | 2003-11-19 | 2003-11-19 | |
PCT/US2004/039254 WO2005053239A2 (en) | 2003-11-19 | 2004-11-19 | Directional integrity enforcement in a bi-directional braided ring network |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007511986A true JP2007511986A (ja) | 2007-05-10 |
Family
ID=34636494
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006541639A Withdrawn JP2007511991A (ja) | 2003-11-19 | 2004-11-19 | Tdmaネットワーク内における小グループの集約 |
JP2006541634A Withdrawn JP2007511988A (ja) | 2003-11-19 | 2004-11-19 | リング型ネットワーク用の非同期モード・ブラザーズキーパー・バスガーディアン |
JP2006541630A Withdrawn JP2007511986A (ja) | 2003-11-19 | 2004-11-19 | 双方向性の編組リング型ネットワーク内における方向的な整合性の強化 |
JP2006541637A Withdrawn JP2007511990A (ja) | 2003-11-19 | 2004-11-19 | 編組リング内における高い整合性を有するデータの伝搬 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006541639A Withdrawn JP2007511991A (ja) | 2003-11-19 | 2004-11-19 | Tdmaネットワーク内における小グループの集約 |
JP2006541634A Withdrawn JP2007511988A (ja) | 2003-11-19 | 2004-11-19 | リング型ネットワーク用の非同期モード・ブラザーズキーパー・バスガーディアン |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006541637A Withdrawn JP2007511990A (ja) | 2003-11-19 | 2004-11-19 | 編組リング内における高い整合性を有するデータの伝搬 |
Country Status (4)
Country | Link |
---|---|
US (5) | US7606179B2 (ja) |
EP (4) | EP1687943A1 (ja) |
JP (4) | JP2007511991A (ja) |
WO (4) | WO2005053240A2 (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0411991D0 (en) * | 2004-05-28 | 2004-06-30 | New Transducers Ltd | Communication network for servo systems and the like |
JP2008542946A (ja) * | 2005-06-09 | 2008-11-27 | エヌエックスピー ビー ヴィ | 通信システムノード用記憶装置、データ記憶方法、及び通信システムノード |
EP1739890A3 (en) * | 2005-06-28 | 2007-07-18 | Tttech Computertechnik AG | Processing of data frames exchanged over a communication controller in a time-triggered system |
JP4871687B2 (ja) * | 2005-10-03 | 2012-02-08 | 日立オートモティブシステムズ株式会社 | 車両制御システム |
DE102005048595A1 (de) * | 2005-10-06 | 2007-04-12 | Robert Bosch Gmbh | Verfahren zur Anbindung eines FlexRay-Teilnehmers mit einem Mikrocontroller an eine FlexRay-Kommunikationsverbindung über eine FlexRay-Kommunikationssteuereinrichtung, und FlexRay-Kommunikationssteuereinrichtung, FlexRay-Teilnehmer und FlexRay-Kommunikationssystem zur Realisierung dieses Verfahrens |
JP4946646B2 (ja) * | 2006-07-10 | 2012-06-06 | 日産自動車株式会社 | 通信ネットワークシステム及び未ウェイクアップノードのウェイクアップ方法 |
WO2008029318A2 (en) * | 2006-09-06 | 2008-03-13 | Nxp B.V. | Cluster coupler in a time triggered network |
US7668084B2 (en) * | 2006-09-29 | 2010-02-23 | Honeywell International Inc. | Systems and methods for fault-tolerant high integrity data propagation using a half-duplex braided ring network |
US7596153B2 (en) * | 2006-10-13 | 2009-09-29 | Honeywell International Inc. | Clock-state correction and/or clock-rate correction using relative drift-rate measurements |
US7889683B2 (en) * | 2006-11-03 | 2011-02-15 | Honeywell International Inc. | Non-destructive media access resolution for asynchronous traffic in a half-duplex braided-ring |
US7656881B2 (en) * | 2006-12-13 | 2010-02-02 | Honeywell International Inc. | Methods for expedited start-up and clique aggregation using self-checking node pairs on a ring network |
US7912094B2 (en) * | 2006-12-13 | 2011-03-22 | Honeywell International Inc. | Self-checking pair-based master/follower clock synchronization |
US8204037B2 (en) * | 2007-08-28 | 2012-06-19 | Honeywell International Inc. | Autocratic low complexity gateway/ guardian strategy and/or simple local guardian strategy for flexray or other distributed time-triggered protocol |
US7778159B2 (en) * | 2007-09-27 | 2010-08-17 | Honeywell International Inc. | High-integrity self-test in a network having a braided-ring topology |
US8817597B2 (en) * | 2007-11-05 | 2014-08-26 | Honeywell International Inc. | Efficient triple modular redundancy on a braided ring |
US8130773B2 (en) * | 2008-06-25 | 2012-03-06 | Honeywell International Inc. | Hybrid topology ethernet architecture |
JP5014362B2 (ja) | 2009-02-25 | 2012-08-29 | キヤノン株式会社 | 情報処理装置及びその制御方法、コンピュータプログラム |
US8498276B2 (en) | 2011-05-27 | 2013-07-30 | Honeywell International Inc. | Guardian scrubbing strategy for distributed time-triggered protocols |
TWI462521B (zh) * | 2011-11-03 | 2014-11-21 | Realtek Semiconductor Corp | 適用於多種應用層協定程序的高精確性具彈性化的低功耗遠端喚醒機制的網路存取裝置 |
US8908675B2 (en) | 2012-01-13 | 2014-12-09 | Honeywell International Inc. | Virtual pairing for consistent data broadcast |
US8949983B2 (en) | 2012-02-21 | 2015-02-03 | Honeywell International Inc. | System and method for integrity reconstitution |
US8767767B2 (en) | 2012-02-21 | 2014-07-01 | Honeywell International Inc. | System and method for out-of-band signaling |
US9215031B2 (en) * | 2012-09-21 | 2015-12-15 | Verizon Patent And Licensing Inc. | Determining least-latency paths across a provider network utilizing available capacity |
JP6471021B2 (ja) * | 2015-03-30 | 2019-02-13 | 本田技研工業株式会社 | 通信システム |
US11303584B2 (en) | 2018-12-13 | 2022-04-12 | Honeywell International Inc. | Dual fault-tolerant network using guardian interlocking |
US10992516B2 (en) * | 2018-12-13 | 2021-04-27 | Honeywell International Inc. | Efficient self-checking redundancy comparison in a network |
US11431613B2 (en) | 2020-09-02 | 2022-08-30 | Honeywell International Inc. | Compressed and efficient byzantine agreement |
US11665112B2 (en) | 2020-09-02 | 2023-05-30 | Honeywell International Inc. | Self-checking node |
US11652663B1 (en) | 2022-01-28 | 2023-05-16 | Honeywell International Inc. | Controller area network braided ring |
Family Cites Families (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3491102A (en) | 1967-05-17 | 1970-01-20 | Uniroyal Inc | 2-hydroxy - 3,5 - dihydrocarbylbenzyl 3-hydrocarbyl - 4 - hydroxy-5-(dialkylaminomethyl) phenyl sulfide |
GB1581803A (en) | 1978-03-21 | 1980-12-17 | Standard Telephones Cables Ltd | Data transmission system |
GB2028062B (en) * | 1979-08-17 | 1982-07-21 | Standard Telephones Cables Ltd | Transmission system |
US4428046A (en) * | 1980-05-05 | 1984-01-24 | Ncr Corporation | Data processing system having a star coupler with contention circuitry |
US4583161A (en) * | 1981-04-16 | 1986-04-15 | Ncr Corporation | Data processing system wherein all subsystems check for message errors |
DE3238692A1 (de) | 1982-10-19 | 1984-04-19 | Siemens AG, 1000 Berlin und 8000 München | Datenuebertragungssystem |
GB8328317D0 (en) | 1983-10-22 | 1983-11-23 | Gen Electric Co Plc | Communication networks |
JPS60152143A (ja) * | 1984-01-20 | 1985-08-10 | Fuji Xerox Co Ltd | システムタイミング同期方式 |
AT382253B (de) | 1984-06-22 | 1987-02-10 | Austria Mikrosysteme Int | Lose gekoppeltes verteiltes computersystem |
US4630254A (en) * | 1984-10-26 | 1986-12-16 | Trw Inc. | Controlled star network |
GB2175775A (en) | 1985-05-28 | 1986-12-03 | Stc Plc | Data transmission system |
GB8528891D0 (en) * | 1985-11-23 | 1986-01-02 | Int Computers Ltd | Data transmission system |
US4856023A (en) | 1986-07-23 | 1989-08-08 | Ncr Corporation | System for maintaining low bit error rate in a starcoupled network of direct coupled stations |
GB8709771D0 (en) * | 1987-04-24 | 1987-05-28 | Madge Networks Ltd | Token ring expander/hub |
ZA883232B (en) | 1987-05-06 | 1989-07-26 | Dowd Research Pty Ltd O | Packet switches,switching methods,protocols and networks |
EP0458782B1 (de) * | 1989-02-20 | 1994-10-26 | Licentia Patent-Verwaltungs-GmbH | Sternförmiges netz für die datenkommunikation zwischen stationen |
GB2232512A (en) | 1989-05-31 | 1990-12-12 | Plessey Telecomm | Processor unit networks |
GB8923351D0 (en) | 1989-10-17 | 1989-12-06 | Stc Plc | Multifrequency optical network |
US5383191A (en) | 1990-12-20 | 1995-01-17 | International Business Machines Corporation | Dual ring reconfiguration switching unit |
US5132962A (en) * | 1990-12-20 | 1992-07-21 | International Business Machines Corporation | Fault isolation and bypass reconfiguration unit |
US5257266A (en) * | 1991-02-27 | 1993-10-26 | General Dynamics Corporation, Space Systems Division | Computer and communications systems employing universal direct spherics processing architectures |
US5715391A (en) * | 1991-11-15 | 1998-02-03 | International Business Machines Corporation | Modular and infinitely extendable three dimensional torus packaging scheme for parallel processing |
EP0549506A3 (en) * | 1991-12-23 | 1995-04-12 | Ibm | Dual ring fault isolation |
ATE170351T1 (de) | 1992-06-22 | 1998-09-15 | Ibm | Knotenpunkt und schnittstelle für isochronen token-ring |
US5307409A (en) * | 1992-12-22 | 1994-04-26 | Honeywell Inc | Apparatus and method for fault detection on redundant signal lines via encryption |
US5386424A (en) * | 1993-03-31 | 1995-01-31 | Honeywell, Inc. | Apparatus and method for transmitting information between dual redundant components utilizing four signal paths |
US5394401A (en) * | 1993-04-14 | 1995-02-28 | Digital Equipment Corporation | Arrangement for a token ring communications network |
DE69528413D1 (de) * | 1994-05-09 | 2002-11-07 | Europlex Res Ltd | Ringnetzsystem |
DE4429953B4 (de) * | 1994-08-24 | 2012-06-06 | Wabco Gmbh | Serielles Bussystem |
US5557778A (en) | 1994-11-07 | 1996-09-17 | Network Devices, Inc. | Star hub connection device for an information display system |
US5896508A (en) * | 1995-02-23 | 1999-04-20 | Advanced Micro Devices, Inc. | Hub-network adapter device for a file server personal computer |
US5742646A (en) * | 1995-05-05 | 1998-04-21 | Harris Corporation | Method of selecting and switching signal paths in a digital communication system |
US5719868A (en) * | 1995-10-05 | 1998-02-17 | Rockwell International | Dynamic distributed, multi-channel time division multiple access slot assignment method for a network of nodes |
US6272538B1 (en) * | 1996-07-30 | 2001-08-07 | Micron Technology, Inc. | Method and system for establishing a security perimeter in computer networks |
DE19633744C2 (de) * | 1996-08-22 | 1999-07-22 | Baumueller Anlagen Systemtech | Ringgraph in einem elektrischen Antriebssystem |
US5940367A (en) * | 1996-11-06 | 1999-08-17 | Pluris, Inc. | Fault-tolerant butterfly switch |
US6414953B1 (en) * | 1996-12-23 | 2002-07-02 | Tech Laboratories Incorporated | Multi-protocol cross connect switch |
US6052753A (en) | 1997-01-21 | 2000-04-18 | Alliedsignal Inc. | Fault tolerant data bus |
US5937414A (en) | 1997-02-28 | 1999-08-10 | Oracle Corporation | Method and apparatus for providing database system replication in a mixed propagation environment |
US5949760A (en) * | 1997-03-21 | 1999-09-07 | Rockwell International Corporation | Simultaneous channel access transmission method for a multi-hop communications radio network |
US6172984B1 (en) | 1997-06-19 | 2001-01-09 | Siemens Information And Communication Networks, Inc. | System and method for reducing the latency for time sensitive data over CSMA/CD networks |
US6175553B1 (en) * | 1997-06-20 | 2001-01-16 | Nortel Networks Corporation | Method and apparatus for locating and isolating a fault within a token ring network |
US6374078B1 (en) * | 1998-04-17 | 2002-04-16 | Direct Wireless Corporation | Wireless communication system with multiple external communication links |
US6219528B1 (en) * | 1998-06-29 | 2001-04-17 | Hughes Electronics Corporation | Dynamic power control with adaptive reference level |
US6618359B1 (en) * | 1998-10-07 | 2003-09-09 | Nortel Networks Limited | Error recovery in a mixed protocol networks |
US6226676B1 (en) * | 1998-10-07 | 2001-05-01 | Nortel Networks Corporation | Connection establishment and termination in a mixed protocol network |
JP2002542722A (ja) | 1999-04-15 | 2002-12-10 | ギリアン テクノロジーズ リミテッド | 送信データの完全性監視 |
US6950418B1 (en) * | 1999-04-30 | 2005-09-27 | Rockwell Collins, Inc. | Clique activation multiple access (CAMA) |
DE19922171B4 (de) * | 1999-05-12 | 2009-08-27 | Infineon Technologies Ag | Kommunikationssystem mit einem Kommunikationsbus |
US7088921B1 (en) * | 1999-06-11 | 2006-08-08 | Lucent Technologies Inc. | System for operating an Ethernet data network over a passive optical network access system |
AT407582B (de) | 1999-08-13 | 2001-04-25 | Fts Computertechnik Gmbh | Nachrichtenverteilereinheit mit integriertem guardian zur verhinderung von ''babbling idiot'' fehlern |
US6765924B1 (en) * | 1999-08-19 | 2004-07-20 | Intel Corporation | Networking method and apparatus using silent slots to facilitate transmission collision detection |
US6741559B1 (en) * | 1999-12-23 | 2004-05-25 | Nortel Networks Limited | Method and device for providing priority access to a shared access network |
US6594802B1 (en) * | 2000-03-23 | 2003-07-15 | Intellitech Corporation | Method and apparatus for providing optimized access to circuits for debug, programming, and test |
US6707913B1 (en) * | 2000-04-11 | 2004-03-16 | Verizon Laboratories Inc. | Network interface |
US6513092B1 (en) | 2000-04-18 | 2003-01-28 | Nec Eluminant Technologies, Inc. | 1:N protection switching architecture for common processing units |
US7085560B2 (en) * | 2000-05-31 | 2006-08-01 | Wahoo Communications Corporation | Wireless communications device with artificial intelligence-based distributive call routing |
KR100385116B1 (ko) * | 2000-09-02 | 2003-05-22 | 국방과학연구소 | 다중 장애 허용망 구조를 이용한 패킷 처리 방법 |
US6925497B1 (en) | 2000-09-26 | 2005-08-02 | Microsoft Corporation | Systems and methods for controlling the number of clients that access a server |
EP1598714B1 (en) | 2000-12-13 | 2016-09-28 | LG Electronics Inc. | Apparatus and method for remotely controlling household appliances |
US20020118636A1 (en) | 2000-12-20 | 2002-08-29 | Phelps Peter W. | Mesh network protection using dynamic ring |
DE60200530T2 (de) * | 2001-04-04 | 2004-09-23 | Alcatel | Mechanismus und Verfahren zur Bestimmung und schnellen Wiederherstellung einer minimalen Kapazität in einem vermaschten Netz |
US7623789B2 (en) * | 2001-04-11 | 2009-11-24 | Transmode Holding Ab | Low loss WDM add drop node |
JP2003087243A (ja) | 2001-06-28 | 2003-03-20 | Hitachi Ltd | データ検証方法、データ検証装置およびその処理プログラム製品 |
GB2377035B (en) * | 2001-06-29 | 2005-05-04 | Motorola Inc | A fault tolerant shared transceiver apparatus and system |
DE60138182D1 (de) * | 2001-07-26 | 2009-05-14 | Bayerische Motoren Werke Ag | Uhrensynchronisation in einem verteilten System |
US7349414B2 (en) * | 2001-08-24 | 2008-03-25 | Optimum Communications Services, Inc. | System and method for maximizing the traffic delivery capacity of packet transport networks via real-time traffic pattern based optimization of transport capacity allocation |
EP1430627B1 (de) | 2001-09-26 | 2005-02-09 | Siemens Aktiengesellschaft | Verfahren zur synchronisation von knoten eines kommunikationssystems |
US7050395B1 (en) * | 2001-11-30 | 2006-05-23 | Redback Networks Inc. | Method and apparatus for disabling an interface between network element data processing units |
US7035539B2 (en) | 2002-01-09 | 2006-04-25 | Fujitsu Limited | Interconnecting nodes in an optical communication system |
DE20220280U1 (de) * | 2002-05-22 | 2003-10-02 | Bosch Gmbh Robert | Vorrichtung zur Übertragung von Information in einem Netzwerk sowie entsprechendes Netzwerk |
DE10223007A1 (de) | 2002-05-22 | 2003-12-11 | Bosch Gmbh Robert | Verfahren und Vorrichtung zur Übertragung von Informationen in einem Netzwerk sowie entsprechendes Netzwerk |
JP4309629B2 (ja) | 2002-09-13 | 2009-08-05 | 株式会社日立製作所 | ネットワークシステム |
US7269177B2 (en) * | 2002-11-18 | 2007-09-11 | Lucent Technologies Inc. | Logical star topologies for non-star networks |
WO2004066530A1 (en) * | 2003-01-14 | 2004-08-05 | Honeywell International Inc. | Method and apparatus for the synchronization of a system time of a communications network with a clock reference |
DE50306182D1 (de) | 2003-04-14 | 2007-02-15 | Alcatel Transp Solution D Gmbh | Verfahren zur signaltechnisch sicheren Datenübertragung |
US7457303B2 (en) * | 2003-06-06 | 2008-11-25 | International Business Machines Corporation | One-bounce network |
KR100540932B1 (ko) | 2003-07-01 | 2006-01-10 | 삼성전자주식회사 | 프레임 플로 제어 장치 및 방법, 프레임 전송 장치 및 방법 |
EP1695516A2 (en) * | 2003-11-19 | 2006-08-30 | Honeywell International, Inc. | Mobius time-triggered communication |
US7660327B2 (en) * | 2004-02-03 | 2010-02-09 | Atheros Communications, Inc. | Temporary priority promotion for network communications in which access to a shared medium depends on a priority level |
US7453885B2 (en) * | 2004-10-13 | 2008-11-18 | Rivulet Communications, Inc. | Network connection device |
US20060203851A1 (en) * | 2005-03-14 | 2006-09-14 | Eidson John C | Applications of multiple time synchronization domains |
-
2004
- 2004-11-19 WO PCT/US2004/039258 patent/WO2005053240A2/en not_active Application Discontinuation
- 2004-11-19 WO PCT/US2004/039254 patent/WO2005053239A2/en not_active Application Discontinuation
- 2004-11-19 US US10/993,933 patent/US7606179B2/en active Active
- 2004-11-19 US US10/993,931 patent/US7649835B2/en not_active Expired - Fee Related
- 2004-11-19 JP JP2006541639A patent/JP2007511991A/ja not_active Withdrawn
- 2004-11-19 EP EP04811907A patent/EP1687943A1/en not_active Withdrawn
- 2004-11-19 JP JP2006541634A patent/JP2007511988A/ja not_active Withdrawn
- 2004-11-19 EP EP04811896A patent/EP1698112A2/en not_active Withdrawn
- 2004-11-19 JP JP2006541630A patent/JP2007511986A/ja not_active Withdrawn
- 2004-11-19 US US10/993,936 patent/US7729297B2/en active Active
- 2004-11-19 JP JP2006541637A patent/JP2007511990A/ja not_active Withdrawn
- 2004-11-19 EP EP04811903A patent/EP1692823A1/en not_active Withdrawn
- 2004-11-19 US US10/994,209 patent/US7505470B2/en active Active
- 2004-11-19 WO PCT/US2004/039261 patent/WO2005053237A1/en not_active Application Discontinuation
- 2004-11-19 EP EP04811900A patent/EP1698113A2/en not_active Withdrawn
- 2004-11-19 US US10/993,932 patent/US7502334B2/en active Active
- 2004-11-19 WO PCT/US2004/039265 patent/WO2005053238A1/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
US7606179B2 (en) | 2009-10-20 |
WO2005053239A2 (en) | 2005-06-09 |
US7729297B2 (en) | 2010-06-01 |
US20050135277A1 (en) | 2005-06-23 |
EP1698113A2 (en) | 2006-09-06 |
US20050152377A1 (en) | 2005-07-14 |
WO2005053237A1 (en) | 2005-06-09 |
WO2005053239A3 (en) | 2005-07-28 |
US7649835B2 (en) | 2010-01-19 |
US7502334B2 (en) | 2009-03-10 |
US7505470B2 (en) | 2009-03-17 |
WO2005053240A2 (en) | 2005-06-09 |
EP1692823A1 (en) | 2006-08-23 |
JP2007511990A (ja) | 2007-05-10 |
JP2007511991A (ja) | 2007-05-10 |
JP2007511988A (ja) | 2007-05-10 |
US20050129038A1 (en) | 2005-06-16 |
WO2005053238A1 (en) | 2005-06-09 |
EP1687943A1 (en) | 2006-08-09 |
US20050135278A1 (en) | 2005-06-23 |
EP1698112A2 (en) | 2006-09-06 |
US20050198280A1 (en) | 2005-09-08 |
WO2005053240A3 (en) | 2005-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4944791B2 (ja) | 編組リング型ネットワーク上の自己チェックペア | |
JP2007511986A (ja) | 双方向性の編組リング型ネットワーク内における方向的な整合性の強化 | |
US7668084B2 (en) | Systems and methods for fault-tolerant high integrity data propagation using a half-duplex braided ring network | |
US7656881B2 (en) | Methods for expedited start-up and clique aggregation using self-checking node pairs on a ring network | |
JP5404938B2 (ja) | 通信装置、通信システムおよび通信方法 | |
JP2018093481A (ja) | データ伝送方法及び装置 | |
EP3668020B1 (en) | Dual fault-tolerant network using guardian interlocking | |
US20090279540A1 (en) | Cluster coupler in a time triggered network | |
US11991096B2 (en) | Unicast addressing for redundant communication paths | |
EP3965376A1 (en) | Compressed and efficient byzantine agreement | |
Driscoll et al. | Maximizing fault tolerance in a low-s WaP data network | |
US20220123864A1 (en) | A Method of Communication between Nodes in a Network | |
JP4585560B2 (ja) | ネットワーク障害検知方法、データ通信ネットワークシステムおよびノード装置 | |
Gupta et al. | Fault Tolerance Characteristics of FlexRay Central Devices | |
JP2003087277A (ja) | 通信システム及び通信制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070612 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090421 |