JP2018092305A - 中継装置 - Google Patents
中継装置 Download PDFInfo
- Publication number
- JP2018092305A JP2018092305A JP2016234018A JP2016234018A JP2018092305A JP 2018092305 A JP2018092305 A JP 2018092305A JP 2016234018 A JP2016234018 A JP 2016234018A JP 2016234018 A JP2016234018 A JP 2016234018A JP 2018092305 A JP2018092305 A JP 2018092305A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- switching device
- dummy
- dummy frame
- error detection
- 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.)
- Pending
Links
Images
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【課題】一定時間で、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断できるようにすること。
【解決手段】スイッチングデバイス115は、第1のダミーフレーム処理部112から送られてきたユーザフレーム及びダミーフレームを第1のメモリバッファ116に備えられている複数のブロックの何れかに一時的に記憶させるとともに、それらの誤り検出を行い、記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、第1のダミーフレーム処理部112は、スイッチングデバイス115に送ったフレームのフレーム数をカウントし、カウントされたフレーム数が第1のメモリバッファ116の複数のブロックの総数に達した場合に、スイッチングデバイス115から、誤り検出情報を読み出し、スイッチングデバイス115は、誤り検出情報が読み出された後に、誤り検出情報をリセットする。
【選択図】図2
【解決手段】スイッチングデバイス115は、第1のダミーフレーム処理部112から送られてきたユーザフレーム及びダミーフレームを第1のメモリバッファ116に備えられている複数のブロックの何れかに一時的に記憶させるとともに、それらの誤り検出を行い、記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、第1のダミーフレーム処理部112は、スイッチングデバイス115に送ったフレームのフレーム数をカウントし、カウントされたフレーム数が第1のメモリバッファ116の複数のブロックの総数に達した場合に、スイッチングデバイス115から、誤り検出情報を読み出し、スイッチングデバイス115は、誤り検出情報が読み出された後に、誤り検出情報をリセットする。
【選択図】図2
Description
本発明は、中継装置に関し、特に、誤り検出機能を有する中継装置に関する。
Ethernet(登録商標)等の通信において、通信経路の分岐点ではスイッチングデバイスによりフレームの正常性の確認及びフレームに付与された優先度に基づく順序制御等の制御が行われる。スイッチングデバイスは、これらの制御を行うために、フレームを一時的に保存するためのメモリバッファを備えている。
高信頼性が要求される通信路においては、通信経路の分岐点に位置する装置についても誤り検出機能が要求される。このため、メモリバッファを備えるスイッチングデバイスも誤り検出機能を持つことがある。
メモリの故障には、以下の2種類の故障が存在する。
第1種の故障は、例えば、中性子及びα線がメモリチップに衝突及び通過することにより、メモリ内のデータが一時的に破壊される過渡故障である。過渡故障は、ソフトエラーとも呼ばれる。
第2種の故障は、例えば、回路の摩耗等によって回路が所望の機能を満たせなくなり、故障発生後は、永続的にデータが壊され続ける永続故障である。
第1種の故障は、例えば、中性子及びα線がメモリチップに衝突及び通過することにより、メモリ内のデータが一時的に破壊される過渡故障である。過渡故障は、ソフトエラーとも呼ばれる。
第2種の故障は、例えば、回路の摩耗等によって回路が所望の機能を満たせなくなり、故障発生後は、永続的にデータが壊され続ける永続故障である。
例えば、特許文献1に開示された方式は、メモリバッファ内のある連続した領域(ここではメモリブロックと呼称する)について誤り検出符号を設けることによって、この領域を利用するフレームに誤りが発生したかどうかを検出するものである。この方式の場合、誤り検出符号が付与されたメモリブロックを利用しない場合は、そのメモリブロックの故障を検出することができない。
また、誤り検出の結果はメモリバッファを管理するスイッチングデバイスから読み出しが可能であるが、このとき、前回の読み出しから現時点までのアクセスによる誤り検出の有無のみを通知し、誤りを検出したメモリブロックの位置は通知しないスイッチングデバイスも多い。
従来、通信経路の分岐点に位置する装置は、電源ON時にスイッチングデバイスを含むデバイスの診断を行うが、このとき、メモリバッファにダミーデータを書き込むことでメモリバッファの正常性を確認する。
通常、メモリバッファは、リングバッファとして構成されるので、入力されたフレームは、到着順に、複数のメモリブロックの各々に格納される。このため、十分な量のダミーフレーム(ダミーデータ)が書き込まれた後に誤り検出の有無を読み出すことでメモリバッファ全体の正常性確認が可能である。
しかしながら、通常、メモリバッファは、運用中、主信号をバッファする用途に常時利用されているため、メモリバッファ全体の正常性確認は、装置起動時のデバイス診断時のみしか実施することができない。
また、誤りの位置を検出しないスイッチングデバイスを利用した場合、スイッチングデバイス経由で読み出した誤り検出の結果は、フレーム処理時に利用されたメモリブロックに依存する。例えば、フレーム流入が1フレームしかなく、そのフレーム処理で利用したメモリブロックで誤りが発生した場合、発生の要因が永続故障であるのかソフトエラーであるのかを判断することができない。
また、特許文献2に開示された方式は、フレーム流量の総数に対する誤り検出数の頻度からメモリバッファの永続故障の可能性を示唆する。
さらに、装置に対する設定値に従い、メモリバッファが複数のリングバッファ構成になった場合、フレームがどのリングバッファに格納されるのかはフレーム内のヘッダ情報で決定されるため、フレームの流入状況によっては、フレームが全てのバッファに取り込まれるとは限らない。その場合、利用されなかったリングバッファのメモリブロック中に永続故障が発生していたとしても、それを検出することはできなかった。
従来のメモリバッファを要するスイッチングデバイスは、起動後の故障判定について、フレーム転送に伴うメモリブロックの誤り判定を利用しているため、フレーム流量が少ない場合及びメモリブロックが複数のリングバッファに分散している場合に、全てのメモリブロックが使用されない可能性がある。このため、従来の装置は、メモリバッファを構成するどれか一か所以上のメモリブロックにおいて、永続故障が発生しているのかソフトエラーが発生しているのかを一定時間で判断することができない。
そこで、本発明は、一定時間で、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断できるようにすることを目的とする。
本発明の一態様に係る中継装置は、ユーザフレームの中継を行う中継装置であって、前記ユーザフレームが入力されるポートと、前記ユーザフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリと、前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、前記スイッチングデバイスは、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを前記複数のブロックの何れかに一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数をカウントし、当該カウントされたフレーム数が前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすることを特徴とする。
本発明の他の態様に係る中継装置は、複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行う中継装置であって、前記ユーザフレームが入力されるポートと、複数のリングバッファとして機能し、当該複数のリングバッファの各々が前記ユーザフレームを一時的に記憶する複数のブロックを有するメモリと、前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、前記複数のリングバッファの各々は、前記複数の優先度の何れかに対応付けられており、前記スイッチングデバイスは、前記複数のリングバッファの中から、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームに割り当てられている前記優先度に対応するリングバッファを選択し、当該選択されたリングバッファの前記複数のブロックの何れかに、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数を、前記複数のリングバッファの各々においてカウントし、前記複数のリングバッファの中で、当該カウントされたフレーム数が自身の前記複数のブロックの総数に達していないリングバッファを特定し、前記複数の優先度の中で、当該特定されたリングバッファに対応付けられている優先度を特定し、当該特定された優先度の中で最も高い優先度を割り当てた前記ダミーフレームを前記スイッチングデバイスに送るとともに、前記複数のリングバッファの中で、前記複数の優先度の中で最も低い優先度に対応するリングバッファにおける当該カウントされたフレーム数が、前記最も低い優先度に対応するリングバッファに備えられている前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすることを特徴とする。
本発明の一態様によれば、ダミーフレームを用いることで、全てのメモリブロックにフレームを一時的に記憶させて、誤りの有無を判断することができる。
実施の形態1.
図1は、実施の形態1に係る光通信システム100の構成を概略的に示すブロック図である。
光通信システム100は、フレームの中継を行う中継装置110と、監視装置130と、ネットワーク端末150A、150B、150Cとを備える。ネットワーク端末150A、150B、150Cの各々を特に区別する必要がない場合には、ネットワーク端末150という。
図1は、実施の形態1に係る光通信システム100の構成を概略的に示すブロック図である。
光通信システム100は、フレームの中継を行う中継装置110と、監視装置130と、ネットワーク端末150A、150B、150Cとを備える。ネットワーク端末150A、150B、150Cの各々を特に区別する必要がない場合には、ネットワーク端末150という。
中継装置110は、アップリンクケーブル102を介してネットワーク101に接続される。中継装置110は、ユーザフレームの発信元及び送信先となるネットワーク端末150とダウンリンクケーブル103A、103B、103Cを介して接続される。ダウンリンクケーブル103A、103B、103Cの各々を特に区別する必要がない場合には、ダウンリンクケーブル103という。
図1では、中継装置110は、ネットワーク101とは一つの経路で、ネットワーク端末150とは複数の経路で接続されているが、ユーザフレームが導通しているならば経路数は、これらの数に限定されない。また、中継装置110は、ネットワーク101及びネットワーク端末150との接続種別が異なっているが、ユーザフレームが導通しているならば経路種別は、どのようなものであってもよい。
また、中継装置110は、ケーブル104で監視装置130と接続されており、監視装置130から中継装置110に対してパラメータの設定及び誤り検出情報の取得が可能である。
図2は、中継装置110の構成を概略的に示すブロック図である。
図2は、中継装置110の機能構成のうち、この発明に関連する部分のみを示している。
中継装置110は、ダウンリンクポート111A、111B、111Cと、第1のダミーフレーム処理部112と、アップリンクポート113と、第2のダミーフレーム処理部114と、スイッチングデバイス115と、第1のメモリバッファ116と、第2のメモリバッファ117と、制御部118とを備える。
なお、ダウンリンクポート111A、111B、111Cの各々を特に区別する必要がない場合には、ダウンリンクポート111という。
図2は、中継装置110の機能構成のうち、この発明に関連する部分のみを示している。
中継装置110は、ダウンリンクポート111A、111B、111Cと、第1のダミーフレーム処理部112と、アップリンクポート113と、第2のダミーフレーム処理部114と、スイッチングデバイス115と、第1のメモリバッファ116と、第2のメモリバッファ117と、制御部118とを備える。
なお、ダウンリンクポート111A、111B、111Cの各々を特に区別する必要がない場合には、ダウンリンクポート111という。
ダウンリンクポート111は、ダウンリンクケーブル103を介してネットワーク端末150と通信を行うポートであり、ユーザフレームの入出力を行う。例えば、ダウンリンクケーブル103から到着したユーザフレームは、ダウンリンクポート111で終端され、内部バス120A、120B、120C経由で第1のダミーフレーム処理部112に送られ、さらに、第1のダミーフレーム処理部112から内部バス121A、121B、121C経由でスイッチングデバイス115に送られる。また、内部バス121A、121B、121C経由で第1のダミーフレーム処理部112から到着したユーザフレームは、ダウンリンクポート111からダウンリンクケーブル103経由でネットワーク端末150に送信される。
なお、内部バス120A、120B、120Cの各々を特に区別する必要がない場合には、内部バス120といい、内部バス121A、121B、121Cの各々を特に区別する必要がない場合には、内部バス121という。
なお、内部バス120A、120B、120Cの各々を特に区別する必要がない場合には、内部バス120といい、内部バス121A、121B、121Cの各々を特に区別する必要がない場合には、内部バス121という。
第1のダミーフレーム処理部112は、ダウンリンクポート111及びスイッチングデバイス115の間に配置されている。
第1のダミーフレーム処理部112は、ダウンリンクポート111から送られてきたユーザフレームを、内部バス121経由でスイッチングデバイス115に送る。
また、第1のダミーフレーム処理部112は、ダウンリンクポート111からユーザフレームが送られてきていない不使用時間に、中継装置110内で廃棄されるダミーフレームを内部バス121経由でスイッチングデバイス115に送る。ダミーフレームは、第1のダミーフレーム処理部112が生成してもよく、また、予めメモリ112aに記憶されていてもよい。
第1のダミーフレーム処理部112は、ダウンリンクポート111から送られてきたユーザフレームを、内部バス121経由でスイッチングデバイス115に送る。
また、第1のダミーフレーム処理部112は、ダウンリンクポート111からユーザフレームが送られてきていない不使用時間に、中継装置110内で廃棄されるダミーフレームを内部バス121経由でスイッチングデバイス115に送る。ダミーフレームは、第1のダミーフレーム処理部112が生成してもよく、また、予めメモリ112aに記憶されていてもよい。
さらに、第1のダミーフレーム処理部112は、スイッチングデバイス115から内部バス121経由で送られてきたフレームをチェックして、ユーザフレームとダミーフレームとを検出する。そして、第1のダミーフレーム処理部112は、検出されたユーザフレームを内部バス120経由でダウンリンクポート111に送り、ネットワーク端末150に送信させる。また、第1のダミーフレーム処理部112は、検出されたダミーフレームを廃棄する。
第1のダミーフレーム処理部112は、内部バス122にて制御部118と接続することで、制御部118との情報の送受を可能とする。また、第1のダミーフレーム処理部112は、スイッチングデバイス115から制御部118への内部バス123を接続することで、スイッチングデバイス115と制御部118との情報の送受信をバイパスする。
また、第1のダミーフレーム処理部112は、スイッチングデバイス115に送ったユーザフレーム及びダミーフレームの数であるフレーム数をカウントする。そして、第1のダミーフレーム処理部112は、カウントしたフレーム数が、制御部118から内部バス122経由で取得した、第1のメモリバッファ116の総ブロック数と一致した場合に、内部バス123経由でスイッチングデバイス115から第1のメモリバッファ116の第1の誤り検出情報を取得し、それを内部バス122経由で、制御部118に送る。
第1のダミーフレーム処理部112は、発生を優位として第1の誤り検出情報の更新を行い、制御部118から読み出し要求があった場合に、第1の誤り検出情報を非発生に更新する。具体的には、誤り検出情報は、誤りの発生として「1」、誤りの非発生として「0」の二値をとる。このような場合、第1のダミーフレーム処理部112は、自身が保存している第1の誤り検出情報をスイッチングデバイス115から誤り検出情報を取得する都度、取得した誤り検出情報との論理和をとって再保存する。ここで、第1のダミーフレーム処理部112は、制御部118から読み出し要求があったタイミングで、自身が保存している第1の誤り検出情報を「0」にすればよい。
アップリンクポート113は、アップリンクケーブル102を介してネットワーク101と通信を行うポートであり、ユーザフレームの入出力を行う。例えば、内部バス124経由で第2のダミーフレーム処理部114から到着したユーザフレームは、アップリンクポート113からアップリンクケーブル102経由でネットワーク101に送信される。また、アップリンクケーブル102から到着したユーザフレームは、アップリンクポート113で終端され、内部バス124経由で第2のダミーフレーム処理部114に送られ、さらに、第2のダミーフレーム処理部114から内部バス125経由でスイッチングデバイス115に送られる。
第2のダミーフレーム処理部114は、アップリンクポート113及びスイッチングデバイス115の間に配置されている。
第2のダミーフレーム処理部114は、アップリンクポート113から送られてきたユーザフレームを、内部バス125経由でスイッチングデバイス115に送る。
また、第2のダミーフレーム処理部114は、アップリンクポート113からユーザフレームが送られてきていない不使用時間に、中継装置110内で廃棄されるダミーフレームを内部バス125経由でスイッチングデバイス115に送る。ダミーフレームは、第2のダミーフレーム処理部114が生成してもよく、また、予めメモリ114aに記憶されていてもよい。
第2のダミーフレーム処理部114は、アップリンクポート113から送られてきたユーザフレームを、内部バス125経由でスイッチングデバイス115に送る。
また、第2のダミーフレーム処理部114は、アップリンクポート113からユーザフレームが送られてきていない不使用時間に、中継装置110内で廃棄されるダミーフレームを内部バス125経由でスイッチングデバイス115に送る。ダミーフレームは、第2のダミーフレーム処理部114が生成してもよく、また、予めメモリ114aに記憶されていてもよい。
さらに、第2のダミーフレーム処理部114は、スイッチングデバイス115から内部バス125経由で送られてきたフレームをチェックして、ユーザフレームとダミーフレームとを検出する。そして、第2のダミーフレーム処理部114は、検出されたユーザフレームを内部バス124経由でアップリンクポート113に送り、ネットワーク101に送信させる。また、第2のダミーフレーム処理部114は、検出されたダミーフレームを廃棄する。
第2のダミーフレーム処理部114は、内部バス126にて制御部118と接続することで、制御部118との情報の送受を可能とする。また、第2のダミーフレーム処理部114は、スイッチングデバイス115から制御部118への内部バス127を接続することで、スイッチングデバイス115と制御部118との情報の送受信をバイパスする。
また、第2のダミーフレーム処理部114は、スイッチングデバイス115に送ったユーザフレーム及びダミーフレームの数であるフレーム数をカウントする。そして、第2のダミーフレーム処理部114は、カウントしたフレーム数が、制御部118から内部バス126経由で取得した、第2のメモリバッファ117の総ブロック数と一致した場合に、内部バス127経由でスイッチングデバイス115から第2のメモリバッファ117の第2の誤り検出情報を取得し、それを内部バス126経由で、制御部118に送る。
第2のダミーフレーム処理部114による第2の誤り検出情報の処理については、第1のダミーフレーム処理部112による第1の誤り発生情報の処理と同様である。
第2のダミーフレーム処理部114による第2の誤り検出情報の処理については、第1のダミーフレーム処理部112による第1の誤り発生情報の処理と同様である。
スイッチングデバイス115は、第1のダミーフレーム処理部112から内部バス121経由で送られてきたユーザフレーム及びダミーフレームを内部バス128経由で第1のメモリバッファ116に一時的に記憶させる。また、スイッチングデバイス115は、第2のダミーフレーム処理部114から内部バス125経由で送られてきたユーザフレーム及びダミーフレームを内部バス129経由で第2のメモリバッファ117に一時的に記憶させる。
そして、スイッチングデバイス115は、記憶されたユーザフレーム及びダミーフレームの誤り検出を行うことで、その正常性を確認する。
そして、スイッチングデバイス115は、記憶されたユーザフレーム及びダミーフレームの誤り検出を行うことで、その正常性を確認する。
スイッチングデバイス115は、記憶されたユーザフレーム及びダミーフレームを読み出して、読み出されたフレームの宛先に応じて、それを転送する。例えば、スイッチングデバイス115は、ユーザフレーム及びダミーフレームのヘッダ領域に記載された宛先に従って出力ポートを決定し、内部バス128、129経由でユーザフレーム及びダミーフレームを取り出し、内部バス125経由で第2のダミーフレーム処理部114又は内部バス121経由で第1のダミーフレーム処理部112の何れかに送る。
スイッチングデバイス115は、第1のメモリバッファ116の各々のブロックに記憶されているフレームの誤りを検出して、その誤り検出結果に基づいて、例えばメモリ115aに保持されている第1の誤り検出情報を更新する。そして、スイッチングデバイス115は、第1のダミーフレーム処理部112からの読み出しに応答して、第1の誤り検出情報を、内部バス123経由で第1のダミーフレーム処理部112に送る。なお、スイッチングデバイス115は、第1のダミーフレーム処理部112に第1の誤り検出情報を送った場合には、第1の誤り検出情報をリセットして、誤りが検出されていないことを示すようにする。第1の誤り検出情報は、第1のメモリバッファ116のブロックに記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報である。なお、第1のダミーフレーム処理部112は、スイッチングデバイス115に送ったユーザフレーム及びダミーフレームをカウントしたフレーム数が、第1のメモリバッファ116のブロックの総数に達した場合に、スイッチングデバイス115に第1の誤り検出情報の読み出しを要求する。
また、スイッチングデバイス115は、第2のメモリバッファ117の各々のブロックに格納されているフレームの誤りを検出して、その誤りの検出結果に基づいて、例えばメモリ115aに保持されている第2の誤り検出情報を更新する。そして、スイッチングデバイス115は、第2のダミーフレーム処理部114からの読み出しに応答して、第2の誤り検出情報を、内部バス123経由で第2のダミーフレーム処理部114に送る。なお、スイッチングデバイス115は、第2のダミーフレーム処理部114に第2の誤り検出情報を送った場合には、第2の誤り検出情報をリセットして、誤りが検出されていないことを示すようにする。第2の誤り検出情報は、第2のメモリバッファ117のブロックに記憶されたフレームの何れかで誤りが検出されたか否かを示す誤り検出情報である。なお、第2のダミーフレーム処理部114は、スイッチングデバイス115に送ったユーザフレーム及びダミーフレームをカウントしたフレーム数が、第2のメモリバッファ117のブロックの総数に達した場合に、スイッチングデバイス115に第2の誤り検出情報の読み出しを要求する。
第1のメモリバッファ116は、内部バス128経由でスイッチングデバイス115からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリである。
第2のメモリバッファ117は、内部バス129経由でスイッチングデバイス115からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリである。
第2のメモリバッファ117は、内部バス129経由でスイッチングデバイス115からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリである。
図3は、第1のメモリバッファ116の論理構造を示す概略図である。
第1のメモリバッファ116は、固定長のメモリブロック及び誤り検出符号を格納する領域の集まりである。本実施の形態においては、第1のメモリバッファ116は、各メモリブロックに誤り訂正符号を格納する領域を持つ。
なお、図示してはいないが、第2のメモリバッファ117の論理構造についても、図3に示されている第1のメモリバッファ116と同様であるものとする。
第1のメモリバッファ116は、固定長のメモリブロック及び誤り検出符号を格納する領域の集まりである。本実施の形態においては、第1のメモリバッファ116は、各メモリブロックに誤り訂正符号を格納する領域を持つ。
なお、図示してはいないが、第2のメモリバッファ117の論理構造についても、図3に示されている第1のメモリバッファ116と同様であるものとする。
通常、メモリバッファは、複数のリングバッファ管理テーブルで管理される。
図4は、第1のメモリバッファ116を管理するためのリングバッファ管理テーブル116aを示す概略図である。この図では、第1のメモリバッファ116の全てがリングバッファ管理テーブル116aで管理されているものとする。第1のメモリバッファ116のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一度書き込まれたメモリブロックは、残りのメモリブロックが書き込まれない限り再度利用されることはない。
図4は、第1のメモリバッファ116を管理するためのリングバッファ管理テーブル116aを示す概略図である。この図では、第1のメモリバッファ116の全てがリングバッファ管理テーブル116aで管理されているものとする。第1のメモリバッファ116のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一度書き込まれたメモリブロックは、残りのメモリブロックが書き込まれない限り再度利用されることはない。
なお、リングバッファ管理テーブル116aは、例えば、制御部118のメモリ118aに記憶されており、第1のメモリバッファ116は、制御部118により管理されているものとする。また、図示してはいないが、第2のメモリバッファ117用のリングバッファ管理テーブルもメモリ118aに記憶されており、第2のメモリバッファ117も制御部118により管理されているものとする。なお、第2のメモリバッファ117用のリングバッファ管理テーブルも、図4に示されているリングバッファ管理テーブル116aと同様に構成されているものとする。
フレームが第1のメモリバッファ116又は第2のメモリバッファ117に格納され又は取り出された場合、スイッチングデバイス115は、格納又は取り出しを行ったメモリブロックに付与された誤り検出符号からそのメモリブロックで何らかの原因によるフレームの改ざん(誤り)の発生を検出可能である。スイッチングデバイス115は、その検出結果に基づいて、論理和を行うことにより、誤り検出情報を更新する。そして、スイッチングデバイス115は、制御部118から読み出されるまで、誤り検出情報を保持しておき、制御部118から読み出された時点で誤り検出情報をクリアする。
図3を利用してソフトエラー発生時の誤り検出を説明する。
フレームが一つだけ到着し、第1のメモリブロックに格納されたとする。格納前のフレームの内容を元に、第1のメモリブロックに付与された第1の誤り検出符号は更新される。
そして、宇宙線が第1のメモリブロックに格納されたフレームを保持するゲートにあたった場合、確率的にそのゲートに格納された1bitが反転する。この時点では誤り(改ざん)は検出されない。
その後、スイッチングデバイス115は、第1のメモリブロックに格納されたフレームを取り出すときに、第1のメモリブロックに格納されたフレーム及び第1のメモリブロックに付与された第1の誤り検出符号に基づいてフレームの誤りを検出する。誤りが検出されたことを示す誤り検出情報は、スイッチングデバイス115で保持され、次の制御部118からの読み出し対応として、「誤りの発生」を示す誤り検出情報が制御部118に通知される。
フレームが一つだけ到着し、第1のメモリブロックに格納されたとする。格納前のフレームの内容を元に、第1のメモリブロックに付与された第1の誤り検出符号は更新される。
そして、宇宙線が第1のメモリブロックに格納されたフレームを保持するゲートにあたった場合、確率的にそのゲートに格納された1bitが反転する。この時点では誤り(改ざん)は検出されない。
その後、スイッチングデバイス115は、第1のメモリブロックに格納されたフレームを取り出すときに、第1のメモリブロックに格納されたフレーム及び第1のメモリブロックに付与された第1の誤り検出符号に基づいてフレームの誤りを検出する。誤りが検出されたことを示す誤り検出情報は、スイッチングデバイス115で保持され、次の制御部118からの読み出し対応として、「誤りの発生」を示す誤り検出情報が制御部118に通知される。
第1のメモリブロックのフレームが読み出された後であっても、上書きされない限り第1のメモリブロックにはフレームが残っているため、スイッチングデバイス115は、第1のメモリブロックの誤りを検出し続ける。そのため、第1のメモリブロックに再度フレームが格納されるまでは、スイッチングデバイス115は制御部118からの読み出し対応として、「誤りの発生」を制御部118に通知し続ける。
第1のメモリブロックに新たにフレームが格納された場合、そのフレームに基づいて第1のメモリブロックに付与された第1の誤り検出符号が更新されるため、この時点で誤りの検出が解除され、スイッチングデバイス115は、制御部118からの次の読み出し対応として、「誤りの解除」を制御部118に通知する。
永続故障の場合は、第1のメモリブロックに新たにフレームが格納された場合であっても、そのフレームに基づいて第1のメモリブロックに付与された第1の誤り検出符号を用いた検証により、再度誤りが検出されるため、スイッチングデバイス115は、制御部118からの次の読み出し対応として、引き続き「誤りの発生」を制御部118に通知する。
このため、従来の技術では、ユーザフレームの流入量が継続的に少ない場合、全メモリブロックが利用されるまでの期間が長くなる。そして、誤り検出情報の読み込み周期が短い場合、「誤りの発生」が維持されている期間が長くなり、過度的なソフトエラーなのか永続的な故障なのかの判断を付けることが困難になっていた。
これに対して、本実施の形態では、ダミーフレームを用いることで、全てのメモリブロックが利用されるまでの期間を短くしている。
これに対して、本実施の形態では、ダミーフレームを用いることで、全てのメモリブロックが利用されるまでの期間を短くしている。
制御部118は、中継装置110での処理を制御する。
例えば、制御部118は、第1のメモリバッファ116のメモリブロック総数とスイッチングデバイス115のフレーム転送能力から算出される時間よりも長い周期で第1のダミーフレーム処理部112に対し、誤り検出情報の収集を行う。また、制御部118は、第2のメモリバッファ117のメモリブロック総数とスイッチングデバイス115のフレーム転送能力から算出される時間よりも長い周期で第2のダミーフレーム処理部114に対し、誤り検出情報の収集を行う。こうすることで、制御部118は、ソフトエラーは継続発生しないという特性から、ある周期の結果が「発生」で、次の周期の結果が「非発生」であるならばソフトエラー発生、ある周期の結果が「発生」で、次の周期の結果が「発生」であるならば永続的な故障発生と判断することが可能となる。即ち、制御部118は、誤り検出情報が誤りを検出したことを連続して示す回数により、永続的な故障の発生の有無を判断することができる。
また、制御部118は、図示しないポートを介して、ケーブル104経由で監視装置130からパラメータを受領する。さらに、制御部118は、内部バス122又は内部バス126経由でスイッチングデバイス115から受け取った誤り検出情報を監視装置130に送信したりする。
例えば、制御部118は、第1のメモリバッファ116のメモリブロック総数とスイッチングデバイス115のフレーム転送能力から算出される時間よりも長い周期で第1のダミーフレーム処理部112に対し、誤り検出情報の収集を行う。また、制御部118は、第2のメモリバッファ117のメモリブロック総数とスイッチングデバイス115のフレーム転送能力から算出される時間よりも長い周期で第2のダミーフレーム処理部114に対し、誤り検出情報の収集を行う。こうすることで、制御部118は、ソフトエラーは継続発生しないという特性から、ある周期の結果が「発生」で、次の周期の結果が「非発生」であるならばソフトエラー発生、ある周期の結果が「発生」で、次の周期の結果が「発生」であるならば永続的な故障発生と判断することが可能となる。即ち、制御部118は、誤り検出情報が誤りを検出したことを連続して示す回数により、永続的な故障の発生の有無を判断することができる。
また、制御部118は、図示しないポートを介して、ケーブル104経由で監視装置130からパラメータを受領する。さらに、制御部118は、内部バス122又は内部バス126経由でスイッチングデバイス115から受け取った誤り検出情報を監視装置130に送信したりする。
以上に記載された第1のダミーフレーム処理部112、第2のダミーフレーム処理部114及び制御部118の一部又は全部は、例えば、図5(A)に示されているように、メモリ10と、メモリ10に格納されているプログラムを実行するCPU(Central Processing Unit)等のプロセッサ11とにより構成することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。
また、第1のダミーフレーム処理部112、第2のダミーフレーム処理部114及び制御部118の一部又は全部は、例えば、図5(B)に示されているように、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuits)又はFPGA(Field Programmable Gate Array)等の処理回路12で構成することもできる。
図6は、ダウンリンクポート111側からアップリンクポート113側へフレームを転送する場合における、第1のダミーフレーム処理部112での処理を示すフローチャートである。
ダウンリンクポート111側からアップリンクポート113側へフレームを転送する場合には、第1のダミーフレーム処理部112は、ダミーフレームを入力するダミーフレーム入力デバイス(ダミーフレーム入力部)として機能し、第2のダミーフレーム処理部114は、第1のダミーフレーム処理部112により入力されたダミーフレームを廃棄するダミーフレーム廃棄デバイス(ダミーフレーム廃棄部)として機能する。
ダウンリンクポート111側からアップリンクポート113側へフレームを転送する場合には、第1のダミーフレーム処理部112は、ダミーフレームを入力するダミーフレーム入力デバイス(ダミーフレーム入力部)として機能し、第2のダミーフレーム処理部114は、第1のダミーフレーム処理部112により入力されたダミーフレームを廃棄するダミーフレーム廃棄デバイス(ダミーフレーム廃棄部)として機能する。
第1のダミーフレーム処理部112は、処理開始後、制御部118から第1のメモリバッファ116の総ブロック数を取得する(S10)。スイッチングデバイス115の管理下である第1のメモリバッファ116を構成する各々のメモリブロックの誤り検出結果は、全メモリブロックの論理和となるため、各々のメモリブロックの誤り検出結果をスイッチングデバイス115の外部では確認することができない。このため、総ブロック数は、全メモリブロックの状態を確認すべく全メモリブロックを充填するために必要なフレーム数と一致する。なお、総ブロック数は、スイッチングデバイス115とメモリバッファの特性及びスイッチングデバイス115に対するパラメータから推測されるものであり、スイッチングデバイス115から直接得られるものではない。
次に、第1のダミーフレーム処理部112は、スイッチングデバイス115から第1の誤り検出情報を空読みする(S11)。ここでの空読みとは、スイッチングデバイス115から読み込んだ第1の誤り検出情報を第1のダミーフレーム処理部112の内部に持っているメモリ112a内の第1の誤り検出情報格納領域に反映しないことである。この第1の誤り検出情報格納領域は、開始時には「非発生」に初期化されているため、この時点では必ず「非発生」となる。また、この空読みにより、スイッチングデバイス115に記憶されている第1の誤り検出情報がリセットされて、誤りが検出されていないことを示すようになる。
第1のダミーフレーム処理部112は、メモリ112a内の送信カウンタを「0」に初期化する(S12)。この送信カウンタは、第1のダミーフレーム処理部112からスイッチングデバイス115に送信したフレーム数を保持している。
その後、第1のダミーフレーム処理部112は、ダミーフレームの挿入ループ処理を行う(S13〜S21)。
ステップS14では、第1のダミーフレーム処理部112は、ダウンリンクポート111からユーザフレームを受信したか否かを判断する。ユーザフレームを受信した場合(S14でYes)には、処理はステップS15に進み、ユーザフレームを受信していない場合(S14でNo)には、処理はステップS16に進む。
ステップS15では、第1のダミーフレーム処理部112は、ユーザフレームをスイッチングデバイス115に転送する。そして、処理はステップS17に進む。
一方、ステップS16では、第1のダミーフレーム処理部112は、ダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス115に送信する。そして、処理はステップS17に進む。
一方、ステップS16では、第1のダミーフレーム処理部112は、ダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス115に送信する。そして、処理はステップS17に進む。
ダミーフレームは、ユーザフレームとして中継装置110に入力されることがなく、かつ、スイッチングデバイス115からみてユーザフレームと区別できない上に、ダミーフレーム廃棄デバイスとして機能する第2のダミーフレーム処理部114からは、ユーザフレームとダミーフレームとの区別が可能であるようなフレームである。具体的には、中継装置110が参加するネットワークがEthernet(登録商標)である場合、予め、ダミーフレーム用の通信アドレスであるMAC(Media Access Control)アドレスを定義しておき、それを第1のダミーフレーム処理部112のメモリ112a及び第2のダミーフレーム処理部114のメモリ114aに格納しておく。第1のダミーフレーム処理部112は、ペイロードを適当に設定したうえで、宛先MACアドレスエントリにブロードキャスト用の予約アドレスを、送信元MACアドレスエントリにダミーフレーム用のMACアドレスを格納する。なお、条件を満足する場合、ダミーフレームを作成するための変更フィールドはMACアドレスに限定する必要はない。なお、第2のダミーフレーム処理部114は、送信元MACアドレスがダミーフレーム用のMACアドレスである場合に、そのフレームをダミーフレームとして認識する。即ち、送信元MACアドレスが、ダミーフレームを識別するための特定の識別情報として利用されている。
ステップS17では、第1のダミーフレーム処理部112は、送信カウンタに「1」を加算する。
ステップS18では、第1のダミーフレーム処理部112は、加算後の値が制御部118から取得した総ブロック数と一致しているか否かを判断する。そして、一致している場合(S18でYes)には、処理はステップS19に進み、一致していない場合(S18でNo)には、処理はステップS21に進む。
ステップS19では、第1のダミーフレーム処理部112は、スイッチングデバイス115から第1の誤り検出情報を読み出す。そして、第1のダミーフレーム処理部112は、メモリ112aに持っている第1の誤り検出情報格納領域の値と比較してどちらかが「発生」であった場合に、第1のダミーフレーム処理部112の内部に持っている誤り検出情報格納領の値を「発生」にする。
その後、第1のダミーフレーム処理部112は、送信カウンタを「0」にする(S20)。そして、処理はステップS21に進む。
その後、第1のダミーフレーム処理部112は、送信カウンタを「0」にする(S20)。そして、処理はステップS21に進む。
ステップS21では、第1のダミーフレーム処理部112は、処理をステップS13に戻す。ここまでがダミーフレームの挿入ループ処理となり、原則的にループから脱出することはない。
なお、第1のダミーフレーム処理部112は、加算後の値が制御部118から取得した総ブロック数と一致していない場合(S18でNo)には、スイッチングデバイス115から第1の誤り検出情報を読み出さないことで、スイッチングデバイス115がもつ第1の誤り検出情報の状態は維持される。
なお、第1のダミーフレーム処理部112は、加算後の値が制御部118から取得した総ブロック数と一致していない場合(S18でNo)には、スイッチングデバイス115から第1の誤り検出情報を読み出さないことで、スイッチングデバイス115がもつ第1の誤り検出情報の状態は維持される。
図6に示されているフローにより、図7(A)で示す通り、スイッチングデバイス115にユーザフレームUFの流入がない不使用時間に限り、ダミーフレームDMの入力が行われる。
しかしながら、図7(B)に示されているように、第1のダミーフレーム処理部112がスイッチングデバイス115にダミーフレームDFを入力している、まさにその最中である時刻t1にユーザフレームUFが第1のダミーフレーム処理部112に到着する場合がある。このような場合、通常なら衝突が発生し、ダミーフレームDF及びユーザフレームUFともに破壊されてしまう。
本実施の形態では、このような衝突を回避するため、第1のダミーフレーム処理部112のメモリ112aにフレームバッファを設けることで、ダミーフレームDFを送信しきるまでユーザフレームUFの送信を待たす。図7(B)では、第1のダミーフレーム処理部112は、バッファリングを行うことで、ユーザフレームUFの送信を時刻t2にまで遅らせている。
しかしながら、図7(B)に示されているように、第1のダミーフレーム処理部112がスイッチングデバイス115にダミーフレームDFを入力している、まさにその最中である時刻t1にユーザフレームUFが第1のダミーフレーム処理部112に到着する場合がある。このような場合、通常なら衝突が発生し、ダミーフレームDF及びユーザフレームUFともに破壊されてしまう。
本実施の形態では、このような衝突を回避するため、第1のダミーフレーム処理部112のメモリ112aにフレームバッファを設けることで、ダミーフレームDFを送信しきるまでユーザフレームUFの送信を待たす。図7(B)では、第1のダミーフレーム処理部112は、バッファリングを行うことで、ユーザフレームUFの送信を時刻t2にまで遅らせている。
なお、アップリンクポート113側からダウンリンクポート111側へフレームを転送する場合には、第2のダミーフレーム処理部114が図6と同様のフローを行えばよい。このような場合には、第2のダミーフレーム処理部114がダミーフレームを入力するダミーフレーム入力デバイスとして機能し、第1のダミーフレーム処理部112が第2のダミーフレーム処理部114により入力されたダミーフレームを廃棄するダミーフレーム廃棄デバイスとして機能する。
以上のように、実施の形態1によれば、各々のメモリブロックの誤り検出を行うことができるため、スイッチングデバイス115へのフレームの入力経路において、ユーザフレームと中継装置110内で生成されたダミーフレームとをカウントし、メモリブロックの総数にあたるフレーム数が入力されたタイミングで誤り検出の有無を確認することで、メモリブロックの総数をフレーム転送能力で割った時間で、全メモリブロック内で1度以上誤りが発生したか否かの確認を行うことができる。
また、ソフトエラーは、1日に数度起こるようなものではないため、全メモリブロックの誤り検出を2周期繰り返し、発生が連続するようであれば永続故障が発生したと考えることができる。
通常、スイッチングデバイス115のフレーム転送能力は、メモリブロックの総数に比べて十分に大きいことから、最大速度でダミーフレームの入力を行った場合、数秒以内で2周期分のフレームを処理可能である。このため、スイッチングデバイス115の起動後であっても、数秒で永続故障が発生しているのかソフトエラーが発生しているのかを判断することができる。
通常、スイッチングデバイス115のフレーム転送能力は、メモリブロックの総数に比べて十分に大きいことから、最大速度でダミーフレームの入力を行った場合、数秒以内で2周期分のフレームを処理可能である。このため、スイッチングデバイス115の起動後であっても、数秒で永続故障が発生しているのかソフトエラーが発生しているのかを判断することができる。
実施の形態2.
図1に示されているように、実施の形態2に係る光通信システム200は、中継装置210と、監視装置130と、ネットワーク端末150とを備える。
実施の形態2に係る光通信システム200は、中継装置210を除いて、実施の形態1に係る光通信システム100と同様に構成されている。
図1に示されているように、実施の形態2に係る光通信システム200は、中継装置210と、監視装置130と、ネットワーク端末150とを備える。
実施の形態2に係る光通信システム200は、中継装置210を除いて、実施の形態1に係る光通信システム100と同様に構成されている。
図2に示されているように、実施の形態2における中継装置210は、ダウンリンクポート111と、第1のダミーフレーム処理部212と、アップリンクポート113と、第2のダミーフレーム処理部214と、スイッチングデバイス215と、第1のメモリバッファ216と、第2のメモリバッファ217と、制御部218と、を備える。
実施の形態2におけるダウンリンクポート111及びアップリンクポート113については、実施の形態1と同様である。
なお、実施の形態2における中継装置210は、複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行うものとする。
実施の形態2におけるダウンリンクポート111及びアップリンクポート113については、実施の形態1と同様である。
なお、実施の形態2における中継装置210は、複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行うものとする。
第1のメモリバッファ216は、複数のリングバッファとして機能するメモリである。そして、複数のリングバッファの各々は、内部バス128経由でスイッチングデバイス215からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備える。なお、複数のリングバッファの各々は、複数の優先度の何れかに対応付けられている。
第2のメモリバッファ217は、複数のリングバッファとして機能するメモリである。そして、複数のリングバッファの各々は、内部バス129経由でスイッチングデバイス215からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備える。なお、複数のリングバッファの各々は、複数の優先度の何れかに対応付けられている。
第2のメモリバッファ217は、複数のリングバッファとして機能するメモリである。そして、複数のリングバッファの各々は、内部バス129経由でスイッチングデバイス215からのユーザフレーム及びダミーフレームを受け取り、これらのフレームを一時的に記憶する複数のブロックを備える。なお、複数のリングバッファの各々は、複数の優先度の何れかに対応付けられている。
図8は、実施の形態2における第1のメモリバッファ216の論理構造を示す概略図である。第1のメモリバッファ216の物理構成自体は、実施の形態1と同一である。
図8に示されているように、第1のメモリバッファ216には、第1のリングバッファと、第2のリングバッファとが設けられている。
第1のリングバッファは、図9に示されている第1のリングバッファ管理テーブル216Aで管理されている。実施の形態2における第1のリングバッファは、図9に示されているように第1のメモリブロック〜第5のメモリブロックにより構成されている。
第2のリングバッファは、図10に示されている第2のリングバッファ管理テーブル216Bで管理されている。実施の形態2における第2のリングバッファは、図10に示されているように第6のメモリブロック〜第nのメモリブロックにより構成されている。ここで、nは、7以上の正の整数である。
第1のメモリバッファ216のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一つのメモリブロックが複数のリングバッファに参加することはない。フレームが一度書き込まれたメモリブロックは、参加リングバッファ中の残りのメモリブロックが書き込まれない限り再度利用されることはない。
第1のリングバッファは、図9に示されている第1のリングバッファ管理テーブル216Aで管理されている。実施の形態2における第1のリングバッファは、図9に示されているように第1のメモリブロック〜第5のメモリブロックにより構成されている。
第2のリングバッファは、図10に示されている第2のリングバッファ管理テーブル216Bで管理されている。実施の形態2における第2のリングバッファは、図10に示されているように第6のメモリブロック〜第nのメモリブロックにより構成されている。ここで、nは、7以上の正の整数である。
第1のメモリバッファ216のメモリブロックは、連続した番号領域がリングバッファとして管理対象となり、一つのメモリブロックが複数のリングバッファに参加することはない。フレームが一度書き込まれたメモリブロックは、参加リングバッファ中の残りのメモリブロックが書き込まれない限り再度利用されることはない。
第1のメモリバッファ216に設けられている複数のリングバッファは、フレーム転送時に各フレームの優先度により送信頻度を操作した場合に利用される。
例えば、2つのダウンリンクポート111A、111Bから優先度の高いフレームと優先度の低いフレームがスイッチングデバイス215に到着し、2つのダウンリンクポート111A、111Bから到着したフレームの帯域(単位時間あたりのフレーム数)の和がアップリンクポート113の処理可能な最大帯域を超過している場合を考える。このような場合には、スイッチングデバイス215に到着したフレームのうち、優先度の高いフレームのほうが優先度の低いフレームよりも高い頻度でアップリンクポート113に送信されるようにすることが望ましい。
例えば、2つのダウンリンクポート111A、111Bから優先度の高いフレームと優先度の低いフレームがスイッチングデバイス215に到着し、2つのダウンリンクポート111A、111Bから到着したフレームの帯域(単位時間あたりのフレーム数)の和がアップリンクポート113の処理可能な最大帯域を超過している場合を考える。このような場合には、スイッチングデバイス215に到着したフレームのうち、優先度の高いフレームのほうが優先度の低いフレームよりも高い頻度でアップリンクポート113に送信されるようにすることが望ましい。
スイッチングデバイス215は、メモリ215aに優先度と対応するリングバッファの対応表を持っており、ダウンリンクポート111から入力されたフレームを、フレームのヘッダに格納されている優先度を元に、第1のメモリバッファ116内の対応するリングバッファに格納する。
その後、スイッチングデバイス215は、第1のメモリバッファ216内のフレームの転送を行うにあたり、優先度の高いフレームに対応したリングバッファに格納されたフレームを優先的に処理する。
優先度の高いフレームに対応したリングバッファの処理数と優先度の低いフレームに対応したリングバッファの処理数との比の決定には各種のアルゴリズムがあり、高優先のフレームの処理が完了しない限り、低優先のフレームの処理を行わないものを「完全優先(Strict Priority Queuing)」アルゴリズムという。実施の形態2では、何れのアルゴリズムが適用されてもよい。
その後、スイッチングデバイス215は、第1のメモリバッファ216内のフレームの転送を行うにあたり、優先度の高いフレームに対応したリングバッファに格納されたフレームを優先的に処理する。
優先度の高いフレームに対応したリングバッファの処理数と優先度の低いフレームに対応したリングバッファの処理数との比の決定には各種のアルゴリズムがあり、高優先のフレームの処理が完了しない限り、低優先のフレームの処理を行わないものを「完全優先(Strict Priority Queuing)」アルゴリズムという。実施の形態2では、何れのアルゴリズムが適用されてもよい。
このようにして第1のメモリバッファ116を複数のリングバッファで分離することにより、フレーム内に格納された優先度をもとにフレームの優先制御が実現されている。ここで、低優先度のユーザフレームのみが到着し、高優先度のフレームが中継装置110に到着しない場合、高優先度のフレームに対応したリングバッファを構成するメモリブロックにフレームが格納されない。このような場合、高優先度のフレームに対応したリングバッファを構成するメモリブロックの故障判定ができず、高優先度のフレームが到着した場合に、フレームロスが発生して、初めて異常に気付くことになる。実施の形態2はこの問題を解消する。
なお、第2のメモリバッファ217の論理構成も第1のメモリバッファ216と同様に構成されており、同様の問題を有しているものとする。
なお、第2のメモリバッファ217の論理構成も第1のメモリバッファ216と同様に構成されており、同様の問題を有しているものとする。
実施の形態2における第1のダミーフレーム処理部212は、実施の形態1における第1のダミーフレーム処理部112とほぼ同様の処理を行う。しかしながら、実施の形態2では、第1のメモリバッファ216に、優先度に応じて、複数のリングバッファが設けられているため、第1のダミーフレーム処理部212は、実施の形態1とは異なる以下の処理を行う。
第1のダミーフレーム処理部212は、ダウンリンクポート111からユーザフレームが送られてきていない不使用時間に、優先度の高いものから順にダミーフレームを内部バス121経由でスイッチングデバイス215に送る。例えば、第1のダミーフレーム処理部212は、スイッチングデバイス215に送ったユーザフレーム及びダミーフレームのフレーム数を、第1のメモリバッファ216における複数のリングバッファ毎にカウントする。第1のダミーフレーム処理部212は、第1のメモリバッファ216の複数のリングバッファの中で、カウントされたフレーム数が、自身に設けられている複数のブロックの総数に達していないリングバッファを特定する。第1のダミーフレーム処理部212は、複数の優先度の中で、特定されたリングバッファに対応付けられている優先度を特定し、特定された優先度の中で最も高い優先度を割り当てたダミーフレームをスイッチングデバイス215に送る。
そして、第1のダミーフレーム処理部212は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス215から、第1の誤り検出情報を読み出す。
そして、第1のダミーフレーム処理部212は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス215から、第1の誤り検出情報を読み出す。
実施の形態2における第2のダミーフレーム処理部214は、実施の形態1における第2のダミーフレーム処理部114とほぼ同様の処理を行う。しかしながら、実施の形態2では、第2のメモリバッファ217に、優先度に応じて、複数のリングバッファが設けられているため、第2のダミーフレーム処理部214は、実施の形態1とは異なる以下の処理を行う。
第2のダミーフレーム処理部214は、アップリンクポート113からユーザフレームが送られてきていない不使用時間に、優先度の高いものから順にダミーフレームを内部バス125経由でスイッチングデバイス215に送る。例えば、第2のダミーフレーム処理部214は、スイッチングデバイス215に送ったユーザフレーム及びダミーフレームのフレーム数を、第2のメモリバッファ217における複数のリングバッファ毎にカウントする。第2のダミーフレーム処理部214は、第2のメモリバッファ217の複数のリングバッファの中で、カウントされたフレーム数が、自身に設けられている複数のブロックの総数に達していないリングバッファを特定する。第2のダミーフレーム処理部214は、複数の優先度の中で、特定されたリングバッファに対応付けられている優先度を特定し、特定された優先度の中で最も高い優先度を割り当てたダミーフレームをスイッチングデバイス215に送る。
そして、第2のダミーフレーム処理部214は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス215から、第2の誤り検出情報を読み出す。
そして、第2のダミーフレーム処理部214は、最も低い優先度に対応するリングバッファにおいてカウントされたフレーム数が、最も低い優先度に対応するリングバッファの複数のブロックの総数に達した場合に、スイッチングデバイス215から、第2の誤り検出情報を読み出す。
実施の形態2におけるスイッチングデバイス215は、実施の形態1におけるスイッチングデバイス115とほぼ同様の処理を行うが、入力されたフレームの優先度に応じて、入力されたフレームを、第1のメモリバッファ216内の対応するリングバッファの複数のブロックの何れか又は第2のメモリバッファ217内の対応するリングバッファの複数のブロックの何れかに一時的に記憶させる。
なお、スイッチングデバイス215は、メモリ215aに第2のメモリバッファ217用の、優先度と対応するリングバッファの対応表も保持している。
なお、スイッチングデバイス215は、メモリ215aに第2のメモリバッファ217用の、優先度と対応するリングバッファの対応表も保持している。
実施の形態2における制御部218は、実施の形態1における制御部118とほぼ同様の処理を行うが、メモリ218a内に、図9に示されている第1のリングバッファ管理テーブル216A及び図10に示されている第2のリングバッファ管理テーブル216Bを記憶しているほか、第2のメモリバッファ217に設けられている複数のリングバッファを管理するための複数のリングバッファ管理テーブル(図示せず)を記憶している。
図11は、ダウンリンクポート111側からアップリンクポート113側へフレームを転送する場合における、第1のダミーフレーム処理部212での処理を示すフローチャートである。
第1のダミーフレーム処理部212は、処理開始後、制御部218から第1のメモリバッファ216のリングバッファ構成情報を取得する(S30)。具体的には、第1のダミーフレーム処理部212は、図8に示されている、リングバッファ毎の利用メモリブロック数(総ブロック数)、及び、フレームのヘッダ内に格納された優先度とその優先度をもつフレームが格納されるリングバッファの対応表を取得する。
次に、第1のダミーフレーム処理部212は、スイッチングデバイス215から第1の誤り検出情報を空読みする(S31)。
第1のダミーフレーム処理部212は、メモリ212a内のリンクバッファ毎の送信カウンタを「0」に初期化する(S32)。この送信カウンタは、第1のダミーフレーム処理部212からスイッチングデバイス215に送信したリンクバッファ毎のフレーム数を保持している。
その後、第1のダミーフレーム処理部212は、ダミーフレームの挿入ループ処理を行う(S33〜S41)。
ステップS34では、第1のダミーフレーム処理部212は、ダウンリンクポート111からユーザフレームを受信したか否かを判断する。ユーザフレームを受信した場合(S34でYes)には、処理はステップS35に進み、ユーザフレームを受信していない場合(S34でNo)には、処理はステップS36に進む。
ステップS35では、第1のダミーフレーム処理部212は、ユーザフレームをスイッチングデバイス215に転送する。そして、処理はステップS37に進む。
一方、ステップS36では、第1のダミーフレーム処理部212は、送信カウントの値が対応するリングバッファの総ブロック数に達していないリングバッファに対応付けられている優先度の内、最も高い優先度を持つダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス215に送信する。そして、処理はステップS37に進む。なお、ダミーフレームの設定は、優先度を除いて、実施の形態1と同様である。
一方、ステップS36では、第1のダミーフレーム処理部212は、送信カウントの値が対応するリングバッファの総ブロック数に達していないリングバッファに対応付けられている優先度の内、最も高い優先度を持つダミーフレームを作成し、作成したダミーフレームをスイッチングデバイス215に送信する。そして、処理はステップS37に進む。なお、ダミーフレームの設定は、優先度を除いて、実施の形態1と同様である。
ステップS37では、第1のダミーフレーム処理部212は、ステップS35又はステップS36で送信されたフレームの優先度に対応するリングバッファの送信カウンタに「1」を加算する。
ステップS38では、第1のダミーフレーム処理部212は、最も低い優先度に対応するリングバッファの値が制御部218から取得した、そのリングバッファの総ブロック数と一致しているか否かを判断する。そして、一致している場合(S38でYes)には、処理はステップS39に進み、一致していない場合(S38でNo)には、処理はステップS41に進む。
ステップS39では、第1のダミーフレーム処理部212は、スイッチングデバイス215から第1の誤り検出情報を読み出す。そして、第1のダミーフレーム処理部212は、メモリ212aに持っている第1の誤り検出情報格納領域の値と比較してどちらかが「発生」であった場合に、第1のダミーフレーム処理部212の内部に持っている第1の誤り検出情報格納領の値を「発生」にする。
その後、第1のダミーフレーム処理部212は、全てのリングバッファの送信カウンタを「0」にする(S40)。そして、処理はステップS41に進む。
その後、第1のダミーフレーム処理部212は、全てのリングバッファの送信カウンタを「0」にする(S40)。そして、処理はステップS41に進む。
ステップS41では、第1のダミーフレーム処理部212は、処理をステップS33に戻す。ここまでがダミーフレームの挿入ループ処理となり、原則的にループから脱出することはない。
なお、第1のダミーフレーム処理部212は、加算後の値が制御部218から取得した総ブロック数と一致していない場合(S38でNo)には、スイッチングデバイス215から第1の誤り検出情報を読み出さないことで、スイッチングデバイス215がもつ第1の誤り検出情報の状態は維持される。
なお、第1のダミーフレーム処理部212は、加算後の値が制御部218から取得した総ブロック数と一致していない場合(S38でNo)には、スイッチングデバイス215から第1の誤り検出情報を読み出さないことで、スイッチングデバイス215がもつ第1の誤り検出情報の状態は維持される。
なお、アップリンクポート113側からダウンリンクポート111側へフレームを転送する場合には、第2のダミーフレーム処理部214が図11と同様のフローを行えばよい。
以上のように、実施の形態2によれば、優先度の低いユーザフレームが多く送信される場合でも、優先度の高いダミーフレームを作成してメモリバッファに格納することで、優先度の高いフレームに使用されるリングバッファに参加するメモリブロックの故障を検出することができる。
以上に記載された実施の形態1及び2では、スイッチングデバイス115、215が一つ設けられているが、例えば、第1のメモリバッファ116、216用に一つのスイッチングデバイス(第1のスイッチングデバイス)、第2のメモリバッファ117、217用に一つのスイッチングデバイス(第2のスイッチングデバイス)が設けられていてもよい。
100,200 光通信システム、 110,210 中継装置、 111 ダウンリンクポート、 112,212 第1のダミーフレーム処理部、 113 アップリンクポート、 114,214 第2のダミーフレーム処理部、 115,215 スイッチングデバイス、 116,216 第1のメモリバッファ、 117,217 第2のメモリバッファ、 118,218 制御部、 130 監視装置、 150 ネットワーク端末。
Claims (6)
- ユーザフレームの中継を行う中継装置であって、
前記ユーザフレームが入力されるポートと、
前記ユーザフレームを一時的に記憶する複数のブロックを備えるリングバッファとして機能するメモリと、
前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、
前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、
前記スイッチングデバイスは、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを前記複数のブロックの何れかに一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、
前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数をカウントし、当該カウントされたフレーム数が前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、
前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすること
を特徴とする中継装置。 - 複数の優先度の何れかが予め割り当てられたユーザフレームの中継を行う中継装置であって、
前記ユーザフレームが入力されるポートと、
複数のリングバッファとして機能し、当該複数のリングバッファの各々が前記ユーザフレームを一時的に記憶する複数のブロックを有するメモリと、
前記メモリに記憶された前記ユーザフレームを読み出し、当該読み出されたユーザフレームの宛先に応じて、当該読み出されたユーザフレームを転送するスイッチングデバイスと、
前記ポート及び前記スイッチングデバイスの間に配置され、前記ポートに入力された前記ユーザフレームを前記スイッチングデバイスに送るとともに、前記中継装置内で廃棄されるダミーフレームを前記スイッチングデバイスに送るダミーフレーム入力部と、を備え、
前記複数のリングバッファの各々は、前記複数の優先度の何れかに対応付けられており、
前記スイッチングデバイスは、前記複数のリングバッファの中から、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームに割り当てられている前記優先度に対応するリングバッファを選択し、当該選択されたリングバッファの前記複数のブロックの何れかに、前記ダミーフレーム入力部から送られてきた前記ユーザフレーム及び前記ダミーフレームを一時的に記憶させるとともに、当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの誤り検出を行い当該記憶されたユーザフレーム及び当該記憶されたダミーフレームの何れかで誤りが検出されたか否かを示す誤り検出情報を記憶し、
前記ダミーフレーム入力部は、前記スイッチングデバイスに送った前記ユーザフレーム及び前記ダミーフレームのフレーム数を、前記複数のリングバッファの各々においてカウントし、前記複数のリングバッファの中で、当該カウントされたフレーム数が自身の前記複数のブロックの総数に達していないリングバッファを特定し、前記複数の優先度の中で、当該特定されたリングバッファに対応付けられている優先度を特定し、当該特定された優先度の中で最も高い優先度を割り当てた前記ダミーフレームを前記スイッチングデバイスに送るとともに、前記複数のリングバッファの中で、前記複数の優先度の中で最も低い優先度に対応するリングバッファにおける当該カウントされたフレーム数が、前記最も低い優先度に対応するリングバッファに備えられている前記複数のブロックの総数に達した場合に、前記スイッチングデバイスから、前記誤り検出情報を読み出し、
前記スイッチングデバイスは、前記ダミーフレーム入力部から前記誤り検出情報が読み出された後に、前記誤り検出情報を、誤りが検出されていないことを示すようにリセットすること
を特徴とする中継装置。 - 前記スイッチングデバイスにより前記メモリから読み出された前記ダミーフレームを廃棄するダミーフレーム廃棄部をさらに備えること
を特徴とする請求項1又は2に記載の中継装置。 - 前記ダミーフレームは、前記ユーザフレームの識別情報とは異なる特定の識別情報を含み、
前記ダミーフレーム廃棄部は、前記特定の識別情報により、前記ダミーフレームを識別すること
を特徴とする請求項3に記載の中継装置。 - 前記特定の識別情報は、前記ダミーフレームに割り当てられた送信元の通信アドレスであること
を特徴とする請求項4に記載の中継装置。 - 前記ダミーフレーム入力部が読み出した前記誤り検出情報が、誤りが検出されたことを連続して示す回数により、前記メモリに永続的な故障が発生しているか否かを判断する制御部をさらに備えること
を特徴とする請求項1から5の何れか一項に記載の中継装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016234018A JP2018092305A (ja) | 2016-12-01 | 2016-12-01 | 中継装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016234018A JP2018092305A (ja) | 2016-12-01 | 2016-12-01 | 中継装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018092305A true JP2018092305A (ja) | 2018-06-14 |
Family
ID=62566162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016234018A Pending JP2018092305A (ja) | 2016-12-01 | 2016-12-01 | 中継装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018092305A (ja) |
-
2016
- 2016-12-01 JP JP2016234018A patent/JP2018092305A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8767747B2 (en) | Method for transferring data packets in a communication network and switching device | |
KR100839881B1 (ko) | 패킷 전송방법 및 패킷 전송장치 | |
US7433363B2 (en) | Low latency switch architecture for high-performance packet-switched networks | |
JP5497564B2 (ja) | セッションアクティブチェッカを有する並列パケットプロセッサ | |
US7433305B2 (en) | Method and arrangement in a packet switch | |
JP4074304B2 (ja) | パケット転送方法及びパケット転送装置 | |
US6952419B1 (en) | High performance transmission link and interconnect | |
US9106523B2 (en) | Communication device and method of controlling the same | |
JP5148707B2 (ja) | 待ち行列形成方法 | |
JP5883743B2 (ja) | パケット通信網における通信途絶時間短縮方法 | |
JP5742486B2 (ja) | 通信装置及びパケット振分方法 | |
US7660239B2 (en) | Network data re-routing | |
JP2005536960A (ja) | 通信ネットワークにおけるメッセージパスのテスト方法並びにネットワーク要素 | |
US9323596B2 (en) | Network apparatus and method of monitoring processor | |
JP2008022337A (ja) | パケット伝送方法及びパケット伝送システム | |
JP5738324B2 (ja) | 送信装置、通信装置、通信システムおよび送信方法 | |
US6667954B1 (en) | Methods and apparatus for selecting the better cell from redundant streams within a cell-oriented environment | |
US20180069790A1 (en) | Packet transfer device and packet transfer method | |
CA2233121C (en) | Redundant transmission system with diconnection of a transmission path exhibiting faulty transmission behavior | |
JP2008227890A (ja) | Tdm回線エミュレーションにおける2重化構成の伝送方法、伝送システム及び受信装置 | |
JP2019176263A (ja) | 送受信システム、データ受信装置、およびデータ受信方法 | |
US20050083837A1 (en) | Transmission system | |
JP5843397B2 (ja) | 通信装置 | |
JP2018092305A (ja) | 中継装置 | |
JP2006303703A (ja) | ネットワーク中継装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20161201 |