(57)【要約】【課題】内部に異常が発生している回路を早期に特定する。【解決手段】入力された第１のフレームの処理を行う回路と、回路によって行われる処理の内容に関する情報を記憶する記憶部と、第１のフレームに関する情報と、回路により処理された第２のフレームに関する情報と、処理の内容に関する情報と、に基づいて、回路の障害を検出する制御部と、を備える伝送装置である。記憶部は、処理の内容に関する情報として、処理の履歴情報を記憶する。制御部は、第１のフレームに関する情報として、回路による第１のフレームについての所定の演算の第１の演算結果を取得し、第２のフレームに関する情報として、第２のフレームを取得し、履歴情報に基づいて第２のフレームから第１のフレームを再生し、再生した第１のフレームから算出される所定の演算の第２の演算結果と第１の演算結果とが一致しない場合に、回路の障害を検出する。【選択図】図１０
2017130849.tif 000002
【特許請求の範囲】
【請求項１】
入力された第１のフレームの処理を行う回路と、
前記回路によって行われる処理の内容に関する情報を記憶する記憶部と、
前記第１のフレームに関する情報と、前記回路により処理された第２のフレームに関する情報と、前記処理の内容に関する情報と、に基づいて、前記回路の障害を検出する制御部と、
を備える伝送装置。
【請求項２】
前記記憶部は、前記処理の内容に関する情報として、前記回路の処理の履歴情報を記憶し、
前記制御部は、前記第１のフレームに関する情報として、前記第１のフレームについて前記回路が行った所定の演算の第１の演算結果を取得し、前記第２のフレームに関する情報として、前記第２のフレームを取得し、前記処理の履歴情報に基づいて前記第２のフレームから第１のフレームを再生する再生処理と、前記再生した第１のフレームから算出される前記所定の演算の第２の演算結果と前記第１の演算結果との比較処理と、を行い、前記第１の演算結果と前記第２の演算結果とが一致しない場合に、前記回路の障害を検出する、
請求項１に記載の伝送装置。
【請求項３】
前記回路は、前記第１のフレームについて前記所定の演算を行う演算回路を備え、前記第２のフレームに、前記第１のフレームの前記所定の演算の演算結果を付加する
請求項２に記載の伝送装置。
【請求項４】
前記伝送装置は、前記回路を複数備え、
前記記憶部は、前記複数の回路のそれぞれについて、各フレームに対する処理の履歴情報を記憶し、
前記制御部は、複数の通過した回路のそれぞれによって算出された複数の前記所定の演算の演算結果が付加されており、且つ、前記複数の通過した回路のうちの最後に通過した回路による処理後の第２のフレームを取得し、前記通過した前記回路のそれぞれについて、前記最後に通過した回路から通過順とは逆の順で、前記再生処理と前記比較処理とを行い、障害発生の回路を検出する、
請求項３に記載の伝送装置。
【請求項５】
前記所定の演算は、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）の演算である、
請求項２から４のいずれか一項に記載の伝送装置。
【請求項６】
前記記憶部は、前記処理の内容に関する情報として、前記回路の処理のロジックを記憶し、
前記制御部は、前記第１のフレームに関する情報として前記第１のフレームを取得し、前記第２のフレームに関する情報として前記第２のフレームを取得し、前記回路の処理のロジックにしたがって、前記第１のフレームに対して前記回路の前記処理を行い、前記処理を施した前記第１のフレームと前記第２のフレームとが一致しない場合に、前記回路の障害を検出する、
請求項１に記載の伝送装置。
【請求項７】
前記回路はＦＰＧＡ（Ｆｉｅｌｄ-Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ
）である、
請求項１から６のいずれか一項に記載の伝送装置。
【請求項８】
入力された第１のフレームの処理を行う回路を備える伝送装置が、
前記回路によって行われる処理の内容に関する情報を記憶部に記憶し、
前記第１のフレームに関する情報と、前記処理の後の第２のフレームに関する情報と、前記処理の内容に関する情報と、に基づいて、前記回路の障害を検出する、
障害検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伝送装置、及び、障害検出方法に関する。
【背景技術】
【０００２】
図１は、伝送装置Ｐ１００の内部処理の一例を示す図である。伝送装置Ｐ１００は、例えば、キャリアのネットワークにおいて、フレームの転送を行う装置である。伝送装置Ｐ１００は、例えば、複数のＬｉｎｅ  Ｉｎｔｅｒｆａｃｅ  Ｕｎｉｔ（以下、ＬＩＵ）カードＰ１、Ｂａｃｋ  Ｗｉｒｄ  Ｂｏａｒｄ（以下、ＢＷＢ）Ｐ３、制御カード（図示せず）を含む。ＬＩＵカードＰ１は、インタフェースカードである。ＢＷＢ  Ｐ３は、ＬＩＵ間をフルメッシュで接続するスイッチカードである。制御カードは、ＬＩＵカードＰ１及びＢＷＢ  Ｐ３を制御する。
【０００３】
ＬＩＵカードＰ１は、複数のＦｉｅｌｄ-Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒ
ｒａｙ（ＦＰＧＡ）を備える。図１に示される例では、ＬＩＵカードＰ１が備えるＦＰＧＡは、フォワードＦＰＧＡ  Ｐ１０３Ｂ、ポリサＦＰＧＡ  Ｐ１０３Ｃ、ＢＷＢインタフェースＦＰＧＡ  Ｐ１０３Ｄ、シェーパＦＰＧＡ  Ｐ１０３Ｅである。ＦＰＧＡは、それぞれプログラムされた処理を実行する集積回路である。
【０００４】
伝送装置Ｐ１００に入力されたフレームは、各ＬＩＵカードＰ１内の各ＦＰＧＡを経由し、各ＦＰＧＡによって処理されながら転送される。伝送装置Ｐ１００に入力されたフレームには、装置内ヘッダが付加される。装置内ヘッダは、フレームの伝送装置Ｐ１００内の出力ポートや、各ＦＰＧＡの処理のための情報であり、伝送装置Ｐ１００内の各カードが参照する情報が含まれている。各ＦＰＧＡは、装置内ヘッダを参照してフレームの処理を行い、装置内ヘッダを書き換えて、フレームを転送する。
【０００５】
図２は、ＬＩＵカードＰ１におけるエラー検出処理の一例を示す図である。ＬＩＵカードＰ１内の各ＦＰＧＡは、次段のＦＰＧＡに出力するフレームに、誤り検出符号を付加する。次段のＦＰＧＡは、入力フレームから誤り検出符号を算出し、入力フレームに付加されている誤り検出符号と一致するか否かを確認する。算出した誤り検出符号と入力フレームに付加されている誤り検出符号とが一致しない場合には、ＦＰＧＡ間の伝送におけるビット化け等のデータ異常が検出される。
【０００６】
例えば、ＭＡＣ／ＰＨＹ回路Ｐ１０３ＡとフォワードＦＰＧＡ  Ｐ１０３Ｂ間、シェーパＦＰＧＡ  Ｐ１０３ＥとＭＡＣ／ＰＨＹ回路Ｐ１０３Ａ間では、誤り検出符号として、ＦＣＳ（Frame Check Sequence）が用いられる。例えば、フォワードＦＰＧＡ  Ｐ１０３ＢとポリサＦＰＧＡ  Ｐ１０３Ｃ間、ポリサＦＰＧＡ  Ｐ１０３ＣとＢＷＢインタフェースＦＰＧＡ  Ｐ１０３Ｄ間、ＢＷＢインタフェースＦＰＧＡ  Ｐ１０３ＤとフォワードＦＰＧＡ  Ｐ１０３Ｂ間、フォワードＦＰＧＡ  Ｐ１０３ＢとシェーパＦＰＧＡ  Ｐ１０３Ｅ間では、誤り検出符号として、ＢＩＰ（Bit Interleaved Parity）が用いられる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２７８５７６号公報
【特許文献２】特開２００２−０６４４９０号公報
【特許文献３】特開２０１１−１４６７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
図３は、ＬＩＵカードＰ１におけるエラー検出処理の問題点の一例を示す図である。図２に示されるＬＩＵカードＰ１におけるエラー検出処理では、各ＦＰＧＡ間のデータ伝送による異常を検出することができる。しかしながら、各ＦＰＧＡは、書換対象の装置内ヘッダ以外のデータについては関知しないため、ＦＰＧＡ内でのデータ異常については、エラー検出処理が行われておらず、ＦＰＧＡの内部に故障が発生した場合には、異常個所の特定に時間がかかる。
【０００９】
例えば、（１）ポリサＦＰＧＡ  Ｐ１０３Ｃの内部に、オリジナルフレームのデータを壊すようなハードウェアの故障が発生したことを想定する。（２）ポリサＦＰＧＡ  Ｐ１０３Ｃは、壊れたフレームデータに対して誤り検出符号を生成し、付加して、次段のＢＷＢインタフェースＦＰＧＡ  Ｐ１０３Ｄに出力する。（３）ＢＷＢインタフェースＦＰＧＡ  Ｐ１０３Ｄは、ポリサＦＰＧＡ  Ｐ１０３Ｃから入力されたフレームデータ、すなわち、壊れたフレームデータを元に誤り検出符号を算出して、エラー検出を行う。
【００１０】
この場合には、ポリサＦＰＧＡ  Ｐ１０３Ｃによって付加された誤り検出符号と、ＢＷＢインタフェースＦＰＧＡ  Ｐ１０３Ｄが算出した誤り検出符号とは、同じ壊れたデータから算出されるので、一致する。結果、フレームデータの異常は検出されずにすり抜けてしまい、壊れたフレームデータがネットワークに出力される。
【００１１】
壊れたフレームデータがネットワークに出力されると、例えば、該フレームの宛先装置においてエラーが検出され、該フレームを含むデータの再送要求が発生することが考えられる。ＦＰＧＡ内のハードウェア故障の場合、故障発生以後に通過するフレームデータはすべて壊れてしまうため、壊れたフレームデータがネットワークに出力されることによって、再送要求が多発し、ネットワークの輻輳が引き起こされ、深刻な影響を生む可能性がある。
【００１２】
一側面によれば、本発明は、内部に異常が発生している回路を早期に特定可能な伝送装置、及び、障害検出方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の態様の一つは、伝送装置である。伝送装置は、入力された第１のフレームの処理を行う回路と、記憶部と、制御部とを備える。記憶部は、回路によって行われる処理の内容に関する情報を記憶する。制御部は、第１のフレームに関する情報と、回路により処理された第２のフレームに関する情報と、処理の内容に関する情報と、に基づいて、回路の障害を検出する。
【発明の効果】
【００１４】
開示の伝送装置、及び、障害検出方法によれば、内部に異常が発生している回路を早期に特定することができる。
【図面の簡単な説明】
【００１５】
【図１】伝送装置の内部処理の一例を示す図である。
【図２】ＬＩＵカードにおけるエラー検出処理の一例を示す図である。
【図３】ＬＩＵカードにおけるエラー検出処理の問題点の一例を示す図である。
【図４】伝送装置が用いられるネットワークシステムのシステム構成の一例を示す図である。
【図５】伝送装置のハードウェア構成の一例を示す図である。
【図６】伝送装置の機能構成の一例を示す図である。
【図７】ＬＩＵカードの機能構成の詳細の一例を示す図である。
【図８】装置内ヘッダのフォーマットの一例である。
【図９】ＣＲＣ計算／スタック部の処理の一例を示す図である。
【図１０】ＣＰＵファームウェアのフレーム解析部の処理の一例を示す図である。
【図１１】書換履歴管理テーブルの一例である。
【図１２】フレーム疎通経路テーブルの一例である。
【図１３】ＣＰＵファームウェアのテーブル管理部の処理のフローチャートの一例である。
【図１４】ＣＰＵファームウェアのフレーム解析部の処理のフローチャートの一例である。
【図１５】伝送装置の故障発生のＦＰＧＡの特定処理の具体例の前提を示す図である。
【図１６】具体例における伝送装置の処理の一例を示す図である。
【図１７】具体例における伝送装置の処理の一例を示す図である。
【図１８】具体例における伝送装置の処理の一例を示す図である。
【図１９】具体例における伝送装置の処理の一例を示す図である。
【図２０】ＦＰＧＡの内部故障の検出とＦＰＧＡ間の伝送エラー検出とが行われる場合の、ＬＩＵカードの機能構成を示す図である。
【図２１】第１実施形態の変形例２に係る伝送装置の機能構成の一例を示す図である。
【図２２】第１実施形態の変形例２に係るフレーム解析部の処理の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１７】
＜第１実施形態＞
図４は、伝送装置１００が用いられるネットワークシステム１０００のシステム構成の一例を示す図である。ネットワークシステム１０００は、例えば、コアネットワーク、アクセスネットワークを含む。アクセスネットワークは、図４に示される例では、複数のリングネットワークを含む。リングネットワークは、複数の伝送装置１００がリング状に接続されることによって形成されている。
【００１８】
伝送装置１００はそれぞれ、アクセスネットワークとは分離されたネットワークによって管理装置５００と接続している。管理装置５００は、伝送装置１００を管理する。管理装置５００と複数の伝送装置１００とで、例えば、ネットワーク管理システム（Network Management System; NMS）が構築されている。なお、伝送装置１００が用いられるネットワークのシステム構成は、図４に示されるものに限定されない。
【００１９】
図５は、伝送装置１００のハードウェア構成の一例を示す図である。伝送装置１００は、例えば、レイヤ２スイッチである。第１実施形態では、伝送装置１００は、大規模ネットワーク向けの装置が想定される。第１実施形態では、伝送装置１００は、筐体に、それぞれ役割の異なるユニットカードが差し込まれることで伝送装置１００として動作する装置である。伝送装置１００は、「伝送装置」の一例である。
【００２０】
伝送装置１００は、複数のＬＩＵカード１と、制御カード２と、ＢＷＢ  ３とを含む。制御カード２は、運用系と予備系とで、伝送装置１００に、２枚備えられる。ただし、制御カード２の運用系と予備系とでは、処理は同じであるので、以降は、制御カード２は、１枚で表示される。ＬＩＵカード１は、データ信号に対する処理を行う。ＬＩＵカード１において行われるデータ信号に対する処理は、例えば、転送処理、帯域制御処理等である
。
【００２１】
ＬＩＵカード１は、それぞれ、ＣＰＵ（Central Processing Unit）１０１、記憶部１
０２、複数のＦＰＧＡ  １０３、複数のネットワークインタフェース（図示せず）を備える。記憶部１０２は、例えば、ＲＡＭ（Radom Access Memory）、ＲＯＭ（Read Only Memory）、及び、不揮発性メモリを備える。ＬＩＵカード１が備えるネットワークインタフ
ェース（図示せず）は、例えば、ＬＡＮ（Local Area Network）インタフェースである。不揮発性メモリには、ＦＧＰＡ内部故障検出プログラムが格納されている。ＦＰＧＡ内部故障検出プログラムは、ＬＩＵカード１が有するＦＰＧＡ  １０３のうち、内部故障が発生しているＦＰＧＡ  １０３を特定するためのプログラムである。ＦＰＧＡ内部故障検出プログラムは、例えば、ファームウェアとして備えられる。ＦＰＧＡ  １０３は、「回路」の一例である。ただし、「回路」は、ＦＰＧＡ  １０３に限定されず、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）等の集積回路であってもよい。
【００２２】
ＢＷＢ  ３は、ＬＩＵカード１をフルメッシュで接続するスイッチカードである。伝送装置１００に入力されたフレームには、入力側のＬＩＵカード１によって装置内ヘッダが付加される。装置内ヘッダには、伝送装置１００の出力ポートの情報が含まれている。ＢＷＢ  ３は、入力されたフレームの装置内ヘッダを参照し、装置内ヘッダによって示される出力ポートを有するＬＩＵカード１にフレームを転送する。
【００２３】
制御カード２は、ＬＩＵカード１、ＢＷＢ  ３を制御する。制御カード２は、ＣＰＵ  ２０１と記憶部２０２、ネットワークインタフェース（図示せず）を備える。ＣＰＵ  ２０１のネットワークインタフェースは、管理装置５００との通信のネットワークに接続される。管理装置５００と伝送装置１００との間の通信には、例えば、管理プロトコルである、ＳＮＭＰ（Simple Network Management Protocol）、ＴＬ１（Transaction Language
One）、Ｔｅｌｎｅｔ／ＳＳＨ（Secure SHell）等が用いられる。ＣＰＵ  ２０１は、「制御部」の一例である。
【００２４】
制御カード２の記憶部２０２には、ＲＡＭ、ＲＯＭ、不揮発性メモリが備えられる。不揮発性メモリには、障害検出プログラムが格納されている。障害検出プログラムは、伝送装置１００内のＬＩＵカード１それぞれが有するＦＰＧＡの内部故障を検出するためのプログラムである。障害検出プログラムは、第１実施形態では、ファームウェアとして備えらえる。例えば、管理装置５００から、故障検知モードへの移行の指示を受信すると、制御カード２は、障害検出プログラムの実行を開始する。記憶部２０２は、「記憶部」の一例である。
【００２５】
図６は、伝送装置１００の機能構成の一例を示す図である。伝送装置１００は、機能構成として、ＣＰＵファームウェア２０と、ＬＩＵファームウェア１１と、入力側ＦＰＧＡ
１２と、出力側ＦＰＧＡ  １３とを含む。
【００２６】
入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３は、それぞれ、ＦＰＧＡ  １０３によって実現される機能構成である。入力側ＦＰＧＡ  １２は、ネットワークから伝送装置１００に入力されるフレームに対する処理を行う。出力側ＦＰＧＡ  １３は、伝送装置１００からネットワークに出力されるフレームに対する処理を行う。
【００２７】
ユーザデータのフレームは、伝送装置１００において、ＬＩＵカード１→ＢＷＢ  ３→ＬＩＵカード１の順で経由する。以降、フレームが伝送装置１００において最初に経由するＬＩＵカード１を入力側ＬＩＵカード、ＢＷＢ  ３の後に経由するＬＩＵカード１を出力側ＬＩＵカードと称する。入力側ＬＩＵカードと出力側ＬＩＵカードとは、同じＬＩＵカード１である場合もあるし、異なるＬＩＵカード１である場合もある。入力側ＬＩＵカ
ードでは、フレームは、入力側ＦＰＧＡ  １２を通過する。出力側ＬＩＵカードでは、フレームは出力側ＦＰＧＡ  １３を通過する。入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３のより詳細な機能構成については、後述される。
【００２８】
ＦＰＧＡ  １０３は、設定される処理の特性によって、入力側ＦＰＧＡ  １２、出力側ＦＰＧＡ  １０３のいずれか一方又は両方の機能を有する。例えば、フォワーディングＦＰＧＡは、入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の両方の機能を有する。ポリサＦＰＧＡは、入力側ＦＰＧＡ  １２の機能を有するが、出力側ＦＰＧＡ  １３の機能は有さない。シェーパＦＰＧＡは、出力側ＦＰＧＡ  １３の機能を有するが、入力側ＦＰＧＡ  １２の機能は有さない。
【００２９】
ＬＩＵファームウェア１１は、ＬＩＵカード１のＣＰＵ  １０１が不揮発性メモリ内のＦＰＧＡ内部故障検出プログラムを実行することによって実現される機能構成である。ＬＩＵファームウェア１１は、データ通知部１１１と出力フレーム通知部１１２とを含む。データ通知部１１１は、入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３から、装置内ヘッダの書換処理の内容の情報を取得し、ＣＰＵファームウェア２０に通知する。出力フレーム通知部１１２は、最終段の出力側ＦＰＧＡ  １３から通知される、通過した各ＦＰＧＡによって書き換えられた装置内ヘッダと算出されたＣＲＣ（Cyclic Redundancy Check
）とを有するフレームを、ＣＰＵファームウェア２０に通知する。
【００３０】
ＣＰＵファームウェア２０は、制御カード２のＣＰＵ  ２０１が不揮発性メモリ内の障害検出プログラムを実行することによって実現される機能構成である。ＣＰＵファームウェア２０は、フレーム解析部２１、テーブル管理部２２、書換履歴管理テーブル２３、フレーム疎通経路テーブル２４を備える。ＣＰＵファームウェア２０の詳細は、後述される。
【００３１】
図７は、ＬＩＵカード１の機能構成の詳細の一例を示す図である。入力側ＦＰＧＡ  １２は、ＣＲＣ計算／スタック部１２１、ヘッダ変換部１２２、書換履歴データ格納部１２３を備える。出力側ＦＰＧＡ  １３は、機能構成として、ＣＲＣ計算／スタック部１３１、ヘッダ変換部１３２、書換履歴データ格納部１３３、出力フレーム通知部１３４を備える。入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３のそれぞれの機能構成は、各ＦＰＧＡ  １０３内の電子回路によって実現される。
【００３２】
ＣＲＣ計算／スタック部１２１、１３１は、入力フレームに対して、ＣＲＣ計算を行い、ＣＲＣ計算結果をフレームに付加（スタック）する。ＣＲＣ計算の対象は、第１実施形態では、フレームのオリジナルデータ部分と装置内ヘッダ部分である。ＣＲＣ計算は、「所定の演算」の一例である。
【００３３】
ヘッダ変換部１２２、１３２は、ＣＲＣ計算／スタック部１２１、１３１の次に、入力フレームに対して、各ＦＰＧＡに設定された処理を行い、装置内ヘッダの書換処理を行う。ヘッダ変換部１２２、１３２は、それぞれ、装置内ヘッダの書換処理の内容の情報を書換履歴データ格納部１２３、１３３に記録する。装置内ヘッダの書換処理の内容の情報を、以降、書換履歴データと称する。書換履歴データには、例えば、作成元であるＦＰＧＡの識別情報、フレームＩＤ、書換位置、書換前の値、書換後の値等が含まれる。また、書換履歴データの作成元であるＦＰＧＡの識別情報には、例えば、入力側であるか出力側であるかを示す情報も含まれる。装置内ヘッダの書換処理は、「回路」が行う「処理」の一例である。
【００３４】
書換履歴データ格納部１２３、１３３は、それぞれ、ＦＰＧＡ  １０３内のレジスタに相当する。書換履歴データ格納部１２３、１３３として確保されるレジスタに、書換履歴
データが書き込まれると、ＬＩＵファームウェア１１に対して割り込み処理が発生する。ＬＩＵファームウェア１１のデータ通知部１１１は、割り込み処理の発生に応じて、書換履歴データ格納部１２３、１３３に書き込まれた書換履歴データを読み出し、読み出した書換履歴データをＣＰＵファームウェア２０に通知する。すなわち、第１実施形態では、装置内ヘッダの書換処理が発生する度に、書換履歴データがＣＰＵファームウェア２０に通知される。
【００３５】
ただし、書換履歴データの収集方法は、装置内ヘッダの書換処理の度にＣＰＵファームウェア２０に通知される方法に限定されない。例えば、書換履歴データは、所定の周期で収集されてもよい。書換履歴データが所定の周期で収集される場合には、書換履歴データ格納部１２３、１３３は、それぞれ、ＦＰＧＡ  １０３のＲＡＭ内に作成される。ＬＩＵファームウェア１１のデータ通知部１１１は、所定の周期で、各ＦＰＧＡ１０３の書換履歴データ格納部１２３、１３３から書換履歴データを読み出し、ＣＰＵファームウェア２０に通知する。ＦＰＧＡ  １０３の書換履歴データ格納部１２３、１３３から書換履歴データが読み出される周期は、例えば、１００ミリ秒オーダーで設定される。
【００３６】
一段目の入力側ＦＰＧＡ  １２においては、二段目以降の入力側ＦＰＧＡ  １２とは処理が異なる。一段目の入力側ＦＰＧＡ  １２とは、伝送装置１００において最初にフレームが入力されるＦＰＧＡであり、フレームに装置内ヘッダを付加するＦＰＧＡである。伝送装置１００において、一段目の入力側ＦＰＧＡ  １２は、一意に決まるものではなく、いずれのＬＩＵカード１のＦＰＧＡ  １０３が一段目のＦＰＧＡとなるかは、フレームの経路に依存する。
【００３７】
一段目の入力側ＦＰＧＡ  １２における処理は、以下のとおりである。一段目の入力側ＦＰＧＡ  １２には、装置内ヘッダが付加されていないオリジナルフレームが入力されるので、まず、ヘッダ変換部１２２によって装置内ヘッダが生成され、フレームに装置内ヘッダが付加される。次に、ＣＲＣ計算／スタック部１２１が、装置内ヘッダとオリジナルフレームとについてＣＲＣ計算を行い、ＣＲＣ計算結果をフレームに付加して出力する。なお、一段目の入力側ＦＰＧＡ  １２では、装置内ヘッダが生成されるので、装置内ヘッダの書換処理は行われない。そのため、第１実施形態では、一段目の入力側ＦＰＧＡ  １２では、書換履歴データ格納部１２３に書換履歴データは書き込まれず、ＣＰＵファームウェア２０の書換履歴管理テーブル２３には、一段目の入力側ＦＰＧＡ  １２の書換履歴データは記録されない。
【００３８】
また、最終段の出力側ＦＰＧＡ  １３においては、他の出力側ＦＰＧＡ  １３と処理が異なる。最終段の出力側ＦＰＧＡ  １３とは、伝送装置１００においてフレームが最後に通過するＦＰＧＡであって、装置内ヘッダを取り除く処理を行うＦＰＧＡである。伝送装置１００において、最終段のＦＰＧＡ  １０３は、一意に決まるものではなく、いずれのＬＩＵカード１のＦＰＧＡ  １０３が最終段のＦＰＧＡとなるかは、フレームの経路に依存する。
【００３９】
最終段の出力側ＦＰＧＡ  １３における処理は、以下の通りである。最終段の出力側ＦＰＧＡ  １３は、出力フレーム通知部１３４をさらに備える。最終段の出力側ＦＰＧＡ  １３では、まず、入力フレームに対してＣＲＣ計算／スタック部１３１がＣＲＣ計算を行い、ＣＲＣ計算結果をフレームに付加する。次に、ヘッダ変換部１３２が装置内ヘッダの書換処理を行い、書換履歴データを書換履歴データ格納部１３３に記録する。
【００４０】
ヘッダ変換部１３２は、装置内ヘッダの書換処理後のフレームのコピーを出力フレーム通知部１３４に出力する。また、ヘッダ変換部１３２は、装置内ヘッダの書換処理後のフレームから、装置内ヘッダと、自及び他のＦＰＧＡ  １０３によって付加されたＣＲＣ計
算結果と、を除去し、装置内ヘッダ等が除去されたフレームを出力する。
【００４１】
出力フレーム通知部１３４は、ヘッダ変換部１３２から入力される装置内ヘッダの書換処理後のフレームをＬＩＵファームウェア１１に通知する。ＬＩＵファームウェア１１の出力フレーム通知部１１２は、出力側ＦＰＧＡ  １３から通知されたフレームをＣＰＵファームウェア２０に通知する。したがって、ＣＰＵファームウェア２０に通知されるフレームは、装置内ヘッダと、通過したＦＰＧＡ  １０３のそれぞれのＣＲＣ計算／スタック部１２１、１３１によって算出されたＣＲＣ計算結果とが付加されているフレームである。
【００４２】
図８は、装置内ヘッダのフォーマットの一例である。装置内ヘッダは、固定長である。装置内ヘッダには、例えば、フレームタイプ、ユニキャスト／マルチキャスト、優先度クラス、送信元ポートＩＤ、宛先ポートＩＤ、フレームＩＤ等のフィールドが含まれている。
【００４３】
「フレームタイプ」のフィールドには、フレームに含まれるデータの作成プロトコルの情報が格納される。「ユニキャスト／マルチキャスト」のフィールドには、フレームがユニキャスト又はマルチキャストフレームのいずれであるかを示す情報が格納される。「優先度クラス」には、フレームの優先度を示す情報が格納される。「送信元ポートＩＤ」には、フレームが入力されたポートのＩＤが格納される。「宛先ポートＩＤ」には、フレームがネットワークに出力されるポートのＩＤが格納される。
【００４４】
「フレームＩＤ」には、伝送装置１００内においてフレームを識別するためのＩＤが格納される。フレームＩＤは、伝送装置１００内において、一意に設定される。
【００４５】
装置内ヘッダは、一段目の入力側ＦＰＧＡ  １２のヘッダ変換部１２２によって生成され、フレームに付加される。また、装置内ヘッダは、最終段の出力側ＦＰＧＡ  １３のヘッダ変換部１３２によって除去される。
【００４６】
なお、図８に示される装置内ヘッダのフォーマットは一例であって、装置内ヘッダのフォーマットは図８に示されるものに限定されない。装置内ヘッダのフォーマットは、伝送装置１００の仕様によって、様々である。また、第１実施形態では、フレームＩＤは、装置内ヘッダに含められるが、フレームＩＤは、例えば、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によって、ＣＲＣ計算結果とともにフレームに付加されてもよい。
【００４７】
図９は、ＣＲＣ計算／スタック部１２１、１３１の処理の一例を示す図である。各ＣＲＣ計算／スタック部１２１、１３１は、自入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３への入力フレームのオリジナルフレーム部分と装置内ヘッダの部分について、ＣＲＣ計算を行う。各ＣＲＣ計算／スタック部１２１、１３１は、ＣＲＣ計算結果を入力フレームに付加する。ＣＲＣの計算結果は、例えば、フレームの末尾に付加される。
【００４８】
図９に示される例では、ＣＲＣ（Ｐ）は、ポリサＦＰＧＡによって算出されたＣＲＣ計算結果を示す。ＣＲＣ（Ｂ）は、ＢＷＢインタフェースＦＰＧＡによって算出されたＣＲＣ計算結果を示す。
【００４９】
したがって、フレームには、通過した入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３それぞれによって算出されたＣＲＣ計算結果が、通過した入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の順でスタックされることになる。
【００５０】
図１０は、ＣＰＵファームウェア２０のフレーム解析部２１の処理の一例を示す図であ
る。フレーム解析部２１は、各ＬＩＵファームウェア１１から通知される、最終段の出力側ＦＰＧＡ  １３からの出力フレームのコピーの解析を行い、解析結果から、該フレームが通過したＦＰＧＡ  １０３の障害発生を検出する。フレーム解析部２１に入力されるフレームには、該フレームが通過した各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によって書き換えられた装置内ヘッダと算出された複数のＣＲＣ計算結果とが付加されている。
【００５１】
フレーム解析部２１は、フレームが通過した各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３について、通過とは逆の順で、以下の処理を行う。以降、処理の対象の入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３を、単に、対象のＦＰＧＡと称する。
【００５２】
（１）フレーム解析部２１は、対象のＦＰＧＡについて、書換履歴管理テーブル２３に記憶される装置内ヘッダの書換履歴データとは逆の処理を行って、対象のＦＰＧＡに入力された該書換処理の前の状態のフレームを再生する。再生されるフレームは、オリジナルフレームと書換処理の前の状態の装置内ヘッダとを含む。（２）フレーム解析部２１は、再生したフレームについてＣＲＣ計算を行う。ＣＲＣ計算の対象は、再生後のオリジナルフレームと装置内ヘッダである。（３）フレーム解析部２１は、再生後のフレームのＣＲＣ計算結果と、フレームに付加されている対象のＦＰＧＡによるＣＲＣ計算結果と、を比較する。
【００５３】
再生したフレームのＣＲＣ計算結果と、フレームに付加されている対象のＦＰＧＡによるＣＲＣ計算結果と、が一致しない場合には、フレーム解析部２１は、対象のＦＰＧＡに障害が発生していることを検出する。フレーム解析部２１は、対象のＦＰＧＡの障害を検出した場合には、対象のＦＰＧＡの情報を管理装置５００に送信する。再生したフレームのＣＲＣ計算結果と、フレームに付加されている対象のＦＰＧＡによるＣＲＣ計算結果と、が一致する場合には、フレーム解析部２１は、対象のＦＰＧＡは正常であることを判定し、前段のＦＰＧＡについて同様の処理を繰り返し行う。
【００５４】
なお、フレーム解析部２１に通知されるフレームに付加されているＣＲＣ計算結果は、該フレームが通過した入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の順で付加されている。そのため、フレーム解析部２１は、フレームの末尾から順にＣＲＣ計算結果を参照する。例えば、フレームにおいて各ＦＰＧＡのＣＲＣ計算結果の間には、区切りを示すビット列が挿入されており、どこまでが１つのＣＲＣ計算結果であるかが明示されている。
【００５５】
フレーム解析部２１は、「制御部」の一例である。ヘッダ変換部１２２、１３２に入力されるフレームは、「第１のフレーム」の一例である。ヘッダ変換部１２２、１３２から出力されるフレームは、「第２のフレーム」、「第２のフレームに関する情報」の一例である。ＣＲＣ計算／スタック部１２１、１３１によってフレームに付加されるＣＲＣ計算結果は、「第１のフレームに関する情報」、「第１の演算結果」の一例である。図１０の（１）の処理は、「第２のフレームから第１のフレームを再生する再生処理」の一例である。図１０の（３）の処理は、「比較処理」の一例である。
【００５６】
図１１は、書換履歴管理テーブル２３の一例である。書換履歴管理テーブル２３は、制御カード２のＲＡＭ内に格納されており、各ＬＩＵカード１について１つずつ作成される。テーブル管理部２２は、書換履歴管理テーブル２３を管理する。
【００５７】
書換履歴管理テーブル２３の１つのエントリは、ＬＩＵカード１内の１つの入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３によって、１つのフレームの１つの変更箇所に対して行われた変更処理の情報を示す。書換履歴管理テーブル２３のエントリは、ＬＩＵカード１内の入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３によって作成され、ＬＩＵファ
ームウェア１１からＣＰＵファームウェア２０に通知された書換履歴データである。
【００５８】
ＣＰＵファームウェア２０では、テーブル管理部２２が、各ＬＩＵファームウェア１１から書換履歴データを受信し、該当のＬＩＵカード１の書換履歴管理テーブル２３に書換履歴データを新たなエントリとして登録する。例えば、制御カード２において、各ＬＩＵカード１とのインタフェースはそれぞれ異なるため、テーブル管理部２２は、書換履歴データの送信元のＬＩＵカード１を受信インタフェースによって識別することが可能である。
【００５９】
書換履歴管理テーブル２３のエントリには、例えば、フレームＩＤ、ＦＰＧＡ識別情報及び入力側／出力側識別情報、ビット位置、更新前の値、更新後の値の項目が含まれる。フレームＩＤは、伝送装置１００内でフレームを識別するためのＩＤであり、フレームの装置内ヘッダに格納されている。ＦＰＧＡ識別情報は、該エントリを作成したＦＰＧＡの識別情報である。入力側／出力側識別情報は、該エントリを作成したＦＰＧＡが入力側ＦＰＧＡ  １２であるか出力側ＦＰＧＡ  １３であるかを示す情報である。図１１に示される例では、入力側ＦＰＧＡ  １２である場合には「ＩＧ」（ＩｎＧｒｅｓｓ）、出力側ＦＰＧＡ  １３である場合には「ＥＧ」（ＥＧｒｅｓｓ）が、ＦＰＧＡ識別情報とともにエントリに格納されている。ビット位置は、装置内ヘッダにおける変更対象のビットの位置である。
【００６０】
図１１に示される書換履歴管理テーブル２３の先頭のエントリは、フレームＩＤ、ＦＰＧＡ識別情報及び入力側／出力側識別情報、ビット位置、更新前の値、更新後の値が、それぞれ、１、Ｐｏｌｉｃｅｒ  ＩＧ、１２：０、Ａｌｌ“０”、Ａｌｌ“１”である。図１１に示される書換履歴管理テーブル２３の先頭のエントリは、ポリサＦＰＧＡの入力側ＦＰＧＡ  １３によって、フレームＩＤ「１」のフレームの装置内ヘッダの０ビットから１２ビットまでの全ての値が「１」から「０」に変更されたことを示す。
【００６１】
なお、書換履歴管理テーブル２３のデータ構造は、図１１に示されるものに限定されない。例えば、エントリにＬＩＵカード１の識別情報の項目が設定される場合には、書換履歴管理テーブル２３は、伝送装置１００につき１つ用意されればよい。書換履歴管理テーブル２３は、「記憶部」の一例である。書換履歴データは、「回路によって行われる処理の内容に関する情報」、「回路の処理の履歴情報」の一例である。
【００６２】
図１２は、フレーム疎通経路テーブル２４の一例である。フレーム疎通経路テーブル２４は、各ＬＩＵカード１においてフレームが通過する入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の順序を保持するテーブルである。フレーム疎通経路テーブル２４は、予め制御カード２の不揮発性メモリに格納される。
【００６３】
フレーム疎通経路テーブル２４のエントリは、ＬＩＵカードＩＤの入力側（ＩＮＧＲＥＳＳ）又は出力側（ＥＧＲＥＳＳ）と、ＦＰＧＡの識別情報との項目を含む。フレーム疎通経路テーブル２４の１つのエントリは、１つのＬＩＵカード１内の１つのＦＰＧＡを示す。フレーム疎通経路テーブル２４では、エントリは、フレームが通過する順で並んでいる。
【００６４】
図１２に示される例において、ＬＩＵカードＩＤの入力側又は出力側の項目が「ＬＩＵ＃Ａ  ＩＧ」である３つのエントリによって、ＬＩＵ＃Ａの入力側では、フォワードＦＰＧＡ、ポリサＦＰＧＡ、ＢＷＢインタフェースＦＰＧＡの順でフレームが通過することが示される。
【００６５】
フレーム疎通経路テーブル２４は、フレーム解析部２１によって、最終段の出力側ＦＰ
ＧＡ  １３から通知されたフレームが通過した入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ
１３の通過順を特定する際に用いられる。なお、フレーム疎通経路テーブル２４のデータ構造は、図１２に示されるものに限定されない。
【００６６】
＜処理の流れ＞
図１３は、ＣＰＵファームウェア２０のテーブル管理部２２の処理のフローチャートの一例である。図１３に示される処理は、ＬＩＵファームウェア１１から書換履歴データの通知を受けると開始される。図１３の処理の実行主体は、障害検出プログラムを実行する制御カード２のＣＰＵ  ２０１であるが、便宜上、機能構成の一つであるテーブル管理部２２を主体として説明する。
【００６７】
ＯＰ１では、テーブル管理部２２は、通知された書換履歴データを、該当のＬＩＵカード１の書換履歴管理テーブル２３に格納する。その後、図１３に示される処理が終了する。
【００６８】
図１４は、ＣＰＵファームウェア２０のフレーム解析部２１の処理のフローチャートの一例である。図１４に示される処理は、最終段の出力側ＦＰＧＡ  １３からの出力フレームのコピーがＬＩＵファームウェア１１から入力されると開始される。図１４の処理の実行主体は、障害検出プログラムを実行する制御カード２のＣＰＵ  ２０１であるが、便宜上、機能構成の一つであるフレーム解析部２１を主体として説明する。
【００６９】
ＯＰ１１では、フレーム解析部２１は、フレーム疎通経路テーブル２４を参照して、入力されたフレームが通過した出力側ＬＩＵカードの出力側ＦＰＧＡ  １３とその通過順を特定する。より具体的には、フレーム解析部２１は、フレーム疎通経路テーブル２４から、フレームの通知元のＬＩＵカード１のカードＩＤと出力側（ＥＧ）の情報を有するエントリを抽出する。
【００７０】
ＯＰ１２からＯＰ１８の処理は、ＯＰ１１において特定された、フレームが通過した出力側ＬＩＵカードの出力側ＦＰＧＡ  １３の数分、フレームの通過順とは逆の順で、繰り返し実行される。以降、処理の対象となる、フレーム解析部２１に入力されたフレームを、対象フレームと称する。また、処理の対象の入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ
１３を、対象ＦＰＧＡと称する。対象ＦＰＧＡの初期値は、フレームが最後に通過した出力側ＦＰＧＡ  １３、すなわち、ＯＰ１１において抽出したフレーム疎通経路テーブル２４のエントリうち末尾のエントリのＦＰＧＡである。
【００７１】
ＯＰ１２では、フレーム解析部２１は、出力側ＬＩＵカードの書換履歴管理テーブル２３から、対象フレームのフレームＩＤと対象ＦＰＧＡとに該当するエントリを検索する。該当するエントリがある場合には（ＯＰ１３：ＹＥＳ）、処理がＯＰ１４に進む。該当するエントリが無い場合には（ＯＰ１３：ＮＯ）、対象ＦＰＧＡにおいて装置内ヘッダの書換処理が行われていないことが示され、処理がＯＰ１５に進む。
【００７２】
ＯＰ１４では、フレーム解析部２１は、検索結果に該当する書換履歴管理テーブル２３のエントリに従って、対象フレームを対象ＦＰＧＡの入力時の状態のフレームに再生する。より具体的には、フレーム解析部２１は、検索結果に該当する書換履歴管理テーブル２３のエントリによって示される位置のビットを、該エントリによって示される変換後の値から変換前の値に書き換える。
【００７３】
ＯＰ１５では、フレーム解析部２１は、対象フレームのオリジナルフレーム部分と装置内ヘッダ部分に対してＣＲＣ計算を行う。
【００７４】
ＯＰ１６では、フレーム解析部２１は、ＯＰ１５におけるＣＲＣ計算の結果と、対象フレームにスタックされた対象ＦＰＧＡによるＣＲＣ計算結果と、が一致するか否かを判定する。ＯＰ１５におけるＣＲＣ計算の結果と、対象フレームに含まれるスタックされた対象ＦＰＧＡによるＣＲＣ計算結果と、が一致する場合には（ＯＰ１６：ＹＥＳ）、対象ＦＰＧＡに対する処理が終了し、一段前のＦＰＧＡについて、ＯＰ１２からの処理がくり返し実行される。ＯＰ１５におけるＣＲＣ計算の結果と、対象フレームにスタックされた対象ＦＰＧＡによるＣＲＣ計算結果と、が一致しない場合には（ＯＰ１６：ＮＯ）、処理がＯＰ１７に進む。
【００７５】
ＯＰ１７では、フレーム解析部２１は、ＯＰ１５におけるＣＲＣ計算の結果と、対象フレームにスタックされた対象ＦＰＧＡによるＣＲＣ計算結果と、が一致しないので、対象ＦＰＧＡで故障が発生していることを判定する。フレーム解析部２１は、対象ＦＰＧＡに故障が発生していることを、管理装置５００に通知する。その後、図１４に示される処理が終了する。
【００７６】
出力側ＬＩＵカードの出力側ＦＰＧＡ  １３すべてに対してＯＰ１２からＯＰ１７の処理が終了すると、処理がＯＰ１８に進む。ＯＰ１８では、フレーム解析部２１は、入力側ＬＩＵカードの入力側ＦＰＧＡ  １２について処理が終了したか否かを判定する。入力側ＬＩＵカードの入力側ＦＰＧＡ  １２について処理が終了していない場合には（ＯＰ１８：ＮＯ）、処理がＯＰ１９に進む。入力側ＬＩＵカードの入力側ＦＰＧＡ  １２について処理が終了した場合には（ＯＰ１８：ＹＥＳ）、図１４に示される処理が終了する。
【００７７】
ＯＰ１９では、フレーム解析部２１は、入力側ＬＩＵカードの入力側ＦＰＧＡ  １２を特定する。より具体的には、フレーム解析部２１は、対象フレームのフレームＩＤに該当するエントリを有する書換履歴管理テーブル２３を検索する。対象フレームのフレームＩＤに該当するエントリを有する書換履歴管理テーブル２３に対応するＬＩＵカード１が入力側ＬＩＵカードとして特定される。フレーム解析部２１は、入力側ＬＩＵカードを特定すると、フレーム疎通経路テーブル２４から、入力側ＬＩＵカードの入力側ＦＰＧＡ  １２とフレームの通過順とを特定する。
【００７８】
その後、特定された入力側ＬＩＵカードの入力側ＦＰＧＡ  １２について、フレームの通過順とは逆の順で、ＯＰ１２からＯＰ１７の処理が繰り返し実行される。
【００７９】
＜具体例＞
図１５は、伝送装置１００の故障発生のＦＰＧＡの特定処理の具体例の前提を示す図である。図１５には、伝送装置１００が有するＬＩＵカード１のうち、ＬＩＵカード＃Ａが示されている。図１５には、具体例におけるフレーム疎通経路テーブル２４のＬＩＵカード＃Ａに関する部分も示される。図１５では、ＬＩＵカード＃Ａにおける入力側ＦＰＧＡ
１２のフレームの通過順は、フォワードＦＰＧＡ  １０３Ｂ→ポリサＦＰＧＡ  １０３Ｃ→ＢＷＢインタフェースＦＰＧＡ  １０３Ｄである。図１５では、ＬＩＵカード＃Ａにおける出力側ＦＰＧＡ  １３のフレームの通過順は、ＢＷＢインタフェースＦＰＧＡ  １０３Ｄ→フォワードＦＰＧＡ  １０３Ｂ→シェーパＦＰＧＡ  １０３Ｅである。
【００８０】
具体例では、ポリサＦＰＧＡ  １０３Ｃにおいて、内部故障が発生している場合を想定して、伝送装置１００の処理が説明される。
【００８１】
図１６、図１７、図１８、図１９は、具体例における伝送装置１００の処理の一例を示す図である。図１６では、（１）例えば、ネットワークが輻輳状態になるなどの異常発生に応じて、管理者は、管理装置５００からネットワーク内の伝送装置１００に対して、故障検知モードへの移行の指示を送信する。
【００８２】
（２）伝送装置１００の制御カード２のＣＰＵファームウェア２０が管理装置５００からの故障検知モードへの移行指示を受信し、伝送装置１００内の各ＬＩＵカード１に故障検知モードへの移行指示を送信する。各ＬＩＵカード１のＬＩＵファームウェア１１は、各ＬＩＵカード１内の各ＦＰＧＡ  １０３に対して、故障検知モードの設定を行う。
【００８３】
以降、ＬＩＵカード＃Ａ→ＢＷＢ→ＬＩＵカード＃Ａの順で通過するフレームＩＤ「１」のフレームに着目して、伝送装置１００の処理が説明される。（３）故障検知モードの設定が行われると、各ＦＰＧＡ  １０３のＣＲＣ計算／スタック部１２１、１３１の動作が開始され、入力フレームに対して算出されたＣＲＣ計算結果が、フレームにスタックされる。図１６では、フォワードＦＰＧＡ  １０３Ｂは、一段目の入力側ＦＰＧＡ  １２であるので、フォワードＦＰＧＡ  １０３Ｂの入力側ＦＰＧＡ  １２のヘッダ変換部１２２は、フレームデータに対して装置内ヘッダの生成を行う。フォワードＦＰＧＡ  １０３Ｂでは、装置内ヘッダの書換処理は発生しないので、書換履歴データはＣＰＵファームウェア２０には通知されず、フォワードＦＰＧＡ  １０３Ｂの書換履歴管理テーブル２３のエントリは作成されない。
【００８４】
図１７では、フレームが、フォワードＦＰＧＡ  １０３Ｂから出力されて、ポリサＦＰＧＡ  １０３Ｃに入力される。（４）ポリサＦＰＧＡ  １０３Ｃでは、入力側ＦＰＧＡ  １２のＣＲＣ計算／スタック部１２１が、入力フレームに対してＣＲＣ計算を行い、ＣＲＣ計算結果をスタックする。ＣＲＣ計算は、オリジナルフレーム部分と装置内ヘッダに対して算出される。ポリサＦＰＧＡ  １０３Ｃにおいて算出されたＣＲＣ計算結果は、フォワードＦＰＧＡ  １０３Ｂにおいて算出されたＣＲＣ計算結果の後ろにスタックされる。
【００８５】
（５）ポリサＦＰＧＡ  １０３Ｃの入力側ＦＰＧＡ  １２のヘッダ変換部１２２は、書換履歴データ格納部１２３に装置内ヘッダの書換処理の内容（書換履歴データ）を書き込み、書き込まれた書換履歴データは、ＣＰＵファームウェア２０に通知される。ＣＰＵファームウェア２０のデータ管理部２２は、ＬＩＵカード＃ＡのＬＩＵファームウェア１１から通知された書換履歴データを、ＬＩＵカード＃Ａの書換履歴管理テーブル２３に書き込む（図１３、ＯＰ１）。書き込まれた書換履歴データは、例えば、フレームＩＤ、ＦＰＧＡ識別情報、ビット位置、更新前の値、更新後の値が、それぞれ、１、ポリサ入力側（ＩＧ）、０ビット目から１２ビット目、オール「０」、オール「１」のエントリと、１、ポリサ入力側（ＩＧ）、１６ビット目から１８ビット目、０、３のエントリである。
【００８６】
なお、具体例では、ポリサＦＰＧＡ  １０３Ｃに内部故障が発生していることが想定されているので、フレームＩＤ「１」のフレームには、書換履歴管理テーブル２３に書き込まれた書換履歴データが示す書換処理による変更以外に、変更が生じている。
【００８７】
以降、フレームＩＤ「１」のフレームは、ＢＷＢインタフェースＦＰＧＡ  １０３Ｄの入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３、フォワードＦＰＧＡ  １０３Ｂの出力側ＦＰＧＡ  １３、シェーパＦＰＧＡ  １０３Ｅの出力側ＦＰＧＡ  １３において、同様のＣＲＣ計算結果のスタック、装置内ヘッダの書換処理が行われる。
【００８８】
図１８では、フレームＩＤ「１」のフレームは、シェーパＦＰＧＡ  １０３Ｅの出力側ＦＰＧＡ  １３のＣＲＣ計算／スタック部１３１によるＣＲＣ計算結果のスタック、ヘッダ変換部１３２による装置内ヘッダの書換処理が行われ、出力される。シェーパＦＰＧＡ
１０３Ｅは、フレームＩＤ「１」のフレームが最後に通過するＦＰＧＡであるので、シェーパＦＰＧＡ  １０３Ｅには出力フレーム通知部１３４が備えられている。
【００８９】
（６）シェーパＦＰＧＡ  １０３Ｅの出力フレーム通知部１３４は、フレームのコピー
をＣＰＵファームウェア２０に通知する。通知されるフレームは、シェーパＦＰＧＡ  １０３Ｅのヘッダ変換部１３２によって書換処理が施され、通過してきた入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によるＣＲＣ計算結果がスタックされたフレームである。また、シェーパＦＰＧＡ  １０３Ｅの出力側ＦＰＧＡ  １３のヘッダ変換部１３２は、フレームから装置内ヘッダ、通過してきた入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によって付加されたＣＲＣ計算結果を除去して、ＭＡＣ／ＰＨＹ  １０３Ａに出力する。
【００９０】
（７）ＣＰＵファームウェア２０のフレーム解析部２１は、通知されたフレームＩＤ「１」のフレームについて、通知元のＬＩＵカード＃Ａの書換履歴管理テーブル２３を参照して、シェーパＦＰＧＡ  １０３Ｅへの入力時のフレームを再生する。フレーム解析部２１は、再生されたフレームに対して、ＣＲＣ計算を行う。
【００９１】
より具体的には、フレーム解析部２１は、出力側ＬＩＵカードとしてのＬＩＵカード＃Ａの出力側ＦＰＧＡ  １３のフレーム通過順を特定する（図１４、ＯＰ１１）。図１５のフレーム疎通経路テーブル２４から、ＬＩＵカード＃Ａの出力側ＦＰＧＡ  １３のフレームの通過順は、ＢＷＢインタフェースＦＰＧＡ  １０３Ｄ→フォワードＦＰＧＡ  １０３Ｂ→シェーパＦＰＧＡ  １０３Ｅと特定される。
【００９２】
フレーム解析部２１は、フレームの通過順とは逆の順で、シェーパＦＰＧＡ  １０３Ｅから処理を行う。フレーム解析部２１は、フレームＩＤ「１」とシェーパＦＰＧＡ（出力側）とに合致するエントリをＬＩＵカード＃Ａの書換履歴管理テーブル２３から検出し（図１４、ＯＰ１２、ＯＰ１３：ＹＥＳ）、フレームをシェーパＦＰＧＡ  １０３Ｅの入力時の状態に再生する（図１４、ＯＰ１４）。
【００９３】
図１８において、ＬＩＵカード＃Ａの書換履歴管理テーブル２３における、フレームＩＤ「１」とシェーパＦＰＧＡ  １０３Ｅとに合致するエントリは、２４０ビット目から２４２ビット目までの値が、３（１０進数表記）から２（１０進数表記）に変更されたことを示す。したがって、フレーム解析部２１は、フレームＩＤ「１」のフレームの装置内ヘッダの２４０ビット目から２４２ビット目までの値を、２（１０進数表記）から３（１０進数表記）に書き換えることによって、シェーパＦＰＧＡ  １０３Ｅへの入力時のフレームを再生する。
【００９４】
フレーム解析部２１は、再生したフレームの、装置内ヘッダ及びオリジナルフレーム部分に対して、ＣＲＣ計算を行う（図１４、ＯＰ１５）。
【００９５】
（８）フレーム解析部２１は、フレームＩＤ「１」のフレームにスタックされている、シェーパＦＰＧＡ  １０３Ｅによって算出されたＣＲＣ計算結果と、再生したフレームから算出したＣＲＣ計算結果とを比較する（図１４、ＯＰ１６）。具体例では、シェーパＦＰＧＡ  １０３Ｅでは内部故障が発生していないので、フレームＩＤ「１」のフレームにスタックされている、シェーパＦＰＧＡ  １０３Ｅによって算出されたＣＲＣ計算結果と、再生したフレームから算出したＣＲＣ計算結果とは一致する。
【００９６】
フレーム解析部２１は、（７）、（８）と同様の処理を、フレームＩＤ「１」のフレームが通過した各出力側ＦＰＧＡ  １３について行う。出力側ＬＩＵカードとしてのＬＩＵカード＃Ａの出力側ＦＰＧＡ  １３のそれぞれの処理が終了すると（図１４、ＯＰ１８：ＮＯ）、フレーム解析部２１は、入力側ＬＩＵカードの入力側ＦＰＧＡ  １２を特定する（図１４、ＯＰ１９）。より具体的には、フレーム解析部２１は、フレームＩＤ「１」のエントリを有する書換履歴管理テーブル２３を検索し、フレームＩＤ「１」のエントリを有する書換履歴管理テーブル２３に相当するＬＩＵカード１を入力側ＬＩＵカードとして特定する。次に、フレーム解析部２１は、特定した入力側ＬＩＵカードの入力側ＦＰＧＡ
１２を、フレーム疎通経路テーブル２４を参照して特定する。
【００９７】
例えば、具体例の場合には、フレームＩＤ「１」のエントリを有するのは、ＬＩＵカード＃Ａの書換履歴管理テーブル２３であるので、フレーム解析部２１は、ＬＩＵカード＃Ａを、フレームＩＤ「１」のフレームの入力側ＬＩＵカードに特定する。次に、フレーム解析部２１は、フレーム疎通経路テーブル２４を参照し、入力側ＬＩＵカードとしてのＬＩＵカード＃Ａの入力側ＦＰＧＡ  １２のフレーム通過順を、フォワードＦＰＧＡ  １０３Ｂ→ポリサＦＰＧＡ  １０３Ｃ→ＢＷＢインタフェースＦＰＧＡ  １０３Ｄと特定する。
【００９８】
フレーム解析部２１は、入力側ＬＩＵカードの処理として、ＢＷＢインタフェースＦＰＧＡ  １０３Ｄから処理を開始する。すなわち、フレーム解析部２１は、フレームＩＤ「１」とＢＷＢインタフェースＦＰＧＡ（入力側）とに合致するエントリをＬＩＵカード＃Ａの書換履歴管理テーブル２３から検出し（図１４、ＯＰ１２、ＯＰ１３：ＹＥＳ）、フレームをＢＷＢインタフェースＦＰＧＡ（入力側）への入力時の状態に再生する処理を行う（図１４、ＯＰ１４）。
【００９９】
図１９では、フレームＩＤ「１」のフレームに対する処理が、ＢＷＢインタフェースＦＰＧＡ  １０３Ｄの入力側ＦＰＧＡ  １２まで終了している。（９）ＣＰＵファームウェア２０のフレーム解析部２１は、フレームＩＤ「１」のフレームについて、入力側ＬＩＵカードとしてのＬＩＵカード＃Ａの書換履歴管理テーブル２３を参照して、ポリサＦＰＧＡ  １０３Ｃへの入力時のフレームを再生する。ＬＩＵカード＃Ａの書換履歴管理テーブル２３に合致するエントリが複数ある場合には、フレーム解析部２１は、合致するすべてのエントリの処理について、逆の処理を行う。フレーム解析部２１は、再生したフレームの装置内ヘッダ及びオリジナルフレーム部分に対して、ＣＲＣ計算を行う。
【０１００】
（１０）フレーム解析部２１は、フレームＩＤ「１」のフレームにスタックされている、ポリサＦＰＧＡ  １０３Ｃによって算出されたＣＲＣ計算結果と、再生したフレームから算出したＣＲＣ計算結果とを比較する（図１４、ＯＰ１６）。具体例では、ポリサＦＰＧＡ  １０３Ｃに内部故障が発生していることが想定されているので、再生されたポリサＦＰＧＡ  １０３Ｃへの入力時のフレームは、実際のポリサＦＰＧＡ  １０３Ｃへの入力時のフレームとは異なる。そのため、フレームＩＤ「１」のフレームにスタックされている、ポリサＦＰＧＡ  １０３Ｃによって算出されたＣＲＣ計算結果と、再生したフレームから算出されたＣＲＣ計算結果とは一致しない（図１４、ＯＰ１６：ＮＯ）。
【０１０１】
フレーム解析部２１は、ＣＲＣ計算結果の不一致により、ポリサＦＰＧＡ  １０３Ｃの内部故障を検出し（図１４、ＯＰ１７）、管理装置５００に通知する。その後、管理装置５００から、故障検知モードの停止指示が入力されると、ＣＰＵファームウェア２０は、各ＬＩＵファームウェア１１に対して故障検知モードの停止指示を通知し、各ＦＰＧＡ  １０３においてＣＲＣ計算結果のスタック、書換履歴データの通知の処理が停止される。
【０１０２】
＜第１実施形態の作用効果＞
第１実施形態では、ＣＰＵファームウェア２０は、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の各フレームに対する装置内ヘッダの書換履歴データを収集する。また、ＣＰＵファームウェア２０は、フレームが最後に通過する出力側ＦＰＧＡ  １３から、通過した各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によって算出されたＣＲＣ計算結果が付加されたフレームを取得する。ＣＰＵファームウェア２０は、通知されたフレームに対して、該フレームの通過順とは逆の順で、通過した各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３で行われた処理とは逆の処理を行い、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３への入力時のフレームを再生する。ＣＰＵファームウェア２０は、再
生したフレームのＣＲＣ計算結果と、通知フレームに付加されているＣＲＣ計算結果とを比較し、両ＣＲＣ計算結果が一致しないことによって、該当のＦＰＧＡの内部故障を検出する。
【０１０３】
したがって、第１実施形態によれば、伝送装置１００内の内部故障が発生しているＦＰＧＡをより早期に特定することができる。また、ＣＰＵファームウェア２０に通知されるフレームは、最後のＦＰＧＡを通過したフレームに限定されるので、ＣＰＵファームウェア２０に流入するデータ量を少なく抑えることができる。また、ＦＰＧＡ  １０３は、プログラムによって設定変更可能な電子回路であるので、第１実施形態は、既存の伝送装置の設定変更により、簡易に実現することができる。
【０１０４】
＜第１実施形態の補足＞
第１実施形態では、便宜上、ＦＰＧＡの内部故障を検出するための機能に限定して説明された。伝送装置１００内では、第１実施形態で説明されたＦＰＧＡの内部故障の検出の処理と、ＦＰＧＡ間の伝送エラー検出とが、ともに行われてもよい。
【０１０５】
図２０は、ＦＰＧＡの内部故障の検出とＦＰＧＡ間の伝送エラー検出とが行われる場合の、ＬＩＵカード１の機能構成を示す図である。ＬＩＵカード１は、入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３それぞれに、さらに、誤り符号チェック部１２４、１３５、及び、誤り符号生成部１２５、１３６を備える。誤り符号チェック部１２４、１３５、及び、誤り符号生成部１２５、１３６は、それぞれ、ＦＰＧＡ  １０３の電子回路として実現される。
【０１０６】
誤り符号チェック部１２４及び１３５は、入力フレームに対する誤り符号を算出し、前段のＦＰＧＡ  １０３によって入力フレームに付加された誤り符号と、算出した誤り符号とが一致するか否かを判定する。前段のＦＰＧＡ  １０３によって入力フレームに付加された誤り符号と、算出した誤り符号とが一致しない場合には、誤り符号チェック部１２４及び１３５は、前段のＦＰＧＡ  １０３と自ＦＰＧＡとの間の伝送エラーを検出する。
【０１０７】
前段のＦＰＧＡ  １０３によって入力フレームに付加された誤り符号と、算出した誤り符号とが一致する場合には、入力フレームから、誤り符号を除去し、次の機能構成にフレームを出力する。なお、誤り符号チェック部１２４及び１３５の処理は、ＣＲＣ計算／スタック部１２１、１３１の前に行われても良いし、後に行われても良い。誤り符号チェック部１２４及び１３５の誤り符号の算出対象は、オリジナルフレームと装置内ヘッダである。ＣＲＣ計算／スタック部１２１、１３１のＣＲＣ計算対象は、オリジナルフレームと装置内ヘッダである。誤り符号チェック部１２４及び１３５と、ＣＲＣ計算／スタック部１２１、１３１とは、互いの処理結果に影響を及ぼさないためである。ただし、誤り符号チェック部１２４、１３５の処理と、ＣＲＣ計算／スタック部１２１、１３１の処理とは、ヘッダ変換部１２２、１３２の処理の前に行われる。
【０１０８】
誤り符号生成部１２５、１３６は、それぞれ、ヘッダ変換部１２２、１３２によって装置内ヘッダの書換処理が行われた後のフレームに対して、誤り符号を生成し、フレームに誤り符号を付加して、次段のＦＰＧＡ  １０３に出力する。
【０１０９】
＜第１実施形態の変形例１＞
第１実施形態では、フレームが最後に通過する出力側ＦＰＧＡ  １３から、該フレームが通過した各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３によって算出されたＣＲＣ計算結果が付加されたフレームのコピーがＣＰＵファームウェア２０に通知される。これに代えて、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３が、出力フレーム通知部を備え、装置内ヘッダの書換処理後のフレームのコピーをＣＰＵファームウェア２０に通知
するようにしてもよい。この場合には、ＣＰＵファームウェア２０に通知されるフレームには、通知元の入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３によって算出された１つのＣＲＣ計算結果が付加されている。
【０１１０】
ＣＰＵファームウェア２０のフレーム解析部２１は、通知されるフレームに対して、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３への入力時のフレームの再生を行い、ＣＲＣ計算を行い、スタックされたＣＲＣ計算結果との比較を行う。具体的には、フレーム解析部２１は、通知されるフレームに対して、図１４のＯＰ１２からＯＰ１７の処理を行う。
【０１１１】
＜第１実施形態の変形例２＞
第１実施形態では、ＣＰＵファームウェア２０は、フレームが最後に通過する出力側ＦＰＧＡ  １３から出力されるフレームについて、各入力側ＦＰＧＡ  １２又は出力側ＦＰＧＡ  １３への入力時のフレームを再生し、ＣＲＣを算出する。ＣＰＵファームウェア２０は、算出したＣＲＣ計算結果とスタックされているＣＲＣ計算結果と比較することで、ＦＰＧＡ  １０３の内部故障の検出を行う。これに代えて、ＣＰＵファームウェア２０は、各入力側ＦＰＧＡ  １２及び出力側ＦＰＧＡ  １３の入力フレームと出力フレームとのコピーを取得し、入力フレームに装置内ヘッダの書換処理と同様の処理を行い、出力フレームと比較することで、ＦＰＧＡ  １０３の内部故障を検出してもよい。
【０１１２】
図２１は、第１実施形態の変形例２に係る伝送装置１００Ｂの機能構成の一例を示す図である。第１実施形態の変形例２において、伝送装置１００Ｂのハードウェア構成は、第１実施形態の伝送装置１００と同様である。伝送装置１００Ｂは、機能構成として、ＣＰＵファームウェア２０Ｂ、ＬＩＵファームウェア１１Ｂ、入力側ＦＰＧＡ  １２Ｂ、出力側ＦＰＧＡ  １３Ｂを備える。各機能構成を実現するハードウェアは、第１実施形態と同様であるため説明を省略する。
【０１１３】
入力側ＦＰＧＡ  １２Ｂと出力側ＦＰＧＡ  １３Ｂとは、それぞれ、入力フレーム通知部１２６、１３７、ヘッダ変換部１２２、１３２、出力フレーム通知部１２７、１３４を備える。入力側ＦＰＧＡ  １２Ｂ及び出力側ＦＰＧＡ  １３Ｂのそれぞれの機能構成は、各ＦＰＧＡ  １０３内の電子回路によって実現される。
【０１１４】
入力フレーム通知部１２６、１３７は、ヘッダ変換部１２２、１３２への入力前のフレームのコピーを、ＬＩＵファームウェア１１Ｂを通じて、ＣＰＵファームウェア２０Ｂに通知する。出力フレーム通知部１２７、１３４は、ヘッダ変換部１２２、１３２による装置内ヘッダの書換処理後のフレームのコピーを、ＬＩＵファームウェア１１Ｂを通じて、ＣＰＵファームウェア２０Ｂに通知する。
【０１１５】
ＬＩＵファームウェア１１Ｂは、機能構成として、フレーム通知部１１３を備える。フレーム通知部１１３は、各入力側ＦＰＧＡ  １２Ｂ及び各出力側ＦＰＧＡ  １３Ｂから通知される入力フレーム又は出力フレームのコピーをＣＰＵファームウェア２０Ｂに転送する。
【０１１６】
ＣＰＵファームウェア２０Ｂは、機能構成として、フレーム解析部２１Ｂと、書換処理ロジックデータベース２５とを備える。書換処理ロジックデータベース２５は、制御カード２内の不揮発性メモリ内に作成される。書換処理ロジックデータベース２５は、各ＬＩＵカード１について作成される。書換処理ロジックデータベース２５は、入力側ＦＰＧＡ
１２Ｂ又は／及び出力側ＦＰＧＡ  １３Ｂのヘッダ変換部１２２、１３２において行われる装置内ヘッダの書換処理のロジックを記憶する。
【０１１７】
図２２は、第１実施形態の変形例２に係るフレーム解析部２１Ｂの処理の一例を示す図である。（１）フレーム解析部２１Ｂは、各入力側ＦＰＧＡ  １２Ｂ又は出力側ＦＰＧＡ
１３Ｂから通知された入力フレームのコピーに対して、書換処理ロジックデータベース２５に格納される各ヘッダ変換部１２２、１３２のロジックにしたがって、装置内ヘッダの書換処理を行う。（２）フレーム解析部２１Ｂは、装置内ヘッダの書換処理後の入力フレームと、各入力側ＦＰＧＡ  １２Ｂ又は出力側ＦＰＧＡ  １３Ｂから通知された出力フレームのコピーとを比較し、一致しない場合に、該当のＦＰＧＡ  １０３の内部故障を検出する。
【０１１８】
上述のように、変形例２では、フレーム解析部２１Ｂが、各ヘッダ変換部１２２、１３２の処理のシミュレーションを行い、シミュレーション結果と、実際の結果（各ＦＰＧＡの出力フレームのコピー）を比較する。この場合には、例えば、ハッシュ計算等の不可逆な処理を行うＦＰＧＡについても、内部故障を検出することができる。
【０１１９】
第１実施形態の変形例２において、書換処理ロジックデータベース２５は、「記憶部」の一例である。書換処理ロジックデータベース２５に格納される書換処理ロジックは、「回路によって行われる処理の内容に関する情報」の一例である。各入力側ＦＰＧＡ  １２Ｂ及び出力側ＦＰＧＡ  １３に入力されるフレームは、「第１のフレーム」及び「第１のフレームに関する情報」の一例である。各入力側ＦＰＧＡ  １２Ｂ及び出力側ＦＰＧＡ  １３のヘッダ変換部１２２、１３２による書換処理後のフレームは、「第２のフレーム」及び「第２のフレームに関する情報」の一例である。制御カード２のＣＰＵ  ２０１及びフレーム解析部２１Ｂは、「制御部」の一例である。
【０１２０】
＜記録媒体＞
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【０１２１】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、又は化学的作用によって蓄積し、コンピュータ等から読み取ることができる非一時的な記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスク、ＲＯＭ（リードオンリーメモリ）等がある。さらに、ＳＳＤ（Solid State Drive）は、コンピュータ等から取り外し可能な記録媒体としても、コン
ピュータ等に固定された記録媒体としても利用可能である。
【符号の説明】
【０１２２】
１        Ｌｉｎｅ  Ｉｎｔｅｒｆａｃｅ  Ｕｎｉｔカード
２        制御カード
３        Ｂａｃｋ  Ｗｉｒｅｄ  Ｂｏａｒｄ
１１、１１Ｂ      ＬＩＵファームウェア
１２、１２Ｂ      入力側ＦＰＧＡ
１３、１３Ｂ      出力側ＦＰＧＡ
２０、２０Ｂ      ＣＰＵファームウェア
２１、２１Ｂ      フレーム解析部
２２      テーブル管理部
２３      書換履歴管理テーブル
２４      フレーム疎通経路テーブル
２５      書換処理ロジックデータベース
１００、１００Ｂ    伝送装置
１０１、２０１      ＣＰＵ
１０２、２０２      記憶部
１０３      ＦＰＧＡ
１２１、１３１    ＣＲＣ計算／スタック部
１２２、１３２    ヘッダ変換部
１２３、１３３    書換履歴データ格納部
１２４、１３７    入力フレーム通知部
１２５、１３４    出力フレーム通知部
【図１】
2017130849.tif 000003
【図２】
2017130849.tif 000004
【図３】
2017130849.tif 000005
【図４】
2017130849.tif 000006
【図５】
2017130849.tif 000007
【図６】
2017130849.tif 000008
【図７】
2017130849.tif 000009
【図８】
2017130849.tif 000010
【図９】
2017130849.tif 000011
【図１０】
2017130849.tif 000012
【図１１】
2017130849.tif 000013
【図１２】
2017130849.tif 000014
【図１３】
2017130849.tif 000015
【図１４】
2017130849.tif 000016
【図１５】
2017130849.tif 000017
【図１６】
2017130849.tif 000018
【図１７】
2017130849.tif 000019
【図１８】
2017130849.tif 000020
【図１９】
2017130849.tif 000021
【図２０】
2017130849.tif 000022
【図２１】
2017130849.tif 000023
【図２２】
2017130849.tif 000024