(57)【要約】【課題】通信装置内におけるフレーム伝送経路の正常性を好適に監視する。【解決手段】通信装置１００は、優先度情報を有するテストフレームを生成するとともに、テストフレームごとに優先度情報を変化させるテストフレーム生成部２０と、入力されるフレームの優先度がそれぞれ設定された複数のフローキュー６１と、テストフレームの優先度情報を抽出するキュー抽出部と、テストフレームが入力された場合、キュー抽出部により抽出された優先度情報に応じて、複数のフローキュー６１のいずれかにテストフレームを振り分ける振り分け部と、フローキュー６１から出力されたテストフレームの正常性を検査した後、該テストフレームを廃棄するテストフレーム廃棄部２３とを備える。【選択図】図３
2014023048.tif 000002
【特許請求の範囲】
【請求項１】
優先度情報を有するテストフレームを生成するテストフレーム生成部であって、テストフレームごとに優先度情報を変化させるテストフレーム生成部と、
入力されるフレームの優先度がそれぞれ設定された複数のキューと、
テストフレームの優先度情報を抽出するキュー抽出部と、
テストフレームが入力された場合、前記キュー抽出部により抽出された優先度情報に応じて、前記複数のキューのいずれかにテストフレームを振り分ける振り分け部と、
前記キューから出力されたテストフレームの正常性を検査する検査部と、
を備えることを特徴とする通信装置。
【請求項２】
前記テストフレーム生成部は、テストフレームであることを表す識別情報を前記テストフレームに付与することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記識別情報に基づいて、入力されたフレームがテストフレームであるかユーザフレームである識別するフレーム識別部をさらに備え、
前記フレーム識別部は、テストフレームを前記キュー抽出部に出力し、ユーザフレームを前記振り分け部に出力することを特徴とする請求項２に記載の通信装置。
【請求項４】
ユーザフレームの処理においてアクセスされるアドレステーブルと、
テストフレームを受信したときに、前記アドレステーブルにアクセスするフレーム処理部と、
前記フレーム処理部のアクセスによって前記アドレステーブルから読み出されたデータの誤りを検出するエラー検出部と、
をさらに備えることを特徴とする請求項１から３のいずれかに記載の通信装置。
【請求項５】
前記テストフレーム生成部は、テストフレームを生成する際に検査対象となる前記アドレステーブルのアドレス情報をテストフレームに付与するとともに、テストフレームごとに前記アドレス情報を変化させ、
前記フレーム処理部は、
テストフレームのアドレス情報を抽出するアドレス抽出部と、
テストフレームが入力された場合、前記アドレステーブルにアクセスし、抽出したアドレス情報に基づいて前記アドレステーブルから前記エラー検出部を介してデータを読み込む解析部と、を備えることを特徴とする請求項４に記載の通信装置。
【請求項６】
テストフレームを受信したときに、該テストフレームを廃棄する廃棄部をさらに備えることを特徴とする請求項１から４のいずれかに記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イーサネット（登録商標）等のフレームを伝送する通信装置に関する。
【背景技術】
【０００２】
近年通信業界では、ＳＤＨ（Synchronous Digital Hierarchy）／ＳＯＮＥＴ（Synchronous Optical NETwork）技術に基づく比較的高価な通信システムから、イーサネット技術に基づく比較的安価な通信システムへの切替が進みつつある。これは、大容量の基幹通信回線、いわゆるバックボーン回線についてもいえる。
【０００３】
現在の通信市場では常に情報を流しているのではなく、必要なときに必要なだけ最新の情報を手にできることが求められている。つまり、いつ・どのような情報を流しても、きちんとフレームが疎通するように日頃から監視しておくことが重要である。
【０００４】
従来より、ネットワークを介して接続された通信装置（「ノード」とも呼ばれる）間で正常性検査用のフレーム（以下、「テストフレーム」と呼ぶ）を転送することにより、通信装置間における通信の正常性を監視する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−２３５９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一方、通信装置間におけるフレームの疎通を監視するだけでなく、定期的にテストフレームを通信装置内で流すことにより、個々の通信装置内におけるフレーム伝送経路の正常性を好適に監視することが求められている。
【０００７】
本発明はこうした状況に鑑みてなされたものであり、その目的は、通信装置内におけるフレーム伝送経路の正常性を好適に監視できる技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の通信装置は、優先度情報を有するテストフレームを生成するテストフレーム生成部であって、テストフレームごとに優先度情報を変化させるテストフレーム生成部と、入力されるフレームの優先度がそれぞれ設定された複数のキューと、テストフレームの優先度情報を抽出するキュー抽出部と、テストフレームが入力された場合、キュー抽出部により抽出された優先度情報に応じて、複数のキューのいずれかにテストフレームを振り分ける振り分け部と、キューから出力されたテストフレームの正常性を検査する検査部とを備える。
【０００９】
なお、以上の構成要素の任意の組合せ、本発明の表現を装置、方法、システム、プログラム、プログラムを格納した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１０】
本発明によれば、通信装置内におけるフレーム伝送経路の正常性を好適に監視できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る通信装置を説明するための図である。
【図２】図２（ａ）〜（ｃ）は、フレームの一例を示す構成図である。
【図３】送受信部の構成を説明するための図である。
【図４】入力処理部の構成を説明するための図である。
【図５】入力アドレステーブルのデータ構造を示す図である。
【図６】トラフィックマネージャの構成を説明するための図である。
【図７】出力処理部の構造を説明するための図である。
【図８】テストフレームによる送受信部の正常性検査処理を示すフロー図である。
【図９】本発明の別の実施形態に係る通信装置を説明するための図である。
【図１０】入力処理部の変形例を説明するための図である。
【図１１】本発明のさらに別の実施形態に係る通信装置を説明するための図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照しつつ、本発明の実施形態について説明する。
【００１３】
図１は、本発明の実施形態に係る通信装置１００を説明するための図である。通信装置１００は、他装置から受信したイーサネットフレームを、該フレームに含まれる宛先情報に従ってスイッチングし、宛先となる装置に中継する装置である。なお、本実施形態においては、イーサネットフレームを対象とする通信装置１００を例として説明するが、本発明はこれに限定されず、例えばＡＴＭ（Asynchronous Transfer Mode）セルを対象とする装置であってもよい。
【００１４】
通信装置１００は、第１送受信部１０＿１〜第ｎ送受信部１０＿ｎ（ｎは２以上の整数）と、スイッチ部１１とを備える。なお、以下の説明において第１送受信部１０＿１〜第ｎ送受信部１０＿ｎを総称する場合は、「送受信部１０」と呼ぶ。
【００１５】
第１送受信部１０＿１〜第ｎ送受信部１０＿ｎは、それぞれ第１端末装置９＿１〜第ｎ端末装置９＿ｎに接続されている。以下の説明において第１端末装置９＿１〜第ｎ端末装置９＿ｎを総称する場合は、「端末装置９」と呼ぶ。各送受信部１０は、端末装置９から受信したユーザフレームを、他装置に中継する処理を行う。また、スイッチ部１１は、複数の送受信部１０の間において、ユーザフレームを交換する処理を行う。なお、送受信部１０の接続対象は、パーソナルコンピュータなどの端末装置９に限定されず、サーバ装置やルータなどの他の装置であってもよい。
【００１６】
各送受信部１０は、第１ポート１２＿１〜第ｍポート１２＿ｍ（ｍは２以上の整数）と、ＭＵＸ／ＤＭＵＸ部１３と、入力処理部１４と、出力処理部１５と、トラフィックマネージャ１６とを備える。なお、以下の説明において第１ポート１２＿１〜第ｍポート１２＿ｍを総称する場合は、「ポート１２」と呼ぶ。各ポート１２は、個別の通信回線に対応し、例えばＲＪ−４５などの通信ケーブル用コネクタ、およびＰＨＹレイヤ（物理レイヤ）とＭＡＣ（Media Access Control）レイヤの機能を備える通信処理回路を含む。通信回線としては、例えばＩＥＥＥ（The Institute of Electrical and Electronics Engineers, Inc.）により規定された１０００ＢＡＳＥ−Ｔ、および１０ＧＢＡＳＥ−Ｔなどを例示できる。
【００１７】
図１において、実線の矢印はユーザフレームの経路を例示しており、破線の矢印はテストフレームの経路を例示している。ここで、ユーザフレームとは、端末装置９またはサーバ装置などにおいて生成され、ユーザが送受信する情報を含むフレームを指す。一方、テストフレームは、通信装置１００内でのフレームの疎通を監視するために用いられるフレームを指す。
【００１８】
ユーザフレームは、例えば、第１送受信部１０＿１の第１ポート１２＿１から入力され、ＭＵＸ／ＤＭＵＸ部１３、入力処理部１４、およびトラフィックマネージャ１６を介してスイッチ部１１に出力される。スイッチ部１１は、入力されたユーザフレームを第ｎ送受信部１０＿ｎのトラフィックマネージャ１６に出力する。そして、ユーザフレームは、トラフィックマネージャ１６、出力処理部１５およびＭＵＸ／ＤＭＵＸ部１３を介して、第２ポート１２＿２から第ｎ端末装置９＿ｎに送信される。
【００１９】
一方、テストフレームは、ＭＵＸ／ＤＭＵＸ部１３内の生成点Ｐｉｎにおいて生成され、入力処理部１４およびトラフィックマネージャ１６を介してスイッチ部１１に出力される。スイッチ部１１は、入力されたテストフレームを折り返して、トラフィックマネージャ１６に出力する。そして、テストフレームは、トラフィックマネージャ１６および出力処理部１５を介してＭＵＸ／ＤＭＵＸ部１３に出力され、ＭＵＸ／ＤＭＵＸ部１３の終端点Ｐｏｕｔにおいて終端される。
【００２０】
テストフレームは、上記の経路を伝送される過程において、入力処理部１４、出力処理部１５、およびトラフィックマネージャ１６に設けられた各メモリの検査に用いられる。入力処理部１４は、イングレス（ＩＮＧＲＥＳＳ）のフレーム処理を行うものであり、出力処理部１５は、イーグレス（ＥＧＲＥＳＳ）のフレーム処理を行うものである。また、トラフィックマネージャ１６は、フレームの優先度に応じたキューイングを行うものである。通信装置１００内では、ユーザフレームおよびテストフレームに共通の伝送路が設けられている。なお、テストフレームの生成点Ｐｉｎおよび終端点Ｐｏｕｔは、検査対象の送受信部１０内ではなく、外部の他の装置に設けられてもよい。この場合、送受信部１０のハードウェア構成の規模が低減されるという利点が得られる。
【００２１】
図２（ａ）〜（ｃ）は、フレームの一例を示す構成図である。図２（ａ）は、ユーザフレーム（イーサネットフレーム）の基本的な構成を示す。このユーザフレームは、端末装置９から出力された、通信装置１００に入力される前のフレームである。ユーザフレームは、ＤＡ（Distination Address）、ＳＡ（Source Address）、ＴＹＰＥ、ペイロード、およびＦＣＳ(Frame Check Sequence)の領域を含む。ＤＡは、送信先装置のＭＡＣアドレスであり、ＳＡは、送信元装置のＭＡＣアドレスである。ＴＹＰＥは、ＩＰ（Internet Protocol）などのプロトコルの種別である。ペイロードは、当該フレームにより送受信される情報である。ＦＣＳは、フレームのデータ誤りを検出するための情報である。
【００２２】
図２（ｂ）は、通信装置１００の内部におけるユーザフレームの基本的な構成を示す。この装置内ユーザフレームは、上記のイーサネットフレームにヘッダを付与したものである。ヘッダは、ＭＵＸ／ＤＭＵＸ部１３内において、ユーザフレームに付与および削除される。
【００２３】
図２（ｃ）は、テストフレームの基本的な構成を示す。テストフレームは、通信装置１００の内部のみにおいて伝送されるフレームである。テストフレームの構造は、ユーザフレームの構造に倣うものであり、先頭にヘッダを有する。テストフレームのヘッダは、生成点Ｐｉｎにおいてテストフレーム本体と同時に生成される。テストフレームのＤＡ，ＳＡ，ＴＹＰＥ，およびペイロードは、限定がなく、例えば全部「０」であってもよい。ＦＣＳは、ユーザフレームと同様に、他の各領域の値に基づいて算出された値となる。
【００２４】
本実施形態において、テストフレームは、ヘッダの直後にアドレス情報を有し、該アドレスの直後にキュー情報を有している。アドレス情報は、入力処理部１４に設けられた入力アドレステーブル、および出力処理部１５に設けられた出力アドレステーブルの正常性を検査するための情報である。また、キュー情報は、トラフィックマネージャ１６に設けられたキューの正常性を検査するための情報である。なお、本実施形態では上記のようにヘッダの直後にアドレス情報を配置し、アドレス情報の直後にキュー情報を配置したが、フレーム内におけるアドレス情報およびキュー情報の位置は特に限定されない。
【００２５】
ヘッダは、識別情報および各種の制御情報を含む。識別情報は、ユーザフレームとテストフレームを識別するための情報である。例えば、識別情報が「０」の場合、該フレームがユーザフレームであることを示し、識別情報が「１」の場合、該フレームがテストフレームであることを示す。入力処理部１４、出力処理部１５、およびトラフィックマネージャ１６は、この識別情報を参照してフレームの処理を区別する。また、スイッチ部１１は、識別情報によりテストフレームを認識すると、上述したように当該テストフレームを出力元の送受信部１０に折り返す（図１の破線参照）。
【００２６】
制御情報は、例えば、フレームの転送先となる送受信部１０の識別番号１〜ｎ、および該転送先の送受信部１０におけるポート１２の識別番号１〜ｍを含む。送受信部１０の識別番号１〜ｎは、例えば入力処理部１４によりヘッダに付与される。スイッチ部１１は、ヘッダ内の識別番号１〜ｎを参照して、転送先の送受信部１０を判断する。また、出力処理部１５は、ヘッダにポート１２の識別番号１〜ｍを付与し、ＭＵＸ／ＤＭＵＸ部１３は、この識別番号１〜ｍを参照して、送信先のポート１２を判断する。このように、通信装置１００は、ＭＰＬＳ（Multi-protocol Label Switching）に基づくスイッチ動作を行う。
【００２７】
また、制御情報は、フレームの優先度に関する情報および出力ポートに関する情報を含む。トラフィックマネージャ１６は、これらの情報を参照してＱｏＳ（Quality of Service）制御を実行する。
【００２８】
図３は、送受信部１０の構成を説明するための図である。送受信部１０は、ＭＵＸ／ＤＭＵＸ部１３と、入力処理部１４と、出力処理部１５と、トラフィックマネージャ１６と、これらの機能部の動作を統括制御する制御部４０とを備える。
【００２９】
ＭＵＸ／ＤＭＵＸ部１３は、テストフレーム生成部２０と、ヘッダ付与部２１と、ヘッダ除去部２２と、テストフレーム廃棄部２３と、ＭＵＸ処理部２４と、ＤＭＵＸ処理部２５とを備える。
【００３０】
ヘッダ付与部２１およびヘッダ除去部２２は、第１ポート１２＿１〜第ｍポート１２＿ｍと接続されている。ヘッダ付与部２１は、受信したイーサネットフレームにヘッダを付与し、図２（ｂ）に示すような装置内ユーザフレームを出力する。
【００３１】
テストフレーム生成部２０は、図１に示す生成点Ｐｉｎに相当し、制御部４０からの指示に基づいてテストフレームの生成処理を行う。テストフレーム生成部２０は、生成処理において、テストフレーム本体に加え、ヘッダおよびＦＣＳも生成する。上述したように、テストフレームはヘッダの直後にアドレス情報を有し、該アドレス情報の直後にキュー情報を有する。
【００３２】
本実施形態において、テストフレーム生成部２０は、検査対象となる入力アドレステーブル２６および出力アドレステーブル３０のメモリアドレスを決定し、テストフレームにアドレス情報として書き込む。入力アドレステーブル２６および出力アドレステーブル３０は、それぞれ入力処理部１４および出力処理部１５に含まれるメモリである。テストフレーム生成部２０は、生成するテストフレームごとに、検査対象となるメモリのアドレスを変更する。テストフレーム生成部２０は、検査対象となるメモリのアドレスを決定するためのカウンタ値を有し、テストフレームを生成するごとに該カウンタ値を変更する。カウンタ値は、例えば一定値の加算により変化してもよい。これにより、テストフレーム生成部２０は、メモリ内の各アドレスを網羅するようにアドレス情報を変化させることができる。
【００３３】
また、テストフレーム生成部２０は、検査対象となるフローキュー６１およびポートキュー６２を決定し、テストフレームにキュー情報を書き込む。フローキュー６１およびポートキュー６２は、トラフィックマネージャ１６に含まれるメモリであり、それぞれ複数のキューから構成されている。キュー情報は、優先度情報および出力ポート情報を含んでいる。優先度情報は、テストフレームがどのフローキュー６１を通過するかを指定するものであり、出力ポート情報は、テストフレームがどのポートキュー６２を通過するかを指定するものである。これらの優先度情報および出力ポート情報に基づき、テストフレームが通過するフローキュー６１およびポートキュー６２の経路が指定される。本実施形態において、テストフレーム生成部２０は、生成するテストフレームごとに、優先度情報および出力ポート情報を変更する。これにより、テストフレームが通過するフローキュー６１およびポートキュー６２の経路を様々に変更することができる。
【００３４】
また、テストフレーム生成部２０は、制御部４０からの設定に基づき、テストフレームの送信タイミングの制御を行う。送信タイミングは、例えば一定周期（１ｍｓ、または１０ｍｓなど）をおいて到来するように設定されてもよい。
【００３５】
ＭＵＸ処理部２４は、ヘッダ付与部２１からのユーザフレームおよびテストフレーム生成部２０からのテストフレームの入力処理部１４への出力制御を行う。すなわち、ＭＵＸ処理部２４は、複数のユーザフレームおよびテストフレームの出力を調停する。
【００３６】
例えば、ＭＵＸ処理部２４は、出力待ちのユーザフレームを有するヘッダ付与部２１の出力バッファに対して、ラウンドロビン方式に従って出力許可を与える。これにより、出力待ちのユーザフレームを有する各出力バッファは、順次ユーザフレームを出力する。
【００３７】
また、テストフレーム生成部２０により生成されたテストフレームは、ユーザフレームの帯域に対する圧迫を避けるために、ユーザフレームよりも低い優先度に基づいて、入力処理部１４に送信される。従って、ＭＵＸ処理部２４は、出力待ちのテストフレームがあり、且つ出力待ちのユーザフレームがある場合、ユーザフレームを優先して出力する。一方、出力待ちのユーザフレームがなく、且つ出力待ちのテストフレームがある場合、ＭＵＸ処理部２４はテストフレーム生成部２０に出力許可を与え、テストフレームを出力する。なお、ＭＵＸ処理部２４の動作はこれに限定されず、出力待ちのユーザフレームの有無に関わらず、上記の送信タイミングに従ってテストフレームを出力してもよい。
【００３８】
一方、ＤＭＵＸ処理部２５は、出力処理部１５から入力されたユーザフレームおよびテストフレームを、ヘッダ除去部２２とテストフレーム廃棄部２３とに振り分けて出力する。ＤＭＵＸ処理部２５は、テストフレームをヘッダ内の識別情報に基づいて認識し、テストフレーム廃棄部２３に出力する。また、ＤＭＵＸ処理部２５は、ユーザフレームをヘッダ内の識別情報に基づいて認識し、ヘッダ除去部２２に出力する。
【００３９】
ヘッダ除去部２２は、入力されたユーザフレームからヘッダを除去し、ヘッダ内の制御情報に含まれる識別番号１〜ｍに対応するポート１２にユーザフレームを出力する。
【００４０】
テストフレーム廃棄部２３は、図１に示す終端点Ｐｏｕｔに相当し、テストフレームを受信したときに廃棄する。テストフレーム廃棄部２３は、廃棄に先立ち、入力されたテストフレームの正常性を、テストフレーム内のＦＣＳに基づいて検査し、結果を制御部４０に通知する。
【００４１】
次に、入力処理部１４を説明する。図４は、入力処理部１４の構成を説明するための図である。図４に示すように、入力処理部１４は、入力アドレステーブル２６と、エラー検出部２７と、入力フレーム処理部２８とを備える。
【００４２】
入力アドレステーブル２６は、テストフレームによる検査対象となるメモリである。入力アドレステーブル２６には、ユーザフレームの送信先アドレスＤＡ（送信先の端末装置９のＭＡＣアドレス）と、送受信部１０の識別番号１〜ｎとが対応付けられて記録されている。入力アドレステーブル２６のデータは、例えばフラッディングによる学習機能によって構築される。
【００４３】
入力フレーム処理部２８は、フレーム識別部４１と、転送先解析部４２と、アドレス抽出部４３とを備える。
【００４４】
フレーム識別部４１は、入力されたフレームのヘッダに含まれる識別情報に基づいて、該フレームがユーザフレームとテストフレームの何れであるか識別する。フレーム識別部４１は、識別結果に基づいて、ユーザフレームを転送先解析部４２に出力し、テストフレームをアドレス抽出部４３に出力する。
【００４５】
アドレス抽出部４３は、テストフレームを受信した場合、該テストフレームを解析し、テストフレームに含まれるアドレス情報を抽出する。アドレス抽出部４３は、テストフレーム中において何処にアドレス情報が含まれているか予め知っている。そして、アドレス抽出部４３は、テストフレームおよび抽出したアドレス情報を転送先解析部４２に出力する。
【００４６】
転送先解析部４２は、フレーム識別部４１からユーザフレームを受信した場合、入力アドレステーブル２６を参照し、ユーザフレームの送信先アドレスＤＡに基づいて送受信部１０の識別番号１〜ｎを特定する。転送先解析部４２は、特定した送受信部１０の識別番号１〜ｎをエラー検出部２７を介して読み込む。そして、転送先解析部４２は、読み込んだ識別番号１〜ｎをユーザフレームのヘッダに書き込み、ユーザフレームをトラフィックマネージャ１６に送信する。
【００４７】
一方、アドレス抽出部４３からテストフレームおよびアドレス情報を受信した場合、転送先解析部４２は、入力アドレステーブル２６にアクセスし、該アドレスに格納されたデータをエラー検出部２７を介して読み込む。そして、転送先解析部４２は、読み込んだデータをテストフレームのヘッダに書き込まずに、テストフレームをトラフィックマネージャ１６に送信する。
【００４８】
エラー検出部２７は、転送先解析部４２のアクセスによって入力アドレステーブル２６から読み出されたデータの誤りを検出する。誤り検出処理は、データに付与されたエラー検出情報に基づいて行われる。エラー検出情報としては、例えばＥＣＣ（Error Check Code）を例示できるが、これに限定されない。エラー検出部２７は、データ誤りを検出した場合、エラー通知を制御部４０に出力する。
【００４９】
図５は、入力アドレステーブル２６のデータ構造を示す図である。入力アドレステーブル２６には、アドレスごとに、エラー検出情報およびデータが記録されている。なお、図５に示すアドレス値は一例である。エラー検出情報は、例えばＥＣＣであってよい。データは、ユーザフレームの送信先アドレスＤＡと、送受信部１０の識別番号１〜ｎとを対応付けたものである。
【００５０】
上述したように、テストフレーム生成部２０は、テストフレームごとにアドレス情報を変化させている。従って、受信したテストフレームに含まれるアドレス情報を抽出し、該アドレスのデータを読み込む作業を繰り返すことにより、入力アドレステーブル２６内の各アドレスを網羅するようにデータを読み出して、エラー検出部２７により検査することができる。
【００５１】
このように、本実施形態に係る通信装置１００によれば、未使用状態の送受信部１０の識別番号、つまり通常あまりアクセスされないアドレスに対応するデータを読み出して検査することができる。通常の運用において、入力アドレステーブル２６は、ユーザフレームの送信先アドレスＤＡに対応するデータのみが読み出される。このため、未使用状態の送受信部１０の識別番号、つまり通常あまりアクセスされないアドレスのデータは、該当する送受信部１０を送信先とするユーザフレームを受信した後に、はじめて誤りが検出される場合がある。従って、上述したように、通常あまりアクセスされないアドレスのデータ誤りを、ユーザフレームの受信に先立って早期に検出することは有効である。
【００５２】
図１において説明したように、入力処理部１４から出力されたユーザフレームは、トラフィックマネージャ１６を介してスイッチ部１１に出力される。スイッチ部１１は、入力されたユーザフレームのヘッダに書き込まれた識別番号１〜ｎに基づいて、転送すべき送受信部１０を特定し、該送受信部１０にユーザフレームを転送する。
【００５３】
また、図１において説明したように、入力処理部１４から出力されたテストフレームは、スイッチ部１１において折り返され、出力元の送受信部１０のトラフィックマネージャ１６に入力される。
【００５４】
次に、トラフィックマネージャ１６について説明する。図６は、トラフィックマネージャ１６の構成を説明するための図である。トラフィックマネージャ１６は、フレームの優先度に応じたキューイングを行うものである。図６に示すように、トラフィックマネージャ１６は、フレーム処理部６０と、フローキュー６１と、ポートキュー６２と、第１セレクタ６３と、第２セレクタ６４とを備える。
【００５５】
フレーム処理部６０は、フレーム識別部６５と、キュー抽出部６６と、振り分け部６７とを備える。また、フローキュー６１は、第１フローキュー６１＿１、第２フローキュー６１＿２、第３フローキュー６１＿３、および第４フローキュー６１＿４を含む。また、ポートキュー６２は、第１ポートキュー６２＿１〜第ｍポートキュー６２＿ｍを含む。
【００５６】
フレーム識別部６５は、入力されたフレームのヘッダに含まれる識別情報に基づいて、該フレームがユーザフレームとテストフレームの何れであるか識別する。フレーム識別部６５は、識別結果に基づいて、ユーザフレームを振り分け部６７に出力し、テストフレームをキュー抽出部６６に出力する。
【００５７】
キュー抽出部６６は、テストフレームを受信した場合、該テストフレームを解析し、テストフレームに含まれるキュー情報を抽出する。上述したように、キュー情報は優先度情報および出力ポート情報を含む。キュー抽出部６６は、テストフレーム中において何処にキュー情報が含まれているか予め知っている。そして、キュー抽出部６６は、テストフレームおよび抽出したキュー情報を振り分け部６７に出力する。
【００５８】
振り分け部６７は、フレーム識別部６５からユーザフレームを受信した場合、ユーザフレームのヘッダに含まれる優先度情報に応じて、ユーザフレームを第１フローキュー６１＿１、第２フローキュー６１＿２、第３フローキュー６１＿３、および第４フローキュー６１＿４の何れかに振り分ける。第１フローキュー６１＿１は、最も優先度の高いフレームが入力されるキューであり、第２フローキュー６１＿２、第３フローキュー６１＿３の順で優先度が低くなり、第４フローキュー６１＿４が最も優先度の低いフレームが入力されるキューである。
【００５９】
フローキュー６１に入力されたユーザフレームは、出力待ち状態となる。第１セレクタ６３は、各フローキュー６１で出力待ちのユーザフレームを、それぞれのフローキューの優先度に応じて取り出す。第１セレクタ６３は、優先度の高いフローキュー６１に格納されたユーザフレームを優先的に取り出す。
【００６０】
そして、第１セレクタ６３は、ユーザフレームのヘッダに含まれる出力ポート情報に応じて、ユーザフレームを第１ポートキュー６２＿１〜第ｍポートキュー６２＿ｍの何れかに出力する。ポートキュー６２に入力されたユーザフレームは、出力待ち状態となる。第２セレクタ６４は、各ポートキュー６２で出力待ちのユーザフレームを取り出し、出力処理部１５に出力する。
【００６１】
一方、キュー抽出部６６からテストフレームおよびキュー情報を受信した場合、振り分け部６７は、キュー情報に含まれる優先度情報に応じて、テストフレームを第１フローキュー６１＿１、第２フローキュー６１＿２、第３フローキュー６１＿３、および第４フローキュー６１＿４の何れかに振り分ける。例えば、最も高い優先度が指定されている場合には、振り分け部６７はテストフレームを第１フローキュー６１＿１に出力する。また、例えば２番目に高い優先度が指定されている場合には、振り分け部６７はテストフレームを第２フローキュー６１＿２に出力する。
【００６２】
その後、第１セレクタ６３は、各フローキュー６１で出力待ちのテストフレームを、それぞれのフローキューの優先度に応じて取り出す。この処理はユーザフレームの場合と同様である。そして、第１セレクタ６３は、キュー情報に含まれる出力ポート情報に応じて、テストフレームを第１ポートキュー６２＿１〜第ｍポートキュー６２＿ｍの何れかに出力する。ポートキュー６２に入力されたテストフレームは、出力待ち状態となる。第２セレクタ６４は、各ポートキュー６２で出力待ちのテストフレームを取り出し、出力処理部１５に出力する。
【００６３】
上述したように、テストフレーム生成部２０は、テストフレームごとにキュー情報、すなわち優先度情報および出力ポート情報を変化させている。従って、本実施形態に係る通信装置１００は、テストフレームを様々なフローキュー６１を通過させ、さらに様々なポートキュー６２を通過させることができる。フローキュー６１およびポートキュー６２を通過したテストフレームの正常性は、ＭＵＸ／ＤＭＵＸ部１３のテストフレーム廃棄部２３により検査される。
【００６４】
このように、本実施形態に係る通信装置１００によれば、未使用状態のフローキュー６１とポートキュー６２の正常性を検査することができる。例えば通常の運用において優先度の最も高いユーザフレームしか流れていない場合、第１フローキュー６１＿１を通る伝送経路の正常性は確認することができるが、ユーザフレームが通過しない他の第２フローキュー６１＿２、第３フローキュー６１＿３、第４フローキュー６１＿４の正常性は確認できない。このため、仮に第２フローキュー６１＿２、第３フローキュー６１＿３、第４フローキュー６１＿４に異常がある場合、これらのフレーキューを通過するユーザフレームを受信した場合に初めて異常が検出されることになる。これはユーザフレームの消失等につながるので、好ましくない。
【００６５】
テストフレームは、通常優先度が低く設定されているので、単にテストフレームを通信装置内で流した場合には、テストフレームは優先度の低いキュー、すなわち第４フローキュー６１＿４しか通過できない。従って、その他のキュー、例えば第２フローキュー６１＿２や第３フローキュー６１＿３の疎通は検査することができない。
【００６６】
本実施形態に係る通信装置１００では、テストフレームにキュー情報を持たせ、テストフレームの優先度および出力ポートをテストフレームごとに変えている。そして、トラフィックマネージャ１６のフレーム処理部６０において、キュー情報を抽出し、テストフレームの優先度およびに応じて、テストフレームが様々なキューを通過するように構成されている。これにより、様々なキューの経路を満遍なく検査することができ、フローキュー６１、ポートキュー６２の異常を早期に検出できるので、ユーザフレームの消失等が生じる事態を回避または少なくとも低減できる。
【００６７】
次に、出力処理部１５を説明する。図７は、出力処理部１５の構造を説明するための図である。図７に示すように、出力処理部１５は、出力アドレステーブル３０と、エラー検出部３１と、出力フレーム処理部２９とを備える。
【００６８】
出力アドレステーブル３０は、テストフレームによる検査対象となるメモリである。出力アドレステーブル３０には、ユーザフレームの送信先アドレスＤＡと、送信先ポート１２の識別番号１〜ｍとが対応付けられて記録されている。出力アドレステーブル３０のデータは、例えばフラッディングによる学習機能によって構築される。
【００６９】
出力フレーム処理部２９は、フレーム識別部７１と、送信ポート解析部７２と、アドレス抽出部７３とを備える。
【００７０】
フレーム識別部７１は、入力されたフレームのヘッダに含まれる識別情報に基づいて、該フレームがユーザフレームとテストフレームの何れであるか識別する。フレーム識別部７１は、識別結果に基づいて、ユーザフレームを送信ポート解析部７２に出力し、テストフレームをアドレス抽出部７３に出力する。
【００７１】
アドレス抽出部７３は、テストフレームを受信した場合、該テストフレームを解析し、テストフレームに含まれるアドレス情報を抽出する。アドレス抽出部７３は、テストフレーム中において何処にアドレス情報が含まれているか予め知っている。そして、アドレス抽出部７３は、テストフレームおよび抽出したアドレス情報を送信ポート解析部７２に出力する。
【００７２】
送信ポート解析部７２は、フレーム識別部７１からユーザフレームを受信した場合、出力アドレステーブル３０を参照し、ユーザフレームの送信先アドレスＤＡに基づいて送信先ポート１２の識別番号１〜ｍを特定する。送信ポート解析部７２は、特定した送信先ポートをエラー検出部３１を介して読み込む。そして、送信ポート解析部７２は、読み込んだ識別番号１〜ｍをユーザフレームのヘッダに書き込み、ユーザフレームをＭＵＸ／ＤＭＵＸ部１３のＤＭＵＸ処理部２５に送信する。
【００７３】
一方、アドレス抽出部７３からテストフレームおよびアドレス情報を受信した場合、送信ポート解析部７２は、出力アドレステーブル３０にアクセスし、該アドレスに格納されたデータをエラー検出部３１を介して読み込む。そして、送信ポート解析部７２は、読み込んだデータをテストフレームのヘッダに書き込まずに、テストフレームをＭＵＸ／ＤＭＵＸ部１３のＤＭＵＸ処理部２５に送信する。
【００７４】
エラー検出部３１は、送信ポート解析部７２のアクセスによって出力アドレステーブル３０から読み出されたデータの誤りを検出する。誤り検出処理は、データに付与されたエラー検出情報に基づいて行われる。エラー検出情報としては、例えばＥＣＣ（Error Check Code）を例示できるが、これに限定されない。エラー検出部３１は、データ誤りを検出した場合、エラー通知を制御部４０に出力する。
【００７５】
このように出力処理部１５においても、入力処理部１４と同様に、出力アドレステーブル３０内の各アドレスを網羅するようにデータを読み出して、エラー検出部３１により検査することができる。これにより、通常あまりアクセスされないアドレスのデータ誤りを、ユーザフレームの受信に先立って早期に検出することは有効である。
【００７６】
図８は、テストフレームによる送受信部１０の正常性検査処理を示すフロー図である。
【００７７】
まず、ＭＵＸ／ＤＭＵＸ部１３のテストフレーム生成部２０は、制御部４０の指示に従ってテストフレームを生成し、入力処理部１４に出力する（Ｓ１０）。テストフレームは、ヘッダの直後にアドレス情報を有し、該アドレスの直後にキュー情報を有している。アドレス情報およびキュー情報は、テストフレームごとに変えられる。
【００７８】
入力処理部１４の入力フレーム処理部２８は、テストフレームを受信すると、入力アドレステーブル２６の正常性検査を実施する（Ｓ１２）。エラー検出部２７は、入力アドレステーブル２６から読み出されたデータの誤りを検出する。データ誤りを検出した場合、エラー検出部２７はデータ誤りを制御部４０に通知する。誤り検査後、入力フレーム処理部２８はテストフレームをスイッチ部１１に向けて出力する。
【００７９】
スイッチ部１１は、入力されたフレームがテストフレームであると認識すると、該テストフレームを出力元の送受信部１０のトラフィックマネージャ１６に折り返す（Ｓ１４）。
【００８０】
トラフィックマネージャ１６は、テストフレームを受信すると、フローキュー６１およびポートキュー６２の正常性検査を実施する（Ｓ１６）。フローキュー６１およびポートキュー６２の異常は、ＭＵＸ／ＤＭＵＸ部１３のテストフレーム廃棄部２３により検出される。トラフィックマネージャ１６から出力されたテストフレームは、出力処理部１５の出力フレーム処理部２９に出力される。
【００８１】
出力処理部１５の出力フレーム処理部２９は、テストフレームを受信すると、出力アドレステーブル３０の正常性検査を実施する（Ｓ１８）。エラー検出部３１は、出力アドレステーブル３０から読み出されたデータの誤りを検出する。データ誤りを検出した場合、エラー検出部３１はデータ誤りを制御部４０に通知する。誤り検査後、出力フレーム処理部２９はテストフレームをＭＵＸ／ＤＭＵＸ部１３に出力する。
【００８２】
ＭＵＸ／ＤＭＵＸ部１３のＤＭＵＸ処理部２５は、入力されたフレームがテストフレームであると認識すると、該テストフレームをテストフレーム廃棄部２３に出力する。テストフレーム廃棄部２３は、入力されたテストフレームの正常性をＦＣＳに基づいて検査した後、テストフレームを廃棄する（Ｓ２０）。テストフレームに異常がある場合、制御部４０に通知する。
【００８３】
図９は、本発明の別の実施形態に係る通信装置１００を説明するための図である。図３に示す通信装置１００と同一または対応する構成要素については同一の符号を付し、重複する説明は適宜省略する。なお、図９においては、ＭＵＸ／ＤＭＵＸ部１３、出力処理部１５、トラフィックマネージャ１６などの内部構成の図示を一部省略している。
【００８４】
本実施形態においては、スイッチ部１１に出力処理部９０と、ＤＭＵＸ処理部９４と、テストフレーム廃棄部９５とが設けられている。出力処理部９０は、出力フレーム処理部９１と、エラー検出部９３と、出力アドレステーブル９２とを備える。
【００８５】
本実施形態において、送受信部１０のテストフレーム生成部２０から送信されたテストフレームは、入力処理部１４およびトラフィックマネージャ１６を介してスイッチ部１１に入力される。図３に示す通信装置１００では、スイッチ部１１は、入力されたテストフレームを出力元の送受信部１０に折り返していた。しかしながら、本実施形態では、スイッチ部１１はテストフレームを折り返さず、他の送受信部１０に転送する。該他の送受信部１０への転送前に、テストフレームは出力処理部９０に入力される。なお、ユーザフレームの場合も、テストフレームと同様に出力処理部９０に入力される。
【００８６】
出力処理部９０の各機能部の動作は、図７で説明した送受信部１０における出力処理部１５とほぼ同じであり、テストフレームを用いて、出力アドレステーブル９２内の各アドレスのデータ誤りが検査される。
【００８７】
ＤＭＵＸ処理部９４は、出力処理部９０から入力されたフレームがテストフレームであるかユーザフレームであるか識別する。テストフレームである場合、ＤＭＵＸ処理部９４は該フレームをテストフレーム廃棄部９５に出力する。一方、ユーザフレームである場合、ＤＭＵＸ処理部９４はヘッダに書き込まれた送受信部１０の識別番号１〜ｎに従って、送受信部１０に出力する。
【００８８】
テストフレーム廃棄部９５は、テストフレームを受信したときに廃棄する。テストフレーム廃棄部９５は、廃棄に先立ち、入力されたテストフレームの正常性を、テストフレーム内のＦＣＳに基づいて検査し、結果を制御部に通知する。
【００８９】
図３に示す実施形態では、スイッチ部１１でテストフレームを折り返しているので、スイッチ部１１で折り返される経路については正常性を確認できる。しかしながら、スイッチ部１１で折り返されない経路については正常性を確認できなかった。一方、本実施形態に係る通信装置１００によれば、スイッチ部１１内に出力処理部９０を設けたことにより、スイッチ部１１でテストフレームを折り返す・折り返さないにかかわらず、生成された全てのテストフレームの疎通確認を行うことができる。
【００９０】
図１０は、入力処理部１４の変形例を説明するための図である。図１０に示すように、本変形例に係る入力処理部１４は、第１〜第Ｌ入力アドレステーブル２６＿１〜２６Ｌと、第１〜第Ｌエラー検出部２７＿１〜２７＿Ｌと、第１〜第Ｌ入力フレーム処理部２８＿１〜２８Ｌとを備える（Ｌは２以上の整数）。第１〜第Ｌ入力フレーム処理部２８＿１〜２８Ｌは、それぞれ、図４に示す入力フレーム処理部２８と同様に、フレーム識別部、転送先解析部およびアドレス抽出部（図示せず）を備える。
【００９１】
本変形例に係る入力処理部１４において、第１〜第Ｌ入力アドレステーブル２６＿１〜２６Ｌは、それぞれ、テーブル内で検査できるアドレスが予め設定されている。例えば、第１アドレステーブル２６＿１は、アドレスの下位２ビットを検査するように設定されており、第２アドレステーブル２６＿２は、アドレスの下位３ビットを検査するように設定されている。
【００９２】
第１入力フレーム処理部２８＿１には、ＭＵＸ／ＤＭＵＸ部からフレームが入力される。第１入力フレーム処理部２８＿１のフレーム識別部は、フレームがテストフレームであるかユーザフレームであるかを識別する。ユーザフレームは転送先解析部に送られ、テストフレームはアドレス抽出部に送られる。ここで、第１入力フレーム処理部２８＿１のアドレス抽出部は、テストフレームのアドレス情報のうち、第１入力アドレステーブル２６＿１に設定されたビットのみ抽出する。例えば第１入力アドレステーブル２６＿１がアドレスの下位２ビットを検査するように設定されている場合、アドレス情報から下位２ビットを抽出する。アドレス抽出部は、テストフレームおよび抽出したアドレス情報を転送先解析部に出力する。転送先解析部は、例えば下位２ビットに対応するデータを第１エラー検出部２７＿１を介して読み込む。第１エラー検出部２７＿１は、読み出されたデータの誤りを検出した場合、エラー通知を制御部に出力する。データ読込後、転送先解析部はテストフレームを第２入力フレーム処理部２８＿２に出力する。
【００９３】
第２入力フレーム処理部２８＿２においても、同様の処理が行われる。例えば第２入力アドレステーブル２６＿１がアドレスの下位３ビットを検査するように設定されている場合、第２入力フレーム処理部２８＿２のアドレス抽出部は、アドレス情報から下位３ビットを抽出する。転送先解析部は、下位３ビットに対応するデータを第２エラー検出部２７＿２を介して読み込む。第２エラー検出部２７＿２は、読み出されたデータの誤りを検出した場合、エラー通知を制御部に出力する。データ読込後、転送先解析部はテストフレームを第３入力フレーム処理部（図示せず）に出力する。
【００９４】
このように、本変形例に係る入力処理部１４では、アドレスを部分的に確認することにより、入力アドレステーブルのどこに誤りがあるかを効率的に検査することができる。
【００９５】
図１１は、本発明のさらに別の実施形態に係る通信装置１００を説明するための図である。図１１においては、上述の実施形態と同一または対応する構成要素については同一の符号を付し、重複する説明は適宜省略する。
【００９６】
本実施形態に係る通信装置１００は、図１０に示す入力処理部１４を有する。また、本実施形態においては、ＭＵＸ／ＤＭＵＸ部１３のテストフレーム生成部２０内にアドレス抽出部４３が設けられている。また、入力処理部１４内の各入力フレーム処理部は、フレーム識別部および転送先解析部４２を備えているが、アドレス抽出部は備えていない。
【００９７】
本実施形態において、テストフレーム生成部２０が例えば「ａｂｃｄｅｆｇｈ」という８ビットのアドレス情報を有するテストフレームを生成したとする。この場合、アドレス抽出部４３は、生成されたテストフレームからアドレス情報を抜き出す。アドレス情報のうちどのビットを抜き出すかは外部設定され、例えば下位から３ビットごとに抽出するとした場合、「ｆｇｈ」、「ｃｄｅ」、「０ａｂ」が抽出される。その後、テストフレーム生成部２０は、アドレス情報において抽出されたビット以外のビットを「０」に置き換え、テストフレームとして送信する。例えば、アドレス情報として「０００００ｆｇｈ」を有するテストフレーム１、アドレス情報として「００ｃｄｅ０００」を有するテストフレーム２、およびアドレス情報として「ａｂ００００００」を有するテストフレーム３が送信される。上記のように、元々１フレームとして送信されるはずのテストフレームが、アドレス抽出を行うことにより、複数（上記の例では３つ）のテストフレームとして送信される。
【００９８】
本実施形態に係る通信装置１００によれば、テストフレーム生成部２０内にアドレス抽出部４３を設けたことにより、第１〜第Ｌ入力フレーム処理部２８＿１〜２８＿Ｌのそれぞれにアドレス抽出部を設ける必要がなくなる。その結果、回路規模の削減を図ることができる。
【００９９】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せによりいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１００】
９  端末装置、  １０  送受信部、  １１  スイッチ部、  １２  ポート、  １３  ＭＵＸ／ＤＭＵＸ部、  １４  入力処理部、  １５  出力処理部、  １６  トラフィックマネージャ、  ２０  テストフレーム生成部、  ２１  ヘッダ付与部、  ２２  ヘッダ除去部、  ２３  テストフレーム廃棄部、  ２４  ＭＵＸ処理部、  ２５  ＤＭＵＸ処理部、  ２６  入力アドレステーブル、  ２７、３１  エラー検出部、  ２８  入力フレーム処理部、  ２９  出力フレーム処理部、  ３０  出力アドレステーブル、  ４０  制御部、  ４１  フレーム識別部、  ４２  転送先解析部、  ４３  アドレス抽出部、  ６０  フレーム処理部、  ６１  フローキュー、  ６２  ポートキュー、  ６６  キュー抽出部、  ６７  振り分け部、  ７２  送信ポート解析部、  ７３  アドレス抽出部、  １００  通信装置。
【図１】
2014023048.tif 000003
【図２】
2014023048.tif 000004
【図３】
2014023048.tif 000005
【図４】
2014023048.tif 000006
【図５】
2014023048.tif 000007
【図６】
2014023048.tif 000008
【図７】
2014023048.tif 000009
【図８】
2014023048.tif 000010
【図９】
2014023048.tif 000011
【図１０】
2014023048.tif 000012
【図１１】
2014023048.tif 000013