(57)【要約】【課題】  容易に故障解析することができる通信装置及び装置情報の収集方法を提供する。【解決手段】  通信装置は、アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリと、フレームが入力されたとき、前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスするアクセス処理部と、該アクセスに関するアクセス情報を前記フレームに書き込む書き込み部とを有する。【選択図】図７
2018007044.tif 000002
【特許請求の範囲】
【請求項１】
アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリと、
フレームが入力されたとき、前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスするアクセス処理部と、
該アクセスに関するアクセス情報を前記フレームに書き込む書き込み部とを有することを特徴とする通信装置。
【請求項２】
前記メモリには、前記アドレスと前記フレーム処理情報が対応付けて登録され、前記フレームに対して順次に行われる複数のフレーム処理にそれぞれ用いられる複数のテーブルが保持され、
前記アクセス処理部及び前記書き込み部は、前記複数のテーブルの各々に対応して設けられており、
前記アクセス処理部の各々は、前記フレームが入力されたとき、前記複数のテーブルのうち、該アクセス処理部に対応するテーブルにアクセスし、
前記書き込み部の各々は、前記複数のテーブルのうち、該書き込み部に対応するテーブルに対するアクセスに関する前記アクセス情報を前記フレームに書き込むことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記複数のテーブルのうち、前記フレームに対して最初に行われるフレーム処理に用いられる先頭テーブルには、前記先頭テーブル内の各アドレスに対応して、該アドレスの前記フレーム処理情報へのアクセスを前記アクセス情報の生成対象とするか否かを示すフラグが設けられており、
前記先頭テーブルに対応する前記書き込み部は、前記アクセス処理部のアクセス先のアドレスに対応する前記フラグに応じて前記アクセス情報を生成して前記フレームに書き込むことを特徴とする請求項２に記載の通信装置。
【請求項４】
前記フレームには、該フレームが前記アクセス情報の書き込み対象であるか否かを示す設定情報が含まれており、
前記先頭テーブルにおいて、前記アクセス処理部のアクセス先のアドレスに対応する前記フラグに応じて前記設定情報を設定する設定処理部を有し、
前記複数のテーブルのうち、前記先頭テーブル以外の各テーブルに対応する前記書き込み部は、前記設定情報に応じて前記アクセス情報を生成して前記フレームに書き込むことを特徴とする請求項３に記載の通信装置。
【請求項５】
試験フレームを生成する生成部を有し、
前記フレームは、前記試験フレームであることを特徴とする請求項１乃至４の何れかに記載の通信装置。
【請求項６】
前記試験フレームを廃棄する廃棄部を有することを特徴とする請求項５に記載の通信装置。
【請求項７】
前記フレームは、他装置との間の伝送状態を監視するための監視制御フレームであることを特徴とする請求項１乃至４の何れかに記載の通信装置。
【請求項８】
フレームが入力されたとき、アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリ内の前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスし、
該アクセスに関するアクセス情報を前記フレームに書き込むことを特徴とする装置情報の収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、通信装置及び装置情報の収集方法に関する。
【背景技術】
【０００２】
例えばＩＴＵ−Ｔ（International Telecommunication Union Telecommunication Sector）勧告Ｙ．１７３１には、イーサネット（登録商標、以下同様）ＯＡＭ（Operations, Administration and Maintenance）機能が規定されている。イーサネットＯＡＭ機能によると、ノード間の接続性、損失、及び遅延などの情報を収集することが可能であるが、ノードに設けられた通信装置内の詳細な監視は不可能である。
【０００３】
これに対し、例えば特許文献１には、監視パケットにより装置内監視を行う点が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−３３３１４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
レイヤ２スイッチなどの通信装置には、イーサネットフレームの処理に用いられる各種の情報を記憶するメモリが設けられている。例えばソフトエラーなどの偶発的な１ビットレベルのエラーが発生すると、メモリに読み書きされるデータに異常が発生する。
【０００６】
しかし、特許文献１の開示技術では、パケットの欠落やルーティング動作の監視は可能であっても、通信装置内の詳細な情報を収集することができないため、異常の原因を特定する故障解析は不可能である。
【０００７】
そこで本件は上記の課題に鑑みてなされたものであり、容易に故障解析することができる通信装置及び装置情報の収集方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本明細書に記載の通信装置は、アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリと、フレームが入力されたとき、前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスするアクセス処理部と、該アクセスに関するアクセス情報を前記フレームに書き込む書き込み部とを有する。
【０００９】
本明細書に記載の装置情報の収集方法は、フレームが入力されたとき、アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリ内の前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスし、該アクセスに関するアクセス情報を前記フレームに書き込む方法である。
【発明の効果】
【００１０】
容易に故障解析することができる。
【図面の簡単な説明】
【００１１】
【図１】レイヤ２スイッチの一例を示す構成図である。
【図２】イーサネットフレームのフォーマットを示す図である。
【図３】ＭＡＣ（Media Access Control）アドレス学習機能に関する機能構成の一例を示す図である。
【図４】装置内ヘッダが付与されたイーサネットフレームのフォーマットを示す図である。
【図５】ＭＡＣアドレス学習に関する入力処理部の処理の一例を示すフローチャートである。
【図６】ＭＡＣアドレス学習に関する出力処理部の処理の一例を示すフローチャートである。
【図７】メモリアクセスに関する入力処理部の機能構成の一例を示す図である。
【図８】メモリアクセスに関するスイッチユニットの機能構成の一例を示す図である。
【図９】メモリアクセスに関する出力処理部の機能構成の一例を示す図である。
【図１０】メモリアクセス処理の一例を示すフローチャートである。
【図１１】試験フレームの経路の一例を示す図である。
【図１２】装置内ヘッダが付与された試験フレームの一例を示す構成図である。
【図１３】メモリアクセスに関する入力処理部の機能構成の他例を示す図である。
【図１４】メモリアクセスに関する出力処理部の機能構成の他例を示す図である。
【図１５】メモリアクセス処理の他例を示すフローチャートである。
【図１６】ＯＡＭフレームの経路の一例を示す図である。
【図１７】ＯＡＭフレームによるメモリアクセスに関する入力処理部の機能構成の一例を示す図である。
【図１８】ＯＡＭフレームによるメモリアクセス処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
図１は、レイヤ２スイッチの一例を示す構成図である。レイヤ２スイッチは、通信装置の一例であり、ネットワークにおいて、フレームの一例であるイーサネットフレームの転送処理を行う。
【００１３】
レイヤ２スイッチは、複数のインターフェース（ＩＦ）ユニット（＃１〜＃Ｎ（Ｎ：正の整数））１と、スイッチ（ＳＷ）ユニット２と、監視制御ユニット３とを有する。ＩＦユニット１は、光ファイバなどの伝送路を介して他装置とユーザフレームＦＲＭｕを送受信し、そのユーザフレームＦＲＭｕの通信回線を処理する。なお、ユーザフレームＦＲＭｕは、クライアント信号などの主信号を含むイーサネットフレームである。
【００１４】
図２には、イーサネットフレームのフォーマットが示されている。イーサネットフレームは、ＤＡ（Destination Address）、ＳＡ（Source Address）、ＴＹＰＥ、ペイロード、及びＦＣＳ（Frame Check Sequence）の各領域を含む。ＤＡは宛先の装置のＭＡＣアドレスであり、ＳＡは送信元装置のＭＡＣアドレスである。ＴＹＰＥはＩＰ（Internet Protocol）などのプロトコルの種別である。ペイロードはクライアント信号などのデータである。ＦＣＳは、フレームのデータ誤りを訂正するための符号である。
【００１５】
再び図１を参照すると、ＳＷユニット２は、複数のＩＦユニット１の間でイーサネットフレームを交換する。すなわち、ＳＷユニット２は、ＩＦユニット１から入力されたイーサネットフレームを、その宛先に応じたＩＦユニット１に出力する。
【００１６】
監視制御ユニット３は、各ＩＦユニット１及びＳＷユニット２の監視制御を行う。監視制御ユニット３は、ネットワークの監視制御を行うＯｐＳ（Operating System）と通信し、ＯｐＳの指示に従い、各ＩＦユニット１及びＳＷユニット２の障害通知や各ＩＦユニット１及びＳＷユニット２に対する各種の設定を行う。なお、監視制御ユニット３は、例えばＣＰＵ（Central Processing Unit）やメモリを含む回路により構成される。
【００１７】
ＩＦユニット１は、複数のポートＰ１〜Ｐｎ（ｎ：正の整数）と、ＰＨＹ（Physical layer）／ＭＡＣ部１０と、入力処理部１１と、出力処理部１２と、メモリ部１３と、制御部１４とを有する。ポートＰ１〜Ｐｎ、ＰＨＹ／ＭＡＣ部１０、入力処理部１１、及び出力処理部１２は、例えば論理回路やネットワークプロセッサなどにより構成される。
【００１８】
ポートＰ１〜Ｐｎは、例えば光モジュールであり、他装置との間でイーサネットフレームを送受信する。ＰＨＹ／ＭＡＣ部１０は、物理レイヤ及びＭＡＣレイヤにおけるイーサネットフレームの処理を行う。ＰＨＹ／ＭＡＣ部１０は、ポートＰ１〜Ｐｎから入力されたイーサネットフレームを処理した後、入力処理部１１に出力する。また、ＰＨＹ／ＭＡＣ部１０は、出力処理部１２から入力されたイーサネットフレームを処理した後、宛先に応じたポートＰ１〜Ｐｎに出力する。
【００１９】
入力処理部１１は、ポートＰ１〜Ｐｎで受信されたイーサネットフレームを処理する。入力処理部１１は、ＰＨＹ／ＭＡＣ部１０から入力されたイーサネットフレームに対してＭＡＣアドレス学習、宛先検索、及び帯域制御などの一連の複数の処理を、パイプライン処理として実行する。このとき、入力処理部１１は、イーサネットフレームの処理に用いられる情報を保持するメモリ部１３にアクセスする。
【００２０】
メモリ部１３は、メモリの一例であり、例えば１個以上の不揮発性メモリを含む。不揮発性メモリとしては、例えば、ＥＰＲＯＭ（Erasable Programmable ROM）が挙げられるが、これに限定されない。入力処理部１１は、処理が完了したイーサネットフレームをＳＷユニット２に出力する。
【００２１】
また、出力処理部１２は、ポートＰ１〜Ｐｎから送信されるイーサネットフレームを処理する。出力処理部１２は、ＳＷユニット２から入力されたイーサネットフレームに対してＭＡＣアドレス学習及び帯域制御などの一連の複数の処理を、パイプライン処理として実行する。このとき、出力処理部１２はメモリ部１３にアクセスする。
【００２２】
図１中、点線の矢印はユーザフレームＦＲＭｕの経路の一例を示す。ユーザフレームＦＲＭｕは、ＩＦユニット（＃１）１のポートＰ１からＰＨＹ／ＭＡＣ部１０及び入力処理部１１を経由してＳＷユニット２に出力される。ＳＷユニット２は、ユーザフレームＦＲＭｕをその宛先に応じたＩＦユニット（＃２）１に出力する。ＩＦユニット（＃２）１において、ユーザフレームＦＲＭｕは、出力処理部１２及びＰＨＹ／ＭＡＣ部１０を経由してポートＰ１から他装置に送信される。このようにして、レイヤ２スイッチは、ユーザフレームＦＲＭｕを転送する。
【００２３】
また、制御部１４は、例えばＣＰＵやメモリを含む回路により構成される。制御部１４は、監視制御ユニット３と通信し、監視制御ユニット３の指示に従い、ＰＨＹ／ＭＡＣ部１０、入力処理部１１、及び出力処理部１２に対し制御情報の収集及び各種の設定を行う。
【００２４】
次に、入力処理部１１及び出力処理部１２が実行するパイプライン処理の例として、ＭＡＣアドレス学習処理を挙げて説明する。
【００２５】
図３は、ＭＡＣアドレス学習機能に関する機能構成の一例を示す図である。本例では、ＩＦユニット（＃１）１の入力処理部１１から、ＳＷユニット２を介してＩＦユニット（＃２）１の出力処理部１２にユーザフレームＦＲＭｕが出力される場合を挙げる。
【００２６】
ＩＦユニット（＃１）１において、入力処理部１１は、ヘッダ付与部１１０、ＭＡＣ学習処理部１１１、及び宛先検索部１１２を有する。出力処理部１２は、通知処理部１２５及び通知廃棄部１２４を有する。メモリ部１３には、ＭＡＣアドレステーブル１３ａが格納されている。
【００２７】
また、ＩＦユニット（＃２）１において、出力処理部１２は、登録判定部１２０、学習情報通知部１２１、ＭＡＣ学習処理部１２２、及びヘッダ削除部１２３を有する。メモリ部１３には、ＭＡＣアドレステーブル１３ｂが格納されている。ヘッダ付与部１１０は、ユーザフレームＦＲＭｕに装置内ヘッダを付与する。
【００２８】
図４は、装置内ヘッダが付与されたイーサネットフレームのフォーマットを示す図である。装置内ヘッダは、イーサネットフレームの先頭に付与される。装置内ヘッダには、ユーザフレームＦＲＭｕの宛先を示す宛先情報Ｈａ、各種の制御に関する制御情報Ｈｂ、及びログ情報Ｈｃなどが含まれる。なお、ログ情報Ｈｃについては後述する。
【００２９】
再び図３を参照すると、ヘッダ付与部１１０の後段にはＭＡＣ学習処理部１１１が設けられている。ＭＡＣ学習処理部１１１は、ユーザフレームＦＲＭｕのＳＡに基づきＭＡＣアドレス学習処理を行う。より具体的には、ＭＡＣ学習処理部１１１は、ＳＡとユーザフレームＦＲＭｕの受信元のＩＦユニット１のユニット番号（＃１〜＃Ｎ）及びポートＰ１〜Ｐｎのポート識別子（本例では符号Ｐ１〜Ｐｎとする）をＭＡＣアドレステーブル１３ａに登録する。なお、ＭＡＣ学習処理部１１１は、そのＳＡについてユニット番号及びポート識別子が登録済みであり、かつ変更がなければ登録を行わない。
【００３０】
ＭＡＣアドレステーブル１３ａ，１３ｂには、ＭＡＣアドレス、ユニット番号（「ユニット」参照）、及びポート識別子が互いに対応付けられて登録されている。例えば、ＭＡＣアドレステーブル１３ａには、ＭＡＣアドレス「ＡＤａ」、ユニット番号「＃２」、及びポート識別子「Ｐ１」が互いに対応付けられて登録されている。これは、ＩＦユニット（＃２）１のポートＰ１にＭＡＣアドレス「ＡＤａ」の装置が接続されていることを意味する。
【００３１】
ＭＡＣ学習処理部１１１の後段には宛先検索部１１２が設けられている。宛先検索部１１２は、ユーザフレームＦＲＭｕのＤＡに基づきＭＡＣアドレステーブル１３ａから、宛先情報Ｈａとしてユニット番号及びポート識別子を検索する。例えば、ＤＡがＭＡＣアドレス「ＡＤａ」である場合、ＭＡＣアドレステーブル１３ａからユニット番号「＃２」及びポート識別子「Ｐ１」が検索される。この場合、宛先情報Ｈａはユニット番号「＃２」及びポート識別子「Ｐ１」となる。
【００３２】
また、宛先検索部１１２は、ＭＡＣアドレステーブル１３ａからＤＡに該当する宛先情報Ｈａが検索されなかった場合、装置内ヘッダの制御情報ＨｂのフラグＦを「１」とし、ＤＡに該当する宛先情報Ｈａが検索された場合、フラグＦを「０」とする。
【００３３】
ユーザフレームＦＲＭｕは入力処理部１１からＳＷユニット２に出力される。ＳＷユニット２は、フラグＦ及び宛先情報Ｈａに従いユーザフレームＦＲＭｕをＩＦユニット（＃２）１に出力する。ＳＷユニット２は、フラグＦが「１」である場合、入力元のＩＦユニット（＃１）１を除く各ＩＦユニット（＃２〜＃Ｎ）１にユーザフレームＦＲＭｕを出力する。また、ＳＷユニット２は、フラグＦが「０」である場合、宛先情報Ｈａのユニット番号に該当するＩＦユニット（＃２）１にユーザフレームＦＲＭｕを出力する。ＩＦユニット（＃２）１において、ユーザフレームＦＲＭｕは登録判定部１２０に入力される。
【００３４】
登録判定部１２０は、フラグＦが「１」である場合、ユーザフレームＦＲＭｕのＤＡがＭＡＣアドレステーブル１３ｂに登録済みであるか否かを判定する。より具体的には、登録判定部１２０は、ＭＡＣアドレステーブル１３ｂからＤＡを検索することにより、ＤＡがＭＡＣアドレステーブル１３ｂに登録済みであるか否かを判定する。例えばＤＡが「ＡＤｘ」であれば、ＭＡＣアドレステーブル１３ｂにはＭＡＣアドレス「ＡＤｘ」が登録されているため、登録判定部１２０は、ＤＡが登録済みであると判定する。登録判定部１２０は、判定結果を後段の学習情報通知部１２１に通知する。
【００３５】
学習情報通知部１２１は、登録判定部１２０の判定結果に応じて、符号Ｔで示されるように、ＤＡに該当する宛先情報Ｈａを他の各ＩＦユニット１に通知する。より具体的には、学習情報通知部１２１は、登録判定部１２０によりＤＡが登録済みであると判定された場合、ＤＡに該当するＭＡＣアドレス、ユニット番号、及びポート識別子をＭＡＣアドレステーブル１３ｂから取得して他の各ＩＦユニット１に通知する。なお、図３には、ＩＦユニット（＃１）１への通知Ｔのみが示されている。
【００３６】
通知Ｔは、ＳＷユニット２を介してＩＦユニット（＃１）１の通知処理部１２５により受信される。通知処理部１２５は、通知Ｔに含まれるＭＡＣアドレス、ユニット番号、及びポート識別子をＭＡＣアドレステーブル１３ａに登録する。
【００３７】
例えば、ＤＡに該当するＭＡＣアドレス「ＡＤｘ」が、ＩＦユニット（＃１）１のＭＡＣアドレステーブル１３ａには登録されていないが、ＩＦユニット（＃２）１のＭＡＣアドレステーブル１３ｂには、符号ｘで示されるように登録済みである場合を挙げる。この場合、学習情報通知部１２１は、ＭＡＣアドレス「ＡＤｘ」、ユニット番号「＃２」、及びポート識別子「Ｐ３」を含む通知Ｔを出力する。
【００３８】
通知処理部１２５は、通知Ｔの内容をＭＡＣアドレステーブル１３ａに登録する。このため、ＩＦユニット（＃１）１のＭＡＣアドレステーブル１３ａには、ＩＦユニット（＃２）１のＭＡＣアドレステーブル１３ｂに登録済みのＭＡＣアドレス「ＡＤｘ」が登録される。これにより、各ＩＦユニット１のＭＡＣアドレステーブル１３ａ，１３ｂの間でＭＡＣアドレスの登録情報が共有される。
【００３９】
また、通知処理部１２５の後段には通知廃棄部１２４が設けられている。通知廃棄部１２４は通知Ｔを廃棄する。
【００４０】
また、ＩＦユニット（＃２）１において、学習情報通知部１２１の後段にはＭＡＣ学習処理部１２２が設けられている。ＭＡＣ学習処理部１１１は、ＩＦユニット（＃１）１のＭＡＣ学習処理部１１１と同様に、ユーザフレームＦＲＭｕのＳＡに基づきＭＡＣアドレス学習処理を行う。このため、ＭＡＣアドレステーブル１３ｂにＳＡが登録される。
【００４１】
ＭＡＣ学習処理部１２２の後段にはヘッダ削除部１２３が設けられている。ヘッダ削除部１２３はユーザフレームＦＲＭｕの装置内ヘッダを削除する。その後、ユーザフレームＦＲＭｕは他装置に送信される。
【００４２】
図５は、ＭＡＣアドレス学習に関する入力処理部１１の処理の一例を示すフローチャートである。なお、本処理は、図３の例におけるＩＦユニット（＃１）１の入力処理部１１の処理に従う。
【００４３】
ＭＡＣ学習処理部１１１は、ユーザフレームＦＲＭｕのＳＡに基づきＭＡＣアドレス学習を行う（ステップＳｔ１）。次に、宛先検索部１１２は、ユーザフレームＦＲＭｕのＤＡに基づきＭＡＣアドレステーブル１３ａから宛先情報Ｈａを検索する（ステップＳｔ２）。
【００４４】
宛先検索部１１２は、ＤＡに該当する宛先情報Ｈａが検索された場合（ステップＳｔ３のＹｅｓ）、制御情報ＨｂのフラグＦを「１」とする（ステップＳｔ４）。次に、宛先検索部１１２は、ユーザフレームＦＲＭｕを、ＳＷユニット２を介し他の全ＩＦユニット（＃２〜＃Ｎ）１に出力する（ステップＳｔ５）。
【００４５】
また、宛先検索部１１２は、ＤＡに該当する宛先情報Ｈａが検索されない場合（ステップＳｔ３のＮｏ）、制御情報ＨｂのフラグＦを「０」とする（ステップＳｔ６）。次に、宛先検索部１１２は、ユーザフレームＦＲＭｕを、ＳＷユニット２を介し宛先情報Ｈａに応じたＩＦユニット（＃２）１に出力する（ステップＳｔ７）。このようにして、入力処理部１１は処理を行う。
【００４６】
図６は、ＭＡＣアドレス学習に関する出力処理部１２の処理の一例を示すフローチャートである。なお、本処理は、図３の例におけるＩＦユニット（＃２）１の出力処理部１２の処理に従う。
【００４７】
登録判定部１２０は、ユーザフレームＦＲＭｕの入力時、フラグＦが「１」であるか否かを判定する（ステップＳｔ１１）。フラグＦが「０」である場合（ステップＳｔ１１のＮｏ）、後述するステップＳｔ１４の処理が実行される。
【００４８】
登録判定部１２０は、フラグＦが「１」である場合（ステップＳｔ１１のＹｅｓ）、ＤＡがＭＡＣアドレステーブル１３ｂに登録済みであるか否かを判定する（ステップＳｔ１２）。ＤＡが未登録である場合（ステップＳｔ１２のＮｏ）、後述するステップＳｔ１４の処理が実行される。
【００４９】
また、学習情報通知部１２１は、ＤＡが登録済みである場合（ステップＳｔ１２のＹｅｓ）、ＭＡＣアドレステーブル１３ｂから検索した宛先情報Ｈａを他の全ＩＦユニット（＃２〜＃Ｎ）１に通知する（ステップＳｔ１３）。次に、ＭＡＣ学習処理部１２２は、ユーザフレームＦＲＭｕのＳＡに基づきＭＡＣアドレス学習を行う（ステップＳｔ１４）。
【００５０】
次に、ヘッダ削除部１２３は、ユーザフレームＦＲＭｕの装置内ヘッダを削除する（ステップＳｔ１５）。次に、出力処理部１２は、ＰＨＹ／ＭＡＣ部１０及びポートＰ１〜Ｐｎを介しユーザフレームＦＲＭｕを他装置に送信する（ステップＳｔ１６）。このようにして、出力処理部１２は処理を行う。
【００５１】
このように、入力処理部１１及び出力処理部１２は、パイプライン処理の１つとしてＭＡＣアドレス学習処理を行い、その過程でメモリ部１３のＭＡＣアドレステーブル１３ａ，１３ｂにアクセスする。また、入力処理部１１及び出力処理部１２は、ＭＡＣアドレス学習処理に限定されず、帯域制御処理などの他のパイプライン処理においてもメモリ部１３に頻繁にアクセスする。なお、ＳＷユニット２においても、後述するようにＳＷユニット２内のメモリ部へのアクセスが行われる。
【００５２】
したがって、メモリ部１３において例えばソフトエラーなどの偶発的な１ビットレベルのエラーが発生すると、メモリ部１３に読み書きされるデータに異常が発生するため、パイプライン処理が正常に実行されなくなる。
【００５３】
これに対し、例えばメモリ部１３を詳細にチェックすれば故障解析が可能であるが、この手法は、レイヤ２スイッチの運用をいったん停止する必要があり、通信サービスに影響するため、現実的に不可能である。また、通信サービスに影響しないように、エラーが発生したレイヤ２スイッチの環境を疑似的に再現した試験環境を構築することはできるが、この試験環境では、エラーが発生した環境とは電源の仕様や設備などの様々な環境条件が異なるため、故障解析は困難である。さらに、メモリ部１３は、多くの処理に用いる大量の情報を記憶する大容量の記憶領域を有するため、メモリ部１３のチェックには多くの手間がかかってしまうという問題もある。
【００５４】
そこで、実施例のレイヤ２スイッチは、メモリ部１３へのアクセスのログ（以下、「アクセスログ」と表記）をイーサネットフレームに付与された装置内ヘッダにログ情報Ｈｃとして記録する。このため、レイヤ２スイッチは、イーサネットフレームを介して容易にアクセスログを収集することができるため、故障解析が容易となる。
【００５５】
図４に示されるように、ログ情報Ｈｃには、トレースビットと、ログ＃１〜＃ｍ（ｍ：正の整数）が含まれる。トレースビットは、設定情報の一例であり、イーサネットフレームがアクセスログの書き込み対象であるか否かを示す。ログ＃１〜＃ｍは、アクセス対象のテーブル＃１〜＃ｍごとのアクセスログであり、アクセスの発生した時刻、アクセス対象のアドレス及びデータを含む。なお、ログ情報Ｈｃは、メモリ部１３へのアクセスに関するアクセス情報の一例である。
【００５６】
以下に、レイヤ２スイッチ内のメモリアクセスに関する機能構成を参照して、アクセスログ（つまり装置情報）の収集方法を説明する。アクセスログの収集は、ユーザフレームＦＲＭｕの経路上のＩＦユニット１の入力処理部１１及び出力処理部１２とＳＷユニット２において行われる。
【００５７】
図７は、メモリアクセスに関する入力処理部１１の機能構成の一例を示す図である。入力処理部１１は、ユーザフレームＦＲＭｕをパイプライン処理するために複数のアクセス処理部４０〜４２が設けられている。各アクセス処理部４０〜４２には順次にユーザフレームＦＲＭｕが入力される。
【００５８】
各アクセス処理部４０〜４２は、ユーザフレームＦＲＭｕが入力されたとき、メモリ部１３にアクセスする。メモリ部１３には、ユーザフレームＦＲＭｕに対して順次に行われる複数のフレーム処理にそれぞれ用いられる複数のテーブル（＃１〜＃ｉ（ｉ：正の整数））１３０〜１３２が保持されている。各テーブル１３０〜１３２には、アドレスとデータが対応付けて登録されている。データは、そのデータに対応するアドレスのユーザフレームＦＲＭｕのフレーム処理に関するフレーム処理情報の一例である。
【００５９】
より具体的には、各アクセス処理部４０〜４２は、ユーザフレームＦＲＭｕが入力されたとき、そのユーザフレームＦＲＭｕのアドレスに対応付けられているデータにアクセスする。これにより、上述したようなユーザフレームＦＲＭｕごとのＭＡＣアドレスに関するフレーム処理が行われる。なお、アクセス処理部４０〜４２は、例えば図３のＭＡＣ学習処理部１１１及び宛先検索部１１２に対応する。また、テーブル１３０〜１３２は、例えば図３のＭＡＣアドレステーブル１３ａに対応する。
【００６０】
入力処理部１１には、各テーブル１３０〜１３２に対応してアクセス処理部４０〜４２及びログ生成部４３が設けられている。各アクセス処理部４０〜４２は、そのアクセス処理部４０〜４２に対応するテーブル１３０〜１３２にアクセスする。
【００６１】
ログ生成部４３は、書き込み部の一例であり、アクセス処理部４０〜４２からの制御によりそのアクセスログを生成して、ログ情報Ｈｃとして処理中のユーザフレームＦＲＭｕに書き込み。このため、ユーザフレームＦＲＭｕの処理においてアクセス処理部４０〜４２がメモリ部１３にアクセスするごとに、そのアクセスログがユーザフレームＦＲＭｕ自体に記録される。
【００６２】
より具体的には、ログ生成部４３は、アクセス処理部４０〜４２からアクセス対象のテーブル１３０〜１３２のアドレス及びデータを取得し、また、監視制御ユニット３から時刻情報を取得する。なお、監視制御ユニット３には、時刻同期により時刻を計時する時計回路が設けられている。ログ生成部４３は、テーブル１３０〜１３２ごとにアドレス、データ、及び時刻情報が示す時刻をログ情報ＨｃとしてユーザフレームＦＲＭｕの装置内ヘッダに書き込む。
【００６３】
各ログ生成部４３は、そのログ生成部４３に対応するテーブル１３０〜１３２に対するアクセスログを生成してユーザフレームＦＲＭｕに書き込む。このため、ユーザフレームＦＲＭｕには、そのユーザフレームＦＲＭｕの処理においてアクセスされた各テーブル１３０〜１３２のアクセスログが記録される。
【００６４】
テーブル（＃１）１３０は、先頭テーブルの一例であり、ユーザフレームＦＲＭｕに対して最初に行われるフレーム処理に用いられる。テーブル（＃１）１３０は、メモリ部１３内のテーブル１３０〜１３２のうち、最初にアクセスされる。テーブル（＃１）１３０には、テーブル（＃１）１３０内の各アドレスに対応してトレースフラグが設けられている。
【００６５】
トレースフラグは、該当アドレスのデータへのアクセスをアクセスログの生成対象とするか否かを示すフラグの一例である。より具体的には、トレースフラグは、「１」の場合、アクセスログの生成対象であることを示し、「０」の場合、アクセスログの生成対象ではないことを示す。
【００６６】
テーブル（＃１）１３０に対応するログ生成部４３は、アクセス処理部４０のアクセス先のアドレスに対応するトレースフラグに応じてアクセスログを生成してユーザフレームＦＲＭｕに書き込む。より具体的には、ログ生成部４３は、トレースフラグが「０」を示す場合、アクセスログを生成せず、トレースフラグが「１」を示す場合、アクセスログを生成する。このため、ログ生成部４３は、トレースフラグの設定により、アクセス先のアドレスごとにアクセスログの生成対象か否かを判別できる。
【００６７】
各アドレスのトレースフラグは、レイヤ２スイッチの起動時、例えば制御部１４によりに設定される。制御部１４は、例えば、検査が必要なアドレスのトレースフラグを「１」に設定し、検査が不要なアドレスのトレースフラグを「０」に設定する。
【００６８】
また、入力処理部１１には、トレースフラグを処理するフラグ処理部４４が設けられている。フラグ処理部４４は、アクセス処理部４０がアクセスしたアドレスに対応するトレースフラグを読み出し、そのアドレスがアクセスログの生成対象か否かを判定する。
【００６９】
フラグ処理部４４は、トレースフラグが「１」である場合、アクセス処理部４０にアクセスログの生成が必要である旨を通知し、トレースフラグが「０」である場合、アクセス処理部４０にアクセスログの生成が不要である旨を通知する。アクセス処理部４０は、アクセスログの生成が必要である場合、ログ生成部４３にアクセスログの生成及び書き込みを許可するが、アクセスログの生成が不要である場合、ログ生成部４３にアクセスログの生成及び書き込みを禁止する。
【００７０】
また、フラグ処理部４４は、設定処理部の一例であり、テーブル（＃１）１３０において、アクセス処理部４０のアクセス先のアドレスに対応するトレースフラグに応じてトレースビットを設定する。より具体的には、フラグ処理部４４は、トレースフラグが「１」である場合、ログ情報Ｈｃ内のトレースビットを「１」とし、トレースフラグが「０」である場合、トレースビットを「０」とする。
【００７１】
トレースビットは、上述したように、イーサネットフレームがアクセスログの書き込み対象であるか否かを示す。このため、後段のテーブル４１，４２に対応するアクセス処理部４１，４２は、入力されたユーザフレームＦＲＭｕのトレースビットが「１」である場合、ログ生成部４３にアクセスログの生成及び書き込みを許可するが、トレースビットが「０」である場合、ログ生成部４３にアクセスログの生成及び書き込みを禁止する。
【００７２】
このように、後段のテーブル４１，４２に対応するログ生成部４３は、入力されたユーザフレームＦＲＭｕのトレースビットに応じてアクセスログを生成してユーザフレームＦＲＭｕに書き込む。このため、トレースフラグの設定により、メモリ部１３内で最初にアクセスされるテーブル（＃１）１３０のそのアクセス先のアドレスに応じて、アクセスログの書き込み対象のユーザフレームＦＲＭｕを選択することが可能となる。
【００７３】
例えば、エラーが頻発するユーザフレームＦＲＭｕの処理において、テーブル（＃１）１３０内のアクセス先が特定のアドレス「０ｘ０００２」であることが判明している場合、制御部１４は、そのアドレス「０ｘ０００２」に対応するトレースフラグを「１」に設定する。これにより、そのユーザフレームＦＲＭｕの処理に関わる全てのテーブル４０〜４２のアクセスログをユーザフレームＦＲＭｕに記録することができるため、エラーの要因の解析が容易となる。なお、アクセス先のアドレスが判明している場合としては、例えば、そのアドレスがユーザフレームＦＲＭｕのＤＡやＳＡである場合が挙げられる。
【００７４】
また、フラグ処理部４４は、アクセス処理部４０からテーブル（＃１）１３にアクセスが行われたとき、アクセス済みのアドレスのトレースフラグを「０」に設定する。このため、テーブル（＃１）１３内の同一アドレスについてアクセスログが重複して書き込まれることが防止される。
【００７５】
図８は、メモリアクセスに関するＳＷユニット２の機能構成の一例を示す図である。ＳＷユニット２は、イーサネットフレームを処理するフレーム処理部２１と、イーサネットフレームの処理に用いられる情報を保持するメモリ部２２を有する。メモリ部２２は、メモリの一例であり、例えばＥＰＲＯＭなどの不揮発性メモリである。メモリ部２２には、入力処理部から入力されたフレームのフレーム処理に用いられるテーブル（＃ｊ（ｊ：正の整数））２２０が保持されている。
【００７６】
フレーム処理部２１は、テーブル（＃ｊ（ｊ：正の整数））２２０にアクセスすることにより例えばユーザフレームＦＲＭｕの帯域を制御する。フレーム処理部２１にはアクセス処理部２１０及びログ生成部２１１が設けられている。アクセス処理部２１０は、入力処理部１１のアクセス処理部４０〜４２と同様に、ユーザフレームＦＲＭｕが入力されたとき、テーブル（＃ｊ）２２０のデータにアクセスする。
【００７７】
また、ログ生成部２１１は、書き込み部の一例であり、入力処理部１１のログ生成部４３と同様に、アクセスログを生成してユーザフレームＦＲＭｕに書き込む。より具体的には、ログ生成部２１１は、アクセス処理部２１０からアクセス対象のテーブル２２０のアドレス及びデータを取得し、また、監視制御ユニット３から時刻情報を取得する。
【００７８】
ログ生成部２１１は、テーブル２２０ごとにアドレス、データ、及び時刻情報が示す時刻をログ情報ＨｃとしてユーザフレームＦＲＭｕの装置内ヘッダに書き込む。なお、アクセス処理部２１０は、ユーザフレームＦＲＭｕのトレースビットが「１」である場合、ログ生成部２１１にアクセスログの生成及び書き込みを許可するが、トレースビットが「０」である場合、ログ生成部２１１にアクセスログの生成及び書き込みを禁止する。すなわち、ログ生成部２１１は、トレースビットに応じてアクセスログを生成してユーザフレームＦＲＭｕに書き込む。
【００７９】
図９は、メモリアクセスに関する出力処理部１２の機能構成の一例を示す図である。出力処理部１２は、ユーザフレームＦＲＭｕをパイプライン処理するために複数のアクセス処理部５１，５２が設けられている。各アクセス処理部５１，５２には順次にユーザフレームＦＲＭｕが入力される。
【００８０】
各アクセス処理部５１，５２は、ユーザフレームＦＲＭｕが入力されたとき、メモリ部１３のデータにアクセスする。メモリ部１３には、ユーザフレームＦＲＭｕの処理に用いられる複数のテーブル（＃ｋ〜＃ｍ（ｋ：正の整数））１３３，１３４が保持されている。各テーブル１３３，１３４は、ユーザフレームＦＲＭｕの処理に用いられ、上記のテーブル１３０〜１３２と同様にアドレス及びデータを有する。
【００８１】
なお、アクセス処理部５１，５２は、例えば図３のＭＡＣ学習処理部１２２、登録判定部１２０、及び通知処理部１２５に対応する。また、テーブル１３３，１３４は、例えば図３のＭＡＣアドレステーブル１３ａ，１３ｂに対応する。
【００８２】
アクセス処理部５１は、ユーザフレームＦＲＭｕが入力されたとき、テーブル１３３にアクセスし、アクセス処理部５２は、ユーザフレームＦＲＭｕが入力されたとき、テーブル１３４にアクセスする。出力処理部１２には、アクセス処理部５１のアクセスログを生成するログ生成部５３が設けられている。ログ生成部５３は、書き込み部の一例であり、入力処理部１１のログ生成部４３と同様に、アクセス処理部５１からの制御によりそのアクセスログを生成して、処理中のユーザフレームＦＲＭｕに書き込む。より具体的には、ログ生成部５３は、アクセス処理部５１からアクセス対象のテーブル１３３のアドレス及びデータを取得し、また、監視制御ユニット３から時刻情報を取得する。
【００８３】
ログ生成部５３は、テーブル１３３のアドレス、データ、及び時刻情報が示す時刻をログ情報ＨｃとしてユーザフレームＦＲＭｕの装置内ヘッダに書き込む。なお、アクセス処理部５１は、ユーザフレームＦＲＭｕのトレースビットが「１」である場合、ログ生成部５３にアクセスログの生成及び書き込みを許可するが、トレースビットが「０」である場合、ログ生成部５３にアクセスログの生成及び書き込みを禁止する。すなわち、ログ生成部５３は、トレースビットに応じてアクセスログを生成してユーザフレームＦＲＭｕに書き込む。
【００８４】
また、出力処理部１２には、ユーザフレームＦＲＭｕからアクセスログを収集するログ収集部５４が設けられている。より具体的には、ログ収集部５４は、アクセス処理部５２にユーザフレームＦＲＭｕが入力されたとき、ユーザフレームＦＲＭｕの装置内ヘッダからログ情報Ｈｃを取得して、メモリ部１３に設けられたログデータベース１３５に格納する。
【００８５】
また、ログ収集部５４は、アクセス処理部５２からの制御によりそのアクセスログを生成して、ログデータベース１３５に格納する。なお、アクセス処理部５２は、ユーザフレームＦＲＭｕのトレースビットが「１」である場合、ログ収集部５４にアクセスログの生成及び格納を許可するが、トレースビットが「０」である場合、ログ収集部５４にアクセスログの生成及び格納を禁止する。
【００８６】
ログデータベース１３５は所定量のアクセスログを格納する。ログデータベース１３５に格納されたアクセスログは、例えば監視制御ユニット３により読み出されて解析される。
【００８７】
図１０は、メモリアクセス処理の一例を示すフローチャートである。制御部１４は、レイヤ２スイッチの起動時、テーブル（＃１）１３０の各トレースフラグを設定する（ステップＳｔ２１）。このとき、制御部１４は、例えば、検査が必要なアドレスのトレースフラグを「１」に設定し、検査が不要なアドレスのトレースフラグを「０」に設定する。
【００８８】
次に、入力処理部１１において、アクセス処理部４０は、ユーザフレームＦＲＭｕを受信したか否かを判定する（ステップＳｔ２２）。ユーザフレームＦＲＭｕが受信されていない場合（ステップＳｔ２２のＮｏ）、処理は終了する。
【００８９】
ユーザフレームＦＲＭｕが受信された場合（ステップＳｔ２２のＹｅｓ）、アクセス処理部４０はテーブル（＃１）１３０にアクセスする（ステップＳｔ２３）。フラグ処理部４４は、アクセス先のアドレスに対応するトレースフラグが「１」であるか否かを判定する（ステップＳｔ２４）。
【００９０】
フラグ処理部４４は、トレースフラグが「１」である場合（ステップＳｔ２４のＹｅｓ）、ログ情報Ｈｃのトレースビットを「１」に設定する（ステップＳｔ２５）。これにより、処理中のユーザフレームＦＲＭｕが、後段のアクセス処理部４１，４２，２１０，５１，５２によりアクセスログの書き込み対象として認識され、ログ生成部４３，２１１，５３によるアクセスログの生成及び書き込みが行われる。
【００９１】
次に、ログ生成部４３は、アクセス処理部４０のアクセスログを生成し、処理中のユーザフレームＦＲＭｕの装置内ヘッダにログ情報Ｈｃとして書き込む（ステップＳｔ２６）。これにより、ユーザフレームＦＲＭｕの処理において、テーブル（＃１）１３０にアクセスしたときのアクセスログがそのユーザフレームＦＲＭｕに記録される。
【００９２】
次に、フラグ処理部４４は、アクセス先のアドレスに対応するトレースフラグを「０」に設定する（ステップＳｔ２７）。このため、他のユーザフレームＦＲＭｕの処理において、同一のアドレスにアクセスが行われてもアクセスログの生成及び書き込みが重複して行われることはない。
【００９３】
一方、トレースフラグが「０」である場合（ステップＳｔ２４のＮｏ）、フラグ処理部４４は、トレースビットを「０」に設定する（ステップＳｔ３８）。このため、ユーザフレームＦＲＭｕは後段のアクセス処理部４１，４２，２１０，５１，５２によりアクセスログの書き込み対象として認識されず、ログ生成部４３，２１１，５３によるアクセスログの生成及び書き込みは行われない。
【００９４】
次に、アクセス処理部４１は、ユーザフレームＦＲＭｕが入力されると、テーブル（＃２）１３１にアクセスする（ステップＳｔ２８）。次に、アクセス処理部４１は、ユーザフレームＦＲＭｕのトレースビットが「１」であるか否かを判定する（ステップＳｔ２９）。
【００９５】
ログ生成部４３は、トレースビットが「１」である場合（ステップＳｔ２９のＹｅｓ）、アクセス処理部４１のアクセスログを生成し、ユーザフレームＦＲＭｕの装置内ヘッダにログ情報Ｈｃとして書き込む（ステップＳｔ３０）。また、トレースビットが「０」である場合（ステップＳｔ２９のＮｏ）、アクセスログの生成及び書き込みは行われない。
【００９６】
ステップＳｔ２８〜とＳｔ３０の処理は、以降のテーブル（＃３〜ｍ−１）１３２，２２０，１３３に関しても同様に行われる。これにより、トレースビットが「１」である場合、ユーザフレームＦＲＭｕの装置内ヘッダには、アクセス処理部４０〜４２，２１０，５１のアクセスログがログ情報Ｈｃとして書き込まれる。なお、図１０において、テーブル（＃３〜ｍ−１）１３２，２２０，１３３に関する処理の記載は省略されている（＊部参照）。
【００９７】
次に、出力処理部１２において、アクセス処理部５２は、ユーザフレームＦＲＭｕが入力されると、テーブル（＃ｍ）１３４にアクセスする（ステップＳｔ３１）。次に、アクセス処理部５２は、ユーザフレームＦＲＭｕのトレースビットが「１」であるか否かを判定する（ステップＳｔ３２）。トレースビットが「０」である場合（ステップＳｔ３２のＮｏ）、処理は終了する。
【００９８】
また、トレースビットが「１」である場合（ステップＳｔ３２のＹｅｓ）、ログ収集部５４は、アクセス処理部５２のアクセスログを生成する（ステップＳｔ３３）。次に、ログ収集部５４は、生成したアクセスログをログデータベース（ログＤＢ）１３５に格納する（ステップＳｔ３４）。次に、ログ収集部５４は、ユーザフレームＦＲＭｕの装置内ヘッダからアクセスログを収集してログデータベース１３５に格納する（ステップＳｔ３５）。
【００９９】
このため、ログデータベース１３５には、ユーザフレームＦＲＭｕをパイプライン処理するときにアクセスされる各テーブル（＃１〜＃ｍ）１３０〜１３４，２２０のアクセスログが格納される。監視制御ユニット３は、ログデータベース１３５内のアクセスログを読み出し、故障の解析に利用する。
【０１００】
このように、本実施例のレイヤ２スイッチは、ユーザフレームＦＲＭｕのフレーム処理においてメモリ部１３にアクセスするごとに、そのアクセスログをユーザフレームＦＲＭｕ自体に記録する。このため、故障解析にあたり、メモリ部１３内のテーブル１３０〜１３４を個別に読み出す必要がなく、テーブル１３０〜１３４の容量が大きい場合でも、ユーザフレームＦＲＭｕにより容易にメモリ部１３の内容を収集することができる。
【０１０１】
したがって、本例のレイヤ２スイッチは、上記のログ収集方を実行することにより、容易に故障解析を行うことができる。なお、ログ収集部５４は、故障解析をさらに容易にするため、ユーザフレームＦＲＭｕ内のＳＡやＤＡなどのデータを、アクセスログに対応付けてログデータベース１３５に格納してもよい。
【０１０２】
また、本例のように、ユーザフレームＦＲＭｕの装置内ヘッダにアクセスログを書き込むことにより、レイヤ２スイッチの故障解析をその運用中、つまりユーザフレームＦＲＭｕの伝送中に行うことが可能となる。しかし、運用前の状態では、ユーザフレームＦＲＭｕが伝送されないため、レイヤ２スイッチはアクセスログを収集することができない。
【０１０３】
そこで、以下の実施例のように、ユーザフレームＦＲＭｕに代えて、レイヤ２スイッチ内で生成された試験フレームＦＲＭｔの装置内ヘッダにアクセスログを記録してもよい。
【０１０４】
図１１は、試験フレームＦＲＭｔの経路の一例を示す図である。試験フレームＦＲＭｔは、レイヤ２スイッチ９において、例えば、入力側のＩＦユニット（＃１）１において生成され、ユーザフレームＦＲＭｕと同じ経路に挿入される。試験フレームＦＲＭｔは、ＳＷユニット２を経由して出力側のＩＦユニット（＃２）１に出力される。試験フレームＦＲＭｔは、ＩＦユニット（＃２）１内の途中で廃棄される。
【０１０５】
図１２は、装置内ヘッダが付与された試験フレームＦＲＭｔの一例を示す構成図である。図１２において、図４と共通する項目については、その説明を省略する。
【０１０６】
装置内ヘッダには、ユーザフレームＦＲＭｕの宛先を示す宛先情報Ｈａ、各種の制御に関する制御情報Ｈｂ、及びログ情報Ｈｃなどが含まれる。ログ情報Ｈｃには、識別ビットと、トレースビットと、ログ＃１〜＃ｍが含まれる。識別ビットは、試験フレームＦＲＭｔを識別するための識別子である。より具体的には、試験フレームＦＲＭｔの識別ビットは「１」を示す。なお、試験フレームＦＲＭｔの装置内ヘッダは、試験フレームＦＲＭｔの生成時に付与される。
【０１０７】
試験フレームＦＲＭｔは、入力処理部１１において生成されユーザフレームＦＲＭｕの経路に挿入される。試験フレームＦＲＭｔは、ユーザフレームＦＲＭｕと同様に入力処理部１１及び出力処理部１２においてパイプライン処理される。
【０１０８】
図１３は、メモリアクセスに関する入力処理部１１の機能構成の他例を示す図である。図１３において、図７と共通する構成については同一の符号を付し、その説明を省略する。
【０１０９】
入力処理部１１は、アクセス処理部４０〜４２、ログ生成部４３、フラグ処理部４４、試験フレーム生成部４５、及び多重部４６を有する。試験フレーム生成部４５は、生成部の一例であり、試験フレームＦＲＭｔを生成する。また、試験フレーム生成部４５は、生成した試験フレームＦＲＭｔに装置内ヘッダを付与する。試験フレームＦＲＭｔは多重部４６に入力される。
【０１１０】
多重部４６は、ユーザフレームＦＲＭｕ及び試験フレームＦＲＭｔを多重化してアクセス処理部４０に出力する。これにより、試験フレームＦＲＭｔは、ユーザフレームＦＲＭｕの経路に挿入される。
【０１１１】
アクセス処理部４０〜４２は、試験フレームＦＲＭｔが入力されたとき、ユーザフレームＦＲＭｕが入力された場合と同様にメモリ部１３にアクセスする。ログ生成部４３は、そのアクセスログを生成して試験フレームＦＲＭｔの装置内ヘッダにログ情報Ｈｃとして書き込む。
【０１１２】
入力処理部１１は、パイプライン処理を終えた試験フレームＦＲＭｔをＳＷユニット２に出力する。ＳＷユニット２において、アクセス処理部２１０は、試験フレームＦＲＭｔが入力されたとき、ユーザフレームＦＲＭｕが入力された場合と同様にメモリ部２２にアクセスする。ログ生成部２１１は、そのアクセスログを生成して試験フレームＦＲＭｔの装置内ヘッダにログ情報Ｈｃとして書き込む。試験フレームＦＲＭｔは、ＳＷユニット２からＩＦユニット（＃２）１の出力処理部１２に出力される。
【０１１３】
図１４は、メモリアクセスに関する出力処理部１２の機能構成の他例を示す図である。図１４において、図９と共通する構成については同一の符号を付し、その説明を省略する。
【０１１４】
アクセス処理部５１，５２は、試験フレームＦＲＭｔが入力されたとき、ユーザフレームＦＲＭｕが入力された場合と同様にメモリ部１３にアクセスする。ログ生成部５３は、アクセス処理部５１のアクセスログを生成して試験フレームＦＲＭｔの装置内ヘッダにログ情報Ｈｃとして書き込む。
【０１１５】
ログ収集部５４は、アクセス処理部５２のアクセスログを生成してログデータベース１３５に格納する。また、ログ収集部５４は、試験フレームＦＲＭｔの装置内ヘッダからアクセスログを収集してログデータベース１３５に格納する。
【０１１６】
通知廃棄部１２４は、試験フレームＦＲＭｔを装置内ヘッダの識別ビットにより識別して廃棄する。このため、試験フレームＦＲＭｔがレイヤ２スイッチの外部に送信されることが防止される。
【０１１７】
図１５は、メモリアクセス処理の他例を示すフローチャートである。図１５において、図１０と共通する処理については同一の符号を付し、その説明を省略する。
【０１１８】
ステップＳｔ２１の処理後、試験フレーム生成部４５は、例えば監視制御ユニット３の指示に従い試験フレームを生成して送信する（ステップＳｔ２２ａ）。その後、ステップＳｔ２３〜３５の処理によって、試験フレームＦＲＭｔの装置内ヘッダには、ユーザフレームＦＲＭｕと同様にアクセスログがログ情報Ｈｃとして書き込まれ、アクセスログは最終的にログデータベース１３５に格納される。
【０１１９】
次に、通知廃棄部１２４は、識別ビットが「１」であるか否かを判定する（ステップＳｔ３６）。通知廃棄部１２４は、識別ビットが「１」である場合（ステップＳｔ３６のＹｅｓ）、試験フレームＦＲＭｔを廃棄する（ステップＳｔ３７）。また、識別ビットが「０」である場合（ステップＳｔ３６のＮｏ）、つまり試験フレームＦＲＭｔではないイーサネットフレームが入力された場合、通知廃棄部１２４は廃棄を行わない。このようにして、メモリアクセス処理は実行される。
【０１２０】
このように、レイヤ２スイッチは、試験フレームＦＲＭｔによりアクセスログを記録するため、ユーザフレームＦＲＭｕが伝送されない運用前の状態でも試験フレームＦＲＭｔを生成することにより故障解析を容易に行うことができる。また、レイヤ２スイッチは、ユーザフレームＦＲＭｕや試験フレームＦＲＭｔに限定されず、ＯＡＭフレームによりアクセスログを記録してもよい。この場合、ＯＡＭフレームの処理だけに用いられるテーブル（以下、「ＯＡＭテーブル」と表記）のアクセスログの記録が可能である。
【０１２１】
図１６は、ＯＡＭフレームＦＲＭａの経路の一例を示す図である。ＯＡＭフレームＦＲＭａは、監視制御フレームの一例であり、他装置との間の伝送状態を監視するために用いられる。ＯＡＭフレームＦＲＭａとしては、一例としてＩＴＵ−Ｔ勧告Ｙ．１７３１に規定されたものを用いることができる。
【０１２２】
本例では、互いに隣接する２つのレイヤ２スイッチ９ａ，９ｂの間にＯＡＭフレームＦＲＭａの監視区間が設定された場合を挙げる。監視区間は、ＭＥＰ（Maintenance End point）と呼ばれる一対のＯＡＭ終端点により規定される。
【０１２３】
一例として、一方のＭＥＰはレイヤ２スイッチ９ａのＩＦユニット（＃１）１に設定され、他方のＭＥＰはレイヤ２スイッチのＩＦユニット（＃１）１に設定されている。ＯＡＭフレームＦＲＭａはレイヤ２スイッチ９ａのＭＥＰにおいて生成される。このＭＥＰは、図１３の試験フレーム生成部４５と同様の手段によりＯＡＭフレームＦＲＭａを生成しユーザフレームＦＲＭｕの経路に挿入する。ＯＡＭフレームＦＲＭａは、ＳＷユニット２及び出力側のＩＦユニット（＃２）１を経由して他方のレイヤ２スイッチ９ｂに送信される。
【０１２４】
レイヤ２スイッチ９ｂのＭＥＰはＯＡＭフレームＦＲＭａを終端する。これにより、レイヤ２スイッチは９ａ，９ｂの間の接続性、損失、及び遅延などの情報を収集して伝送状態を監視することが可能である。なお、ＯＡＭフレームＦＲＭａの装置内ヘッダは、例えば図４に示されたものと同様であってもよい。
【０１２５】
図１７は、ＯＡＭフレームＦＲＭａによるメモリアクセスに関する入力処理部１１の機能構成の一例を示す図である。この入力処理部１１は、図１６のレイヤ２スイッチ９ｂのＩＦユニット（＃１）１の入力処理部１１に該当する。
【０１２６】
入力処理部１１は、アクセス処理部４７と、ログ生成部４８と、フラグ処理部４９と、ＯＡＭ終端部６とを有する。また、メモリ部１３には、ＯＡＭフレームＦＲＭａの処理に用いられる情報が登録されたＯＡＭテーブル１３６と、ログデータベース１３５とが格納されている。ＯＡＭテーブル１３６はアドレス及びデータを有する。
【０１２７】
アクセス処理部４７は、ＯＡＭフレームＦＲＭａが入力されたとき、メモリ部１３のＯＡＭテーブル１３６にアクセスする。ログ生成部４８は、書き込み部の一例であり、アクセス処理部４７からの制御によりそのアクセスログを生成して、処理中のＯＡＭフレームＦＲＭａに書き込む。
【０１２８】
より具体的には、ログ生成部４８は、アクセス処理部４７からアクセス対象のＯＡＭテーブル１３６のアドレス及びデータを取得し、また、監視制御ユニット３から時刻情報を取得する。ログ生成部４８は、ＯＡＭテーブル１３６のアドレス、データ、及び時刻情報が示す時刻をログ情報ＨｃとしてＯＡＭフレームＦＲＭａの装置内ヘッダに書き込む。
【０１２９】
ＯＡＭテーブル１３６には各アドレスに対応してトレースフラグが設けられている。トレースフラグは、図７のテーブル１３０のトレースフラグと同様であり、該当アドレスへのアクセスをアクセスログの生成対象とするか否かを示すフラグの一例である。より具体的には、トレースフラグは、「１」の場合、アクセスログの生成対象であることを示し、「０」の場合、アクセスログの生成対象ではないことを示す。
【０１３０】
ログ生成部４８は、アクセス処理部４０のアクセス先のアドレスに対応するトレースフラグに応じてアクセスログを生成してＯＡＭフレームＦＲＭａに書き込む。より具体的には、ログ生成部４８は、トレースフラグが「０」を示す場合、アクセスログを生成せず、トレースフラグが「１」を示す場合、アクセスログを生成する。このため、ログ生成部４８は、トレースフラグの設定により、アクセス先のアドレスごとにアクセスログの生成対象か否かを判別できる。
【０１３１】
各アドレスのトレースフラグは、レイヤ２スイッチの起動時、例えば制御部１４により「１」に設定される。制御部１４は、例えば、検査が必要なアドレスのトレースフラグを「１」に設定し、検査が不要なアドレスのトレースフラグを「０」に設定する。
【０１３２】
また、入力処理部１１には、トレースフラグを処理するフラグ処理部４９が設けられている。フラグ処理部４９は、アクセス処理部４７がアクセスしたアドレスに対応するトレースフラグを読み出し、そのアドレスがアクセスログの生成対象か否かを判定する。
【０１３３】
フラグ処理部４９は、トレースフラグが「１」である場合、アクセス処理部４７にアクセスログの生成が必要である旨を通知し、トレースフラグが「０」である場合、アクセス処理部４７にアクセスログの生成が不要である旨を通知する。アクセス処理部４７は、アクセスログの生成が必要である場合、ログ生成部４８にアクセスログの生成及び書き込みを許可するが、アクセスログの生成が不要である場合、ログ生成部４８にアクセスログの生成及び書き込みを禁止する。
【０１３４】
また、フラグ処理部４９は、設定処理部の一例であり、ＯＡＭテーブル１３６において、アクセス処理部４７のアクセス先のアドレスに対応するトレースフラグに応じてトレースビットを設定する。より具体的には、フラグ処理部４９は、トレースフラグが「１」である場合、ログ情報Ｈｃ内のトレースビットを「１」とし、トレースフラグが「０」である場合、トレースビットを「０」とする。トレースビットは、上述したように、イーサネットフレームがアクセスログの書き込み対象であるか否かを示し、アクセス処理部４７の後段のＯＡＭ終端部６で用いられる。
【０１３５】
ＯＡＭ終端部６はＯＡＭフレームＦＲＭａを終端する。ＯＡＭ終端部６は、ＯＡＭフレームＦＲＭａが入力されたとき、そのトレースフラグが「１」である場合、装置内ヘッダから、ログ情報Ｈｃとして記録されたアクセスログを取得してログデータベース１３５に格納する。
【０１３６】
また、フラグ処理部４９は、アクセス処理部４７からＯＡＭテーブル１３６にアクセスが行われたとき、アクセス済みのアドレスのトレースフラグを「０」に設定する。このため、ＯＡＭテーブル１３６内の同一アドレスについてアクセスログが重複して書き込まれることが防止される。
【０１３７】
図１８は、ＯＡＭフレームＦＲＭａによるメモリアクセス処理の一例を示すフローチャートである。制御部１４は、レイヤ２スイッチの起動時、ＯＡＭテーブル１３６の各トレースフラグを設定する（ステップＳｔ４１）。次に、アクセス処理部４７は、ＯＡＭフレームＦＲＭａを受信したか否かを判定する（ステップＳｔ４２）。ＯＡＭフレームＦＲＭａが受信されていない場合（ステップＳｔ４２のＮｏ）、処理は終了する。
【０１３８】
ＯＡＭフレームＦＲＭａが受信された場合（ステップＳｔ４２のＹｅｓ）、アクセス処理部４７はＯＡＭテーブル１３６にアクセスする（ステップＳｔ４３）。フラグ処理部４９は、アクセス先のアドレスに対応するトレースフラグが「１」であるか否かを判定する（ステップＳｔ４４）。
【０１３９】
フラグ処理部４９は、トレースフラグが「１」である場合（ステップＳｔ４４のＹｅｓ）、ログ情報Ｈｃのトレースビットを「１」に設定する（ステップＳｔ４５）。次に、ログ生成部４８は、アクセス処理部４７のアクセスログを生成し、処理中のＯＡＭフレームＦＲＭａの装置内ヘッダにログ情報Ｈｃとして書き込む（ステップＳｔ４６）。これにより、ＯＡＭフレームＦＲＭａの処理において、ＯＡＭテーブル１３６にアクセスしたときのアクセスログがそのＯＡＭフレームＦＲＭａに記録される。
【０１４０】
次に、フラグ処理部４９は、アクセス先のアドレスに対応するトレースフラグを「０」に設定する（ステップＳｔ４７）。このため、他のＯＡＭフレームＦＲＭａの処理において、同一のアドレスにアクセスが行われてもアクセスログの生成及び書き込みが重複して行われることはない。また、フラグ処理部４９は、トレースフラグが「０」である場合（ステップＳｔ４４のＮｏ）、ログ情報Ｈｃのトレースビットを「０」に設定する（ステップＳｔ５１）。
【０１４１】
次に、ＯＡＭ終端部６は、ＯＡＭフレームＦＲＭａを終端する（ステップＳｔ４８）。これにより、ＯＡＭ終端部６は、他装置との間の伝送状態を監視する。
【０１４２】
次に、ＯＡＭ終端部６は、ＯＡＭフレームＦＲＭａのトレースビットが「１」であるか否かを判定する（ステップＳｔ４９）。トレースビットが「０」である場合（ステップＳｔ４９のＮｏ）、処理は終了する。
【０１４３】
また、トレースビットが「１」である場合（ステップＳｔ４９のＹｅｓ）、ＯＡＭ終端部６は、ＯＡＭフレームＦＲＭａの装置内ヘッダからアクセスログを収集してログデータベース１３５に格納する（ステップＳｔ５０）。
【０１４４】
このため、ログデータベース１３５には、ＯＡＭフレームＦＲＭａをパイプライン処理するときにアクセスされるＯＡＭテーブル１３６のアクセスログが格納される。監視制御ユニット３は、ログデータベース１３５内のアクセスログを読み出し、故障の解析に利用する。
【０１４５】
したがって、本例のレイヤ２スイッチは、上記のログ収集方を実行することにより、容易に故障解析を行うことができる。
【０１４６】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【０１４７】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリと、
フレームが入力されたとき、前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスするアクセス処理部と、
該アクセスに関するアクセス情報を前記フレームに書き込む書き込み部とを有することを特徴とする通信装置。
（付記２）  前記メモリには、前記アドレスと前記フレーム処理情報が対応付けて登録され、前記フレームに対して順次に行われる複数のフレーム処理にそれぞれ用いられる複数のテーブルが保持され、
前記アクセス処理部及び前記書き込み部は、前記複数のテーブルの各々に対応して設けられており、
前記アクセス処理部の各々は、前記フレームが入力されたとき、前記複数のテーブルのうち、該アクセス処理部に対応するテーブルにアクセスし、
前記書き込み部の各々は、前記複数のテーブルのうち、該書き込み部に対応するテーブルに対するアクセスに関する前記アクセス情報を前記フレームに書き込むことを特徴とする付記１に記載の通信装置。
（付記３）  前記複数のテーブルのうち、前記フレームに対して最初に行われるフレーム処理に用いられる先頭テーブルには、前記先頭テーブル内の各アドレスに対応して、該アドレスの前記フレーム処理情報へのアクセスを前記アクセス情報の生成対象とするか否かを示すフラグが設けられており、
前記先頭テーブルに対応する前記書き込み部は、前記アクセス処理部のアクセス先のアドレスに対応する前記フラグに応じて前記アクセス情報を生成して前記フレームに書き込むことを特徴とする付記２に記載の通信装置。
（付記４）  前記フレームには、該フレームが前記アクセス情報の書き込み対象であるか否かを示す設定情報が含まれており、
前記先頭テーブルにおいて、前記アクセス処理部のアクセス先のアドレスに対応する前記フラグに応じて前記設定情報を設定する設定処理部を有し、
前記複数のテーブルのうち、前記先頭テーブル以外の各テーブルに対応する前記書き込み部は、前記設定情報に応じて前記アクセス情報を生成して前記フレームに書き込むことを特徴とする付記３に記載の通信装置。
（付記５）  試験フレームを生成する生成部を有し、
前記フレームは、前記試験フレームであることを特徴とする付記１乃至４の何れかに記載の通信装置。
（付記６）  前記試験フレームを廃棄する廃棄部を有することを特徴とする付記５に記載の通信装置。
（付記７）  前記フレームは、他装置との間の伝送状態を監視するための監視制御フレームであることを特徴とする付記１乃至４の何れかに記載の通信装置。
（付記８）  フレームが入力されたとき、アドレスと前記アドレスのフレーム処理に関するフレーム処理情報を対応付けて保持するメモリ内の前記フレームのアドレスに対応付けられている前記フレーム処理情報にアクセスし、
該アクセスに関するアクセス情報を前記フレームに書き込むことを特徴とする装置情報の収集方法。
（付記９）  前記メモリには、前記フレームに対して順次に行われる複数の処理にそれぞれ用いられる複数のテーブルが保持され、
前記フレームが入力されたとき、前記複数のテーブルに順次にアクセスし、
前記複数のテーブルの各々に対するアクセスに関するアクセス情報を前記フレームに書き込むことを特徴とする付記８に記載の装置情報の収集方法。
（付記１０）  前記複数のテーブルのうち、前記フレームに対して最初に行われるフレーム処理に用いられる先頭テーブルには、前記先頭テーブル内の各アドレスに対応して、該アドレスの前記フレーム処理情報へのアクセスを前記アクセス情報の生成対象とするか否かを示すフラグが設けられており、
アクセス先のアドレスに対応する前記フラグに応じて前記アクセス情報を生成して前記フレームに書き込むことを特徴とする付記９に記載の装置情報の収集方法。
（付記１１）  前記フレームには、該フレームが前記アクセス情報の書き込み対象であるか否かを示す設定情報が含まれており、
前記先頭テーブルにおいてアクセス先のアドレスに対応する前記フラグに応じて前記設定情報を設定し、
前記複数のテーブルのうち、前記先頭テーブル以外の各テーブルへのアクセスに関する前記アクセス情報を、前記設定情報に応じて生成して前記フレームに書き込むことを特徴とする付記１０に記載の装置情報の収集方法。
（付記１２）  試験フレームを生成し、
前記フレームとして、前記試験フレームを用いることを特徴とする付記８乃至１１の何れかに記載の装置情報の収集方法。
（付記１３）  前記試験フレームを廃棄することを特徴とする付記１２に記載の装置情報の収集方法。
（付記１４）  前記フレームとして、他装置との間の伝送状態を監視するための監視制御フレームを用いることを特徴とする付記８乃至１１の何れかに記載の装置情報の収集方法。
【符号の説明】
【０１４８】
１１       入力処理部
１２       出力処理部
１３       メモリ部
１４       制御部
４０〜４１，４７，５１，５２，２１０   アクセス処理部
４３，４８，５３，２１１    ログ生成部
４５       試験フレーム生成部
５５       廃棄部
【図１】
2018007044.tif 000003
【図２】
2018007044.tif 000004
【図３】
2018007044.tif 000005
【図４】
2018007044.tif 000006
【図５】
2018007044.tif 000007
【図６】
2018007044.tif 000008
【図７】
2018007044.tif 000009
【図８】
2018007044.tif 000010
【図９】
2018007044.tif 000011
【図１０】
2018007044.tif 000012
【図１１】
2018007044.tif 000013
【図１２】
2018007044.tif 000014
【図１３】
2018007044.tif 000015
【図１４】
2018007044.tif 000016
【図１５】
2018007044.tif 000017
【図１６】
2018007044.tif 000018
【図１７】
2018007044.tif 000019
【図１８】
2018007044.tif 000020