(57)【特許請求の範囲】
【請求項１】
２つの通信装置それぞれと接続され、該２つの通信装置の間で送受信されるデータフレームを中継する２つの中継装置が、２つの通信経路を介して接続された通信システムにおいて、
前記中継装置は、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与して、前記２つの通信経路へ互いに同じタイミングで送信する送信機能部と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とし、前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する受信機能部とを有し、
前記送信機能部は、前記データフレームに前記シーケンス番号を付与するシーケンス番号付与部を有し、
前記受信機能部は、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを前記ＦＩＦＯメモリに格納し、該シーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、該シーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する第１の送信制御部と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値を該シーケンス番号に１を加算した値とし、該シーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、該シーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する第２の送信制御部と、
前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値と等しい場合、該データフレームを読み出して当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを前記ＦＩＦＯメモリから消去し、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも大きな場合、前記第２の通信経路で障害が発生している状態であれば、該カウンタ値を該シーケンス番号と同じ値とする第３の送信制御部とを有することを特徴とする通信システム。
【請求項２】
請求項１に記載の通信システムにおいて、
前記送信機能部は、
前記シーケンス番号が付与されたデータフレームであるイーサフレームを、ＳＤＨ／ＳＯＮＥＴフレームにマッピングして出力するマッピング部と、
前記マッピング部が出力したＳＤＨ／ＳＯＮＥＴフレームを前記２つの通信経路へ送信するフレーム送信部とを有し、
前記受信機能部は、前記２つの通信経路を介して送信されてきたＳＤＨ／ＳＯＮＥＴフレームをイーサフレームにデマッピングするデマッピング部を有することを特徴とする通信システム。
【請求項３】
請求項１に記載の通信システムにおいて、
前記カウンタは、前記送信機能部が初期値として前記データフレームに最初に付与するシーケンス番号の値を、前記カウンタ値の初期値とすることを特徴とする通信システム。
【請求項４】
請求項２に記載の通信システムにおいて、
前記送信機能部は、前記イーサフレームのヘッダとペイロードとの間に、前記シーケンス番号を付与することを特徴とする通信システム。
【請求項５】
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置であって、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与して、前記２つの通信経路へ互いに同じタイミングで送信する送信機能部と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とし、前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する受信機能部とを有し、
前記送信機能部は、前記データフレームに前記シーケンス番号を付与するシーケンス番号付与部を有し、
前記受信機能部は、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを前記ＦＩＦＯメモリに格納し、該シーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、該シーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する第１の送信制御部と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値を該シーケンス番号に１を加算した値とし、該シーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、該シーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する第２の送信制御部と、
前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値と等しい場合、該データフレームを読み出して当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを前記ＦＩＦＯメモリから消去し、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも大きな場合、前記第２の通信経路で障害が発生している状態であれば、該カウンタ値を該シーケンス番号と同じ値とする第３の送信制御部とを有する中継装置。
【請求項６】
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置が行う中継方法であって、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与する処理と、
前記シーケンス番号が付与されたデータフレームを、前記２つの通信経路へ互いに同じタイミングで送信する処理と、
前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が当該中継装置が具備するカウンタが示すカウンタ値よりも大きな場合、該データフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする処理と、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントする処理と、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する処理と、
前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とする処理と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントする処理と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する処理と、
前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値と等しい場合、該データフレームを読み出して当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを前記ＦＩＦＯメモリから消去し、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも大きな場合、前記第２の通信経路で障害が発生している状態であれば、該カウンタ値を該シーケンス番号と同じ値とする処理とを行う中継方法。
【請求項７】
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置に、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与する手順と、
前記シーケンス番号が付与されたデータフレームを、前記２つの通信経路へ互いに同じタイミングで送信する手順と、
前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が当該中継装置が具備するカウンタが示すカウンタ値よりも大きな場合、該データフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする手順と、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号と前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントする手順と、
前記第１の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する手順と、
前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも大きな場合、該データフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とする手順と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値とが等しい場合、該データフレームを当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントする手順と、
前記第２の通信経路を介して送信されてきたデータフレームに付与されたシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを廃棄する手順と、
前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値と等しい場合、該データフレームを読み出して当該中継装置と接続された通信装置へ送信して、前記カウンタ値をインクリメントし、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも小さな場合、該データフレームを前記ＦＩＦＯメモリから消去し、前記ＦＩＦＯメモリから次に読み出されるデータフレームに付与されているシーケンス番号が前記カウンタ値よりも大きな場合、前記第２の通信経路で障害が発生している状態であれば、該カウンタ値を該シーケンス番号と同じ値とする手順とを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送受信されるデータフレームを中継する通信システム、中継装置、中継方法およびプログラムに関する。
【背景技術】
【０００２】
図１０は、一般的な中継装置を用いた通信システムの一形態を示す図である。
【０００３】
図１０に示した通信システムは、通信装置１０００−１，１０００−２と、中継装置３０００−１〜３０００−４とから構成されている。
【０００４】
通信装置１０００−１，１０００−２は、イーサネット（登録商標）等のネットワークであるクライアント側データネットワーク２０００−１，２０００−２とそれぞれ接続され、データフレームの通信を行うクライアント側装置である。
【０００５】
中継装置３０００−１〜３０００−４は、ＳＤＨ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｉｇｉｔａｌ  Ｈｉｅｒａｒｃｈｙ）／ＳＯＮＥＴ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｏｐｔｉｃａｌ  Ｎｅｔｗｏｒｋ）ネットワーク４０００と接続され、通信装置１０００−１と通信装置１０００−２との間で送受信されるデータフレームを中継する。
【０００６】
また、中継装置３０００−１と中継装置３０００−２とは、伝送路の冗長をとるために、ＳＤＨ／ＳＯＮＥＴネットワーク４０００に設けられた互いに異なる伝送路である通信経路５０００−１，５０００−２によって接続されている。また、中継装置３０００−３，３０００−４は、通信経路５０００−２上に設けられている。
【０００７】
図１０に示すような通信システムにおいては、通信経路５０００−１または通信経路５０００−２における伝送路障害（故障）の発生により、通信経路５０００−１，５０００−２の系切り替え（運用系／予備系）が行われた際、中継装置３０００−１，３０００−２のパケットトラフィックの受信部にて、ＳＤＨ／ＳＯＮＥＴフレームのロスに伴うパケットトラフィックのロスが発生してしまう。
【０００８】
そこで、ＳＤＨ／ＳＯＮＥＴネットワークにおいて、フレームロスの無い障害切り替え方式（無瞬断切り替え）が考えられている（例えば、特許文献１，２参照。）。
【０００９】
また、ＳＤＨ／ＳＯＮＥＴネットワークにおける無瞬断切り替えを使用する以外の方法として、パケット送信側にてパケットごとにシーケンス番号を付与して２つの系統の伝送路に対して互いに同じパケットを送信し、パケット受信側では、２つの伝送路からそれぞれ送信されてきた互いに同じパケットのうち先に到着したもののみを次段へ送信したり、一方しか到着しなかった場合は、当該到着したパケットを次段へ送信したりすることにより、無瞬断切り替え機能を実現する技術が考えられている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平７−９５１８６号公報
【特許文献２】特開２００４−１８６９８０号公報
【特許文献３】特開２００５−１０２１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献１，２に記載されたようなＳＤＨ／ＳＯＮＥＴネットワークにおける無瞬断切り替えの場合、切り替えマージンや障害時の無瞬断切り替えの処理を行うための固定的な遅延が生じてしまうという問題点がある。また、２つの伝送路それぞれにおける伝搬遅延時間の差を吸収し、互いに位相を合わせるために、伝搬遅延時間の短い方の伝送路から受信したデータを待たせる処理が必要となる。この結果、通常状態において、無瞬断切り替え機能を持たないネットワークと比較すると、当該ＳＤＨ／ＳＯＮＥＴネットワーク全体として大きな遅延が定常的に生じてしまうという問題点がある。ＩＳＰ（Ｉｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）において複数拠点を結ぶＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）サービスなどを提供する場合、ネットワークの遅延が大きいことが問題となるため、この遅延量は可能な限り小さくすることが要求される。
【００１２】
また、特許文献３に記載されたような技術では、パケット受信側の処理として２つの伝送路それぞれから受信したパケットをそれぞれ保存して、保存されたパケットに付与されているシーケンス番号を確認しながら選択して送信する。そのため、この保存のために容量の大きなメモリを２つ用意しなければならないという問題点がある。または、１つのメモリを使用して当該機能を実現したとしても、シーケンス番号（シーケンス番号に２ｂｙｔｅ使用する場合、最大６５５３６個分）のメモリ容量を確保する必要があり、用意すべきメモリのサイズがさらに大きくなってしまうという問題点がある。また、パケットの受信にて期待するシーケンス番号を待つＷａｉｔ処理が何度も設定されるため、送信効率が悪化し、スループットの低下を招いてしまうおそれもある。
【００１３】
本発明の目的は、上述した課題を解決する通信システム、中継装置、中継方法およびプログラムを提供することである。
【課題を解決するための手段】
【００１４】
本発明の通信システムは、
２つの通信装置それぞれと接続され、該２つの通信装置の間で送受信されるデータフレームを中継する２つの中継装置が、２つの通信経路を介して接続された通信システムにおいて、
前記中継装置は、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与して、前記２つの通信経路へ互いに同じタイミングで送信する送信機能部と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とし、前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する受信機能部とを有することを特徴とする。
【００１５】
また、本発明の中継装置は、
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置であって、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与して、前記２つの通信経路へ互いに同じタイミングで送信する送信機能部と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントし、前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とし、前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する受信機能部とを有する。
【００１６】
また、本発明の中継方法は、
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置が行う中継方法であって、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与する処理と、
前記シーケンス番号が付与されたデータフレームを、前記２つの通信経路へ互いに同じタイミングで送信する処理と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする処理と、
前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする処理と、
前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とする処理と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する処理とを行う。
【００１７】
また、本発明のプログラムは、
２つの通信装置の間で２つの通信経路を介して送受信されるデータフレームを中継する中継装置に実行させるためのプログラムであって、
当該中継装置と接続された通信装置から送信されてきた前記データフレームを、該データフレームごとに送信する順序でシーケンス番号をそれぞれ付与する手順と、
前記シーケンス番号が付与されたデータフレームを、前記２つの通信経路へ互いに同じタイミングで送信する手順と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、当該中継装置が具備するカウンタが示すカウンタ値と等しいシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする手順と、
前記２つの通信経路のうち伝搬遅延時間の短い通信経路である第１の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを、前記カウンタ値が該シーケンス番号と同じ値となるまでＦＩＦＯメモリに一時格納してから当該中継装置と接続された通信装置へ送信して、該カウンタ値をインクリメントする手順と、
前記２つの通信経路のうち前記第１の通信経路以外の第２の通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも大きなシーケンス番号が付与されたデータフレームを当該中継装置と接続された通信装置へ送信して、該カウンタ値を該シーケンス番号に１を加算した値とする手順と、
前記２つの通信経路を介して送信されてきたデータフレームのうち、前記カウンタ値よりも小さなシーケンス番号が付与されたデータフレームを廃棄する手順とを実行させる。
【発明の効果】
【００１８】
以上説明したように、本発明においては、切り替えのための遅延時間を削減した無瞬断切り替えを容易に実現することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の通信システムの実施の一形態を示す図である。
【図２】図１に示した中継装置の内部構成の一例を示す図である。
【図３】図２に示したシーケンス番号付与部において、シーケンス番号が付与されたイーサフレームのフォーマットの一例を示す図である。
【図４】本形態における中継方法のうち、運用系動作モードで動作するイーサフレーム送信制御部における処理を説明するためのフローチャートである。
【図５】本形態における中継方法のうち、予備系動作モードで動作するイーサフレーム送信制御部における処理を説明するためのフローチャートである。
【図６】本形態における中継方法のうち、ＦＩＦＯメモリからデータフレームを読み出すイーサフレーム送信制御部における処理を説明するためのフローチャートである。
【図７】本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路においてフレームロスが発生した場合のタイミングを説明するためのタイミングチャートである。
【図８】本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路においてフレームロスが発生した後、予備系経路に障害が発生した場合のタイミングを説明するためのタイミングチャートである。
【図９】本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路においてフレームロスが発生した後、予備系経路においてもフレームロスが発生した場合のタイミングを説明するためのタイミングチャートである。
【図１０】一般的な中継装置を用いた通信システムの一形態を示す図である。
【発明を実施するための形態】
【００２０】
以下に、本発明の実施の形態について図面を参照して説明する。
【００２１】
図１は、本発明の通信システムの実施の一形態を示す図である。
【００２２】
本形態は図１に示すように、通信装置１０−１，１０−２と、中継装置３０−１〜３０−４とから構成されている。
【００２３】
通信装置１０−１，１０−２は、イーサネット（登録商標）等のネットワークであるクライアント側データネットワーク２０−１，２０−２とそれぞれ接続され、データフレームの通信を行うクライアント側装置である。
【００２４】
中継装置３０−１〜３０−４は、ＳＤＨ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｉｇｉｔａｌ  Ｈｉｅｒａｒｃｈｙ）／ＳＯＮＥＴ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｏｐｔｉｃａｌ  Ｎｅｔｗｏｒｋ）ネットワーク４０と接続され、通信装置１０−１と通信装置１０−２との間で送受信されるデータフレームを中継する。
【００２５】
また、中継装置３０−１は、クライアント側データネットワーク２０−１を介して、通信装置１０−１と接続されている。また、中継装置３０−２は、クライアント側データネットワーク２０−２を介して、通信装置１０−２と接続されている。
【００２６】
また、中継装置３０−１と中継装置３０−２とは、伝送路の冗長をとるために、ＳＤＨ／ＳＯＮＥＴネットワーク４０に設けられた互いに異なる伝送路である通信経路５０−１，５０−２によって接続されている。また、中継装置３０−３，３０−４は、通信経路５０−２上に設けられている。
【００２７】
図２は、図１に示した中継装置３０−１の内部構成の一例を示す図である。なお、図１に示した中継装置３０−２の内部構成も、中継装置３０−１の内部構成と同じである。
【００２８】
図１に示した中継装置３０−１には図２に示すように、送信機能部３１と、受信機能部３２とが設けられている。
【００２９】
送信機能部３１は、通信装置１０−１からクライアント側データネットワーク２０−１を介して送信されてきた、通信装置１０−２宛てのイーサフレームを、ＳＤＨ／ＳＯＮＥＴフレームにマッピングして通信経路５０−１，５０−２、中継装置３０−２およびクライアント側データネットワーク２０−２を介して通信装置１０−２へ送信する。
【００３０】
受信機能部３２は、通信装置１０−２からクライアント側データネットワーク２０−２、中継装置３０−２および通信経路５０−１，５０−２を介して送信されてきた、通信装置１０−１宛てのＳＤＨ／ＳＯＮＥＴフレームを、イーサフレームにデマッピングしてクライアント側データネットワーク２０−１を介して通信装置１０−１へ送信する。
【００３１】
また、送信機能部３１には図２に示すように、イーサフレーム受信部３１０と、シーケンス番号付与部３１１と、分配部３１２と、マッピング部３１３−１，３１３−２と、ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１，３１４−２とが設けられている。
【００３２】
イーサフレーム受信部３１０は、通信装置１０−１から送信されてきたイーサフレームの受信処理および当該イーサフレームに異常がないかどうかのエラーチェックを行い、正常なイーサフレームをシーケンス番号付与部３１１へ出力する。
【００３３】
シーケンス番号付与部３１１は、イーサフレーム受信部３１０から出力されてきたイーサフレームにシーケンス番号を付与する。このシーケンス番号は、イーサフレームのデータフレームごとに、送信する順序で、０、１、２、３のように、０から順番に１つずつ増加させた番号で付与される。
【００３４】
図３は、図２に示したシーケンス番号付与部３１１において、シーケンス番号が付与されたイーサフレームのフォーマットの一例を示す図である。
【００３５】
図２に示したシーケンス番号付与部３１１において、シーケンス番号が付与されたイーサフレームは図３に示すように、イーサフレームのヘッダであるイーサネットフレームヘッダ６１と、シーケンス番号６２と、ペイロード６３とから構成される。ここで、シーケンス番号付与部３１１が付与するシーケンス番号は図３に示すように、イーサネットフレームヘッダ６１とペイロード６３との間に挿入される形で付与される。
【００３６】
また、シーケンス番号付与部３１１は、シーケンス番号を付与したデータフレーム（イーサフレーム）を分配部３１２へ出力する。
【００３７】
また、分配部３１２は、シーケンス番号付与部３１１から出力されてきたイーサフレームをマッピング部３１３−１とマッピング部３１３−２とへ分配して出力する。つまり、分配部３１２は、マッピング部３１３−１とマッピング部３１３−２へ、互いに同じイーサフレームを出力する。
【００３８】
マッピング部３１３−１，３１３−２は、分配部３１２から出力されてきたイーサフレームを、ＳＤＨ／ＳＯＮＥＴフレームにマッピングする。また、マッピング部３１３−１，３１３−２は、マッピングが完了したＳＤＨ／ＳＯＮＥＴフレームをＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１，３１４−２へそれぞれ出力する。なお、このマッピングの方法は、一般的な方法で良い。
【００３９】
ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１は、マッピング部３１３−１から出力されてきたＳＤＨ／ＳＯＮＥＴフレームを、通信経路５０−１を介して中継装置３０−２へ送信する。また、ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−２は、マッピング部３１３−２から出力されてきたＳＤＨ／ＳＯＮＥＴフレームを、通信経路５０−２を介して中継装置３０−２へ送信する。このとき、ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１から送信されるＳＤＨ／ＳＯＮＥＴフレームと、ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１から送信されるＳＤＨ／ＳＯＮＥＴフレームとは互いに位相がそろっている（同期している）状態である。つまり、互いに同じシーケンス番号が付与されているＳＤＨ／ＳＯＮＥＴフレームは、ＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−１とＳＤＨ／ＳＯＮＥＴフレーム送信部３１４−２とから互いに同じタイミングで送信される。
【００４０】
また、受信機能部３２には図２に示すように、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１，３２０−２と、遅延検出部３２１−１，３２１−２と、遅延比較部３２２と、デマッピング部３２３−１，３２３−２と、イーサフレーム送信制御部３２４−１〜３２４−３と、ＦＩＦＯメモリ３２５と、カウンタ３２６と、イーサフレーム送信部３２７とが設けられている。
【００４１】
ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１は、中継装置３０−２から通信経路５０−１を介して送信されてきたデータフレームであるＳＤＨ／ＳＯＮＥＴフレームを受信し、所定のＳＤＨ／ＳＯＮＥＴオーバヘッダ処理を行う。また、通信経路５０−１にて伝送路障害（通信経路障害）が発生した場合、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１は、当該伝送路障害を検出し、その旨を通信経路障害情報としてイーサフレーム送信制御部３２４−３へ通知する。なお、この伝送路障害の検出方法は、一般的に行われている方法であれば良く、ここでは特に規定しない。また、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１は、ＳＤＨ／ＳＯＮＥＴオーバヘッダ処理を施したＳＤＨ／ＳＯＮＥＴフレームを遅延検出部３２１−１へ出力する。
【００４２】
ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２は、中継装置３０−２から通信経路５０−２を介して送信されてきたデータフレームであるＳＤＨ／ＳＯＮＥＴフレームを受信し、所定のＳＤＨ／ＳＯＮＥＴオーバヘッダ処理を行う。また、通信経路５０−２にて伝送路障害（通信経路障害）が発生した場合、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２は、当該伝送路障害を検出し、その旨を通信経路障害情報としてイーサフレーム送信制御部３２４−３へ通知する。なお、この伝送路障害の検出方法は、一般的に行われている方法であれば良く、ここでは特に規定しない。また、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２は、ＳＤＨ／ＳＯＮＥＴオーバヘッダ処理を施したＳＤＨ／ＳＯＮＥＴフレームを遅延検出部３２１−２へ出力する。
【００４３】
遅延検出部３２１−１は、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１から出力されてきたＳＤＨ／ＳＯＮＥＴフレームに基づいて、通信経路５０−１における伝搬遅延時間を検出する。この検出方法は、あらかじめ遅延時間測定用のフレームを用いて測定する方法等、一般的に行われている方法であれば良い。また、遅延検出部３２１−１は、検出した伝搬遅延時間を示す遅延情報を遅延比較部３２２へ出力する。また、遅延検出部３２１−１は、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１から出力されてきたＳＤＨ／ＳＯＮＥＴフレームをデマッピング部３２３−１へ出力する。
【００４４】
遅延検出部３２１−２は、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２から出力されてきたＳＤＨ／ＳＯＮＥＴフレームに基づいて、通信経路５０−２における伝搬遅延時間を検出する。この検出方法は、あらかじめ遅延時間測定用のフレームを用いて測定する方法等、通信経路における遅延時間が測定できる一般的に行われている方法であれば良い。また、遅延検出部３２１−２は、検出した伝搬遅延時間を示す遅延情報を遅延比較部３２２へ出力する。また、遅延検出部３２１−２は、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２から出力されてきたＳＤＨ／ＳＯＮＥＴフレームをデマッピング部３２３−２へ出力する。
【００４５】
遅延比較部３２２は、遅延検出部３２１−１から出力されてきた遅延情報と遅延検出部３２１−２から出力されてきた遅延情報とを比較し、通信経路５０−１と通信経路５０−２とのどちらの伝送路における伝搬遅延時間が短いかを判断する。また、遅延比較部３２２は、その判断結果を示す比較情報を、イーサフレーム送信制御部３２４−１〜３２４−３へ出力する。例えば、通信経路５０−１における伝搬遅延時間が通信経路５０−２における伝搬遅延時間よりも短い場合、遅延比較部３２２は、伝搬遅延時間が短い旨を示す比較情報（以下、比較情報（小）と称する）をイーサフレーム送信制御部３２４−１へ出力し、また伝搬遅延時間が長い旨を示す比較情報（以下、比較情報（大）と称する）をイーサフレーム送信制御部３２４−２へ出力し、通信経路５０−１における伝搬遅延時間が通信経路５０−２における伝搬遅延時間よりも短い旨を示す比較情報（以下、比較情報（大小）と称する）をイーサフレーム送信制御部３２４−３へ出力する。
【００４６】
デマッピング部３２３−１は、遅延検出部３２１−１から出力されてきたＳＤＨ／ＳＯＮＥＴフレームをイーサフレームにデマッピングし、イーサフレームの形としてイーサフレーム送信制御部３２４−１へ出力する。なお、このデマッピングの方法は、一般的な方法で良い。
【００４７】
デマッピング部３２３−２は、遅延検出部３２１−２から出力されてきたＳＤＨ／ＳＯＮＥＴフレームをイーサフレームにデマッピングし、イーサフレームの形としてイーサフレーム送信制御部３２４−２へ出力する。
【００４８】
イーサフレーム送信制御部３２４−１，３２４−２は、遅延比較部３２２から比較情報（小）が出力されてきた場合、運用系経路（第１の通信経路）の送信制御部（第１の送信制御部）としての運用系動作モードで動作する。また、イーサフレーム送信制御部３２４−１，３２４−２は、遅延比較部３２２から比較情報（大）が出力されてきた場合、予備系経路（第２の通信経路）の送信制御部（第２の送信制御部）としての予備系動作モードで動作する。この運用系動作モードにおける動作および予備系動作モードにおける動作の詳細については、後述する。なお、イーサフレーム送信制御部３２４−１，３２４−２のうち、一方が運用系動作モードで動作する場合、他方は予備系動作モードで動作することは言うまでもない。
【００４９】
ＦＩＦＯメモリ３２５は、一般的に用いられているＦａｓｔ−Ｉｎ  Ｆａｓｔ−Ｏｕｔのメモリである。ＦＩＦＯメモリ３２５は、イーサフレーム送信制御部３２４−１，３２４−２のうち、運用系動作モードで動作する方から出力されてきたデータフレームを一時的に（イーサフレーム送信制御部３２４−３から読み出されるまでの間）格納しておくバッファである。
【００５０】
イーサフレーム送信制御部３２４−３は、ＦＩＦＯメモリ３２５に格納されているデータフレームをフレーム単位で読み出してイーサフレーム送信部３２７へ出力する。この読み出しのタイミングについては、後述する。
【００５１】
カウンタ３２６は、一般的なカウンタである。また、カウンタ３２６の初期値は、シーケンス番号付与部３１１が最初に付与するシーケンス番号と同じ数値（例えば、「０」）である。また、カウンタ３２６が示すカウンタ値が変化するタイミングについては、後述する。
【００５２】
イーサフレーム送信部３２７は、イーサフレーム送信制御部３２４−１〜３２４−３から出力されてきたイーサフレームを、クライアント側データネットワーク２０−１を介して通信装置１０−１へ送信する。このときイーサフレーム送信部３２７は、当該イーサフレームに付与されているシーケンス番号を削除してから送信する。
【００５３】
以下に、本形態における中継方法について説明する。本発明では、図２に示した形態のうち、イーサフレーム送信制御部３２４−１〜３２４−３における処理に特徴があるため、その部分の処理について説明する。なお、受信されるデータフレームには、対向する中継装置に設けられたシーケンス番号付与部３１１によって、シーケンス番号が付与されている。
【００５４】
また、ここでは、図２に示した遅延比較部３２２における伝搬遅延時間の比較の結果が、通信経路５０−２の伝搬遅延時間よりも通信経路５０−１の伝搬遅延時間の方が短いと判断した場合を例に挙げて説明する。つまり、図２に示したイーサフレーム送信制御部３２４−１が運用系動作モードで第１の送信制御部として動作し、イーサフレーム送信制御部３２４−２が予備系動作モードで第２の送信制御部として動作する場合を例に挙げて説明する。また、イーサフレーム送信制御部３２４−３は、第３の送信制御部として動作する。なお、遅延比較部３２２における伝搬遅延時間の比較の結果が、通信経路５０−１の伝搬遅延時間よりも通信経路５０−２の伝搬遅延時間の方が短いと判断した場合は、以下の説明におけるイーサフレーム送信制御部３２４−１の動作とイーサフレーム送信制御部３２４−２の動作とを入れ替える（イーサフレーム送信制御部３２４−１が予備系動作モードで動作し、イーサフレーム送信制御部３２４−２が運用系動作モードで動作する）ことは言うまでもない。
【００５５】
まずは、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−１における処理について説明する。
【００５６】
図４は、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−１における処理を説明するためのフローチャートである。
【００５７】
まず、デマッピング部３２３−１から出力されてきたデータフレームがイーサフレーム送信制御部３２４−１にて受信されると（ステップＳ１）、当該データフレームに付与されているシーケンス番号が読み出される（ステップＳ２）。
【００５８】
すると、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが比較される（ステップＳ３）。
【００５９】
ステップＳ３における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも大きな場合、当該データフレームがＦＩＦＯメモリ３２５に格納される（ステップＳ４）。
【００６０】
また、ステップＳ３における比較の結果、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが等しい場合、当該データフレームがイーサフレーム送信部３２７へ出力される（ステップＳ５）。イーサフレーム送信部３２７へ出力されたデータフレームは、イーサフレーム送信部３２７からクライアント側データネットワーク２０−１を介して通信装置１０−１へ送信される。
【００６１】
また、当該データフレームがイーサフレーム送信部３２７へ出力されると、カウンタ３２６のカウンタ値が１だけ加算（インクリメント）される（ステップＳ６）。
【００６２】
また、ステップＳ３における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも小さな場合、当該データフレームが廃棄される（ステップＳ７）。
【００６３】
以上説明した処理が、受信するデータフレームごとに順次行われる。
【００６４】
次に、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−２における処理について説明する。
【００６５】
図５は、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−２における処理を説明するためのフローチャートである。
【００６６】
まず、デマッピング部３２３−２から出力されてきたデータフレームがイーサフレーム送信制御部３２４−２にて受信されると（ステップＳ１１）、当該データフレームに付与されているシーケンス番号が読み出される（ステップＳ１２）。
【００６７】
すると、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが比較される（ステップＳ１３）。
【００６８】
ステップＳ１３における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも大きな場合、当該データフレームがイーサフレーム送信部３２７へ出力される（ステップＳ１４）。イーサフレーム送信部３２７へ出力されたデータフレームは、イーサフレーム送信部３２７からクライアント側データネットワーク２０−１を介して通信装置１０−１へ送信される。
【００６９】
また、当該データフレームがイーサフレーム送信部３２７へ出力されると、カウンタ３２６のカウンタ値が、ステップＳ１２で読み出されたシーケンス番号に１を加算した値とされる（ステップＳ１５）。
【００７０】
また、ステップＳ１３における比較の結果、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが等しい場合、当該データフレームがイーサフレーム送信部３２７へ出力される（ステップＳ１６）。イーサフレーム送信部３２７へ出力されたデータフレームは、イーサフレーム送信部３２７からクライアント側データネットワーク２０−１を介して通信装置１０−１へ送信される。
【００７１】
また、当該データフレームがイーサフレーム送信部３２７へ出力されると、カウンタ３２６のカウンタ値が１だけ加算（インクリメント）される（ステップＳ１７）。
【００７２】
また、ステップＳ１３における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも小さな場合、当該データフレームが廃棄される（ステップＳ１８）。
【００７３】
以上説明した処理が、受信するデータフレームごとに順次行われる。
【００７４】
次に、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−３における処理について説明する。
【００７５】
図６は、本形態における中継方法のうち、図２に示したイーサフレーム送信制御部３２４−３における処理を説明するためのフローチャートである。
【００７６】
まず、ＦＩＦＯメモリ３２５に格納されているデータフレームのうち、次に読み出されるデータフレームに付与されているシーケンス番号が読み出される（ステップＳ２１）。ＦＩＦＯメモリ３２５は上述したように、格納された（書き込まれた）順に読み出されるバッファであるため、次に読み出されるデータフレームは、最も古いデータフレームであり、シーケンス番号の最も小さなものである。
【００７７】
すると、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが比較される（ステップＳ２２）。
【００７８】
ステップＳ２２における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも大きな場合、予備系経路で障害が検出されているかどうかが判断される（ステップＳ２３）。これは、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２から通信経路障害情報が通知されているかどうかに基づいて判断される。つまり、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２から通信経路障害情報が通知されている場合、予備系経路で障害が検出されていると判断される。
【００７９】
ステップＳ２３にて予備系経路で障害が検出されていると判断された場合、カウンタ３２６のカウンタ値が、ステップＳ２１で読み出されたシーケンス番号と同じ値とされる（ステップＳ２４）。
【００８０】
一方、ステップＳ２３にて予備系経路で障害が検出されていると判断されない場合、ステップＳ２１の処理が行われる。
【００８１】
また、ステップＳ２２における比較の結果、読み出されたシーケンス番号と、カウンタ３２６が示すカウンタ値とが等しい場合、当該シーケンスが付与されているデータフレームがＦＩＦＯメモリ３２５から読み出されてイーサフレーム送信部３２７へ出力される（ステップＳ２５）。イーサフレーム送信部３２７へ出力されたデータフレームは、イーサフレーム送信部３２７からクライアント側データネットワーク２０−１を介して通信装置１０−１へ送信される。
【００８２】
また、当該データフレームがイーサフレーム送信部３２７へ出力されると、カウンタ３２６のカウンタ値が１だけ加算（インクリメント）される（ステップＳ２６）。
【００８３】
また、ステップＳ２２における比較の結果、読み出されたシーケンス番号が、カウンタ３２６が示すカウンタ値よりも小さな場合、当該データフレームがＦＩＦＯメモリ３２５から消去される（ステップＳ２７）。
【００８４】
以上説明した処理が、ＦＩＦＯメモリ３２５に格納されているデータフレームごとに順次行われる。
【００８５】
以下に、本形態における受信フレームに対する送信フレームの送信タイミングについて説明する。なお、以下の説明においては、上述したように、シーケンス番号は「０」から開始し、カウンタ３２６が示すカウンタ値の初期値も「０」である。
【００８６】
まずは、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した場合のタイミングについて説明する。
【００８７】
図７は、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した場合のタイミングを説明するためのタイミングチャートである。
【００８８】
まず、タイミングＴ１にて、通信経路５０−１からシーケンス番号「０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「０」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ２にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１」とされる。
【００８９】
続いて、タイミングＴ３にて、通信経路５０−１からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ４にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「２」とされる。
【００９０】
続いて、タイミングＴ５にて、通信経路５０−１からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ６にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「３」とされる。
【００９１】
また、タイミングＴ５にて、通信経路５０−２からシーケンス番号「０」のデータフレームが受信される（通信経路５０−２の伝搬遅延時間が通信経路５０−１の伝搬遅延時間よりも長いため、シーケンス番号「０」のデータフレームの受信が通信経路５０−１よりも遅い）と、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【００９２】
その後、通信経路５０−１にて、シーケンス番号「３」および「４」のデータフレームはロスしたとする。
【００９３】
一方、タイミングＴ７にて、通信経路５０−２からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【００９４】
続いて、タイミングＴ８にて、通信経路５０−２からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【００９５】
さらに続いて、タイミングＴ９にて、通信経路５０−１からシーケンス番号「５」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【００９６】
また、このとき、タイミングＴ９にて、通信経路５０−２からシーケンス番号「３」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１６の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ１０にて、図５を用いて説明したステップＳ１７の処理により、カウンタ３２６のカウンタ値がインクリメントされて「４」とされる。
【００９７】
続いて、タイミングＴ１１にて、通信経路５０−１からシーケンス番号「６」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【００９８】
また、このとき、タイミングＴ１１にて、通信経路５０−２からシーケンス番号「４」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図５を用いて説明したステップＳ１６の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ１２にて、図５を用いて説明したステップＳ１７の処理により、カウンタ３２６のカウンタ値がインクリメントされて「５」とされる。
【００９９】
また、タイミングＴ１２にて、カウンタ３２６のカウンタ値が「５」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「５」のデータフレームが読み出されて送信される。
【０１００】
続いて、タイミングＴ１３にて、通信経路５０−１からシーケンス番号「７」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「５」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１０１】
また、タイミングＴ１２にてシーケンス番号「５」のデータフレームが送信されると、タイミングＴ１４にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「６」とされる。
【０１０２】
また、タイミングＴ１４にて、カウンタ３２６のカウンタ値が「６」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「６」のデータフレームが読み出されて送信される。
【０１０３】
また、このとき、タイミングＴ１４にて、通信経路５０−２からシーケンス番号「５」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「６」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１０４】
また、タイミングＴ１４にてシーケンス番号「６」のデータフレームが送信されると、タイミングＴ１５にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「７」とされる。
【０１０５】
また、タイミングＴ１５にて、カウンタ３２６のカウンタ値が「７」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「７」のデータフレームが読み出されて送信される。
【０１０６】
また、このとき、タイミングＴ１５にて、通信経路５０−１からシーケンス番号「８」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「７」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１０７】
続いて、タイミングＴ１６にて、通信経路５０−２からシーケンス番号「６」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「７」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１０８】
また、タイミングＴ１５にてシーケンス番号「７」のデータフレームが送信されると、タイミングＴ１７にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「８」とされる。
【０１０９】
また、タイミングＴ１７にて、カウンタ３２６のカウンタ値が「８」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「８」のデータフレームが読み出されて送信される。
【０１１０】
続いて、タイミングＴ１８にて、通信経路５０−１からシーケンス番号「９」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「８」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１１１】
また、タイミングＴ１７にてシーケンス番号「８」のデータフレームが送信されると、タイミングＴ１９にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「９」とされる。
【０１１２】
また、タイミングＴ１９にて、カウンタ３２６のカウンタ値が「９」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「９」のデータフレームが読み出されて送信される。
【０１１３】
また、このとき、タイミングＴ１９にて、通信経路５０−２からシーケンス番号「７」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「９」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１１４】
また、タイミングＴ１９にてシーケンス番号「９」のデータフレームが送信されると、タイミングＴ２０にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１０」とされる。
【０１１５】
また、このとき、タイミングＴ２０にて、通信経路５０−１からシーケンス番号「１０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１０」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。
【０１１６】
続いて、タイミングＴ２１にて、通信経路５０−２からシーケンス番号「８」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１０」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１１７】
また、タイミングＴ２０にてシーケンス番号「１０」のデータフレームが送信されると、タイミングＴ２２にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１１」とされる。
【０１１８】
続いて、タイミングＴ２３にて、通信経路５０−１からシーケンス番号「１１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１１」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。
【０１１９】
続いて、タイミングＴ２４にて、通信経路５０−２からシーケンス番号「９」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１１」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１２０】
また、タイミングＴ２３にてシーケンス番号「１１」のデータフレームが送信されると、タイミングＴ２５にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１２」とされる。
【０１２１】
続いて、タイミングＴ２６にて、通信経路５０−１からシーケンス番号「１２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。
【０１２２】
続いて、タイミングＴ２７にて、通信経路５０−２からシーケンス番号「１０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１２」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１２３】
また、タイミングＴ２６にてシーケンス番号「１２」のデータフレームが送信されると、タイミングＴ２８にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１３」とされる。
【０１２４】
このように、正常時に送信する運用系経路からのデータフレームに付与されたシーケンス番号に同期して動作するカウンタ３２６を用いて、運用系経路からのデータフレームの一部がロスした場合は、カウンタ３２６を予備系経路からのデータフレームに付与されたシーケンス番号に同期させ、その間に運用系経路から受信したデータフレームをＦＩＦＯメモリ３２５に一時格納しておく。その後、カウンタ３２６のカウンタ値がＦＩＦＯメモリ３２５に格納されているデータフレームのシーケンス番号に追いついた後、ＦＩＦＯメモリ３２５に格納されているデータフレームを吐き出す。そして、運用系経路からのデータフレームに付与されたシーケンス番号がカウンタ３２６のカウンタ値に追いついた後は、運用系経路からのデータフレームを送信する。
【０１２５】
次に、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した後、予備系経路である通信経路５０−２に障害が発生した場合のタイミングについて説明する。
【０１２６】
図８は、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した後、予備系経路である通信経路５０−２に障害が発生した場合のタイミングを説明するためのタイミングチャートである。
【０１２７】
まず、タイミングＴ３１にて、通信経路５０−１からシーケンス番号「０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「０」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ３２にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１」とされる。
【０１２８】
続いて、タイミングＴ３３にて、通信経路５０−１からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ３４にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「２」とされる。
【０１２９】
続いて、タイミングＴ３５にて、通信経路５０−１からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ３６にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「３」とされる。
【０１３０】
また、タイミングＴ３５にて、通信経路５０−２からシーケンス番号「０」のデータフレームが受信される（通信経路５０−２の伝搬遅延時間が通信経路５０−１の伝搬遅延時間よりも長いため、シーケンス番号「０」のデータフレームの受信が通信経路５０−１よりも遅い）と、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１３１】
その後、通信経路５０−１にて、シーケンス番号「３」および「４」のデータフレームはロスしたとする。
【０１３２】
一方、タイミングＴ３７にて、通信経路５０−２からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１３３】
続いて、タイミングＴ３８にて、通信経路５０−２からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１３４】
さらに続いて、タイミングＴ３９にて、通信経路５０−１からシーケンス番号「５」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１３５】
また、このとき、タイミングＴ３９にて、通信経路５０−２からシーケンス番号「３」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１６の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ４０にて、図５を用いて説明したステップＳ１７の処理により、カウンタ３２６のカウンタ値がインクリメントされて「４」とされる。
【０１３６】
その後、通信経路５０−２にて障害が発生したことにより、通信経路５０−２からのデータフレームの受信はなくなる。
【０１３７】
続いて、タイミングＴ４１にて、通信経路５０−１からシーケンス番号「６」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１３８】
続いて、タイミングＴ４２にて、通信経路５０−１からシーケンス番号「７」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１３９】
その後、タイミングＴ４３にて、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−２からイーサフレーム送信制御部３２４−３へ、通信経路５０−２にて障害が発生した旨を示す通信経路障害情報が通知されると、図６を用いて説明したステップＳ２４の処理により、カウンタ３２６のカウンタ値が、ＦＩＦＯメモリ３２５に格納されているデータフレームのうち、次に読み出されるデータフレームに付与されているシーケンス番号「５」と同じ値とされる。
【０１４０】
ここで、カウンタ３２６のカウンタ値が「５」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「５」のデータフレームが読み出されて送信される。
【０１４１】
すると、タイミングＴ４４にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「６」とされる。
【０１４２】
ここで、カウンタ３２６のカウンタ値が「６」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「６」のデータフレームが読み出されて送信される。
【０１４３】
また、このとき、タイミングＴ４４にて、通信経路５０−１からシーケンス番号「８」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「６」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１４４】
また、タイミングＴ４４にてシーケンス番号「６」のデータフレームが送信されると、タイミングＴ４５にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「７」とされる。
【０１４５】
ここで、カウンタ３２６のカウンタ値が「７」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「７」のデータフレームが読み出されて送信される。
【０１４６】
続いて、タイミングＴ４６にて、通信経路５０−１からシーケンス番号「９」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「７」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１４７】
また、タイミングＴ４５にてシーケンス番号「７」のデータフレームが送信されると、タイミングＴ４７にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「８」とされる。
【０１４８】
ここで、カウンタ３２６のカウンタ値が「８」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「８」のデータフレームが読み出されて送信される。
【０１４９】
また、タイミングＴ４７にてシーケンス番号「８」のデータフレームが送信されると、タイミングＴ４８にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「９」とされる。
【０１５０】
ここで、カウンタ３２６のカウンタ値が「９」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「９」のデータフレームが読み出されて送信される。
【０１５１】
また、このとき、タイミングＴ４８にて、通信経路５０−１からシーケンス番号「１０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「９」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１５２】
また、タイミングＴ４８にてシーケンス番号「９」のデータフレームが送信されると、タイミングＴ４９にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１０」とされる。
【０１５３】
ここで、カウンタ３２６のカウンタ値が「１０」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「１０」のデータフレームが読み出されて送信される。
【０１５４】
続いて、タイミングＴ５０にて、通信経路５０−１からシーケンス番号「１１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１０」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１５５】
また、タイミングＴ４９にてシーケンス番号「１０」のデータフレームが送信されると、タイミングＴ５１にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１１」とされる。
【０１５６】
ここで、カウンタ３２６のカウンタ値が「１１」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「１１」のデータフレームが読み出されて送信される。
【０１５７】
また、タイミングＴ５１にてシーケンス番号「１１」のデータフレームが送信されると、タイミングＴ５２にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１２」とされる。
【０１５８】
また、このとき、タイミングＴ５２にて、通信経路５０−１からシーケンス番号「１２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ５３にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１３」とされる。
【０１５９】
このように、正常時に送信する運用系経路からのデータフレームに付与されたシーケンス番号に同期して動作するカウンタ３２６を用いて、運用系経路からのデータフレームの一部がロスした場合は、カウンタ３２６を予備系経路からのデータフレームに付与されたシーケンス番号に同期させ、その間に運用系経路から受信したデータフレームをＦＩＦＯメモリ３２５に一時格納しておく。さらに予備系経路に障害が発生していることを検出した場合、カウンタ３２６のカウンタ値をＦＩＦＯメモリ３２５から次に読み出されるデータフレームに付与されているシーケンス番号と一致させることにより、ＦＩＦＯメモリ３２５に格納されているデータフレームを吐き出す。そして、運用系経路からのデータフレームに付与されたシーケンス番号がカウンタ３２６のカウンタ値に追いついた後は、運用系経路からのデータフレームを送信する。
【０１６０】
次に、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した後、予備系経路である通信経路５０−２においてもフレームロスが発生した場合のタイミングについて説明する。
【０１６１】
図９は、本形態における受信フレームに対する送信フレームの送信タイミングのうち、運用系経路である通信経路５０−１においてフレームロスが発生した後、予備系経路である通信経路５０−２においてもフレームロスが発生した場合のタイミングを説明するためのタイミングチャートである。
【０１６２】
まず、タイミングＴ６１にて、通信経路５０−１からシーケンス番号「０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「０」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ６２にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１」とされる。
【０１６３】
続いて、タイミングＴ６３にて、通信経路５０−１からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ６４にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「２」とされる。
【０１６４】
続いて、タイミングＴ６５にて、通信経路５０−１からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ６６にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「３」とされる。
【０１６５】
また、タイミングＴ６５にて、通信経路５０−２からシーケンス番号「０」のデータフレームが受信される（通信経路５０−２の伝搬遅延時間が通信経路５０−１の伝搬遅延時間よりも長いため、シーケンス番号「０」のデータフレームの受信が通信経路５０−１よりも遅い）と、このときのカウンタ３２６が示すカウンタ値が「２」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１６６】
その後、通信経路５０−１にて、シーケンス番号「３」および「４」のデータフレームはロスしたとする。
【０１６７】
一方、タイミングＴ６７にて、通信経路５０−２からシーケンス番号「１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１６８】
続いて、タイミングＴ６８にて、通信経路５０−２からシーケンス番号「２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１６９】
さらに続いて、タイミングＴ６９にて、通信経路５０−１からシーケンス番号「５」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１７０】
また、このとき、タイミングＴ６９にて、通信経路５０−２からシーケンス番号「３」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「３」であるため、図５を用いて説明したステップＳ１６の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ７０にて、図５を用いて説明したステップＳ１７の処理により、カウンタ３２６のカウンタ値がインクリメントされて「４」とされる。
【０１７１】
その後、通信経路５０−２にて、シーケンス番号「４」のデータフレームはロスしたとする。
【０１７２】
続いて、タイミングＴ７１にて、通信経路５０−１からシーケンス番号「６」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１７３】
続いて、タイミングＴ７２にて、通信経路５０−１からシーケンス番号「７」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１７４】
続いて、タイミングＴ７３にて、通信経路５０−２からシーケンス番号「５」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「４」であるため、図５を用いて説明したステップＳ１４の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ７４にて、図５を用いて説明したステップＳ１５の処理により、カウンタ３２６のカウンタ値が、当該データフレームに付与されているシーケンス番号「５」に１を加算した値「６」とされる。
【０１７５】
ここで、カウンタ３２６のカウンタ値が「６」とされることにより、図６を用いて説明したステップＳ２７の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「５」のデータフレームがＦＩＦＯメモリ３２５から消去される。
【０１７６】
すると、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「６」のデータフレームが、図６を用いて説明したステップＳ２５の処理により読み出されて送信される。
【０１７７】
また、このとき、タイミングＴ７４にて、通信経路５０−１からシーケンス番号「８」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「６」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１７８】
また、タイミングＴ７４にてシーケンス番号「６」のデータフレームが送信されると、タイミングＴ７５にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「７」とされる。
【０１７９】
ここで、カウンタ３２６のカウンタ値が「７」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「７」のデータフレームが読み出されて送信される。
【０１８０】
また、このとき、タイミングＴ７５にて、通信経路５０−２からシーケンス番号「６」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「７」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１８１】
続いて、タイミングＴ７６にて、通信経路５０−１からシーケンス番号「９」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「７」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１８２】
また、タイミングＴ７５にてシーケンス番号「７」のデータフレームが送信されると、タイミングＴ７７にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「８」とされる。
【０１８３】
ここで、カウンタ３２６のカウンタ値が「８」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「８」のデータフレームが読み出されて送信される。
【０１８４】
続いて、タイミングＴ７８にて、通信経路５０−２からシーケンス番号「７」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「８」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１８５】
また、タイミングＴ７７にてシーケンス番号「８」のデータフレームが送信されると、タイミングＴ７９にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「９」とされる。
【０１８６】
ここで、カウンタ３２６のカウンタ値が「９」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「９」のデータフレームが読み出されて送信される。
【０１８７】
また、このとき、タイミングＴ７９にて、通信経路５０−１からシーケンス番号「１０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「９」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１８８】
また、タイミングＴ７９にてシーケンス番号「９」のデータフレームが送信されると、タイミングＴ８０にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１０」とされる。
【０１８９】
ここで、カウンタ３２６のカウンタ値が「１０」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「１０」のデータフレームが読み出されて送信される。
【０１９０】
また、このとき、タイミングＴ８０にて、通信経路５０−２からシーケンス番号「８」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１０」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１９１】
続いて、タイミングＴ８１にて、通信経路５０−１からシーケンス番号「１１」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１０」であるため、図４を用いて説明したステップＳ４の処理により、当該データフレームがＦＩＦＯメモリ３２５に格納される。
【０１９２】
また、タイミングＴ８０にてシーケンス番号「１０」のデータフレームが送信されると、タイミングＴ８２にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１１」とされる。
【０１９３】
ここで、カウンタ３２６のカウンタ値が「１１」とされることにより、図６を用いて説明したステップＳ２５の処理により、ＦＩＦＯメモリ３２５に格納されているシーケンス番号「１１」のデータフレームが読み出されて送信される。
【０１９４】
続いて、タイミングＴ８３にて、通信経路５０−２からシーケンス番号「９」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１１」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１９５】
また、タイミングＴ８２にてシーケンス番号「１１」のデータフレームが送信されると、タイミングＴ８４にて、図６を用いて説明したステップＳ２６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１２」とされる。
【０１９６】
また、このとき、タイミングＴ８４にて、通信経路５０−１からシーケンス番号「１２」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１２」であるため、図４を用いて説明したステップＳ５の処理により、当該データフレームが送信される。当該データフレームが送信されると、タイミングＴ８５にて、図４を用いて説明したステップＳ６の処理により、カウンタ３２６のカウンタ値がインクリメントされて「１３」とされる。
【０１９７】
また、このとき、タイミングＴ８５にて、通信経路５０−２からシーケンス番号「１０」のデータフレームが受信されると、このときのカウンタ３２６が示すカウンタ値が「１３」であるため、図５を用いて説明したステップＳ１８の処理により、当該データフレームが廃棄される。
【０１９８】
運用系経路である通信経路５０−１においてフレームロスが発生した後、予備系経路である通信経路５０−２で障害を検出することなくフレームロスが発生した場合、ＳＤＨ／ＳＯＮＥＴネットワークにおいては、伝送路障害の瞬時発生・復旧、または伝送路の劣化による数ビットのエラー挿入によって、障害未検出でのフレームロスの発生があり得る。この場合、ＳＤＨ／ＳＯＮＥＴフレーム受信部３２０−１，３２０−２において伝送路障害を検出することができないため、イーサフレーム送信制御部３２４−３に対して図８を用いて説明したようにＦＩＦＯメモリ３２５に格納されているデータフレームを吐き出すトリガを与えることはできない。
【０１９９】
そこで、上述したように、正常時に送信する運用系経路からのデータフレームに付与されたシーケンス番号に同期して動作するカウンタ３２６を用いて、運用系経路からのデータフレームの一部がロスした場合は、カウンタ３２６を予備系経路からのデータフレームに付与されたシーケンス番号に同期させ、その間に運用系経路から受信したデータフレームをＦＩＦＯメモリ３２５に一時格納しておく。さらに予備系経路からのデータフレームの一部もロスした場合、ロス後に予備系経路から最初に受信したデータフレームに付与されているシーケンス番号に１を加算した値をカウンタ３２６のカウンタ値とさせることにより、ＦＩＦＯメモリ３２５に格納されているデータフレームを吐き出す。そして、運用系経路からのデータフレームに付与されたシーケンス番号がカウンタ３２６のカウンタ値に追いついた後は、運用系経路からのデータフレームを送信する。
【０２００】
なお、図６〜８に示したタイミングチャートは、各処理を行うために発生する処理遅延は微小なものであるため、無視した記載とした。
【０２０１】
また、図６〜８に示したタイミングチャートでは、カウンタ３２６のカウンタ値が変化するタイミングが、説明の便宜上、１つのデータフレームすべてを送信した後のタイミングとして示しているが、当該データフレームを送信し始めた直後のタイミングであっても良い。
【０２０２】
以上説明したように、本発明においては、以下に記載するような効果を奏する。
【０２０３】
第１の効果は、パケット受信側の処理として、２つの伝送路から送信されてきた互いに同じパケットのうち先に到着したものを選択してクライアント側装置へ送信する動作であるため、ＳＤＨ／ＳＯＮＥＴネットワークにおける無瞬断切り替えよりも小さな遅延での無瞬断切り替えを実施できることである。
【０２０４】
第２の効果は、２つの伝送路における遅延時間をあらかじめ測定して、運用系および予備系として専用のフレーム転送動作を設定しており、また伝送路障害発生時に即座にフレーム転送動作に対してトリガを与えることができるため、通常時および障害発生時において余分なＷａｉｔ時間を使うこと無く効率的にフレーム転送できることである。
【０２０５】
第３の効果は、運用系のパケットのみを必要なときだけメモリに格納する動作仕様であるため、実装するメモリのサイズ、数を削減できることである。
【０２０６】
このように、本発明では、ＳＤＨ／ＳＯＮＥＴネットワークにて冗長構成が設定された２つの伝送路の遅延時間の差は常に一定であり、そこから取りだされるパケットの間隔、遅延時間も常に一定であることを利用して、２つの伝送路の動作シーケンスを簡素化することによって、使用するメモリ量を効率的に減らし、またスイッチ内部にて発生する遅延量を低下させることができる。
【０２０７】
また、通常のイーサネットワークにおいては伝送路で発生した障害を検出することは困難（Ｅｔｈｅｒｎｅｔ（登録商標）  ＯＡＭなどの技術で不可能ではない）であるが、ＳＤＨ／ＳＯＮＥＴネットワークにおいては、伝送路毎の障害を容易に検出することが可能である。そのため、その障害情報に基づいたメモリ動作シーケンスを用いることにより、両系障害時にメモリに溜まったパケットを解放することができる。
【０２０８】
また、上述した中継装置３０−１，３０−２に設けられた各構成要素が行う処理は、目的に応じてそれぞれ作製された論理回路で行うようにしても良い。また、処理内容を手順として記述したプログラムを中継装置３０−１，３０−２にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを中継装置３０−１，３０−２に読み込ませ、実行するものであっても良い。中継装置３０−１，３０−２にて読取可能な記録媒体とは、フロッピー（登録商標）ディスク、光磁気ディスク、ＤＶＤ、ＣＤなどの移設可能な記録媒体の他、中継装置３０−１，３０−２に内蔵されたＲＯＭ、ＲＡＭ等のメモリやＨＤＤ等を指す。この記録媒体に記録されたプログラムは、中継装置３０−１，３０−２に設けられたＣＰＵ（不図示）にて読み込まれ、ＣＰＵの制御によって、上述したものと同様の処理が行われる。ここで、ＣＰＵは、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとして動作するものである。
【符号の説明】
【０２０９】
１０−１，１０−２    通信装置
２０−１，２０−２    クライアント側データネットワーク
３０−１〜３０−４    中継装置
３１    送信機能部
３２    受信機能部
４０    ＳＤＨ／ＳＯＮＥＴネットワーク
５０−１，５０−２    通信経路
６１    イーサネットフレームヘッダ
６２    シーケンス番号
６３  ペイロード
３１０    イーサフレーム受信部
３１１    シーケンス番号付与部
３１２    分配部
３１３−１，３１３−２    マッピング部
３１４−１，３１４−２    ＳＤＨ／ＳＯＮＥＴフレーム送信部
３２０−１，３２０−２    ＳＤＨ／ＳＯＮＥＴフレーム受信部
３２１−１，３２１−２    遅延検出部
３２２    遅延比較部
３２３−１，３２３−２    デマッピング部
３２４−１〜３２４−３    イーサフレーム送信制御部
３２５    ＦＩＦＯメモリ
３２６    カウンタ
３２７    イーサフレーム送信部
【図１】
0005691271.tif 000002
【図２】
0005691271.tif 000003
【図３】
0005691271.tif 000004
【図４】
0005691271.tif 000005
【図５】
0005691271.tif 000006
【図６】
0005691271.tif 000007
【図７】
0005691271.tif 000008
【図８】
0005691271.tif 000009
【図９】
0005691271.tif 000010
【図１０】
0005691271.tif 000011