(57)【要約】【課題】一定時間で、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断できるようにすること。【解決手段】スイッチングデバイス１１５は、第１のダミーフレーム処理部１１２から送られてきたユーザフレーム及びダミーフレームを第１のメモリバッファ１１６に備えられている複数のブロックの何れかに一時的に記憶させるとともに、それらの誤り検出を行い、記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５に送ったフレームのフレーム数をカウントし、カウントされたフレーム数が第１のメモリバッファ１１６の複数のブロックの総数に達した場合に、スイッチングデバイス１１５から、誤り検出情報を読み出し、スイッチングデバイス１１５は、誤り検出情報が読み出された後に、誤り検出情報をリセットする。【選択図】図２
2018092305.tif 000002
【特許請求の範囲】
【請求項１】
ユーザフレームの中継を行う中継装置であって、
前記ユーザフレームが入力されるポートと、
前記ユーザフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリと、
前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、
前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、
前記スイッチングデバイスは、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを前記複数のブロックの何れかに一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、
前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数をカウントし、当該カウントされたフレーム数が前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、
前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすること
を特徴とする中継装置。
【請求項２】
複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行う中継装置であって、
前記ユーザフレームが入力されるポートと、
複数のリングバッファとして機能し、当該複数のリングバッファの各々が前記ユーザフレームを一時的に記憶する複数のブロックを有するメモリと、
前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、
前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、
前記複数のリングバッファの各々は、前記複数の優先度の何れかに対応付けられており、
前記スイッチングデバイスは、前記複数のリングバッファの中から、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームに割り当てられている前記優先度に対応するリングバッファを選択し、当該選択されたリングバッファの前記複数のブロックの何れかに、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、
前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数を、前記複数のリングバッファの各々においてカウントし、前記複数のリングバッファの中で、当該カウントされたフレーム数が自身の前記複数のブロックの総数に達していないリングバッファを特定し、前記複数の優先度の中で、当該特定されたリングバッファに対応付けられている優先度を特定し、当該特定された優先度の中で最も高い優先度を割り当てた前記ダミーフレームを前記スイッチングデバイスに送るとともに、前記複数のリングバッファの中で、前記複数の優先度の中で最も低い優先度に対応するリングバッファにおける当該カウントされたフレーム数が、前記最も低い優先度に対応するリングバッファに備えられている前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、
前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすること
を特徴とする中継装置。
【請求項３】
前記スイッチングデバイスにより前記メモリから読み出された前記ダミーフレームを廃棄するダミーフレーム廃棄部をさらに備えること
を特徴とする請求項１又は２に記載の中継装置。
【請求項４】
前記ダミーフレームは、前記ユーザフレームの識別情報とは異なる特定の識別情報を含み、
前記ダミーフレーム廃棄部は、前記特定の識別情報により、前記ダミーフレームを識別すること
を特徴とする請求項３に記載の中継装置。
【請求項５】
前記特定の識別情報は、前記ダミーフレームに割り当てられた送信元の通信アドレスであること
を特徴とする請求項４に記載の中継装置。
【請求項６】
前記ダミーフレーム入力部が読み出した前記誤り検出情報が、誤りが検出されたことを連続して示す回数により、前記メモリに永続的な故障が発生しているか否かを判断する制御部をさらに備えること
を特徴とする請求項１から５の何れか一項に記載の中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置に関し、特に、誤り検出機能を有する中継装置に関する。
【背景技術】
【０００２】
Ｅｔｈｅｒｎｅｔ（登録商標）等の通信において、通信経路の分岐点ではスイッチングデバイスによりフレームの正常性の確認及びフレームに付与された優先度に基づく順序制御等の制御が行われる。スイッチングデバイスは、これらの制御を行うために、フレームを一時的に保存するためのメモリバッファを備えている。
【０００３】
高信頼性が要求される通信路においては、通信経路の分岐点に位置する装置についても誤り検出機能が要求される。このため、メモリバッファを備えるスイッチングデバイスも誤り検出機能を持つことがある。
【０００４】
メモリの故障には、以下の２種類の故障が存在する。
第１種の故障は、例えば、中性子及びα線がメモリチップに衝突及び通過することにより、メモリ内のデータが一時的に破壊される過渡故障である。過渡故障は、ソフトエラーとも呼ばれる。
第２種の故障は、例えば、回路の摩耗等によって回路が所望の機能を満たせなくなり、故障発生後は、永続的にデータが壊され続ける永続故障である。
【０００５】
例えば、特許文献１に開示された方式は、メモリバッファ内のある連続した領域（ここではメモリブロックと呼称する）について誤り検出符号を設けることによって、この領域を利用するフレームに誤りが発生したかどうかを検出するものである。この方式の場合、誤り検出符号が付与されたメモリブロックを利用しない場合は、そのメモリブロックの故障を検出することができない。
【０００６】
また、誤り検出の結果はメモリバッファを管理するスイッチングデバイスから読み出しが可能であるが、このとき、前回の読み出しから現時点までのアクセスによる誤り検出の有無のみを通知し、誤りを検出したメモリブロックの位置は通知しないスイッチングデバイスも多い。
【０００７】
従来、通信経路の分岐点に位置する装置は、電源ＯＮ時にスイッチングデバイスを含むデバイスの診断を行うが、このとき、メモリバッファにダミーデータを書き込むことでメモリバッファの正常性を確認する。
【０００８】
通常、メモリバッファは、リングバッファとして構成されるので、入力されたフレームは、到着順に、複数のメモリブロックの各々に格納される。このため、十分な量のダミーフレーム（ダミーデータ）が書き込まれた後に誤り検出の有無を読み出すことでメモリバッファ全体の正常性確認が可能である。
【０００９】
しかしながら、通常、メモリバッファは、運用中、主信号をバッファする用途に常時利用されているため、メモリバッファ全体の正常性確認は、装置起動時のデバイス診断時のみしか実施することができない。
【００１０】
また、誤りの位置を検出しないスイッチングデバイスを利用した場合、スイッチングデバイス経由で読み出した誤り検出の結果は、フレーム処理時に利用されたメモリブロックに依存する。例えば、フレーム流入が１フレームしかなく、そのフレーム処理で利用したメモリブロックで誤りが発生した場合、発生の要因が永続故障であるのかソフトエラーであるのかを判断することができない。
【００１１】
また、特許文献２に開示された方式は、フレーム流量の総数に対する誤り検出数の頻度からメモリバッファの永続故障の可能性を示唆する。
【００１２】
さらに、装置に対する設定値に従い、メモリバッファが複数のリングバッファ構成になった場合、フレームがどのリングバッファに格納されるのかはフレーム内のヘッダ情報で決定されるため、フレームの流入状況によっては、フレームが全てのバッファに取り込まれるとは限らない。その場合、利用されなかったリングバッファのメモリブロック中に永続故障が発生していたとしても、それを検出することはできなかった。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】国際公開第２０１６／０３８６７３号
【特許文献２】特開２０１３−１１５４５０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
従来のメモリバッファを要するスイッチングデバイスは、起動後の故障判定について、フレーム転送に伴うメモリブロックの誤り判定を利用しているため、フレーム流量が少ない場合及びメモリブロックが複数のリングバッファに分散している場合に、全てのメモリブロックが使用されない可能性がある。このため、従来の装置は、メモリバッファを構成するどれか一か所以上のメモリブロックにおいて、永続故障が発生しているのかソフトエラーが発生しているのかを一定時間で判断することができない。
【００１５】
そこで、本発明は、一定時間で、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断できるようにすることを目的とする。
【課題を解決するための手段】
【００１６】
本発明の一態様に係る中継装置は、ユーザフレームの中継を行う中継装置であって、前記ユーザフレームが入力されるポートと、前記ユーザフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリと、前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、前記スイッチングデバイスは、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを前記複数のブロックの何れかに一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数をカウントし、当該カウントされたフレーム数が前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすることを特徴とする。
【００１７】
本発明の他の態様に係る中継装置は、複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行う中継装置であって、前記ユーザフレームが入力されるポートと、複数のリングバッファとして機能し、当該複数のリングバッファの各々が前記ユーザフレームを一時的に記憶する複数のブロックを有するメモリと、前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、前記複数のリングバッファの各々は、前記複数の優先度の何れかに対応付けられており、前記スイッチングデバイスは、前記複数のリングバッファの中から、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームに割り当てられている前記優先度に対応するリングバッファを選択し、当該選択されたリングバッファの前記複数のブロックの何れかに、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数を、前記複数のリングバッファの各々においてカウントし、前記複数のリングバッファの中で、当該カウントされたフレーム数が自身の前記複数のブロックの総数に達していないリングバッファを特定し、前記複数の優先度の中で、当該特定されたリングバッファに対応付けられている優先度を特定し、当該特定された優先度の中で最も高い優先度を割り当てた前記ダミーフレームを前記スイッチングデバイスに送るとともに、前記複数のリングバッファの中で、前記複数の優先度の中で最も低い優先度に対応するリングバッファにおける当該カウントされたフレーム数が、前記最も低い優先度に対応するリングバッファに備えられている前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすることを特徴とする。
【発明の効果】
【００１８】
本発明の一態様によれば、ダミーフレームを用いることで、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断することができる。
【図面の簡単な説明】
【００１９】
【図１】実施の形態１及び２に係る光通信システムの構成を概略的に示すブロック図である。
【図２】実施の形態１及び２における中継装置の構成を概略的に示すブロック図である。
【図３】実施の形態１における第１のメモリバッファの論理構造を示す概略図である。
【図４】実施の形態１におけるリングバッファ管理テーブルを示す概略図である。
【図５】（Ａ）及び（Ｂ）は、実施の形態１及び２におけるハードウェア構成例を示す概略図である。
【図６】実施の形態１において、ダウンリンクポート側からアップリンクポート側へフレームを転送する場合における、第１のダミーフレーム処理部での処理を示すフローチャートである。
【図７】（Ａ）及び（Ｂ）は、ダミーフレームの入力タイミングを説明するための概略図である。
【図８】実施の形態２における第１のメモリバッファの論理構造を示す概略図である。
【図９】実施の形態２における第１のリングバッファ管理テーブルを示す概略図である。
【図１０】実施の形態２における第２のリングバッファ管理テーブルを示す概略図である。
【図１１】実施の形態２において、ダウンリンクポート側からアップリンクポート側へフレームを転送する場合における、第１のダミーフレーム処理部での処理を示すフローチャートである。
【発明を実施するための形態】
【００２０】
実施の形態１．
図１は、実施の形態１に係る光通信システム１００の構成を概略的に示すブロック図である。
光通信システム１００は、フレームの中継を行う中継装置１１０と、監視装置１３０と、ネットワーク端末１５０Ａ、１５０Ｂ、１５０Ｃとを備える。ネットワーク端末１５０Ａ、１５０Ｂ、１５０Ｃの各々を特に区別する必要がない場合には、ネットワーク端末１５０という。
【００２１】
中継装置１１０は、アップリンクケーブル１０２を介してネットワーク１０１に接続される。中継装置１１０は、ユーザフレームの発信元及び送信先となるネットワーク端末１５０とダウンリンクケーブル１０３Ａ、１０３Ｂ、１０３Ｃを介して接続される。ダウンリンクケーブル１０３Ａ、１０３Ｂ、１０３Ｃの各々を特に区別する必要がない場合には、ダウンリンクケーブル１０３という。
【００２２】
図１では、中継装置１１０は、ネットワーク１０１とは一つの経路で、ネットワーク端末１５０とは複数の経路で接続されているが、ユーザフレームが導通しているならば経路数は、これらの数に限定されない。また、中継装置１１０は、ネットワーク１０１及びネットワーク端末１５０との接続種別が異なっているが、ユーザフレームが導通しているならば経路種別は、どのようなものであってもよい。
【００２３】
また、中継装置１１０は、ケーブル１０４で監視装置１３０と接続されており、監視装置１３０から中継装置１１０に対してパラメータの設定及び誤り検出情報の取得が可能である。
【００２４】
図２は、中継装置１１０の構成を概略的に示すブロック図である。
図２は、中継装置１１０の機能構成のうち、この発明に関連する部分のみを示している。
中継装置１１０は、ダウンリンクポート１１１Ａ、１１１Ｂ、１１１Ｃと、第１のダミーフレーム処理部１１２と、アップリンクポート１１３と、第２のダミーフレーム処理部１１４と、スイッチングデバイス１１５と、第１のメモリバッファ１１６と、第２のメモリバッファ１１７と、制御部１１８とを備える。
なお、ダウンリンクポート１１１Ａ、１１１Ｂ、１１１Ｃの各々を特に区別する必要がない場合には、ダウンリンクポート１１１という。
【００２５】
ダウンリンクポート１１１は、ダウンリンクケーブル１０３を介してネットワーク端末１５０と通信を行うポートであり、ユーザフレームの入出力を行う。例えば、ダウンリンクケーブル１０３から到着したユーザフレームは、ダウンリンクポート１１１で終端され、内部バス１２０Ａ、１２０Ｂ、１２０Ｃ経由で第１のダミーフレーム処理部１１２に送られ、さらに、第１のダミーフレーム処理部１１２から内部バス１２１Ａ、１２１Ｂ、１２１Ｃ経由でスイッチングデバイス１１５に送られる。また、内部バス１２１Ａ、１２１Ｂ、１２１Ｃ経由で第１のダミーフレーム処理部１１２から到着したユーザフレームは、ダウンリンクポート１１１からダウンリンクケーブル１０３経由でネットワーク端末１５０に送信される。
なお、内部バス１２０Ａ、１２０Ｂ、１２０Ｃの各々を特に区別する必要がない場合には、内部バス１２０といい、内部バス１２１Ａ、１２１Ｂ、１２１Ｃの各々を特に区別する必要がない場合には、内部バス１２１という。
【００２６】
第１のダミーフレーム処理部１１２は、ダウンリンクポート１１１及びスイッチングデバイス１１５の間に配置されている。
第１のダミーフレーム処理部１１２は、ダウンリンクポート１１１から送られてきたユーザフレームを、内部バス１２１経由でスイッチングデバイス１１５に送る。
また、第１のダミーフレーム処理部１１２は、ダウンリンクポート１１１からユーザフレームが送られてきていない不使用時間に、中継装置１１０内で廃棄されるダミーフレームを内部バス１２１経由でスイッチングデバイス１１５に送る。ダミーフレームは、第１のダミーフレーム処理部１１２が生成してもよく、また、予めメモリ１１２ａに記憶されていてもよい。
【００２７】
さらに、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５から内部バス１２１経由で送られてきたフレームをチェックして、ユーザフレームとダミーフレームとを検出する。そして、第１のダミーフレーム処理部１１２は、検出されたユーザフレームを内部バス１２０経由でダウンリンクポート１１１に送り、ネットワーク端末１５０に送信させる。また、第１のダミーフレーム処理部１１２は、検出されたダミーフレームを廃棄する。
【００２８】
第１のダミーフレーム処理部１１２は、内部バス１２２にて制御部１１８と接続することで、制御部１１８との情報の送受を可能とする。また、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５から制御部１１８への内部バス１２３を接続することで、スイッチングデバイス１１５と制御部１１８との情報の送受信をバイパスする。
【００２９】
また、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５に送ったユーザフレーム及びダミーフレームの数であるフレーム数をカウントする。そして、第１のダミーフレーム処理部１１２は、カウントしたフレーム数が、制御部１１８から内部バス１２２経由で取得した、第１のメモリバッファ１１６の総ブロック数と一致した場合に、内部バス１２３経由でスイッチングデバイス１１５から第１のメモリバッファ１１６の第１の誤り検出情報を取得し、それを内部バス１２２経由で、制御部１１８に送る。
【００３０】
第１のダミーフレーム処理部１１２は、発生を優位として第１の誤り検出情報の更新を行い、制御部１１８から読み出し要求があった場合に、第１の誤り検出情報を非発生に更新する。具体的には、誤り検出情報は、誤りの発生として「１」、誤りの非発生として「０」の二値をとる。このような場合、第１のダミーフレーム処理部１１２は、自身が保存している第１の誤り検出情報をスイッチングデバイス１１５から誤り検出情報を取得する都度、取得した誤り検出情報との論理和をとって再保存する。ここで、第１のダミーフレーム処理部１１２は、制御部１１８から読み出し要求があったタイミングで、自身が保存している第１の誤り検出情報を「０」にすればよい。
【００３１】
アップリンクポート１１３は、アップリンクケーブル１０２を介してネットワーク１０１と通信を行うポートであり、ユーザフレームの入出力を行う。例えば、内部バス１２４経由で第２のダミーフレーム処理部１１４から到着したユーザフレームは、アップリンクポート１１３からアップリンクケーブル１０２経由でネットワーク１０１に送信される。また、アップリンクケーブル１０２から到着したユーザフレームは、アップリンクポート１１３で終端され、内部バス１２４経由で第２のダミーフレーム処理部１１４に送られ、さらに、第２のダミーフレーム処理部１１４から内部バス１２５経由でスイッチングデバイス１１５に送られる。
【００３２】
第２のダミーフレーム処理部１１４は、アップリンクポート１１３及びスイッチングデバイス１１５の間に配置されている。
第２のダミーフレーム処理部１１４は、アップリンクポート１１３から送られてきたユーザフレームを、内部バス１２５経由でスイッチングデバイス１１５に送る。
また、第２のダミーフレーム処理部１１４は、アップリンクポート１１３からユーザフレームが送られてきていない不使用時間に、中継装置１１０内で廃棄されるダミーフレームを内部バス１２５経由でスイッチングデバイス１１５に送る。ダミーフレームは、第２のダミーフレーム処理部１１４が生成してもよく、また、予めメモリ１１４ａに記憶されていてもよい。
【００３３】
さらに、第２のダミーフレーム処理部１１４は、スイッチングデバイス１１５から内部バス１２５経由で送られてきたフレームをチェックして、ユーザフレームとダミーフレームとを検出する。そして、第２のダミーフレーム処理部１１４は、検出されたユーザフレームを内部バス１２４経由でアップリンクポート１１３に送り、ネットワーク１０１に送信させる。また、第２のダミーフレーム処理部１１４は、検出されたダミーフレームを廃棄する。
【００３４】
第２のダミーフレーム処理部１１４は、内部バス１２６にて制御部１１８と接続することで、制御部１１８との情報の送受を可能とする。また、第２のダミーフレーム処理部１１４は、スイッチングデバイス１１５から制御部１１８への内部バス１２７を接続することで、スイッチングデバイス１１５と制御部１１８との情報の送受信をバイパスする。
【００３５】
また、第２のダミーフレーム処理部１１４は、スイッチングデバイス１１５に送ったユーザフレーム及びダミーフレームの数であるフレーム数をカウントする。そして、第２のダミーフレーム処理部１１４は、カウントしたフレーム数が、制御部１１８から内部バス１２６経由で取得した、第２のメモリバッファ１１７の総ブロック数と一致した場合に、内部バス１２７経由でスイッチングデバイス１１５から第２のメモリバッファ１１７の第２の誤り検出情報を取得し、それを内部バス１２６経由で、制御部１１８に送る。
第２のダミーフレーム処理部１１４による第２の誤り検出情報の処理については、第１のダミーフレーム処理部１１２による第１の誤り発生情報の処理と同様である。
【００３６】
スイッチングデバイス１１５は、第１のダミーフレーム処理部１１２から内部バス１２１経由で送られてきたユーザフレーム及びダミーフレームを内部バス１２８経由で第１のメモリバッファ１１６に一時的に記憶させる。また、スイッチングデバイス１１５は、第２のダミーフレーム処理部１１４から内部バス１２５経由で送られてきたユーザフレーム及びダミーフレームを内部バス１２９経由で第２のメモリバッファ１１７に一時的に記憶させる。
そして、スイッチングデバイス１１５は、記憶されたユーザフレーム及びダミーフレームの誤り検出を行うことで、その正常性を確認する。
【００３７】
スイッチングデバイス１１５は、記憶されたユーザフレーム及びダミーフレームを読み出して、読み出されたフレームの宛先に応じて、それを転送する。例えば、スイッチングデバイス１１５は、ユーザフレーム及びダミーフレームのヘッダ領域に記載された宛先に従って出力ポートを決定し、内部バス１２８、１２９経由でユーザフレーム及びダミーフレームを取り出し、内部バス１２５経由で第２のダミーフレーム処理部１１４又は内部バス１２１経由で第１のダミーフレーム処理部１１２の何れかに送る。
【００３８】
スイッチングデバイス１１５は、第１のメモリバッファ１１６の各々のブロックに記憶されているフレームの誤りを検出して、その誤り検出結果に基づいて、例えばメモリ１１５ａに保持されている第１の誤り検出情報を更新する。そして、スイッチングデバイス１１５は、第１のダミーフレーム処理部１１２からの読み出しに応答して、第１の誤り検出情報を、内部バス１２３経由で第１のダミーフレーム処理部１１２に送る。なお、スイッチングデバイス１１５は、第１のダミーフレーム処理部１１２に第１の誤り検出情報を送った場合には、第１の誤り検出情報をリセットして、誤りが検出されていないことを示すようにする。第１の誤り検出情報は、第１のメモリバッファ１１６のブロックに記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報である。なお、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５に送ったユーザフレーム及びダミーフレームをカウントしたフレーム数が、第１のメモリバッファ１１６のブロックの総数に達した場合に、スイッチングデバイス１１５に第１の誤り検出情報の読み出しを要求する。
【００３９】
また、スイッチングデバイス１１５は、第２のメモリバッファ１１７の各々のブロックに格納されているフレームの誤りを検出して、その誤りの検出結果に基づいて、例えばメモリ１１５ａに保持されている第２の誤り検出情報を更新する。そして、スイッチングデバイス１１５は、第２のダミーフレーム処理部１１４からの読み出しに応答して、第２の誤り検出情報を、内部バス１２３経由で第２のダミーフレーム処理部１１４に送る。なお、スイッチングデバイス１１５は、第２のダミーフレーム処理部１１４に第２の誤り検出情報を送った場合には、第２の誤り検出情報をリセットして、誤りが検出されていないことを示すようにする。第２の誤り検出情報は、第２のメモリバッファ１１７のブロックに記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報である。なお、第２のダミーフレーム処理部１１４は、スイッチングデバイス１１５に送ったユーザフレーム及びダミーフレームをカウントしたフレーム数が、第２のメモリバッファ１１７のブロックの総数に達した場合に、スイッチングデバイス１１５に第２の誤り検出情報の読み出しを要求する。
【００４０】
第１のメモリバッファ１１６は、内部バス１２８経由でスイッチングデバイス１１５からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリである。
第２のメモリバッファ１１７は、内部バス１２９経由でスイッチングデバイス１１５からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリである。
【００４１】
図３は、第１のメモリバッファ１１６の論理構造を示す概略図である。
第１のメモリバッファ１１６は、固定長のメモリブロック及び誤り検出符号を格納する領域の集まりである。本実施の形態においては、第１のメモリバッファ１１６は、各メモリブロックに誤り訂正符号を格納する領域を持つ。
なお、図示してはいないが、第２のメモリバッファ１１７の論理構造についても、図３に示されている第１のメモリバッファ１１６と同様であるものとする。
【００４２】
通常、メモリバッファは、複数のリングバッファ管理テーブルで管理される。
図４は、第１のメモリバッファ１１６を管理するためのリングバッファ管理テーブル１１６ａを示す概略図である。この図では、第１のメモリバッファ１１６の全てがリングバッファ管理テーブル１１６ａで管理されているものとする。第１のメモリバッファ１１６のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一度書き込まれたメモリブロックは、残りのメモリブロックが書き込まれない限り再度利用されることはない。
【００４３】
なお、リングバッファ管理テーブル１１６ａは、例えば、制御部１１８のメモリ１１８ａに記憶されており、第１のメモリバッファ１１６は、制御部１１８により管理されているものとする。また、図示してはいないが、第２のメモリバッファ１１７用のリングバッファ管理テーブルもメモリ１１８ａに記憶されており、第２のメモリバッファ１１７も制御部１１８により管理されているものとする。なお、第２のメモリバッファ１１７用のリングバッファ管理テーブルも、図４に示されているリングバッファ管理テーブル１１６ａと同様に構成されているものとする。
【００４４】
フレームが第１のメモリバッファ１１６又は第２のメモリバッファ１１７に格納され又は取り出された場合、スイッチングデバイス１１５は、格納又は取り出しを行ったメモリブロックに付与された誤り検出符号からそのメモリブロックで何らかの原因によるフレームの改ざん（誤り）の発生を検出可能である。スイッチングデバイス１１５は、その検出結果に基づいて、論理和を行うことにより、誤り検出情報を更新する。そして、スイッチングデバイス１１５は、制御部１１８から読み出されるまで、誤り検出情報を保持しておき、制御部１１８から読み出された時点で誤り検出情報をクリアする。
【００４５】
図３を利用してソフトエラー発生時の誤り検出を説明する。
フレームが一つだけ到着し、第１のメモリブロックに格納されたとする。格納前のフレームの内容を元に、第１のメモリブロックに付与された第１の誤り検出符号は更新される。
そして、宇宙線が第１のメモリブロックに格納されたフレームを保持するゲートにあたった場合、確率的にそのゲートに格納された１ｂｉｔが反転する。この時点では誤り（改ざん）は検出されない。
その後、スイッチングデバイス１１５は、第１のメモリブロックに格納されたフレームを取り出すときに、第１のメモリブロックに格納されたフレーム及び第１のメモリブロックに付与された第１の誤り検出符号に基づいてフレームの誤りを検出する。誤りが検出されたことを示す誤り検出情報は、スイッチングデバイス１１５で保持され、次の制御部１１８からの読み出し対応として、「誤りの発生」を示す誤り検出情報が制御部１１８に通知される。
【００４６】
第１のメモリブロックのフレームが読み出された後であっても、上書きされない限り第１のメモリブロックにはフレームが残っているため、スイッチングデバイス１１５は、第１のメモリブロックの誤りを検出し続ける。そのため、第１のメモリブロックに再度フレームが格納されるまでは、スイッチングデバイス１１５は制御部１１８からの読み出し対応として、「誤りの発生」を制御部１１８に通知し続ける。
【００４７】
第１のメモリブロックに新たにフレームが格納された場合、そのフレームに基づいて第１のメモリブロックに付与された第１の誤り検出符号が更新されるため、この時点で誤りの検出が解除され、スイッチングデバイス１１５は、制御部１１８からの次の読み出し対応として、「誤りの解除」を制御部１１８に通知する。
【００４８】
永続故障の場合は、第１のメモリブロックに新たにフレームが格納された場合であっても、そのフレームに基づいて第１のメモリブロックに付与された第１の誤り検出符号を用いた検証により、再度誤りが検出されるため、スイッチングデバイス１１５は、制御部１１８からの次の読み出し対応として、引き続き「誤りの発生」を制御部１１８に通知する。
【００４９】
このため、従来の技術では、ユーザフレームの流入量が継続的に少ない場合、全メモリブロックが利用されるまでの期間が長くなる。そして、誤り検出情報の読み込み周期が短い場合、「誤りの発生」が維持されている期間が長くなり、過度的なソフトエラーなのか永続的な故障なのかの判断を付けることが困難になっていた。
これに対して、本実施の形態では、ダミーフレームを用いることで、全てのメモリブロックが利用されるまでの期間を短くしている。
【００５０】
制御部１１８は、中継装置１１０での処理を制御する。
例えば、制御部１１８は、第１のメモリバッファ１１６のメモリブロック総数とスイッチングデバイス１１５のフレーム転送能力から算出される時間よりも長い周期で第１のダミーフレーム処理部１１２に対し、誤り検出情報の収集を行う。また、制御部１１８は、第２のメモリバッファ１１７のメモリブロック総数とスイッチングデバイス１１５のフレーム転送能力から算出される時間よりも長い周期で第２のダミーフレーム処理部１１４に対し、誤り検出情報の収集を行う。こうすることで、制御部１１８は、ソフトエラーは継続発生しないという特性から、ある周期の結果が「発生」で、次の周期の結果が「非発生」であるならばソフトエラー発生、ある周期の結果が「発生」で、次の周期の結果が「発生」であるならば永続的な故障発生と判断することが可能となる。即ち、制御部１１８は、誤り検出情報が誤りを検出したことを連続して示す回数により、永続的な故障の発生の有無を判断することができる。
また、制御部１１８は、図示しないポートを介して、ケーブル１０４経由で監視装置１３０からパラメータを受領する。さらに、制御部１１８は、内部バス１２２又は内部バス１２６経由でスイッチングデバイス１１５から受け取った誤り検出情報を監視装置１３０に送信したりする。
【００５１】
以上に記載された第１のダミーフレーム処理部１１２、第２のダミーフレーム処理部１１４及び制御部１１８の一部又は全部は、例えば、図５（Ａ）に示されているように、メモリ１０と、メモリ１０に格納されているプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサ１１とにより構成することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。
【００５２】
また、第１のダミーフレーム処理部１１２、第２のダミーフレーム処理部１１４及び制御部１１８の一部又は全部は、例えば、図５（Ｂ）に示されているように、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の処理回路１２で構成することもできる。
【００５３】
図６は、ダウンリンクポート１１１側からアップリンクポート１１３側へフレームを転送する場合における、第１のダミーフレーム処理部１１２での処理を示すフローチャートである。
ダウンリンクポート１１１側からアップリンクポート１１３側へフレームを転送する場合には、第１のダミーフレーム処理部１１２は、ダミーフレームを入力するダミーフレーム入力デバイス（ダミーフレーム入力部）として機能し、第２のダミーフレーム処理部１１４は、第１のダミーフレーム処理部１１２により入力されたダミーフレームを廃棄するダミーフレーム廃棄デバイス（ダミーフレーム廃棄部）として機能する。
【００５４】
第１のダミーフレーム処理部１１２は、処理開始後、制御部１１８から第１のメモリバッファ１１６の総ブロック数を取得する（Ｓ１０）。スイッチングデバイス１１５の管理下である第１のメモリバッファ１１６を構成する各々のメモリブロックの誤り検出結果は、全メモリブロックの論理和となるため、各々のメモリブロックの誤り検出結果をスイッチングデバイス１１５の外部では確認することができない。このため、総ブロック数は、全メモリブロックの状態を確認すべく全メモリブロックを充填するために必要なフレーム数と一致する。なお、総ブロック数は、スイッチングデバイス１１５とメモリバッファの特性及びスイッチングデバイス１１５に対するパラメータから推測されるものであり、スイッチングデバイス１１５から直接得られるものではない。
【００５５】
次に、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５から第１の誤り検出情報を空読みする（Ｓ１１）。ここでの空読みとは、スイッチングデバイス１１５から読み込んだ第１の誤り検出情報を第１のダミーフレーム処理部１１２の内部に持っているメモリ１１２ａ内の第１の誤り検出情報格納領域に反映しないことである。この第１の誤り検出情報格納領域は、開始時には「非発生」に初期化されているため、この時点では必ず「非発生」となる。また、この空読みにより、スイッチングデバイス１１５に記憶されている第１の誤り検出情報がリセットされて、誤りが検出されていないことを示すようになる。
【００５６】
第１のダミーフレーム処理部１１２は、メモリ１１２ａ内の送信カウンタを「０」に初期化する（Ｓ１２）。この送信カウンタは、第１のダミーフレーム処理部１１２からスイッチングデバイス１１５に送信したフレーム数を保持している。
【００５７】
その後、第１のダミーフレーム処理部１１２は、ダミーフレームの挿入ループ処理を行う（Ｓ１３〜Ｓ２１）。
【００５８】
ステップＳ１４では、第１のダミーフレーム処理部１１２は、ダウンリンクポート１１１からユーザフレームを受信したか否かを判断する。ユーザフレームを受信した場合（Ｓ１４でＹｅｓ）には、処理はステップＳ１５に進み、ユーザフレームを受信していない場合（Ｓ１４でＮｏ）には、処理はステップＳ１６に進む。
【００５９】
ステップＳ１５では、第１のダミーフレーム処理部１１２は、ユーザフレームをスイッチングデバイス１１５に転送する。そして、処理はステップＳ１７に進む。
一方、ステップＳ１６では、第１のダミーフレーム処理部１１２は、ダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス１１５に送信する。そして、処理はステップＳ１７に進む。
【００６０】
ダミーフレームは、ユーザフレームとして中継装置１１０に入力されることがなく、かつ、スイッチングデバイス１１５からみてユーザフレームと区別できない上に、ダミーフレーム廃棄デバイスとして機能する第２のダミーフレーム処理部１１４からは、ユーザフレームとダミーフレームとの区別が可能であるようなフレームである。具体的には、中継装置１１０が参加するネットワークがＥｔｈｅｒｎｅｔ（登録商標）である場合、予め、ダミーフレーム用の通信アドレスであるＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを定義しておき、それを第１のダミーフレーム処理部１１２のメモリ１１２ａ及び第２のダミーフレーム処理部１１４のメモリ１１４ａに格納しておく。第１のダミーフレーム処理部１１２は、ペイロードを適当に設定したうえで、宛先ＭＡＣアドレスエントリにブロードキャスト用の予約アドレスを、送信元ＭＡＣアドレスエントリにダミーフレーム用のＭＡＣアドレスを格納する。なお、条件を満足する場合、ダミーフレームを作成するための変更フィールドはＭＡＣアドレスに限定する必要はない。なお、第２のダミーフレーム処理部１１４は、送信元ＭＡＣアドレスがダミーフレーム用のＭＡＣアドレスである場合に、そのフレームをダミーフレームとして認識する。即ち、送信元ＭＡＣアドレスが、ダミーフレームを識別するための特定の識別情報として利用されている。
【００６１】
ステップＳ１７では、第１のダミーフレーム処理部１１２は、送信カウンタに「１」を加算する。
【００６２】
ステップＳ１８では、第１のダミーフレーム処理部１１２は、加算後の値が制御部１１８から取得した総ブロック数と一致しているか否かを判断する。そして、一致している場合（Ｓ１８でＹｅｓ）には、処理はステップＳ１９に進み、一致していない場合（Ｓ１８でＮｏ）には、処理はステップＳ２１に進む。
【００６３】
ステップＳ１９では、第１のダミーフレーム処理部１１２は、スイッチングデバイス１１５から第１の誤り検出情報を読み出す。そして、第１のダミーフレーム処理部１１２は、メモリ１１２ａに持っている第１の誤り検出情報格納領域の値と比較してどちらかが「発生」であった場合に、第１のダミーフレーム処理部１１２の内部に持っている誤り検出情報格納領の値を「発生」にする。
その後、第１のダミーフレーム処理部１１２は、送信カウンタを「０」にする（Ｓ２０）。そして、処理はステップＳ２１に進む。
【００６４】
ステップＳ２１では、第１のダミーフレーム処理部１１２は、処理をステップＳ１３に戻す。ここまでがダミーフレームの挿入ループ処理となり、原則的にループから脱出することはない。
なお、第１のダミーフレーム処理部１１２は、加算後の値が制御部１１８から取得した総ブロック数と一致していない場合（Ｓ１８でＮｏ）には、スイッチングデバイス１１５から第１の誤り検出情報を読み出さないことで、スイッチングデバイス１１５がもつ第１の誤り検出情報の状態は維持される。
【００６５】
図６に示されているフローにより、図７（Ａ）で示す通り、スイッチングデバイス１１５にユーザフレームＵＦの流入がない不使用時間に限り、ダミーフレームＤＭの入力が行われる。
しかしながら、図７（Ｂ）に示されているように、第１のダミーフレーム処理部１１２がスイッチングデバイス１１５にダミーフレームＤＦを入力している、まさにその最中である時刻ｔ１にユーザフレームＵＦが第１のダミーフレーム処理部１１２に到着する場合がある。このような場合、通常なら衝突が発生し、ダミーフレームＤＦ及びユーザフレームＵＦともに破壊されてしまう。
本実施の形態では、このような衝突を回避するため、第１のダミーフレーム処理部１１２のメモリ１１２ａにフレームバッファを設けることで、ダミーフレームＤＦを送信しきるまでユーザフレームＵＦの送信を待たす。図７（Ｂ）では、第１のダミーフレーム処理部１１２は、バッファリングを行うことで、ユーザフレームＵＦの送信を時刻ｔ２にまで遅らせている。
【００６６】
なお、アップリンクポート１１３側からダウンリンクポート１１１側へフレームを転送する場合には、第２のダミーフレーム処理部１１４が図６と同様のフローを行えばよい。このような場合には、第２のダミーフレーム処理部１１４がダミーフレームを入力するダミーフレーム入力デバイスとして機能し、第１のダミーフレーム処理部１１２が第２のダミーフレーム処理部１１４により入力されたダミーフレームを廃棄するダミーフレーム廃棄デバイスとして機能する。
【００６７】
以上のように、実施の形態１によれば、各々のメモリブロックの誤り検出を行うことができるため、スイッチングデバイス１１５へのフレームの入力経路において、ユーザフレームと中継装置１１０内で生成されたダミーフレームとをカウントし、メモリブロックの総数にあたるフレーム数が入力されたタイミングで誤り検出の有無を確認することで、メモリブロックの総数をフレーム転送能力で割った時間で、全メモリブロック内で１度以上誤りが発生したか否かの確認を行うことができる。
【００６８】
また、ソフトエラーは、１日に数度起こるようなものではないため、全メモリブロックの誤り検出を２周期繰り返し、発生が連続するようであれば永続故障が発生したと考えることができる。
通常、スイッチングデバイス１１５のフレーム転送能力は、メモリブロックの総数に比べて十分に大きいことから、最大速度でダミーフレームの入力を行った場合、数秒以内で２周期分のフレームを処理可能である。このため、スイッチングデバイス１１５の起動後であっても、数秒で永続故障が発生しているのかソフトエラーが発生しているのかを判断することができる。
【００６９】
実施の形態２．
図１に示されているように、実施の形態２に係る光通信システム２００は、中継装置２１０と、監視装置１３０と、ネットワーク端末１５０とを備える。
実施の形態２に係る光通信システム２００は、中継装置２１０を除いて、実施の形態１に係る光通信システム１００と同様に構成されている。
【００７０】
図２に示されているように、実施の形態２における中継装置２１０は、ダウンリンクポート１１１と、第１のダミーフレーム処理部２１２と、アップリンクポート１１３と、第２のダミーフレーム処理部２１４と、スイッチングデバイス２１５と、第１のメモリバッファ２１６と、第２のメモリバッファ２１７と、制御部２１８と、を備える。
実施の形態２におけるダウンリンクポート１１１及びアップリンクポート１１３については、実施の形態１と同様である。
なお、実施の形態２における中継装置２１０は、複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行うものとする。
【００７１】
第１のメモリバッファ２１６は、複数のリングバッファとして機能するメモリである。そして、複数のリングバッファの各々は、内部バス１２８経由でスイッチングデバイス２１５からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備える。なお、複数のリングバッファの各々は、複数の優先度の何れかに対応付けられている。
第２のメモリバッファ２１７は、複数のリングバッファとして機能するメモリである。そして、複数のリングバッファの各々は、内部バス１２９経由でスイッチングデバイス２１５からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備える。なお、複数のリングバッファの各々は、複数の優先度の何れかに対応付けられている。
【００７２】
図８は、実施の形態２における第１のメモリバッファ２１６の論理構造を示す概略図である。第１のメモリバッファ２１６の物理構成自体は、実施の形態１と同一である。
【００７３】
図８に示されているように、第１のメモリバッファ２１６には、第１のリングバッファと、第２のリングバッファとが設けられている。
第１のリングバッファは、図９に示されている第１のリングバッファ管理テーブル２１６Ａで管理されている。実施の形態２における第１のリングバッファは、図９に示されているように第１のメモリブロック〜第５のメモリブロックにより構成されている。
第２のリングバッファは、図１０に示されている第２のリングバッファ管理テーブル２１６Ｂで管理されている。実施の形態２における第２のリングバッファは、図１０に示されているように第６のメモリブロック〜第ｎのメモリブロックにより構成されている。ここで、ｎは、７以上の正の整数である。
第１のメモリバッファ２１６のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一つのメモリブロックが複数のリングバッファに参加することはない。フレームが一度書き込まれたメモリブロックは、参加リングバッファ中の残りのメモリブロックが書き込まれない限り再度利用されることはない。
【００７４】
第１のメモリバッファ２１６に設けられている複数のリングバッファは、フレーム転送時に各フレームの優先度により送信頻度を操作した場合に利用される。
例えば、２つのダウンリンクポート１１１Ａ、１１１Ｂから優先度の高いフレームと優先度の低いフレームがスイッチングデバイス２１５に到着し、２つのダウンリンクポート１１１Ａ、１１１Ｂから到着したフレームの帯域（単位時間あたりのフレーム数）の和がアップリンクポート１１３の処理可能な最大帯域を超過している場合を考える。このような場合には、スイッチングデバイス２１５に到着したフレームのうち、優先度の高いフレームのほうが優先度の低いフレームよりも高い頻度でアップリンクポート１１３に送信されるようにすることが望ましい。
【００７５】
スイッチングデバイス２１５は、メモリ２１５ａに優先度と対応するリングバッファの対応表を持っており、ダウンリンクポート１１１から入力されたフレームを、フレームのヘッダに格納されている優先度を元に、第１のメモリバッファ１１６内の対応するリングバッファに格納する。
その後、スイッチングデバイス２１５は、第１のメモリバッファ２１６内のフレームの転送を行うにあたり、優先度の高いフレームに対応したリングバッファに格納されたフレームを優先的に処理する。
優先度の高いフレームに対応したリングバッファの処理数と優先度の低いフレームに対応したリングバッファの処理数との比の決定には各種のアルゴリズムがあり、高優先のフレームの処理が完了しない限り、低優先のフレームの処理を行わないものを「完全優先（Ｓｔｒｉｃｔ  Ｐｒｉｏｒｉｔｙ  Ｑｕｅｕｉｎｇ）」アルゴリズムという。実施の形態２では、何れのアルゴリズムが適用されてもよい。
【００７６】
このようにして第１のメモリバッファ１１６を複数のリングバッファで分離することにより、フレーム内に格納された優先度をもとにフレームの優先制御が実現されている。ここで、低優先度のユーザフレームのみが到着し、高優先度のフレームが中継装置１１０に到着しない場合、高優先度のフレームに対応したリングバッファを構成するメモリブロックにフレームが格納されない。このような場合、高優先度のフレームに対応したリングバッファを構成するメモリブロックの故障判定ができず、高優先度のフレームが到着した場合に、フレームロスが発生して、初めて異常に気付くことになる。実施の形態２はこの問題を解消する。
なお、第２のメモリバッファ２１７の論理構成も第１のメモリバッファ２１６と同様に構成されており、同様の問題を有しているものとする。
【００７７】
実施の形態２における第１のダミーフレーム処理部２１２は、実施の形態１における第１のダミーフレーム処理部１１２とほぼ同様の処理を行う。しかしながら、実施の形態２では、第１のメモリバッファ２１６に、優先度に応じて、複数のリングバッファが設けられているため、第１のダミーフレーム処理部２１２は、実施の形態１とは異なる以下の処理を行う。
【００７８】
第１のダミーフレーム処理部２１２は、ダウンリンクポート１１１からユーザフレームが送られてきていない不使用時間に、優先度の高いものから順にダミーフレームを内部バス１２１経由でスイッチングデバイス２１５に送る。例えば、第１のダミーフレーム処理部２１２は、スイッチングデバイス２１５に送ったユーザフレーム及びダミーフレームのフレーム数を、第１のメモリバッファ２１６における複数のリングバッファ毎にカウントする。第１のダミーフレーム処理部２１２は、第１のメモリバッファ２１６の複数のリングバッファの中で、カウントされたフレーム数が、自身に設けられている複数のブロックの総数に達していないリングバッファを特定する。第１のダミーフレーム処理部２１２は、複数の優先度の中で、特定されたリングバッファに対応付けられている優先度を特定し、特定された優先度の中で最も高い優先度を割り当てたダミーフレームをスイッチングデバイス２１５に送る。
そして、第１のダミーフレーム処理部２１２は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス２１５から、第１の誤り検出情報を読み出す。
【００７９】
実施の形態２における第２のダミーフレーム処理部２１４は、実施の形態１における第２のダミーフレーム処理部１１４とほぼ同様の処理を行う。しかしながら、実施の形態２では、第２のメモリバッファ２１７に、優先度に応じて、複数のリングバッファが設けられているため、第２のダミーフレーム処理部２１４は、実施の形態１とは異なる以下の処理を行う。
【００８０】
第２のダミーフレーム処理部２１４は、アップリンクポート１１３からユーザフレームが送られてきていない不使用時間に、優先度の高いものから順にダミーフレームを内部バス１２５経由でスイッチングデバイス２１５に送る。例えば、第２のダミーフレーム処理部２１４は、スイッチングデバイス２１５に送ったユーザフレーム及びダミーフレームのフレーム数を、第２のメモリバッファ２１７における複数のリングバッファ毎にカウントする。第２のダミーフレーム処理部２１４は、第２のメモリバッファ２１７の複数のリングバッファの中で、カウントされたフレーム数が、自身に設けられている複数のブロックの総数に達していないリングバッファを特定する。第２のダミーフレーム処理部２１４は、複数の優先度の中で、特定されたリングバッファに対応付けられている優先度を特定し、特定された優先度の中で最も高い優先度を割り当てたダミーフレームをスイッチングデバイス２１５に送る。
そして、第２のダミーフレーム処理部２１４は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス２１５から、第２の誤り検出情報を読み出す。
【００８１】
実施の形態２におけるスイッチングデバイス２１５は、実施の形態１におけるスイッチングデバイス１１５とほぼ同様の処理を行うが、入力されたフレームの優先度に応じて、入力されたフレームを、第１のメモリバッファ２１６内の対応するリングバッファの複数のブロックの何れか又は第２のメモリバッファ２１７内の対応するリングバッファの複数のブロックの何れかに一時的に記憶させる。
なお、スイッチングデバイス２１５は、メモリ２１５ａに第２のメモリバッファ２１７用の、優先度と対応するリングバッファの対応表も保持している。
【００８２】
実施の形態２における制御部２１８は、実施の形態１における制御部１１８とほぼ同様の処理を行うが、メモリ２１８ａ内に、図９に示されている第１のリングバッファ管理テーブル２１６Ａ及び図１０に示されている第２のリングバッファ管理テーブル２１６Ｂを記憶しているほか、第２のメモリバッファ２１７に設けられている複数のリングバッファを管理するための複数のリングバッファ管理テーブル（図示せず）を記憶している。
【００８３】
図１１は、ダウンリンクポート１１１側からアップリンクポート１１３側へフレームを転送する場合における、第１のダミーフレーム処理部２１２での処理を示すフローチャートである。
【００８４】
第１のダミーフレーム処理部２１２は、処理開始後、制御部２１８から第１のメモリバッファ２１６のリングバッファ構成情報を取得する（Ｓ３０）。具体的には、第１のダミーフレーム処理部２１２は、図８に示されている、リングバッファ毎の利用メモリブロック数（総ブロック数）、及び、フレームのヘッダ内に格納された優先度とその優先度をもつフレームが格納されるリングバッファの対応表を取得する。
【００８５】
次に、第１のダミーフレーム処理部２１２は、スイッチングデバイス２１５から第１の誤り検出情報を空読みする（Ｓ３１）。
【００８６】
第１のダミーフレーム処理部２１２は、メモリ２１２ａ内のリンクバッファ毎の送信カウンタを「０」に初期化する（Ｓ３２）。この送信カウンタは、第１のダミーフレーム処理部２１２からスイッチングデバイス２１５に送信したリンクバッファ毎のフレーム数を保持している。
【００８７】
その後、第１のダミーフレーム処理部２１２は、ダミーフレームの挿入ループ処理を行う（Ｓ３３〜Ｓ４１）。
【００８８】
ステップＳ３４では、第１のダミーフレーム処理部２１２は、ダウンリンクポート１１１からユーザフレームを受信したか否かを判断する。ユーザフレームを受信した場合（Ｓ３４でＹｅｓ）には、処理はステップＳ３５に進み、ユーザフレームを受信していない場合（Ｓ３４でＮｏ）には、処理はステップＳ３６に進む。
【００８９】
ステップＳ３５では、第１のダミーフレーム処理部２１２は、ユーザフレームをスイッチングデバイス２１５に転送する。そして、処理はステップＳ３７に進む。
一方、ステップＳ３６では、第１のダミーフレーム処理部２１２は、送信カウントの値が対応するリングバッファの総ブロック数に達していないリングバッファに対応付けられている優先度の内、最も高い優先度を持つダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス２１５に送信する。そして、処理はステップＳ３７に進む。なお、ダミーフレームの設定は、優先度を除いて、実施の形態１と同様である。
【００９０】
ステップＳ３７では、第１のダミーフレーム処理部２１２は、ステップＳ３５又はステップＳ３６で送信されたフレームの優先度に対応するリングバッファの送信カウンタに「１」を加算する。
【００９１】
ステップＳ３８では、第１のダミーフレーム処理部２１２は、最も低い優先度に対応するリングバッファの値が制御部２１８から取得した、そのリングバッファの総ブロック数と一致しているか否かを判断する。そして、一致している場合（Ｓ３８でＹｅｓ）には、処理はステップＳ３９に進み、一致していない場合（Ｓ３８でＮｏ）には、処理はステップＳ４１に進む。
【００９２】
ステップＳ３９では、第１のダミーフレーム処理部２１２は、スイッチングデバイス２１５から第１の誤り検出情報を読み出す。そして、第１のダミーフレーム処理部２１２は、メモリ２１２ａに持っている第１の誤り検出情報格納領域の値と比較してどちらかが「発生」であった場合に、第１のダミーフレーム処理部２１２の内部に持っている第１の誤り検出情報格納領の値を「発生」にする。
その後、第１のダミーフレーム処理部２１２は、全てのリングバッファの送信カウンタを「０」にする（Ｓ４０）。そして、処理はステップＳ４１に進む。
【００９３】
ステップＳ４１では、第１のダミーフレーム処理部２１２は、処理をステップＳ３３に戻す。ここまでがダミーフレームの挿入ループ処理となり、原則的にループから脱出することはない。
なお、第１のダミーフレーム処理部２１２は、加算後の値が制御部２１８から取得した総ブロック数と一致していない場合（Ｓ３８でＮｏ）には、スイッチングデバイス２１５から第１の誤り検出情報を読み出さないことで、スイッチングデバイス２１５がもつ第１の誤り検出情報の状態は維持される。
【００９４】
なお、アップリンクポート１１３側からダウンリンクポート１１１側へフレームを転送する場合には、第２のダミーフレーム処理部２１４が図１１と同様のフローを行えばよい。
【００９５】
以上のように、実施の形態２によれば、優先度の低いユーザフレームが多く送信される場合でも、優先度の高いダミーフレームを作成してメモリバッファに格納することで、優先度の高いフレームに使用されるリングバッファに参加するメモリブロックの故障を検出することができる。
【００９６】
以上に記載された実施の形態１及び２では、スイッチングデバイス１１５、２１５が一つ設けられているが、例えば、第１のメモリバッファ１１６、２１６用に一つのスイッチングデバイス（第１のスイッチングデバイス）、第２のメモリバッファ１１７、２１７用に一つのスイッチングデバイス（第２のスイッチングデバイス）が設けられていてもよい。
【符号の説明】
【００９７】
１００，２００  光通信システム、  １１０，２１０  中継装置、  １１１  ダウンリンクポート、  １１２，２１２  第１のダミーフレーム処理部、  １１３  アップリンクポート、  １１４，２１４  第２のダミーフレーム処理部、  １１５，２１５  スイッチングデバイス、  １１６，２１６  第１のメモリバッファ、  １１７，２１７  第２のメモリバッファ、  １１８，２１８  制御部、  １３０  監視装置、  １５０  ネットワーク端末。
【図１】
2018092305.tif 000003
【図２】
2018092305.tif 000004
【図３】
2018092305.tif 000005
【図４】
2018092305.tif 000006
【図５】
2018092305.tif 000007
【図６】
2018092305.tif 000008
【図７】
2018092305.tif 000009
【図８】
2018092305.tif 000010
【図９】
2018092305.tif 000011
【図１０】
2018092305.tif 000012
【図１１】
2018092305.tif 000013