JP7469885B2 - 1つ以上の判定要素を用いてデータコピーのクロスチェックを実行するための装置及び方法 - Google Patents

1つ以上の判定要素を用いてデータコピーのクロスチェックを実行するための装置及び方法 Download PDF

Info

Publication number
JP7469885B2
JP7469885B2 JP2020007404A JP2020007404A JP7469885B2 JP 7469885 B2 JP7469885 B2 JP 7469885B2 JP 2020007404 A JP2020007404 A JP 2020007404A JP 2020007404 A JP2020007404 A JP 2020007404A JP 7469885 B2 JP7469885 B2 JP 7469885B2
Authority
JP
Japan
Prior art keywords
data
copy
check
copies
paths
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.)
Active
Application number
JP2020007404A
Other languages
English (en)
Other versions
JP2020145670A (ja
Inventor
キュー.ル トゥ
レイミー ショーン
ジョイ イン クリスティナ
ユーミング チング ローレンス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Boeing Co
Original Assignee
Boeing Co
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Boeing Co filed Critical Boeing Co
Publication of JP2020145670A publication Critical patent/JP2020145670A/ja
Application granted granted Critical
Publication of JP7469885B2 publication Critical patent/JP7469885B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/555Error detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)

Description

本開示は、概して、1つ以上の判定要素を用いたデータコピーのクロスチェックに関する。
ネットワークは、スイッチや他の装置を使用して、送信元装置と宛先装置との間でデータ(例えば、データパケット)をルーティングする。例えば、特定のネットワークは、スイッチを含み、当該スイッチが、送信元装置からデータを受信し、当該データを処理してから、当該データのパケット交換ルーティング(packet switched routing)を使用して宛先装置に当該データを送信する。
信頼性の高いアプリケーションにおいて、ネットワーク要素は、データの破損を検出するための機構を含みうる。例えば、いくつかのスイッチは、特定の処理を並列に実行するための複数の並列処理経路を含みうる。一例を挙げると、スイッチは、当該スイッチで受信した特定データに対して同じ機能を並列に実行するために、複数の並列処理経路を使用しうる。
場合によっては、複数の並列処理経路を使用すると、ハードウェアのコスト、及びスイッチの動作の複雑性が増す場合がある。さらに、状況によっては、複数の並列処理経路によるデータ処理が「整合しない」(ある処理経路が、他の処理経路よりも速く動作する)場合があり、結果的に時間のずれが生じる場合がある。時間のずれにより、並列処理経路の出力に差異が生じる場合があるが、これは、スイッチにデータ破損が生じていることを示している。
ある特定の例において、ネットワークスイッチ装置は、データを受信するように構成された受信ポートと、当該受信ポートに接続された複数の並列第1経路とを含む。前記第1経路の各々は、前記受信ポートから前記データの第1コピーを受信し、前記データの前記第1コピーに対してチェックを実行し、前記データの前記第1コピーの保護データを生成するように構成されている。前記ネットワークスイッチ装置は、1つ以上の第1判定要素をさらに含み、当該第1判定要素は、前記第1経路から前記データの第2コピーを受信して、前記データの前記第2コピーのクロスチェックを実行するように構成されている。前記ネットワークスイッチ装置は、処理部をさらに含み、当該処理部は、前記1つ以上の第1判定要素に応答して、前記データの前記第2コピーのうちの1つ以上を処理するように構成されている。前記ネットワークスイッチ装置は、複数の並列第2経路をさらに含み、当該第2経路の各々は、前記処理部から前記データの第3コピーを受信し、前記データの前記第3コピーに対して、複数のチェックを実行するように構成されている。前記複数のチェックは、前記保護データに基づくチェックを含む。前記ネットワークスイッチ装置は、1つ以上の第2判定要素をさらに含み、当該第2判定要素は、前記第2経路から前記データの第4コピーを受信して、前記データの前記第4コピーのクロスチェックを実行するように構成されている。前記ネットワークスイッチ装置は、送信ポートをさらに含み、当該送信ポートは、前記1つ以上の第2判定要素に応答して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を送信するように構成されている。
他の特定の例において、ネットワークスイッチを操作する方法は、受信ポートを介してデータを受信して、複数の並列第1経路に対して前記データの第1コピーを供給することを含む。前記方法は、前記第1経路の各々において、前記データの第1コピーのチェックを実行して、前記データの前記第1コピーの保護データを生成することを、さらに含む。前記方法は、前記第1経路から受信した前記データの第2コピーのクロスチェックを実行することを、さらに含む。前記方法は、前記データの前記第2コピーのクロスチェックにより、前記第2コピーのうちの少なくともいくつかが互いに一致し、且つ有効であることが示された場合、これに応答して、処理部において、互いに一致し、且つ有効である前記データの前記第2コピーのうちの少なくとも1つにおける有効データを処理することを、さらに含む。前記方法は、複数の並列第2経路に対して前記データの第3コピーを供給して、前記複数の並列第2経路の各々の第2経路において、前記データの第3コピーに対して、複数のチェックを実行することを、さらに含む。前記複数のチェックは、前記保護データに基づくチェックを含む。前記方法は、前記第2経路から受信した前記データの第4コピーのクロスチェックを実行し、前記データの前記第4コピーのクロスチェックに応答して、送信ポートを介して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を選択的に送信することを、さらに含む。
他の特定の例において、コンピュータ読取可能媒体は、工程を開始、実行、又は制御するために、プロセッサによって実行可能な命令を保存する。前記工程は、受信ポートを介してデータを受信して、複数の並列第1経路に対して前記データの第1コピーを供給することを含む。前記工程は、前記第1経路の各々において、前記データの第1コピーのチェックを実行して、前記データの前記第1コピーの保護データを生成することを、さらに含む。前記工程は、前記第1経路から受信した前記データの第2コピーのクロスチェックを実行することを、さらに含む。前記工程は、前記データの前記第2コピーのクロスチェックにより、前記第2コピーのうちの少なくともいくつかが互いに一致し、且つ有効であることが示された場合、これに応答して、処理部において、互いに一致し、且つ有効である前記データの前記第2コピーのうちの少なくとも1つにおける有効データを処理することを、さらに含む。前記工程は、複数の並列第2経路に対して前記データの第3コピーを供給して、前記複数の並列第2経路の各々の第2経路において、前記データの第3コピーに対して、複数のチェックを実行することを、さらに含む。前記複数のチェックは、前記保護データに基づくチェックを含む。前記工程は、前記第2経路から受信した前記データの第4コピーのクロスチェックを実行し、前記データの前記第4コピーのクロスチェックに応答して、送信ポートを介して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を選択的に送信することを、さらに含む。
システムの実施例のいくつかの態様を示す図であり、当該システムは、1つ以上の判定要素を用いて、データのコピーをクロスチェックするように構成されている。 図1に示すネットワークスイッチ装置等のネットワークスイッチ装置の特定の例の態様を示す図である。 図1に示すネットワークスイッチ装置等のネットワークスイッチを操作する方法の一例を示す図である。 図1のシステムを含むビークルのライフサイクルの一例を示すフローチャートである。 図3に示す方法の工程を開始、実行、又は制御するための命令を実行するように構成されたコンピューティングシステムの実施例の態様を示すブロック図である。 図1に示すシステムを含むビークルの例示的な実施形態の態様を示すブロック図である。
ある特定の実施形態において、ネットワークスイッチ装置は、当該ネットワークスイッチ装置の中間段階において単一経路(例えば、単一の経路に「統合」された複数の経路)を含む。一例において、単一の経路は、(データの完全性を検証することによって)複数の並列第1経路からのデータをクロスチェックするように構成された1つ以上の第1判定要素(first voter element)を含む。結果として、「早い段階」(例えば、ネットワークスイッチ装置の中間段階であって、且つ当該ネットワークスイッチ装置でデータ処理を完了する前)にデータのクロスチェックを実行することにより、(「遅い段階」でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができる。特定の例で説明すると、1つ以上の第1判定要素は、データのタイムスタンプ、データのサイズ、又はデータに関連するタイミング(例えば、遅延)等をチェックすることにより、検出が「容易」なデータエラーをチェックするように構成されている。
いくつかの実施形態において、単一経路は、エラーが生じにくい動作、複数の並列処理経路における同期が複雑な動作、又は複数の並列処理経路に複製するのが高価である動作等の、いくつかの特定の動作を単一処理部に「まとめる(compress)」処理部(例えば、スイッチファブリック(switch fabric))を、さらに含む。このように、単一処理部を用いることにより、信号経路全体の複製に伴うデータの不一致及び時間のずれ、並びに、費用及び複雑性を低減又は回避することができる。
図1を参照すると、システムの具体例が示されており、このシステムは、概括的に100で示されている。システム100は、ネットワークスイッチ装置102を含む。システム100は、さらに、送信ネットワーク要素104と、後続ネットワーク要素106とを含み、これらの要素は、ネットワークスイッチ装置102に接続されている。
ネットワークスイッチ装置102は、受信ポート110(例えば、物理的な受信ポート)を含む。いくつかの例において、受信ポート110は、送信ネットワーク要素104からデータ130を受信するように構成されている。いくつかの例において、送信ネットワーク要素104は、スイッチ、又は送信元システム(originator system)を含むか、これに対応している。
ネットワークスイッチ装置102は、受信ポート110に接続された複数の並列第1経路(例えば、第1経路112及び第1経路114)を含む。いくつかの例において、第1経路112、114は、重複経路(duplicate paths)である。例えば、いくつかの実施形態において、第1経路112は、第1経路114と同期しており、第1経路112、114にエラーが発生していない場合、第1経路114の出力に一致する出力を生成するように構成されている。
ネットワークスイッチ装置102は、1つ以上の第1判定要素116をさらに含む。図1の例において、1つ以上の第1判定要素116は、第1経路112、114に接続されている。ネットワークスイッチ装置102は、処理部118(例えば、スイッチファブリック)と、当該処理部118に接続された複数の並列第2経路(例えば、第2経路122及び第2経路124)とをさらに含む。いくつかの例において、処理部118は1つの処理経路を含む。この例において、処理部118は、単一経路処理部を含む。いくつかの例において、処理部118は、1つ以上の第1判定要素116によって供給されるデータ130の特定のコピーを第2経路122、124にルーティングして、データ130の特定のコピーを保存する。
いくつかの例において、第2経路122、124は、重複経路である。例えば、いくつかの実施形態において、第2経路122は、第2経路124と同期しており、第2経路122、124にエラーが発生していない場合、第2経路124の出力に一致する出力を生成するように構成されている。
ネットワークスイッチ装置102は、1つ以上の第2判定要素126と、送信ポート128(例えば、物理的な送信ポート)とをさらに含む。図1の例において、送信ポート128は、1つ以上の第2判定要素126に接続されている。いくつかの例において、送信ポート128は、データ130を後続ネットワーク要素106に転送するように構成されている。いくつかの例において、後続ネットワーク要素106は、1つ以上のスイッチ188又はエンドシステム190を含む。
受信ポート110は、動作中、1つ以上のネットワーク要素からデータを受信する。例えば、図1の例において、受信ポート110は、送信ネットワーク要素104からデータ130を受信するように構成されている。
第1経路112は、データ130の第1コピー132を受信するように構成されており、第1経路114は、データ130の第1コピー134を受信するように構成されている。第1経路112は、データ130の第1コピー132のチェック136を実行するように構成されており、第1経路114は、データ130の第1コピー134のチェック138を実行するように構成されている。第1経路112は、第1コピー132のための保護データ140を生成するように構成されており、第1経路114は、第1コピー134のための保護データ142を生成するように構成されている。具体的な例において、第1経路112は、第1コピー132に対して保護データ140を付加してデータ130の第2コピー152を生成し、第1経路114は、第1コピー134に対して保護データ142を付加してデータ130の第2コピー154を生成するように構成されている。
1つ以上の第1判定要素116は、第1経路112からデータ130の第2コピー152を受信して、第1経路114からデータ130の第2コピー154を受信するように構成されている。1つ以上の第1判定要素116は、データの第2コピー152、154のクロスチェック156を実行するように構成されている。いくつかの実施形態において、第2コピー152は、保護データ140を含み、第2コピー154は、保護データ142を含む。いくつかの実施形態において、クロスチェック156の実行は、第2コピー152、154の各々に含まれるタイムスタンプのチェック、第2コピー152、154の各々のデータサイズのチェック、第2コピー152、154の各々に関連するタイミング(例えば、遅延)のチェック、1つ以上の他のパラメータのチェック、又はこれらの組み合わせを含む。
いくつかの実施形態において、1つ以上の第1判定要素116は、クロスチェック156を実行して、第2コピー152、154が互いに一致し、且つ有効であるか否かに基づいて、合否判定を行うように構成されている。特定の例において、チェック136、138をクリアした場合、第2コピー152、154は有効であり、また、第2コピー152が第2コピー154と同じである場合、第2コピー152、154は互いに一致する。
さらに説明すると、いくつかの実施形態において、1つ以上の第1判定要素116は、第2コピー152、154が有効であり、且つ互いに一致する場合、クロスチェック156にて合格の判定をする。この場合、いくつかの例において、1つ以上の第1判定要素116は、合格判定すると、これに応答して、第2コピー152、154に対応する有効データを処理部118に送信する。他の例として、いくつかの実施形態において、1つ以上の第1判定要素116は、(例えば、異なるタイムスタンプ、異なるデータサイズやデータ内容、異なる遅延時間、1つ以上の他のパラメータ、又はこれらの組み合わせに基づいて)、第2コピー152、154が互いに異なる場合、又は第2コピー152、154が無効である場合、又はこれら両方の場合、クロスチェック156にて不合格の判定をする。この場合、いくつかの実施形態において、1つ以上の第1判定要素116は、不合格判定に応答して、データ130を「廃棄(drop)」するように構成されている。ある特定の例として、いくつかの実施形態において、ネットワークスイッチ装置102は、送信ネットワーク要素104に対して除外又はエラーメッセージ(例えば、否定応答(NACK)メッセージ)を送信するように構成されている。いくつかの例において、送信ネットワーク要素104は、除外又はエラーメッセージを受信すると、データ130を再送するように構成されている。
いくつかの実施形態において、1つ以上の第1判定要素116は、データ130の3つ以上の第2コピーに基づいて、多数決処理を実行するように構成されている。例えば、いくつかの実施形態において、ネットワークスイッチ装置102は、N個の第1経路を含み、当該第1経路は、受信ポート110及び1つ以上の第1判定要素116に接続されるとともに、データ130のN個(Nは、2よりも大きい正の整数)の第2コピーを生成するように構成されている。この場合、いくつかの実施形態において、1つ以上の第1判定要素116は、N個の第1経路から、N個の第2コピーのうちN/2よりも多い数の有効な第2コピーを受信すると、当該有効な第2コピーのうちの特定のコピーを有効データとして選択して処理部118に転送するように構成されている。
処理部118は、1つ以上の第1判定要素116に応答して、データ130の第2コピー152、154のうちの1つ以上を処理するように構成されている。ある特定の例において、処理部118は、スイッチファブリックを含み、当該スイッチファブリックは、(例えば、受信ポート110から、又は図1に示していない他のソースから、又はこの組み合わせから)データ130の複数の入力パケットを受信して、出力パケットを出力キュー(例えば、送信ポート128、又は図1に示していない他のコンポーネント、又はこの組み合わせに含まれる出力キュー)にルーティングするように構成されている。いくつかの例において、処理部118は、出力キューを特定するために、(例えば、データ130に含まれるパケットヘッダから)データ130のルーティング情報又は宛先情報を読み取るように構成されている。
第2経路122は、処理部118からデータ130の第3コピー162を受信して、データ130の第3コピー162に対して複数のチェック166、170を実行するように構成されている。複数のチェック166、170は、保護データ140又は保護データ142などの保護データに基づくチェックを含む。第2経路124は、処理部118からデータ130の第3コピー164を受信して、データ130の第3コピー164に対して複数のチェック168、172を実行するように構成されている。チェック168、172は、保護データ140又は保護データ142などの保護データに基づくチェック(例えば、エラーチェック)を含む。
1つ以上の第2判定要素126は、第2経路122からデータ130の第4コピー182を受信して、第2経路124からデータ130の第4コピー184を受信するように構成されている。1つ以上の第2判定要素126は、データ130の第4コピー182、184のクロスチェック186を実行するように構成されている。いくつかの実施形態において、クロスチェック186の実行は、第4コピー182、184の各々に含まれるタイムスタンプのチェック、第4コピー182、184の各々に関連するルートのチェック、第4コピー182、184の各々に関連するタイミング(例えば、遅延)のチェック、1つ以上の他のパラメータのチェック、又はこれらの組み合わせを含む。
いくつかの実施形態において、1つ以上の第2判定要素126は、クロスチェック186を実行して、第4コピー182、184が互いに一致し、且つ有効であるか否かに基づいて、合否判定を行うように構成されている。特定の例において、チェック166、168、170、及び172をクリアした場合、第4コピー182、184は有効であり、また、第4コピー182が第4コピー184と同じである場合、第4コピー182、184は互いに一致する。
さらに説明すると、いくつかの実施形態において、1つ以上の第2判定要素126は、第4コピー182、184が互いに一致し、且つ有効である場合、クロスチェック186にて合格の判定をする。この場合、いくつかの例において、1つ以上の第2判定要素126は、合格判定すると、これに応答して、第4コピー182、184に対応する有効データを送信ポート128に送信する。他の例として、いくつかの実施形態において、1つ以上の第2判定要素126は、第4コピー182、184が互いに異なる場合、又は第4コピー182、184が無効である場合、又はこれら両方の場合、クロスチェック186にて不合格の判定をする。この場合、いくつかの実施形態において、1つ以上の第2判定要素126は、不合格判定に応答して、データ130を「廃棄」するように構成されている。ある特定の例として、いくつかの実施形態において、ネットワークスイッチ装置102は、送信ネットワーク要素104に対して除外又はエラーメッセージ(例えば、NACKメッセージ)を送信するように構成されている。いくつかの例において、送信ネットワーク要素104は、除外又はエラーメッセージを受信すると、データ130を再送するように構成されている。
いくつかの実施形態において、1つ以上の第2判定要素126は、データ130の3つ以上の第4コピーに基づいて、多数決処理を実行するように構成されている。例えば、いくつかの実施形態において、ネットワークスイッチ装置102は、M個の第2経路を含み、当該第2経路は、処理部118及び1つ以上の第2判定要素126に接続されるとともに、データ130のM個(Mは、2よりも大きい正の整数)の第4コピーを生成するように構成されている。この場合、いくつかの実施形態において、1つ以上の第2判定要素126は、M個の第2経路から、M個の第4コピーのうちM/2よりも多い数の有効な第4コピーを受信すると、当該有効な第4コピーのうちの特定のコピーを有効データとして選択して送信ポート128に転送するように構成されている。
送信ポート128は、1つ以上の第2判定要素126に応答して、後続ネットワーク要素106にデータ130の第4コピー182、184のうちの1つ以上を送信するように構成されている。例えば、いくつかの実施形態において、送信ポート128は、1つ以上の第2判定要素126と、後続ネットワーク要素106とに接続された物理インターフェースを含む。
図1の例は、2つの第1経路112、114を示しているが、他の例においては、受信ポート110は、3つ以上の第1経路に接続されてもよい。これに代えて、或いはこれに加えて、図1の例は、2つの第2経路122、124を示しているが、他の例において、処理部118は、3つ以上の第2経路に接続されてもよい。さらに説明すると、いくつかの例において、ネットワークスイッチ装置102は、異なる数の第1経路と第2経路とを含む。例えば、特定の実施形態において、ネットワークスイッチ装置102は、N個の第1経路とM個の第2経路とを含み、この場合において、N≧2、M≧2、且つ、N≠Mである。さらに、判定要素116、126のいくつかの態様を多数決処理に関連させて説明したが、他の実施形態においては、大多数決処理などの他の技術を用いることも可能である。いくつかの例において、ネットワークスイッチ装置102は、複数の受信ポート110を含む(例えば、複数の受信ポート110の各々は、処理部118に「集まる」1組の並列経路のうちの対応する経路に接続されている)。これに代えて、或いはこれに加えて、いくつかの実施形態において、ネットワークスイッチ装置102は、複数の送信ポート128を含む(例えば、複数の送信ポート128の各々は、処理部118から「分岐する」1組の並列経路のうちの対応する経路に接続されている)。
さらに、図1の例は、2組の並列経路(第1経路112、114、及び第2経路122、124)を示しているが、他の実施形態において、ネットワークスイッチ装置102は、1組の並列経路、3組の並列経路、又はそれ以外の組数の並列経路などの、異なる組数の並列経路を有しうる。ある特定の例として、ネットワークスイッチ装置102は、3組の並列経路と、2組の処理部とを含みうる。
さらに、いくつかの実施形態において、(例えば、単一の処理部118へと統合する代わりに)複数の並列経路を「統合」して並列経路の数を減らしてもよい。いくつかの例で説明すると、(例えば、単一の処理部118へと統合する代わりに)3つの並列な第1経路を「統合」して2つの並列経路にしてもよい。これに代えて、或いはこれに加えて、2つの並列経路を「拡張」して3つの並列第2経路にしてもよい。いくつかの実施形態において、(単一の処理部へと統合する代わりに)特定の数の並列経路を統合して並列経路の数を減らすことにより、(多くの並列処理を実行する場合と比較して)装置の寸法や複雑性を低減することができ、且つ、単一の処理部を使用する場合と比較して(例えば、より少ない数の並列経路の出力でデータの照合及び検証を実行することにより)、より少ない数の並列経路においてデータの完全性又は冗長性を実現することができる。
図1に示す1つ以上の態様は、ネットワークスイッチ装置の動作を向上させることができる。例えば、「早い段階」(例えば、ネットワークスイッチ装置102の中間段階であって、且つ当該ネットワークスイッチ装置102でデータ処理を完了する前)にクロスチェック156を実行することにより、(「遅い段階」でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができる。ある特定の例にて説明すると、1つ以上の第1判定要素116は、上記例で説明したように、第2コピー152、154のタイムスタンプ、第2コピー152、154のデータサイズ、又は第2コピー152、154に関連するタイミング(例えば、遅延)等をチェックすることにより、検出が「容易」なデータエラーをチェックするように構成されている。この結果、(「遅い」段階でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができ、システム100のデータ処理能力(data throughput)を向上させることができる。
さらに、いくつかの例において、(第1経路112、114及び第2経路122、124と比較して)処理部118において並列処理を減らすことにより、(第1経路112及び第1経路114に処理部118の機能を含める場合と比較して)複雑性及びコストを低減することができる。いくつかの実施形態において、(処理部118において冗長性が低下すると、並列処理により与えられる保護データが少なくなるため)保護データ140及び保護データ142を用いることにより、処理部118による処理中に生じるエラーを検出することができる。
図2は、ネットワークスイッチ装置102の実施例の特定の態様を示す。図2に示す例において、第1経路112は、データ130の第1コピー132にタイムスタンプ212を付与するように構成されたタイムスタンプ要素202を含む。図2において、第1経路112は、データ130の第1コピー132にサイズ制限214を課すように構成されたフレームフィルタ204をさらに含む。図2に示す例において、第1経路112は、データ130の第1コピー132に帯域幅制限216を課すように構成されたフレームポリシング要素(frame policing element)206と、保護データ140を生成するように構成されたエラー検出生成要素208とを、さらに含む。特定の例において、保護データ140は、処理部118における処理後の完全性を検証するために用いられる、データ130の第1コピー132及びタイムスタンプ212に基づく巡回冗長チェック(CRC)データ218を含む。いくつかの例において、チェック136は、フレームフィルタ204によって(例えば、第1コピー132がサイズ制限214を満たしているか否かを確認することにより)実行されるか、フレームポリシング要素206によって(例えば、第1コピー132が帯域幅制限216を満たしているか否かを確認することにより)実行されるか、或いは、この両方によって実行される。
図2に示す例において、第1経路114は、データ130の第1コピー134にタイムスタンプ232を付与するように構成されたタイムスタンプ要素222を含む。図2において、第1経路114は、データ130の第1コピー134にサイズ制限234を課すように構成されたフレームフィルタ224をさらに含む。図2に示す例において、第1経路114は、データ130の第1コピー134に帯域幅制限236を課すように構成されたフレームポリシング要素226と、保護データ142を生成するように構成されたエラー検出生成要素228とを、さらに含む。特定の例において、保護データ142は、処理部118における処理後の完全性を検証するために用いられる、データ130の第1コピー134及びタイムスタンプ232に基づく巡回冗長チェック(CRC)データ238を含む。いくつかの例において、チェック138は、フレームフィルタ224によって第1コピー134がサイズ制限234を満たしているか否かを確認すること、フレームポリシング要素226によって第1コピー134が帯域幅制限236を満たしているか否かを確認すること、又はこの両方を含む。
いくつかの例において、1つ以上の第1判定要素116は、チェック136、138の結果220、240の比較、第1経路112、114の各々のデータ130の第2コピー152、154の比較、第1経路112、114の各々のタイムスタンプ212、232の比較、第1経路112、114の各々で生成された保護データ140、142の比較、又はこれらの組み合わせを実行することによって、データ130の第2コピー152、154のうちの1つ以上の有効性を確認するように構成されている。ある特定の例として、いくつかの実施形態において、1つ以上の第1判定要素116は、第2コピー152と第2コピー154とが一致するとの判定に基づいて、またさらに、第2コピー152、154が、サイズ制限214、234を満たすとの判定、第2コピー152、154が、帯域幅制限216、236を満たすとの判定、或いは、これらの組み合わせに基づいて、第2コピー152、154の有効性を確認するように構成されている。いくつかの実施形態において、1つ以上の第1判定要素116は、(例えば、クロスチェック156により)互いに一致し、且つ有効であると判定された第2コピー152、154のうちの少なくとも1つを、有効データ242として、処理部に送信するように構成されている。
具体的な例において、処理部118は、有効データ242にルーティング情報244を埋め込み、ルーティング情報244が埋め込まれた有効データ242を(例えば、送信ポート128に関連する出力キューに)保存するように構成されている。いくつかの例において、有効データ242は、データ130の第3コピー162、164に対応している。
図2に示す例において、第2経路122は、エラー検出チェック要素252を含み、当該要素は、処理部118における処理及び保存の後におけるデータ130の第3コピー162のデータ完全性及びタイムスタンプ完全性を検証するために、保護データ140又は保護データ142を用いて巡回冗長チェック(CRC)262を実行するように構成されている。図2はまた、第2経路122が、ルートチェック要素254を含むことを示しており、当該要素は、データ130の第3コピー162に関連付けられたルーティング情報244をチェックするように構成されている。図2において、第2経路122は、出力キューチェック要素256を含み、当該要素は、出力キュー(例えば、第2経路122の出力キュー260)におけるデータ130の第3コピー162の位置266をチェックするように構成されている。図2に示す例において、第2経路122は、遅延チェック要素258をさらに含み、当該要素は、データ130の第3コピー162に関連付けられたタイムスタンプ(例えば、タイムスタンプ212、タイムスタンプ232、又は他のタイムスタンプ)に基づいて、時間遅延268をチェックするように構成されている。いくつかの例において、チェック166、170は、(例えば、CRC262に基づいて)エラー検出チェック要素252によって、又はルートチェック要素254によって、又は(例えば、位置266に基づいて)出力キューチェック要素256によって、又は(時間遅延268に基づいて)遅延チェック要素258によって、又はこれらの組み合わせによって、実行される。ある特定の例として、いくつかの実施形態において、チェック166は、(例えば、CRC262に基づいて)エラー検出チェック要素252によって実行され、チェック170は、(時間遅延268に基づいて)遅延チェック要素258によって実行される。
図2に示す例において、第2経路124は、エラー検出チェック要素272を含み、当該要素は、処理部118における処理及び保存の後におけるデータ130の第3コピー164のデータ完全性及びタイムスタンプ完全性を検証するために、保護データ140を用いて巡回冗長チェック(CRC)282を実行するように構成されている。図2はまた、第2経路124が、ルートチェック要素274を含むことを示しており、当該要素は、データ130の第3コピー164に関連付けられたルーティング情報244をチェックするように構成されている。図2において、第2経路124は、出力キューチェック要素276を含み、当該要素は、出力キュー(例えば、第2経路124の出力キュー280)におけるデータ130の第3コピー164の位置286をチェックするように構成されている。図2に示す例において、第2経路124は、遅延チェック要素278をさらに含み、当該要素は、データ130の第3コピー164に関連付けられたタイムスタンプ(例えば、タイムスタンプ212、タイムスタンプ232、又は他のタイムスタンプ)に基づいて、時間遅延288をチェックするように構成されている。いくつかの例において、チェック168、172は、(例えば、CRC282に基づいて)エラー検出チェック要素272によって、又はルートチェック要素274によって、又は(例えば、位置286に基づいて)出力キューチェック要素276によって、又は(時間遅延288に基づいて)遅延チェック要素278によって、又はこれらの組み合わせによって、実行される。ある特定の例として、いくつかの実施形態において、チェック168は、(例えば、CRC282に基づいて)エラー検出チェック要素272によって実行され、チェック172は、(時間遅延288に基づいて)遅延チェック要素278によって実行される。
いくつかの例において、1つ以上の第2判定要素126は、さらに、巡回冗長チェック262、282、位置266、286、時間遅延268、288、及び(例えば、クロスチェック186を用いて)少なくともデータ130の第4コピー182、184のうちの少なくとも大部分が互いに一致しているか否か、に少なくとも部分的に基づいて、データ130の第4コピー182、184のうちの1つの有効性を確認するように構成されている。
図2に示す1つ以上の態様により、ネットワークスイッチ装置の動作を向上させることができる。例えば、「早い段階」(例えば、ネットワークスイッチ装置102の中間段階であって、且つ当該ネットワークスイッチ装置102でデータ処理を完了する前)にクロスチェック156を実行することにより、(「遅い段階」でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができる。ある特定の例にて説明すると、1つ以上の第1判定要素116は、上記例で説明したように、第2コピー152、154のタイムスタンプ212、232のチェック、第2コピー152、154がサイズ制限214に従っているか否かのチェック、第2コピー152、154が帯域幅制限216、236に従っているか否かのチェック、又は保護データ140、142のチェック等を実行することにより、検出が「容易」なデータエラーをチェックするように構成されている。この結果、(「遅い」段階でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができ、システム100のデータ処理能力を向上させることができる。
さらに、いくつかの例において、(第1経路112、114及び第2経路122、124と比較して)、処理部118において並列処理を減らすことにより、(第1経路112及び第1経路114に処理部118の機能を含める場合と比較して)複雑性及びコストを低減することができる。いくつかの実施形態において、(処理部118において冗長性が低下すると、並列処理により与えられる保護データが少なくなるため)保護データ140及び保護データ142を用いることにより、処理部118による処理中に生じるエラーを検出することができる。
図3を参照すると、ネットワークスイッチを操作する方法の具体例が示されており、この方法は、概括的に300で示されている。いくつかの実施形態において、方法300は、ネットワークスイッチ装置102を操作するために実行される。
方法300は、302において、受信ポートを介してデータを受信することを含む。特定の例において、送信ネットワーク要素からのデータは、受信ポートにおいて受信される。いくつかの例にて説明すると、ネットワークスイッチ装置102は、受信ポート110を用いてデータ130を受信するように構成されている。
方法300は、304において、複数の並列第1経路に対してデータの第1コピーを供給することを、さらに含む。ある特定の例において、受信ポート110は、第1経路112、114に対してデータ130の第1コピー132、134を供給するように構成されている。
方法300は、306において、第1経路の各々において、データの第1コピーのチェックを実行して、当該データの第1コピーの保護データを生成することを、さらに含む。ある特定の例において、チェックの実行は、第1経路112によるチェック136の実行と、第1経路114によるチェック138の実行とを含む。ある特定の例において、保護データの生成は、第1経路112による保護データ140の生成と、第1経路114による保護データ142の生成とを含む。特定の例において、保護データの生成は、CRCデータ218、CRCデータ238、又はこれらの両方を生成することを含む。これに代えて、或いはこれに加えて、いくつかの例において、チェックの実行は、図2を参照して説明した1つ以上の動作を実行することを含む。
方法300は、308において、第1経路から受信したデータの第2コピーのクロスチェックを実行することを、さらに含む。ある特定の例において、第2コピーのクロスチェックの実行は、1つ以上の第1判定要素116によってクロスチェック156を実行することを含む。
方法300は、310において、データの第2コピーのクロスチェックにより、第2コピーのうちの少なくともいくつかが互いに一致し、且つ有効であることが示された場合、これに応答して、処理部において、互いに一致し、且つ有効であるデータの第2コピーのうちの少なくとも1つである有効データを処理することを、さらに含む。ある特定の例において、処理部118は、第2コピー152、154のうちの少なくとも1つを有効データ242として処理するように構成されている。いくつかの例において、有効データの処理は、ルーティング情報(例えば、ルーティング情報244)を生成して、当該情報を有効データに埋め込むことを含む。いくつかの例において、有効データの処理は、ネットワークスイッチの単一の処理部において実行される(例えば、処理部118は、ネットワークスイッチ装置102の単一の処理部に対応する)。
方法300は、312において、複数の並列第2経路に対してデータの第3コピーを供給することを、さらに含む。ある特定の例において、処理部118は、第2経路122、124に対して、第3コピー162、164を供給するように構成されている。
方法300は、314において、複数の並列第2経路の各々の第2経路において、データの第3コピーに対して複数のチェックを実行することをさらに含み、当該チェックは、保護データに基づくチェックを含む。ある特定の例において、複数のチェックの実行は、保護データ140又は保護データ142に基づくチェック(例えば、CRCチェック又は他のエラー検出チェック)を含むチェック166、168、170、172のうちのいずれかを実行することを含む。これに代えて、或いはこれに加えて、いくつかの例において、複数のチェックの実行は、図2を参照して説明した1つ以上の動作を実行することを含む。
方法300は、316において、第2経路から受信したデータの第4コピーのクロスチェックを実行することを、さらに含む。ある特定の例において、データの第4コピーのクロスチェックを実行することは、1つ以上の第2判定要素126によってクロスチェック186を実行することを含む。
方法300は、318において、データの第4コピーのクロスチェックに応答して、送信ポートを介して、後続ネットワーク要素にデータの第4コピーのうちの1つ以上を選択的に送信することを、さらに含む。ある特定の例において、データ130は、送信ポート128によって後続ネットワーク要素106に送信される。
図3に示す方法300の1つ以上の態様により、ネットワークスイッチ装置の動作を向上させることができる。例えば、「早い段階」(例えば、ネットワークスイッチ装置102の中間段階であって、且つ当該ネットワークスイッチ装置102でデータ処理を完了する前)にクロスチェックを実行することにより、(「遅い段階」でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができる。この結果、(「遅い」段階でデータのクロスチェックを実行する場合と比較して)特定のデータエラーをより迅速に検出することができ、システムのデータ処理能力を向上させることができる。
さらに、いくつかの例において、単一の処理部(例えば、処理部118)において並列処理を減らすことにより、(並列処理経路を用いた処理部を実施する場合と比較して)複雑性及びコストを低減することができる。いくつかの実施形態において、(処理部において冗長性が低下すると、並列処理により与えられる保護データが少なくなるため)、エラー検出情報(例えば、保護データ140及び保護データ142)を用いることにより、処理部による処理中に生じるエラーを検出することができる。
図4を参照すると、システム100を含むビークル(例えば、航空機)のライフサイクルの例を示すフローチャートが示されており、このフローチャートは、概括的に400で示されている。生産前の工程において、方法400は、402において、ビークルの仕様決定及び設計を含む。ある特定の例において、ビークルの仕様決定及び設計は、システム100の1つ以上の特性を決定することを含む。ビークルの仕様決定及び設計において、方法400は、システム100の1つ以上のコンポーネント等の、コンポーネントを指定することを含む。いくつかの例において、システム100の仕様決定及び設計は、イーサネットに基づく通信プロトコル、航空機データネットワーク(ADN)通信プロトコル、1つ以上の他の通信プロトコル、又はこれらの組み合わせ等の通信プロトコルに従って、少なくとも部分的に実行される。
404において、方法400は、材料調達を含む。例えば、方法400は、(例えば、システム100の1つ以上のコンポーネントの材料を調達することにより)ビークルの材料を調達することを含みうる。
生産中、方法400は、406において、ビークルの部品及び小組立品の製造を含み、408において、ビークルのシステムインテグレーションを含む。いくつかの実施形態において、方法400のシステムインテグレーションは、ビークルにシステム100を組み込むことを含み、これは、例えば、当該システム100をビークルの通信システムに組み込むことによって、或いは、ビークルの制御システムに組み込むことによって、実現することができる。
方法400は、410において、ビークルの認証及び納品を含み、412において、ビークルを就航させることを含む。いくつかの実施形態において、ビークルの認証は、システム100の動作を検査することを含む。
就航期間中、ビークルは、定期的な整備及び保守(これには、改良、再構成、改修等も含まれうる)のスケジュールに組み込まれる。414において、方法400は、ビークルに対して整備及び保守を実行することを含む。説明すると、いくつかの例において、整備及び保守の実行は、システム100のコンポーネントの検査及び保守を含みうる。
図5は、ネットワークスイッチ装置102の特定の例を含む、コンピューティング環境500を示すブロック図である。図5の例において、ネットワークスイッチ装置102は、本開示による、コンピュータで実施される方法の実施形態、及びコンピュータで実行可能なプログラム命令(又はコード)の実施形態をサポートするように構成されている。いくつかの例において、ネットワークスイッチ装置102、又はその一部は、図3に示す方法300の工程等の、本明細書で説明する工程を開始、実行、又は制御するために、命令を実行する。
ネットワークスイッチ装置102は、プロセッサ520を含む。プロセッサ520は、メモリ530(例えば、システムメモリ、又は他のメモリ)、1つ以上の記憶装置540、1つ以上の入出力インターフェース550、通信インターフェース526、又はこれらの組み合わせと通信するように構成されている。
特定の実施形態に応じて、メモリ530は、揮発性メモリデバイス(例えば、ランダムアクセスメモリ(RAM)デバイス)、不揮発性メモリデバイス(例えば、読出専用メモリ(ROM)、プログラマブル読出専用メモリ、又はフラッシュメモリ)、1つ以上の他のメモリデバイス、又はこれらの組み合わせを含む。図5において、メモリ530は、オペレーティングシステム532を記憶しており、このオペレーティングシステムは、ネットワークスイッチ装置102を起動するためのベーシックな入出力システムと、ネットワークスイッチ装置102がユーザ、他のプログラム、及び他の装置と対話することを可能にするためのフルオペレーティングシステムとを含みうる。図5に示す具体例には、メモリ530が、プロセッサ520によって実行可能な命令534を記憶していることが示されている。いくつかの例において、命令534は、例えば、メモリ530、1つ以上の記憶装置540、1つ以上の入出力インターフェース550、通信インターフェース526、又はこれらの組み合わせ等の、ネットワークスイッチ装置102のコンポーネント間で信号を送信するために、プロセッサ520によって実行可能である。
ある特定の例において、命令534は、データ送受信命令536を含む。いくつかの例において、データ送受信命令536は、図3に示す方法300の1つ以上の工程を開始、制御、又は実行するために、プロセッサ520によって実行可能である。ある特定の例として、いくつかの実施形態において、プロセッサ520は、後続ネットワーク要素106へのデータ130の送信を開始するために、データ送受信命令536を実行するように構成されている。これに代えて、或いはこれに加えて、いくつかの例において、プロセッサ520は、送信ネットワーク要素104からのデータ130(又は、他のデータ)の受信を制御するために、データ送受信命令536を実行するように構成されている。これに代えて、或いはこれに加えて、いくつかの実施形態において、送信ネットワーク要素104又は後続ネットワーク要素106のうちの一方又は両方は、プロセッサ(例えば、プロセッサ520、又は他のプロセッサ)、メモリ(例えば、メモリ530、又は他のメモリ)、又はこれらの組み合わせを含む。
さらに説明すると、ある特定の例において、プロセッサ520は、受信ポート110、第1経路112、114、1つ以上の第1判定要素116、処理部118、第2経路122、124、1つ以上の第2判定要素126、送信ポート128、又はこれらの組み合わせに関連する1つ以上の動作等の、本明細書で説明する1つ以上の動作を実行するために、データ送受信命令536を実行するように構成されている。ある特定の例として、いくつかの実施形態において、ネットワークスイッチ装置102は、プロセッサを含み、当該プロセッサは、(例えば、データ130のコピーを比較するための1つ以上の比較命令を実行することによって)チェック136、138、クロスチェック156、チェック166、168、170、及び172、又はクロスチェック186のうちのいずれかを実行するために、データ送受信命令536を実行するように構成されている。この例においては、判定要素116、126のいずれも、データコピーが互いに一致し、且つ有効であるか否かを判定するために、プロセッサによって実行可能な命令(例えば、ファームウェア、又は他の命令)に対応することができる。
これに代えて、或いはこれに加えて、いくつかの例において、本明細書で説明する1つ以上の動作は、1つ以上のハードウェアコンポーネント又は回路を用いて実行される。具体的には、当該動作は、例えば、比較回路を用いて、チェック136、138、クロスチェック156、チェック166、168、170、及び172、又はクロスチェック186のうちのいずれかを実行することにより(例えば、比較回路を用いて、データ130のコピーを比較することにより)実行される。この場合、判定要素116、126のいずれも、データコピーが互いに一致し、且つ有効であるか否かを判定するように構成された1つ以上のハードウェア回路(例えば、1つ以上の比較回路)を含みうる。
いくつかの実施形態において、1つ以上の記憶装置540は、磁気ディスク、光ディスク、又はフラッシュメモリ等の不揮発性記憶デバイスを含む。いくつかの例において、1つ以上の記憶装置540は、着脱型メモリデバイス、非着脱型メモリデバイス、又はこれらの両方を含む。場合によっては、1つ以上の記憶装置540は、オペレーティングシステム、オペレーティングシステムの画像、アプリケーション、及びプログラムデータを記憶するように構成されている。特定の例において、メモリ530、1つ以上の記憶装置540、又はこれらの両方は、有形のコンピュータ読取可能媒体を含む。
図5に示す例において、プロセッサ520は、1つ以上の入出力インターフェース550と通信するように構成されており、これによって、ネットワークスイッチ装置102は、1つ以上の入出力装置570と通信してユーザと容易に対話することができる。いくつかの実施形態において、1つ以上の入出力インターフェース550は、シリアルインターフェース(例えば、ユニバーサルシリアルバス(USB)インターフェース、又は電気電子技術者協会(IEEE)1394インターフェース)、パラレルインターフェース、ディスプレイアダプタ、オーディオアダプタ、1つ以上の他のインターフェース、又はこれらの組み合わせを含む。いくつかの例において、1つ以上の入出力装置570は、キーボード、ポインティングデバイス、ディスプレイ、スピーカ、マイク、タッチスクリーン、1つ以上の他のデバイス、又はこれらの組み合わせを含む。いくつかの例において、プロセッサ520は、1つ以上の入出力インターフェース550を介して受信するユーザ入力に基づいて、対話イベントを検出するように構成されている。
ある特定の例において、プロセッサ520は、通信インターフェース526を用いて、1つ以上の装置580と通信する(又は、当該装置に対して信号を送信する)ように構成されている。いくつかの実施形態において、通信インターフェース526は、1つ以上の有線インターフェース(例えば、イーサネットインターフェース)、IEEE802.11通信プロトコルに準拠する1つ以上の無線インターフェース、1つ以上の他の無線インターフェース、1つ以上の光インターフェース、又は1つ以上の他のネットワークインターフェースを含むか、或いはこれらの組み合わせを含む。いくつかの例において、1つ以上の装置580は、ホストコンピュータ、サーバ、ワークステーション、1つ以上の他のコンピューティングデバイス、又はこれらの組み合わせを含む。
いくつかの例において、プロセッサ520は、システム100を用いて、データ(例えば、データ130、又は他のデータ)を送信又は受信するように構成されている。例えば、いくつかの実施形態において、システム100は、通信インターフェース526を介してプロセッサ520に接続されている。いくつかの実施形態において、プロセッサ520は、図3に示す方法300の工程を開始、実行、又は制御するように構成されている。
本開示の態様は、図6に示すビークル600の例に関連させて説明することができる。いくつかの例において、ビークル600は、航空機であるか、或いはこれに対応している。
図6に示すように、ビークル600は、複数のシステム620及び内装622を有する機体618を含む。複数のシステム620の例としては、推進系624、環境系628、油圧系630、及びシステム100のうちの1つ以上が挙げられる。また、その他のシステムをいくつ含んでもよい。
いくつかの実施形態において、システム100は、例えば、ビークル600の通信システムや制御システム等の、システム620における特定のシステムに含まれる。いくつかの例において、システム100は、イーサネット・ネットワーク(例えば、ビークル600のイーサネット系通信システム)、ビークル600の航空機データネットワーク(ADN)、ビークル600の1つ以上の他のシステム、又はこれらの組み合わせに含まれる。
本明細書で説明した実施例は、様々な実施形態の構成を概略的に理解させることを目的としている。これらの説明は、本開示の構成又は方法を用いた装置及びシステムの要素及び特徴をすべて網羅することを意図したものではない。当業者が本開示を検討すれば、他にも多くの実施態様が明らかであろう。他の実施態様も本開示において利用及び導出可能であり、本開示の範囲から逸脱することなく、構造的及び論理的な代替及び変更が可能である。例えば、方法における各種工程は、図示した以外の順序で実行することも可能であり、また、1つ以上の方法工程を省くことも可能である。したがって、本開示及び図面は、説明的なものであって、限定を課すものではないと理解すべきである。
さらに、本明細書では具体的な実施例について説明及び記載したが、開示した具体的な実施態様を、同一又は類似の結果を得るよう後から設計された構成に置き換え可能であることは理解されよう。本開示は、様々な実施態様について後からなされたいかなる改変、或いは変形をも全て包含することを意図している。本開示の記載を検討すれば、当業者には、上記実施態様の組み合わせ、及び本明細書に明示されていない他の実施形態が明らかであろう。
本開示の要約書は、請求項の範囲や意味を解釈又は限定するのに用いられるものではないとの理解に基づき提出される。また、上述の詳細な説明において、本開示の簡易化を目的として様々な特徴を1つの実施態様にまとめたり、1つの実施態様において説明したりしている場合がある。記載した実施例は、あくまでも説明を目的としており、本開示を限定するものではない。また、本開示の原理に基づいて、多くの改変及び変形が可能であることは理解されよう。添付の請求の範囲に反映されるように、請求の範囲の要旨は、開示した実施例の全ての特徴のうちの一部に関連する場合もある。したがって、本開示の範囲は、添付の請求の範囲及びその均等物により定義される。

Claims (18)

  1. データを受信するように構成された受信ポートと、
    前記受信ポートに接続されるとともに、各々が、前記受信ポートから前記データの第1コピーを受信し、前記データの前記第1コピーに対してチェックを実行し、前記データの前記第1コピーのための保護データを生成するように構成された複数の並列第1経路と、
    前記第1経路から前記データの複数の第2コピーを受信して、前記データの前記複数の第2コピーの相互のクロスチェックを実行するように構成された1つ以上の第1判定要素と、
    前記1つ以上の第1判定要素に応答して、前記データの前記第2コピーのうちの1つ以上を処理するように構成された処理部と、
    前記処理部に接続されるとともに、各々が、前記処理部から前記データの第3コピーを受信し、前記データの前記第3コピーに対して、前記保護データに基づくチェックを含む複数のチェックを実行するように構成された複数の並列第2経路と、
    前記第2経路から前記データの複数の第4コピーを受信して、前記データの前記複数の第4コピーの相互のクロスチェックを実行するように構成された1つ以上の第2判定要素と、
    前記1つ以上の第2判定要素に応答して、後続ネットワーク要素に前記データの前記複数の第4コピーのうちの1つ以上を送信するように構成された送信ポートと、を含
    前記第1経路の各々は、前記データの前記第1コピーにタイムスタンプを付与するように構成されたタイムスタンプ要素と、前記保護データを生成するように構成されたエラー検出生成要素と、を含み、
    前記保護データは、前記処理部における処理後の完全性を検証するために用いられる、前記データの前記第1コピー及び前記タイムスタンプに基づく巡回冗長チェック(CRC)データを含む、ネットワークスイッチ装置。
  2. 前記受信ポートは、送信ネットワーク要素から前記データを受信するように構成されており、前記送信ポートは、前記データを前記後続ネットワーク要素に転送するように構成されている、請求項1に記載のネットワークスイッチ装置。
  3. 前記後続ネットワーク要素は、スイッチ又はエンドシステムを含む、請求項1又は2に記載のネットワークスイッチ装置。
  4. 前記処理部は、単一経路処理部である、請求項1~3のいずれかに記載のネットワークスイッチ装置。
  5. 前記処理部は、さらに、前記第2経路に前記データをルーティングするとともに、前記データを保存するように構成されている、請求項4に記載のネットワークスイッチ装置。
  6. 前記第1経路の各々は
    記データの前記第1コピーにサイズ制限を課すように構成されたフレームフィルタと、
    前記データの前記第1コピーに帯域幅制限を課すように構成されたフレームポリシング要素と
    をさらに含む、請求項1~5のいずれかに記載のネットワークスイッチ装置。
  7. 前記1つ以上の第1判定要素は、さらに、
    前記第1経路の各々における前記チェックの結果の比較、前記第1経路の各々の前記データの前記第2コピーの比較、前記第1経路の各々のタイムスタンプの比較、前記第1経路の各々で生成された前記保護データの比較、又は、これらの組み合わせを実行することによって、前記データの前記第2コピーのうちの1つ以上の有効性を確認し、
    互いに一致し、且つ有効であると判定された前記第2コピーのうちの少なくとも1つを、有効データとして、前記処理部に送信するように構成されている、請求項1~6のいずれかに記載のネットワークスイッチ装置。
  8. データを受信するように構成された受信ポートと、
    前記受信ポートに接続されるとともに、各々が、前記受信ポートから前記データの第1コピーを受信し、前記データの前記第1コピーに対してチェックを実行し、前記データの前記第1コピーのための保護データを生成するように構成された複数の並列第1経路と、
    前記第1経路から前記データの第2コピーを受信して、前記データの前記第2コピーのクロスチェックを実行するように構成された1つ以上の第1判定要素と、
    前記1つ以上の第1判定要素に応答して、前記データの前記第2コピーのうちの1つ以上を処理するように構成された処理部と、
    前記処理部に接続されるとともに、各々が、前記処理部から前記データの第3コピーを受信し、前記データの前記第3コピーに対して、前記保護データに基づくチェックを含む複数のチェックを実行するように構成された複数の並列第2経路と、
    前記第2経路から前記データの第4コピーを受信して、前記データの前記第4コピーのクロスチェックを実行するように構成された1つ以上の第2判定要素と、
    前記1つ以上の第2判定要素に応答して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を送信するように構成された送信ポートと、を含み、
    前記1つ以上の第1判定要素は、さらに、
    前記第1経路の各々における前記チェックの結果の比較、前記第1経路の各々の前記データの前記第2コピーの比較、前記第1経路の各々のタイムスタンプの比較、前記第1経路の各々で生成された前記保護データの比較、又は、これらの組み合わせを実行することによって、前記データの前記第2コピーのうちの1つ以上の有効性を確認し、
    互いに一致し、且つ有効であると判定された前記第2コピーのうちの少なくとも1つを、有効データとして、前記処理部に送信するように構成されており、
    前記処理部は、さらに、前記有効データにルーティング情報を埋め込み、前記ルーティング情報が埋め込まれた前記有効データを保存するように構成されている、ネットワークスイッチ装置。
  9. データを受信するように構成された受信ポートと、
    前記受信ポートに接続されるとともに、各々が、前記受信ポートから前記データの第1コピーを受信し、前記データの前記第1コピーに対してチェックを実行し、前記データの前記第1コピーのための保護データを生成するように構成された複数の並列第1経路と、
    前記第1経路から前記データの第2コピーを受信して、前記データの前記第2コピーのクロスチェックを実行するように構成された1つ以上の第1判定要素と、
    前記1つ以上の第1判定要素に応答して、前記データの前記第2コピーのうちの1つ以上を処理するように構成された処理部と、
    前記処理部に接続されるとともに、各々が、前記処理部から前記データの第3コピーを受信し、前記データの前記第3コピーに対して、前記保護データに基づくチェックを含む複数のチェックを実行するように構成された複数の並列第2経路と、
    前記第2経路から前記データの第4コピーを受信して、前記データの前記第4コピーのクロスチェックを実行するように構成された1つ以上の第2判定要素と、
    前記1つ以上の第2判定要素に応答して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を送信するように構成された送信ポートと、を含み、
    前記第2経路の各々は、
    前記処理部における処理及び保存の後における前記データの前記第3コピーのデータ完全性及びタイムスタンプ完全性を検証するために、前記保護データを用いて巡回冗長チェックを実行するように構成されたエラー検出チェック要素と、
    前記データの前記第3コピーに関連付けられたルーティング情報をチェックするように構成されたルートチェック要素と、
    出力キューにおける前記データの前記第3コピーの位置をチェックするように構成された出力キューチェック要素と、
    前記データの前記第3コピーに関連付けられたタイムスタンプに基づいて、時間遅延をチェックするように構成された遅延チェック要素と、を含む、ネットワークスイッチ装置。
  10. 前記1つ以上の第2判定要素は、さらに、前記巡回冗長チェック、前記出力キューにおける前記位置、前記第2経路の各々の時間遅延、及び前記データの前記第4コピーのうちの少なくとも大部分が互いに一致しているか否か、に少なくとも部分的に基づいて、前記データの前記第4コピーのうちの1つ以上の有効性を確認するように構成されている、請求項9に記載のネットワークスイッチ装置。
  11. ネットワークスイッチを操作する方法であって、
    受信ポートを介してデータを受信することと、
    複数の並列第1経路に対して前記データの第1コピーを供給することと、
    前記第1経路の各々において、前記データの第1コピーのチェックを実行して、前記データの前記第1コピーの保護データを生成することと、
    前記第1経路から受信した前記データの第2コピーのクロスチェックを実行することと、
    前記データの前記第2コピーのクロスチェックにより、前記第2コピーのうちの少なくともいくつかが互いに一致し、且つ有効であることが示された場合、これに応答して、処理部において、互いに一致し、且つ有効である前記データの前記第2コピーのうちの少なくとも1つにおける有効データを処理することと、
    複数の並列第2経路に対して前記データの第3コピーを供給することと、
    前記複数の並列第2経路の各々において、前記データの第3コピーに対して、前記保護データに基づくチェックを含む複数のチェックを実行することと、
    前記第2経路から受信した前記データの第4コピーのクロスチェックを実行することと、
    前記データの前記第4コピーのクロスチェックに応答して、送信ポートを介して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を選択的に送信することと、を含み、
    前記有効データの処理は、ルーティング情報を生成して、当該情報を前記有効データに埋め込むことを含む、方法。
  12. 前記有効データの処理は、前記ネットワークスイッチの単一処理部で実行される、請求項11に記載の方法。
  13. 前記保護データの生成は、巡回冗長チェック(CRC)データを生成することを含む、請求項11又は12に記載の方法。
  14. 前記データは、送信ネットワーク要素から送信され、前記受信ポートにおいて受信される、請求項11~13のいずれかに記載の方法。
  15. 工程を開始、実行、又は制御するために、プロセッサによって実行可能な命令を保存するコンピュータ読取可能媒体であって、前記工程は、
    受信ポートを介してデータを受信することと、
    複数の並列第1経路に対して前記データの第1コピーを供給することと、
    前記第1経路の各々において、前記データの第1コピーのチェックを実行して、前記データの前記第1コピーの保護データを生成することと、
    前記第1経路から受信した前記データの第2コピーのクロスチェックを実行することと、
    前記データの前記第2コピーのクロスチェックにより、前記第2コピーのうちの少なくともいくつかが互いに一致し、且つ有効であることが示された場合、これに応答して、処理部において、互いに一致し、且つ有効である前記データの前記第2コピーのうちの少なくとも1つにおける有効データを処理することと、
    複数の並列第2経路に対して前記データの第3コピーを供給することと、
    前記複数の並列第2経路の各々の第2経路において、前記データの第3コピーに対して、前記保護データに基づくチェックを含む複数のチェックを実行することと、
    前記第2経路から受信した前記データの第4コピーのクロスチェックを実行することと、
    前記データの前記第4コピーのクロスチェックに応答して、送信ポートを介して、後続ネットワーク要素に前記データの前記第4コピーのうちの1つ以上を選択的に送信することと、をさらに含
    前記有効データの処理は、ルーティング情報を生成して、当該情報を前記有効データに埋め込むことを含む、コンピュータ読取可能媒体。
  16. 前記有効データの処理は、ネットワークスイッチの単一処理部で実行される、請求項15に記載のコンピュータ読取可能媒体。
  17. 前記保護データの生成は、巡回冗長チェック(CRC)データを生成することを含む、請求項15又は16に記載のコンピュータ読取可能媒体。
  18. 前記データは、送信ネットワーク要素から送信され、前記受信ポートにおいて受信される、請求項15~17のいずれかに記載のコンピュータ読取可能媒体。
JP2020007404A 2019-01-30 2020-01-21 1つ以上の判定要素を用いてデータコピーのクロスチェックを実行するための装置及び方法 Active JP7469885B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/262,371 US10951544B2 (en) 2019-01-30 2019-01-30 Apparatus and method of crosschecking data copies using one or more voter elements
US16/262,371 2019-01-30

Publications (2)

Publication Number Publication Date
JP2020145670A JP2020145670A (ja) 2020-09-10
JP7469885B2 true JP7469885B2 (ja) 2024-04-17

Family

ID=69187659

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020007404A Active JP7469885B2 (ja) 2019-01-30 2020-01-21 1つ以上の判定要素を用いてデータコピーのクロスチェックを実行するための装置及び方法

Country Status (6)

Country Link
US (2) US10951544B2 (ja)
EP (1) EP3691211B1 (ja)
JP (1) JP7469885B2 (ja)
KR (1) KR20200095401A (ja)
CN (1) CN111510397A (ja)
TW (1) TWI809245B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022095257A (ja) * 2020-12-16 2022-06-28 キオクシア株式会社 メモリシステム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020107980A1 (en) 2001-02-05 2002-08-08 Nec Corporation Computer system and method of communication between modules within computer system
US20020141411A1 (en) 2001-04-03 2002-10-03 Jong-Hwan Oh Apparatus for line-concentrating and distributing PPP frame data
JP2004518381A (ja) 2001-01-31 2004-06-17 テルディックス・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング モジュラおよびスケーラブルスイッチならびに高速イーサネット(r)データフレームを分配するための方法
US20100128726A1 (en) 2008-11-27 2010-05-27 Fujitsu Limited Data transmitter and data transmission method

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838894A (en) * 1992-12-17 1998-11-17 Tandem Computers Incorporated Logical, fail-functional, dual central processor units formed from three processor units
US6157638A (en) 1998-03-23 2000-12-05 Motorola, Inc. High density packet switch with high speed interfaces and method for using same
WO2000056024A2 (en) * 1999-03-17 2000-09-21 Broadcom Corporation Network switch
US20020085589A1 (en) * 2000-09-22 2002-07-04 Narad Networks, Inc. System and method for assigning network data packet header
US7123581B2 (en) 2001-10-09 2006-10-17 Tellabs Operations, Inc. Method and apparatus to switch data flows using parallel switch fabrics
US7590885B2 (en) * 2005-04-26 2009-09-15 Hewlett-Packard Development Company, L.P. Method and system of copying memory from a source processor to a target processor by duplicating memory writes
US7464203B2 (en) * 2005-07-29 2008-12-09 Gm Global Technology Operations, Inc. Method of validating plurality of data during serial communication using a dual path across a single serial link
US7719982B2 (en) 2005-08-31 2010-05-18 Intel Corporation Switching device utilizing flow-control management
US7706103B2 (en) * 2006-07-25 2010-04-27 Seagate Technology Llc Electric field assisted writing using a multiferroic recording media
US7889686B1 (en) * 2006-11-21 2011-02-15 Picomobile Networks, Inc. Seamless switching of media streams between different networks
WO2011119137A1 (en) * 2010-03-22 2011-09-29 Lrdc Systems, Llc A method of identifying and protecting the integrity of a set of source data
US9400722B2 (en) 2011-11-15 2016-07-26 Ge Aviation Systems Llc Method of providing high integrity processing
US20130208630A1 (en) * 2012-02-15 2013-08-15 Ge Aviation Systems Llc Avionics full-duplex switched ethernet network
US9430412B2 (en) * 2013-06-26 2016-08-30 Cnex Labs, Inc. NVM express controller for remote access of memory and I/O over Ethernet-type networks
GB201315397D0 (en) * 2013-08-29 2013-10-16 Quixant Plc Memory controller and memory access method
JP6188867B2 (ja) * 2015-06-12 2017-08-30 株式会社日立製作所 パケットを復元するための方法及びシステム
US10331373B2 (en) * 2015-11-05 2019-06-25 International Business Machines Corporation Migration of memory move instruction sequences between hardware threads
US10067713B2 (en) * 2015-11-05 2018-09-04 International Business Machines Corporation Efficient enforcement of barriers with respect to memory move sequences
US10498654B2 (en) * 2015-12-28 2019-12-03 Amazon Technologies, Inc. Multi-path transport design
US10496484B2 (en) * 2016-08-05 2019-12-03 Sandisk Technologies Llc Methods and apparatus for error detection for data storage devices
US10333652B2 (en) * 2016-09-16 2019-06-25 International Business Machines Corporation Redundancy in converged networks
US10599524B2 (en) * 2017-04-28 2020-03-24 Veritas Technologies Llc Backup performance after backup failure
US10901862B2 (en) * 2018-11-13 2021-01-26 Micron Technology, Inc. High-reliability non-volatile memory using a voting mechanism

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004518381A (ja) 2001-01-31 2004-06-17 テルディックス・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング モジュラおよびスケーラブルスイッチならびに高速イーサネット(r)データフレームを分配するための方法
US20020107980A1 (en) 2001-02-05 2002-08-08 Nec Corporation Computer system and method of communication between modules within computer system
JP2002229965A (ja) 2001-02-05 2002-08-16 Nec Corp コンピュータシステムと、コンピュータシステム内のモジュール間の通信方法
US20020141411A1 (en) 2001-04-03 2002-10-03 Jong-Hwan Oh Apparatus for line-concentrating and distributing PPP frame data
US20100128726A1 (en) 2008-11-27 2010-05-27 Fujitsu Limited Data transmitter and data transmission method
JP2010130367A (ja) 2008-11-27 2010-06-10 Fujitsu Ltd データ伝送装置

Also Published As

Publication number Publication date
US20200244596A1 (en) 2020-07-30
CN111510397A (zh) 2020-08-07
JP2020145670A (ja) 2020-09-10
EP3691211B1 (en) 2023-04-26
KR20200095401A (ko) 2020-08-10
US20210297369A1 (en) 2021-09-23
EP3691211A1 (en) 2020-08-05
TW202040975A (zh) 2020-11-01
TWI809245B (zh) 2023-07-21
US11729115B2 (en) 2023-08-15
US10951544B2 (en) 2021-03-16

Similar Documents

Publication Publication Date Title
JP5593530B2 (ja) フォールトトレラントなタイムトリガ方式のリアルタイム通信のための方法および装置
US7877596B2 (en) Method and computer product to increase accuracy of time-based software verification for sensor networks
WO2020253083A1 (zh) 主备存储卷同步数据校验方法、装置、设备及存储介质
CN106134144A (zh) 可靠性组播数据传送系统以及方法
US8547845B2 (en) Soft error recovery for converged networks
CN105373441B (zh) 用于互连电路的传输控制检查
CN109194493B (zh) 一种信息管理系统、方法及装置
EP3668018B1 (en) Efficient self-checking redundancy comparison in a network
JP7469885B2 (ja) 1つ以上の判定要素を用いてデータコピーのクロスチェックを実行するための装置及び方法
US9465690B2 (en) Cumulative error detection in data transmission
WO2016086638A1 (zh) 一种实现链路检测的方法、装置及计算机存储介质
US10101987B2 (en) Method and system of processing an image upgrade
JP5322433B2 (ja) 処理システムにおけるデータ処理中のエラー検知方法および制御システム
WO2017101016A1 (zh) 用于存储节点同步业务请求的方法和装置
JP6219233B2 (ja) 無瞬断切替装置および無瞬断切替方法
US20200091931A1 (en) Embedded cyclical redundancy check values
KR101642440B1 (ko) 링 네트워크의 선로 장애 복구 방법
CN111858166B (zh) 可纠错快速拟态裁决方法、裁决器、系统及介质
JP6059652B2 (ja) 信号保安用制御装置
JP2018072967A (ja) 制御システム
JP7401257B2 (ja) 送信装置、受信装置、通信システム、送信方法、受信方法、及びプログラム
KR102507198B1 (ko) 분산 소프트웨어 정의 네트워크에서 비잔틴 장애 극복 방법
WO2021156918A1 (ja) 経路冗長化システム、送信側装置、受信側装置、経路冗長化方法、および、経路冗長化プログラム
CN118118126A (zh) 数据处理方法、装置及电子设备
JP2017224919A (ja) ログデータ転送方式及びログデータ転送システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240405

R150 Certificate of patent or registration of utility model

Ref document number: 7469885

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150