(57)【要約】【課題】ネットワークにおける障害発生の原因を検出可能にする。【解決手段】第１コンピュータは、第２コンピュータと通信する第１ルータ１２と、第１ルータが第２コンピュータと通信した際に、再送対象のパケットを記憶する第１記憶領域１２３と、を備える。第２コンピュータは、第１コンピュータと通信する第２ルータ１２と、第２ルータが第１コンピュータと通信した際に、再送対象のパケットを記憶する第２記憶領域１２３と、を備える。管理装置２は、第１記憶領域１２３の値をクリアする第１領域クリア部と、第２記憶領域１２３の値をクリアする第２領域クリア部と、第１記憶領域１２３及び第２記憶領域１２３において値が書き込まれていない場合に、第１コンピュータ又は第２コンピュータをパケットの待ち受け状態に設定する状態設定部と、を備える。【選択図】図４
2020113870.tif 000002
【特許請求の範囲】
【請求項１】
第１コンピュータと第２コンピュータとに接続される管理装置を有する並列処理装置であって、
前記第１コンピュータは、
前記第２コンピュータと通信する第１ルータと、
前記第１ルータが前記第２コンピュータと通信した際に、再送対象のパケットを記憶する第１記憶領域と、
を備え、
前記第２コンピュータは、
前記第１コンピュータと通信する第２ルータと、
前記第２ルータが前記第１コンピュータと通信した際に、再送対象のパケットを記憶する第２記憶領域と、
を備え、
前記管理装置は、
前記第１記憶領域の値をクリアする第１領域クリア部と、
前記第２記憶領域の値をクリアする第２領域クリア部と、
前記第１記憶領域及び前記第２記憶領域において値が書き込まれていない場合に、前記第１コンピュータ又は前記第２コンピュータをパケットの待ち受け状態に設定する状態設定部と、
を備える、並列処理装置。
【請求項２】
前記第１記憶領域及び前記第２記憶領域において値が書き込まれている場合に、
前記第１領域クリア部は、前記第１記憶領域の値を再度クリアし、
前記第２領域クリア部は、前記第２記憶領域の値を再度クリアする、
請求項１に記載の並列処理装置。
【請求項３】
前記状態設定部によって前記第１コンピュータ又は前記第２コンピュータが前記待ち受け状態に設定された場合に、前記第１記憶領域に記憶されていた値と前記第２記憶領域に記憶されていた値とを比較する比較部
を更に備える、請求項１又は２に記載の並列処理装置。
【請求項４】
第１コンピュータと第２コンピュータとに接続される管理装置における再送パケット管理方法であって、
前記第１コンピュータにおける第１ルータが前記第２コンピュータと通信した際に再送対象のパケットを記憶する第１記憶領域において、値をクリアし、
前記第２コンピュータにおける第２ルータが前記第１コンピュータと通信した際に再送対象のパケットを記憶する第２記憶領域において、値をクリアし、
前記第１記憶領域及び前記第２記憶領域において値が書き込まれていない場合に、前記第１コンピュータ又は前記第２コンピュータをパケットの待ち受け状態に設定する、
再送パケット管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、並列処理装置及び再送パケット管理方法に関する。
【背景技術】
【０００２】
High-Performance Computing（ＨＰＣ）やデータセンタ等の大規模サーバシステムにおける多数のサーバ（別言すれば、「ノード」）の管理を行なう場合、各サーバ内のルータ等の管理はService Processor（ＳＶＰ）により行なわれる場合がある。
【０００３】
ＨＰＣシステムのインターコネクトネットワークにおいて、ＳＶＰは複数のノードが収容された装置内のハードウェア障害の検出やノードやルータの電源制御及び設定等を行なう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１５８９１２号公報
【特許文献２】特開２００５−８６７５３号公報
【特許文献３】特開２００３−１２４９８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
第１のコンピュータと、第２のコンピュータと、第１及び第２のコンピュータに接続されたＳＶＰとを備えるコンピュータシステムを想定する。
【０００６】
第１のコンピュータは、第１のCentral Processing Unit（ＣＰＵ）、他のコンピュータと通信する第１のルータ、及び、第１のルータが他のコンピュータと通信した際に再送が発生したパケットを記憶する第１の再送パケット記憶領域を備える。
【０００７】
また、第２のコンピュータは、第２のＣＰＵ、他のコンピュータと通信する第２のルータ、及び、第２のルータが他のコンピュータと通信した際に再送が発生したパケットを記憶する第２の再送パケット記憶領域を備える。
【０００８】
ここで、ＳＶＰが、第１及び第２の再送パケット記憶領域をクリアしている最中に、第１のルータの通信において再送が発生し、第１又は第２の再送パケット記憶領域に新たな再送パケットが記憶される場合がある。このような場合には、再送側の再送パケットと受信側の再送パケットとの間において不整合が発生するため、第１の再送パケット記憶領域と第２の再送パケット記憶領域とを比較しての障害原因の究明が困難になるおそれがある。
【０００９】
１つの側面では、ネットワークにおける障害発生の原因を検出可能にすることを目的とする。
【課題を解決するための手段】
【００１０】
並列処理装置は、第１コンピュータと第２コンピュータとに接続される管理装置を有する並列処理装置であって、前記第１コンピュータは、前記第２コンピュータと通信する第１ルータと、前記第１ルータが前記第２コンピュータと通信した際に、再送対象のパケットを記憶する第１記憶領域と、を備え、前記第２コンピュータは、前記第１コンピュータと通信する第２ルータと、前記第２ルータが前記第１コンピュータと通信した際に、再送対象のパケットを記憶する第２記憶領域と、を備え、前記管理装置は、前記第１記憶領域の値をクリアする第１領域クリア部と、前記第２記憶領域の値をクリアする第２領域クリア部と、前記第１記憶領域及び前記第２記憶領域において値が書き込まれていない場合に、前記第１コンピュータ又は前記第２コンピュータをパケットの待ち受け状態に設定する状態設定部と、を備える。
【発明の効果】
【００１１】
１つの側面では、ネットワークにおける障害発生の原因を検出することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態の一例における並列処理システムのハードウェア構成例を模式的に示すブロック図である。
【図２】図１に示した並列処理システムのＳＶＰにおける機能構成を模式的に示すブロック図である。
【図３】図１に示した並列処理システムにおけるルータとＳＶＰとの間における再送パケットの再送処理を説明する図である。
【図４】図１に示した並列処理システムにおける送受信再送パケットに対する処理の概要を説明する図である。
【図５】図１に示した並列処理システムにおける再送パケットに対する処理を説明する図である。
【図６】図１に示した並列処理システムにおける制御フラグの初期化処理の概要を説明する図である。
【図７】図１に示した並列処理システムにおける再送パケットに対する基本処理を時系列で説明する図である。
【図８】図１に示した並列処理システムにおけるＳＶＰ制御フラグとルータ側再送パケット発生タイミングとの関係を示す図（ケース１）である。
【図９】図１に示した並列処理システムにおけるＳＶＰ制御フラグとルータ側再送パケット発生タイミングとの関係を示す図（ケース２）である。
【図１０】図１に示した並列処理システムにおいて送受信パケットの整合性確保処理を実施しない場合に発生するデータ不整合の第１の例を説明する図である。
【図１１】図１に示した並列処理システムにおいて送受信パケットの整合性確保処理を実施しない場合に発生するデータ不整合の第２の例を説明する図である。
【図１２】図１に示した並列処理システムにおける受信側Ｒ／Ｆフラグの更新依頼を説明するテーブルである。
【図１３】図１に示した並列処理システムにおける受信側Ｒ／Ｆフラグの取得依頼を説明するテーブルである。
【図１４】図１に示した並列処理システムにおける受信側Ｒ／Ｆフラグ及びデータフラグの取得依頼を説明するテーブルである。
【図１５】図１に示した並列処理システムのＳＶＰにおける送信側ルータポートの管理処理を説明する図である。
【図１６】図１に示した並列処理システムのＳＶＰにおける受信側ルータポートの管理処理を説明する図である。
【図１７】図１に示した並列処理システムの送信側ルータにおける処理を説明する図である。
【図１８】図１に示した並列処理システムの受信側ルータにおける処理を説明する図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
【００１４】
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１５】
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
【００１６】
〔Ａ〕実施形態の一例
〔Ａ−１〕システム構成例
図１は、実施形態の一例における並列処理システム１００のハードウェア構成例を模式的に示すブロック図である。
【００１７】
並列処理システム１００は、複数（図示する例では４つ）のノード１及び複数（図示する例では２つ）のＳＶＰ２を備える。
【００１８】
ＳＶＰ２は、各ノード１の管理を行なう処理装置であり、例えば、ノード１内におけるエラー監視を行ない、エラー発生時に外部への通知やリカバリ処理等を行なう。図１に示す例において、各ＳＶＰ２は、ローカルバスを介して２つのノード１と通信可能に接続される。また、２つのＳＶＰ２は、イーサネット（登録商標）３を介して通信可能に接続される。
【００１９】
１つのＳＶＰ２及び当該ＳＶＰ２と直接に接続されているノード１は、ＳＶＰ管理単位１０（「並列処理装置」と称されてもよい。）として扱われる。図１に示す例では、１つのＳＶＰと２つのノード１とが、１つのＳＶＰ管理単位１０として扱われる。
【００２０】
ノード１は、コンピュータの一例であり、ＣＰＵ１１及びルータ１２を備える。各ノード１は、ＡＣＫ／ＮＡＣＫによる再送制御通信パスを介して、隣り合う他のノード１とインターコネクトされる。
【００２１】
ＣＰＵ１１は、例示的に、種々の制御や演算を行なう処理装置であり、メモリ（不図示）に格納されたOperating System（ＯＳ）やプログラムを実行することにより、種々の機能を実現する。
【００２２】
ルータ１２は、ノード１とＳＶＰ２との間の通信を中継する。これにより、ＳＶＰ２がルータ１２における再送対象パケットの参照が可能になる。
【００２３】
図１に示す並列処理システム１００に示すようなTorus fusion（Ｔｏｆｕ）ネットワークでは、ルータ１２間の通信において、隣り合うポート間で再送制御を行ない、ＡＣＫ／ＮＡＣＫによる送達確認が行なわれる。このようなパケット送受信処理において、異常パケットが検出された場合には、ＳＶＰ２による障害処理を行なうことが考えられる。しかしながら、通常、ＳＶＰ２の処理性能及びROUTER-SVP間のインターフェース性能は低いため、各ルータ間送受信パケットの全てをＳＶＰ２が監視することは困難である。このため、異常パケットが発生している可能性が高い再送パケットの発生を契機に、異常パケット解析処理が行なわれる。
【００２４】
図２は、図１に示した並列処理システム１００のＳＶＰ２における機能構成を模式的に示すブロック図である。
【００２５】
図２に示すように、ＳＶＰ２は、第１領域クリア部２０１，第２領域クリア部２０２，状態設定部２０３及び比較部２０４として機能する。
【００２６】
第１領域クリア部２０１は、受信側の再送パケット格納ＲＡＭ１２３（図３等を用いて後述。）に記憶されているデータをクリアする。また、第１領域クリア部２０１は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれている場合には、受信側の再送パケット格納ＲＡＭ１２３に記憶されているデータを再度クリアする。
【００２７】
第２領域クリア部２０２は、送信側の再送パケット格納ＲＡＭ１２３に記憶されているデータをクリアする。また、第２領域クリア部２０２は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれている場合には、送信側の再送パケット格納ＲＡＭ１２３に記憶されているデータを再度クリアする。
【００２８】
別言すれば、第１領域クリア部２０１及び第２領域クリア部２０２は、再送パケット格納ＲＡＭ１２３（図３及び図４等を用いて後述）の管理情報であるＲ／ＦフラグをＲに更新し、その後にＲ／Ｆフラグの確認を繰り返し行なう。そして、第１領域クリア部２０１及び第２領域クリア部２０２は、受信バッファ１２１及び送信バッファ１２２をそれぞれ空にする。ここで、Ｒ／Ｆは、Release/Freezeの略であり、再送パケット格納ＲＡＭ１２３への書き込みの可否を表わす。Ｒは書き込み可能を表わし、Ｆは書き込み不可を表わす。
【００２９】
状態設定部２０３は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれていない場合に、送信側及び受信側のノード１をパケットの待ち受け状態に設定する。
【００３０】
別言すれば、状態設定部２０３は、送信側ルータ管理用のＳＶＰ２における管理情報であるＶ／ＩフラグがＶ（すなわち、制御フラグ初期化処理の完了）の状態になった際に、送信側及び受信側のノード１をパケット待ちの状態に設定する。ここで、Ｖ／Ｉは、Valid/Invalidの略であり、送信側及び受信側の両方の再送パケット格納ＲＡＭ１２３の比較可否を表わす。
【００３１】
比較部２０４は、受信側のノード１がパケットの待ち受け状態に設定された場合に、受信側の再送パケット格納ＲＡＭ１２３に記憶されていたデータと送信側の再送パケット格納ＲＡＭ１２３に記憶されていたデータとを比較する。
【００３２】
図３は、図１に示した並列処理システム１００におけるルータ１２とＳＶＰ２との間における再送パケットの再送処理を説明する図である。
【００３３】
図３に示すように、ＳＶＰ管理単位１０は、複数のＣＰＵ１１，複数のルータ１２，Field-Programmable Gate Array（ＦＰＧＡ）４及びＳＶＰサブシステム２０を備える。
【００３４】
ルータ１２は、受信バッファ１２１，送信バッファ１２２及び再送パケット格納Random Access Memory（ＲＡＭ）１２３を備える。ルータ１２の座標は、(X,Y,Z,A,B,C)で示され、Ｔｏｆｕネットワークシステムにおけるネットワークアドレスを示す。各ルータ１２は、隣り合うルータ１２と接続されるための例えば１０個の送受信ポートを有する。各ポートは、(X+,X-,Y+,Y-,Z+,Z-,A,B+,B-,C)で表わされる。
【００３５】
受信バッファ１２１は、他のルータ１２からの受信パケットを一時的に記憶する。送信バッファ１２２は、他のルータ１２への送信パケットを一時的に記憶する。
【００３６】
再送パケット格納ＲＡＭ１２３は、記憶領域の一例である。再送パケット格納ＲＡＭ１２３は、ポート毎に再送パケット格納のために、送信（別言すれば、「再送パケット」）用及び受信（別言すれば、「ＦＣＳエラーパケット等の再送要因パケット」）用に、各パケットが格納できるようにＲＡＭバッファが設けられる。なお、ＦＣＳは、Frame Check Sequenceの略である。
【００３７】
再送パケット格納ＲＡＭ１２３のバッファ容量は、パケット長×ポート数×２（送受信）で示される。
【００３８】
再送パケット格納ＲＡＭ１２３からのデータは、ログ採取Interface（ＩＦ）と同様に、ローカルバス（別言すれば、「Ｉ２Ｃ」）を介して、ＦＰＧＡ４へ送信される。なお、Ｉ２Ｃは、Inter-Integrated Circuitの略称である。
【００３９】
ＦＰＧＡ４は、複数のNode-SVP間ＩＦ（別言すれば、「外部バス」）集約用の制御モジュールである。
【００４０】
ＳＶＰサブシステム２０は、ＳＶＰ２，メモリ２１及びディスク２２を備える。
【００４１】
ＳＶＰ２は、ＳＶＰ管理単位１０内の複数のルータ１２を管理する。メモリ２１は、ワーク用のデータを管理する。ディスク２２は、ログ用のデータを管理する。
【００４２】
このように、ルータ１２では、再送パケットをROUTER-SVP間の疑似的なパケットミラー転送を行なうために、ルータ１２内に再送パケット格納ＲＡＭ１２３が用意される。これにより、送受信パケットの整合性を識別するための制御フラグを付加して管理し、制御フラグ及び再送パケットに対してＳＶＰ２からローカルバスを介してアクセス可能となる。
【００４３】
図４は、図１に示した並列処理システム１００における送受信再送パケットに対する処理の概要を説明する図である。なお、処理順序も含めた再送パケットに対する処理の詳細については、図５〜図７等を用いて後述する。
【００４４】
送信側のルータ１２は、送信バッファ１２２から再送パケット格納ＲＡＭ１２３へ再送パケットを送信データとして格納する（符号Ａ１参照）。ここで、送信データは、送信側再送パケットデータであり、送信側の再送パケット格納ＲＡＭ１２３に格納され、ＳＶＰ２から参照可能である。
【００４５】
送信側のルータ１２は、再送パケット格納ＲＡＭ１２３の管理情報Ｒ／ＦをＦに更新する（符号Ａ２参照）。Ｒ／Ｆフラグは、ルータ１２の内部に配置され、ルータ１２及びＳＶＰ２からアクセス可能である。ＳＶＰ２は、データ取得後又はフラグ初期化の際にＦからＲへ変更する。また、ルータ１２は、データ格納の際にＲからＦへ変更する。
【００４６】
送信側ルータ管理用のＳＶＰ２は、Ｒ／Ｆフラグの参照及びＲへの更新を行なう（符号Ａ３参照）。
【００４７】
送信側ルータ管理用のＳＶＰ２は、管理情報Ｖ／Ｉを記憶する。Ｖは整合性確保のための初期化処理が完了して比較可能であることを示し、Ｉは整合性確保のための初期化処理中であり比較不可であることを示す。Ｖ／Ｉフラグは、メモリ２１に配置され、ＳＶＰ２に限ってアクセス可能である。ＳＶＰ２は、送信側及び受信側の再送パケット格納ＲＡＭ１２３が両方同時に空きになった場合にＶ／ＩフラグをＶに設定する。また、ＳＶＰ２は、送信側及び受信側の再送パケット格納ＲＡＭ１２３の空きを確保するための初期化処理中にＶ／ＩフラグをＩに設定する。
【００４８】
受信側のルータ１２は、受信バッファ１２１から再送パケット格納ＲＡＭ１２３へＦＳＣエラーパケットを受信データとして格納する（符号Ａ４参照）。ここで、受信データは、受信側ＦＳＣエラーパケットデータであり、受信側のルータ１２に格納され、ＳＶＰ２から参照可能である。
【００４９】
受信側のルータ１２は、再送パケット格納ＲＡＭ１２３の管理情報Ｒ／ＦをＦに更新する（符号Ａ５参照）。
【００５０】
受信側ルータ管理用のＳＶＰ２は、Ｒ／Ｆフラグの参照及びＲへの更新を行なう（符号Ａ６参照）。
【００５１】
受信側ルータ管理用のＳＶＰ２は、ＳＶＰ２間のデータ転送によって、送信側ルータ管理用のＳＶＰ２へ受信パケットを転送する（符号Ａ７参照）。
【００５２】
図５は、図１に示した並列処理システム１００における再送パケットに対する処理を説明する図である。図６は、図１に示した並列処理システム１００における制御フラグの初期化処理の概要を説明する図である。図７は、図１に示した並列処理システム１００における再送パケットに対する基本処理を時系列で説明する図である。
【００５３】
まず、初期化処理により、制御フラグ（Ｖ／Ｉ及びＲ／Ｆ）が初期化される（図７の符号Ｂ１０参照）。具体的には、送信側ルータ管理用のＳＶＰ２は、Ｖ／ＩフラグをＩに更新する（図５及び図６の符号Ｂ１１参照）。受信側ルータ管理用のＳＶＰ２は、受信側ルータ１２の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグをＲに更新する（図５及び図６の符号Ｂ１２参照）。送信側ルータ管理用のＳＶＰ２は、送信側ルータ１２の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグをＲに更新する（図５及び図６の符号Ｂ１３参照）。受信側ルータ管理用のＳＶＰ２は、受信側ルータ１２の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグのＲを確認する（図５及び図６の符号Ｂ１４参照）。送信側ルータ管理用のＳＶＰ２は、送信側ルータ１２の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグのＲを確認する（図５及び図６の符号Ｂ１５参照）。
【００５４】
送信側ルータ１２は、送信バッファ１２２のデータＳ１を送信する（図５及び図７の符号Ｂ２０参照）。
【００５５】
受信側ルータ１２は、エラーパケットＲ１［Ｅ］を受信する（図５及び図７の符号Ｂ３０参照）。
【００５６】
受信側ルータ１２は、Ｒ／ＦフラグをＦに更新し、Ｒ１を再送パケット格納ＲＡＭ１２３に保存する（図５の符号Ｂ４１，Ｂ４２及び図７の符号Ｂ４０参照）。
【００５７】
送信側ルータ１２は、Ｓ１に対するＡＣＫ／ＮＡＣＫ無応答（別言すれば、「タイムアウト」）又はＮＡＣＫ受信を認識する（図５及び図７の符号Ｂ５０参照）。
【００５８】
送信側ルータ１２は、Ｒ／ＦフラグをＦに更新し、Ｓ１を再送パケット格納ＲＡＭ１２３に保存する（図５の符号Ｂ６１，Ｂ６２及び図７の符号Ｂ６０参照）。
【００５９】
送信側ＳＶＰ２は、ポーリング又は割り込み通知により、送信側ルータ１２のＦフラグを認識し、Ｖ／Ｉフラグを確認する（図５の符号Ｂ７１，Ｂ７２及び図７の符号Ｂ７０参照）。
【００６０】
送信側ルータ１２は、Ｓ１を再送し、ＡＣＫ応答を受信して、再送を完了する（図５の符号Ｂ８１，Ｂ８２及び図７の符号Ｂ８０参照）。
【００６１】
送信側ＳＶＰ２は、受信側ＳＶＰ２と連携して、受信データの取得と、受信側のＲ／ＦフラグのＲへの変更とを実施する（図５の符号Ｂ９１，Ｂ９２及び図７の符号Ｂ９０参照）。
【００６２】
送信側ＳＶＰ２は、送信側の再送データの取得と、送信側のＲ／ＦフラグのＲへの変更とを実施する（図５の符号Ｂ１０１，Ｂ１０２及び図７の符号Ｂ１００参照）。
【００６３】
送信側ＳＶＰ２は、送信側及び受信側のＲ／Ｆフラグを確認する。送信側と受信側とのいずれかがＦフラグの場合には、Ｒ／Ｆフラグの再確認結果が送信側と受信側との両方がＲフラグになるまで、符号Ｂ１２〜Ｂ１５で示した初期化処理が繰り返し実施される。初期化処理が完了した場合には、送信側ＳＶＰ２は、Ｖ／ＩフラグをＶに変更する（図５の符号Ｂ１１１，Ｂ１１２及び図６の符号Ｂ１１３参照）。
【００６４】
そして、送信側ＳＶＰ２が主体となり、送受信パケットを比較し、受信データの有無や、受信データ有（別言すれば、「異常」）の場合におけるデータ比較によるビットエラーレベル等の確認が行なわれる（図５及び図７の符号Ｂ１２０参照）。
【００６５】
通常、ルータ１２は、ＳＶＰ２の処理に対して、高速かつ非同期でノード１間の通信パス上の送受信処理を常時行なう。このため、ＳＶＰ２がルータ１２の再送パケット処理と同期をとり、その送受信データを取得することは容易でない。
【００６６】
送受信データの同期をとらない場合、ＳＶＰ２が当該送受信データに対する処理をしている間にルータ１２の新規の次の再送パケットが発生し、ＳＶＰ２が比較すべき送受信データのすれ違い（別言すれば、「不整合」）が発生する場合があり得る。不整合が発生する例については、図１０及び図１１を用いて後述する。
【００６７】
Ｖ／Ｉフラグによる管理は、このような不整合が発生する状態を考慮し、ルータ１２側の通信処理を損なうことなく、ルータ１２とＳＶＰ２とが連携して、再送パケットの同期をとり、送受信パケットの整合性を確保させる。
【００６８】
なお、本実施形態の一例では、再送パケット全てを確保するのではなく、ＳＶＰ２の処理速度に合わせ、初期化処理の完了後に、再送された初回パケットに限って送受信データの整合性が確保される。
【００６９】
図８は、図１に示した並列処理システム１００におけるＳＶＰ制御フラグとルータ側再送パケット発生タイミングとの関係を示す図（ケース１）である。図９は、図１に示した並列処理システム１００におけるＳＶＰ制御フラグとルータ側再送パケット発生タイミングとの関係を示す図（ケース２）である。
【００７０】
図８の符号Ｃ１は、再送パケットの発生タイミングのパターンを示し、Ｐ−ｘ（ｘは自然数）で表わされる。
【００７１】
図８においては、特定の再送パケットペア（Ｓ１／Ｒ１）が、初期化処理中に発生した場合を示している。  符号Ｃ２は、再送パケットの発生タイミングを示し、「受（Ｒｘ）」は受信側ルータ１２の受信バッファ１２１に格納され、「送（Ｓｘ）」は送信側ルータ１２の送信バッファ１２２に格納される。ｘの値が同一のＲｘとＳｘとは比較可能である。
【００７２】
符号Ｃ３に示すように、図８の［２］〜［５］の処理の間では、ルータ１２間の再送タイムアウトよりも長い間隔で［５］のチェックが行なわれる。これは、Ｒ１の受信が［２］の更新前のため格納できない場合（図示する例では、パターンＰ−３／Ｐ−４）に、Ｓ１に限って［５］の処理の後に格納され、送受信パケットの不整合が生じる可能性があるためである。また、このような不整合が生じることを回避するため、送信側における［５］の確認が実施される。
【００７３】
符号Ｃ４は、送信側及び受信側のＲ／Ｆフラグの状態（送，受）を示す。
【００７４】
符号Ｃ５の状態では、比較可能であるが、再初期化の対象となる。
【００７５】
図８に示す場合には、Ｐ−１／Ｐ−２以外は再度初期化処理が行なわれることになり、整合性が確保できるようになるまで初期化処理が繰り返される。Ｐ−１／Ｐ−２においては、Ｓ１／Ｒ１が送信側及び受信側の再送パケット格納ＲＡＭ１２３に格納されておらず、Ｓ２／Ｒ２以降の処理が繰り返される。このような初期化処理の繰り返しにより、送信側及び受信側の再送パケット格納ＲＡＭ１２３が空の状態になり、整合性が確保できる状態になったらＶ／ＩフラグがＶに変更される。
【００７６】
図９においては、連続した再送パケット（図示する例では、Ｓ０／Ｒ０及びＳ１／Ｒ１）が初期化処理中に発生した場合を示している。
【００７７】
図９の符号Ｃ６に示す「受（Ｒ１）」については、Ｒ１の対となるＳ１は［５］の処理までに格納されるため、Ｓ１の格納により初期化対象となる。
【００７８】
符号Ｃ７に示す「送（Ｓ０）」については、パターンＰ１〜Ｐ１０を考慮すると、Ｒ０は［２］の処理の前で既に受信済みの状態を考慮すればよいので、Ｓ０は［５］の処理の前までに必ず格納される。
【００７９】
図９に示す場合においても、初期化処理中にルータ１２によるバッファ格納が行なわれ、送受信パケットの整合性が保障できない場合には、再初期化が繰り返され、整合性が確保できる状態になった場合に限り、Ｖ／ＩフラグがＶに変更される。
【００８０】
このように、Ｒ／Ｆフラグの初期化中に、ルータ１２間での再送パケットが発生する場合には、整合性確保が保証されるまで初期化が繰り返され、一時的に再送が発生していないタイミング等で初期化処理が完了する。これにより、送信側及び受信側の再送パケット格納ＲＡＭ１２３が空の状態で次の再送パケットで比較可能となる状態となり、送受信における再送パケットの整合性を確保することが可能となる。
【００８１】
図１０は、図１に示した並列処理システム１００において送受信パケットの整合性確保処理を実施しない場合に発生するデータ不整合の第１の例を説明する図である。
【００８２】
図１０においては、制御フラグ初期化処理を実施せず、符号Ｄ１及びＤ３で示す処理の間に、符号Ｄ２示すような次の再送パケットＳ２が処理される場合が示されている。
【００８３】
送信側ＳＶＰ２は、受信側ＳＶＰ２と連携して、受信データの取得と、受信側の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグをＲへの変更とを実施する（符号Ｄ１参照）。
【００８４】
送信側ルータ１２はＳ１の再送完了後にＳ２を送信し、受信側ルータ１２はＲ２［Ｅ］を受信する（符号Ｄ２１参照）。
【００８５】
受信側ルータ１２はＲ２［Ｅ］を再送パケット格納ＲＡＭ１２３に保存する（符号Ｄ２２参照）。
【００８６】
送信側ルータ１２は、Ｓ２に対するＡＣＫ／ＮＡＣＫ無応答又はＮＡＣＫ受信のため、再送パケットを再送パケット格納ＲＡＭ１２３に保存しようとするが、Ｒ／ＦフラグがＦのため格納できない（符号Ｄ２３参照）。
【００８７】
送信側ルータ１２において、Ｓ２の再送が完了する（符号Ｄ２４参照）。
【００８８】
送信側ＳＶＰ２は、送信側再送データを取得し、送信側のＲ／ＦフラグをＲに変更する（符号Ｄ３参照）。
【００８９】
図１０に示す例では、符号Ｄ４に示すように、送信側のＳ２を再送パケット格納ＲＡＭ１２３に保存できないため、データ無の状態の送信側とＲ２［Ｅ］を格納する受信側とで送受信データ間の不整合が生じる。
【００９０】
図１１は、図１に示した並列処理システム１００において送受信パケットの整合性確保処理を実施しない場合に発生するデータ不整合の第２の例を説明する図である。
【００９１】
図１１においては、制御フラグの初期化処理を実施せず、符号Ｅ１と符号Ｅ３との処理の間及び符号Ｅ３と符号Ｅ５との処理の間にて、符号Ｅ２及びＥ４に示す処理がそれぞれ実施される場合について説明する。
【００９２】
送信側ＳＶＰ２は、受信側ＳＶＰ２と連携して、受信データの取得と、受信側の再送パケット格納ＲＡＭ１２３のＲ／ＦフラグをＲへの変更とを実施する（符号Ｅ１参照）。
【００９３】
送信側ルータ１２はＳ１の再送完了後にＳ２を送信し、受信側ルータ１２はＲ２［Ｅ］を受信する（符号Ｅ２１参照）。
【００９４】
受信側ルータ１２は、Ｒ２［Ｅ］を再送パケット格納ＲＡＭ１２３に保存する（符号Ｅ２２参照）。
【００９５】
送信側ルータ１２は、Ｓ２対するＡＣＫ／ＮＡＣＫ無応答又はＮＡＣＫ受信のため、再送パケットを再送パケット格納ＲＡＭ１２３に保存しようとするが、Ｒ／ＦフラグがＦのため格納できない（符号Ｅ２３参照）。
【００９６】
送信側ルータ１２は、Ｓ２の再送を完了する（符号Ｅ２４参照）。
【００９７】
送信側ＳＶＰ２は、送信側の再送データを取得し、送信側のＲ／ＦフラグをＲに変更する（符号Ｅ３参照）。
【００９８】
送信側ルータ１２はＳ２の再送完了後にＳ３を送信し、受信側ルータ１２はＲ３［Ｅ］を受信する（符号Ｅ４１参照）。
【００９９】
受信側ルータ１２は、Ｒ３［Ｅ］を再送パケット格納ＲＡＭ１２３に保存しようとするが、Ｒ／ＦフラグがＦのため格納できない（符号Ｅ４２参照）。
【０１００】
送信側ルータ１２は、Ｓ３対するＡＣＫ／ＮＡＣＫ無応答又はＮＡＣＫ受信のため、再送パケットを再送パケット格納ＲＡＭ１２３に保存する（符号Ｅ４３参照）。
【０１０１】
送信側ルータ１２は、Ｓ３の再送を完了する（符号Ｅ４４参照）。
【０１０２】
図１１に示す例では、符号Ｅ５に示すように、受信側のＲ３［Ｅ］を再送パケット格納ＲＡＭ１２３に保存できないため、Ｓ３を格納する送信側とＲ２［Ｅ］で送受信データ間の不整合が生じる。
【０１０３】
以下、図１２〜図１４を用いて、ＳＶＰ２間のインターフェース例を示す。
【０１０４】
送受信のルータ１２が別々のＳＶＰ２により管理される場合、ＳＶＰ２間のインターフェースが必要となる。ＳＶＰ２間インターフェースとして、例えばIntelligent Platform Management Interface（ＩＰＭＩ）等が利用され、ＳＶＰ２間の連携が行なわれる。ＳＶＰ２間のインターフェースは、ＩＰＭＩメッセージコマンドのＯＥＭコマンドとして実装されてよい。
【０１０５】
図１２は、図１に示した並列処理システム１００における受信側Ｒ／Ｆフラグの更新依頼を説明するテーブルである。
【０１０６】
受信側のＲ／Ｆフラグの更新依頼の要求においては、ルータアドレス，ポート及びＳＶＰ−Internet Protocol（ＩＰ）が指定される。また、受信側のＲ／Ｆフラグの更新依頼の応答においては、ＳＶＰ２による更新の場合にはＲ／ＦフラグはＲへの変更に限られるため、Ｒ／Ｆフラグの変更内容としてＲ又はＦは指定されなくてよい。
【０１０７】
図１３は、図１に示した並列処理システム１００における受信側Ｒ／Ｆフラグの取得依頼を説明するテーブルである。
【０１０８】
受信側のＲ／Ｆフラグの取得依頼の要求においては、ルータアドレス，ポート及びＳＶＰ−ＩＰが指定される。また、受信側のＲ／Ｆフラグの取得依頼の応答においては、Ｒ／Ｆフラグの変更内容としてＲ又はＦ（図示する例ではＦ）が指定される。
【０１０９】
図１４は、図１に示した並列処理システム１００における受信側Ｒ／Ｆフラグ及びデータの取得依頼を説明するテーブルである。
【０１１０】
受信側のＲ／Ｆフラグ及びデータフラグの取得依頼の要求においては、ルータアドレス，ポート及びＳＶＰ−ＩＰが指定される。また、受信側のＲ／Ｆフラグ及びデータフラグの取得依頼の応答においては、Ｒ／Ｆフラグの内容としてのＲ又はＦ（図示する例ではＦ）と、ＦＣＳエラーの有無（図示する例では有）と、受信データとが指定される。
【０１１１】
ＳＶＰ２によるルータ１２間のパス状態管理としては、例えば、送信側の再送信に対して、受信側の異常受信と正常受信と受信無とにより通信パス状態が把握できる。
【０１１２】
受信側の異常受信は、ＦＣＳエラーパケットとして異常データが受信されたことを示し、ＦＣＳチェックにより認識される。受信側の異常受信の場合には、送受信データが比較され、ビット化けレベルが確認される。
【０１１３】
受信側の正常受信は、データ送受信が成功したことを示す。ただし、データ送受信が成功しても、送達確認のＡＣＫ／ＮＡＣＫの受信タイムアウトの場合や、再送パケットの発生により受信側で正常パケットとして受信する場合もある。なお、受信側のＳＶＰ２は、正常なパケットであっても、パケットのシーケンスＩＤが連続して同一の値の場合には、再送パケットとして認識する。
【０１１４】
受信側の受信無は、未接続等の影響でデータ受信が不可であることを示す。このような状態は、要因を解決しない限り継続されることが想定される。
【０１１５】
〔Ａ−２〕動作例
図１に示した並列処理システム１００のＳＶＰ２における送信側ルータポートの管理処理を、図１５に示すフローチャートを用いて説明する。
【０１１６】
並列処理システム１００の起動時に、初期値として、Ｖ／ＩフラグがＩに設定される（ステップＳ１）。
【０１１７】
受信側ルータ１２において、受信側のＲ／ＦフラグがＲへ更新される（ステップＳ２）。
【０１１８】
送信側ルータ１２は、送信側のＲ／ＦフラグをＲへ更新する（ステップＳ３）。
【０１１９】
受信側ＳＶＰ２において、受信側のＲ／ＦフラグがＲであることをチェックする（ステップＳ４）。
【０１２０】
受信側のＲ／ＦフラグがＲでない場合には（ステップＳ４のＮｏルート参照）、処理はステップＳ２へ戻る。
【０１２１】
一方、受信側のＲ／ＦフラグがＲである場合には（ステップＳ４のＹｅｓルート参照）、送信側ＳＶＰ２は、送信側のＲ／ＦフラグがＲであることをチェックする（ステップＳ５）。
【０１２２】
送信側のＲ／ＦフラグがＲでない場合には（ステップＳ５のＮｏルート参照）、処理はステップＳ２へ戻る。
【０１２３】
一方、送信側のＲ／ＦフラグがＲである場合には（ステップＳ５のＹｅｓルート参照）、送信側ＳＶＰ２は、Ｖ／ＩフラグをＶへ更新する（ステップＳ６）。
【０１２４】
送信側ＳＶＰ２は、ポーリング又は割り込みにより、送信側のＲ／ＦフラグがＦであるかを判定する（ステップＳ７）。
【０１２５】
送信側のＲ／ＦフラグがＦでない場合には（ステップＳ７のＮｏルート参照）、ステップＳ７における処理が繰り返し実行される。
【０１２６】
一方、送信側のＲ／ＦフラグがＦである場合には（ステップＳ７のＹｅｓルート参照）、送信側ＳＶＰ２は、Ｖ／ＩフラグをＩへ更新する（ステップＳ８）。
【０１２７】
送信側ＳＶＰ２は、受信側ＳＶＰ２と連携し、受信格納データを取得し、受信側のＲ／ＦフラグをＲへ更新する（ステップＳ９）。
【０１２８】
送信側ＳＶＰ２は、送信格納データを取得し、送信側のＲ／ＦフラグをＲへ更新する（ステップＳ１０）。そして、処理はステップＳ４へ戻る。
【０１２９】
次に、図１に示した並列処理システム１００のＳＶＰ２における受信側ルータポートの管理処理を、図１６に示すフローチャートを用いて説明する。
【０１３０】
受信側ＳＶＰ２は、送信側ＳＶＰ２からの指示を受信する（ステップＳ１１）。
【０１３１】
ステップＳ１１における送信側ＳＶＰ２からの指示が受信側のＲ／ＦフラグのＲへの変更依頼である場合には（ステップＳ１２）、受信側ＳＶＰ２は、受信側のＲ／ＦフラグがＲであるかをチェックする（ステップＳ１３）。
【０１３２】
受信側のＲ／ＦフラグがＲである場合には（ステップＳ１３のＹｅｓルート参照）、処理はステップＳ１１へ戻る。
【０１３３】
一方、受信側のＲ／ＦフラグがＲでない場合には（ステップＳ１３のＮｏルート参照）、受信側ＳＶＰ２は、Ｒ／ＦフラグをＲへ更新する（ステップＳ１４）。そして、処理はステップＳ１１へ戻る。
【０１３４】
ステップＳ１１における送信側ＳＶＰ２からの指示が受信側のＲ／Ｆフラグの取得依頼である場合には（ステップＳ１５）、受信側ＳＶＰ２は、送信側ＳＶＰ２へＲ／Ｆフラグの内容を応答する（ステップＳ１６）。そして、処理はステップＳ１１へ戻る。
【０１３５】
ステップＳ１１における送信側ＳＶＰ２からの指示が受信側のＲ／Ｆフラグ及び受信データの取得依頼である場合には（ステップＳ１７）、受信側ＳＶＰ２は、送信側ＳＶＰ２へＲ／Ｆフラグの内容及び受信データを応答する（ステップＳ１８）。そして、処理はステップＳ１１へ戻る。
【０１３６】
次に、図１に示した並列処理システム１００の送信側ルータ１２における処理を、図１７に示すフローチャートを用いて説明する。
【０１３７】
送信側ルータ１２は、データ送信処理を行なう（ステップＳ２１）。
【０１３８】
送信側ルータ１２は、受信側ルータ１２におけるＮＡＣＫ受信又はＡＣＫ／ＮＡＣＫ受信無しにより再送処理が必要であるかを判定する（ステップＳ２２）。
【０１３９】
再送処理が必要でない場合には（ステップＳ２２のＮｏルート参照）、処理はステップＳ２１へ戻る。
【０１４０】
一方、再送処理が必要である場合には（ステップＳ２２のＹｅｓルート参照）、送信側ルータ１２は、送信側のＲ／ＦフラグがＲであるかを判定する（ステップＳ２３）。
【０１４１】
送信側のＲ／ＦフラグがＲでない場合には（ステップＳ２３のＮｏルート参照）、処理はステップＳ２１へ戻る。
【０１４２】
一方、送信側のＲ／ＦフラグがＲである場合には（ステップＳ２３のＹｅｓルート参照）、再送パケットを再送パケット格納ＲＡＭ１２３へ保存し、Ｒ／ＦフラグをＦに変更する（ステップＳ２４）。そして、処理はステップＳ２１へ戻る。
【０１４３】
次に、図１に示した並列処理システム１００の受信側ルータ１２における処理を、図１８に示すフローチャートを用いて説明する。
【０１４４】
受信側ルータ１２は、データ受信処理を行なう（ステップＳ３１）。
【０１４５】
受信側ルータ１２は、データ受信処理においてＦＣＳエラーが発生したかを判定する（ステップＳ３２）。
【０１４６】
ＦＣＳエラーが発生していない場合には（ステップＳ３２のＮｏルート参照）、受信側ルータ１２は、受信データが前のパケットと同一シーケンスＩＤを有しているかを判定する（ステップＳ３３）。
【０１４７】
受信データが前のパケットと同一シーケンスＩＤを有していない場合には（ステップＳ３３のＮｏルート参照）、処理はステップＳ３１へ戻る。
【０１４８】
一方、受信データが前のパケットと同一シーケンスＩＤを有している場合には（ステップＳ３３のＹｅｓルート参照）、処理はステップＳ３４へ進む。
【０１４９】
ステップＳ３２において、ＦＳＣエラーが発生している場合には（ステップＳ３２のＹｅｓルート参照）、受信側ルータ１２は、Ｒ／ＦフラグがＲであるかを判定する（ステップＳ３４）。
【０１５０】
Ｒ／ＦフラグがＲでない場合には（ステップＳ３４のＮｏルート参照）、処理はステップＳ３１へ戻る。
【０１５１】
一方、Ｒ／ＦフラグがＲである場合には（ステップＳ３４のＹｅｓルート参照）、受信側ルータ１２は、対象パケットを再送パケット格納ＲＡＭ１２３へ保存し、Ｒ／ＦフラグをＦの変更する（ステップＳ３５）。そして、処理はステップＳ３１へ戻る。
【０１５２】
〔Ａ−３〕効果
上述した実施形態の一例におけるＳＶＰ２によれば、例えば、以下の作用効果を奏することができる。
【０１５３】
第１領域クリア部２０１は、受信側の再送パケット格納ＲＡＭ１２３に記憶されているデータをクリアする。また、第２領域クリア部２０２は、送信側の再送パケット格納ＲＡＭ１２３に記憶されているデータをクリアする。そして、状態設定部２０３は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれていない場合に、受信側のノード１をパケットの待ち受け状態に設定する。
【０１５４】
これにより、ネットワークにおける障害発生の原因を検出可能にできる。
【０１５５】
第１領域クリア部２０１は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれている場合には、受信側の再送パケット格納ＲＡＭ１２３に記憶されているデータを再度クリアする。また、第２領域クリア部２０２は、送信側及び受信側の再送パケット格納ＲＡＭ１２３においてデータが書き込まれている場合には、送信側の再送パケット格納ＲＡＭ１２３に記憶されているデータを再度クリアする。
【０１５６】
これにより、パケットの再送中に新たなパケットの送受信が発生した場合においても、送信側と受信側とにおける再送パケットの整合性を保証できる。
【０１５７】
比較部２０４は、受信側のノード１がパケットの待ち受け状態に設定された場合に、受信側の再送パケット格納ＲＡＭ１２３に記憶されていたデータと送信側の再送パケット格納ＲＡＭ１２３に記憶されていたデータとを比較する。
【０１５８】
これにより、ネットワークにおける障害発生の原因の究明や切り分けを詳細に行なうことができる。
【０１５９】
〔Ｂ〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【０１６０】
〔Ｃ〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０１６１】
（付記１）
第１コンピュータと第２コンピュータとに接続される管理装置を有する並列処理装置であって、
前記第１コンピュータは、
前記第２コンピュータと通信する第１ルータと、
前記第１ルータが前記第２コンピュータと通信した際に、再送対象のパケットを記憶する第１記憶領域と、
を備え、
前記第２コンピュータは、
前記第１コンピュータと通信する第２ルータと、
前記第２ルータが前記第１コンピュータと通信した際に、再送対象のパケットを記憶する第２記憶領域と、
を備え、
前記管理装置は、
前記第１記憶領域の値をクリアする第１領域クリア部と、
前記第２記憶領域の値をクリアする第２領域クリア部と、
前記第１記憶領域及び前記第２記憶領域において値が書き込まれていない場合に、前記第１コンピュータ又は前記第２コンピュータをパケットの待ち受け状態に設定する状態設定部と、
を備える、並列処理装置。
【０１６２】
（付記２）
前記第１記憶領域及び前記第２記憶領域において値が書き込まれている場合に、
前記第１領域クリア部は、前記第１記憶領域の値を再度クリアし、
前記第２領域クリア部は、前記第２記憶領域の値を再度クリアする、
付記１に記載の並列処理装置。
【０１６３】
（付記３）
前記状態設定部によって前記第１コンピュータ又は前記第２コンピュータが前記待ち受け状態に設定された場合に、前記第１記憶領域に記憶されていた値と前記第２記憶領域に記憶されていた値とを比較する比較部
を更に備える、付記１又は２に記載の並列処理装置。
【０１６４】
（付記４）
第１コンピュータと第２コンピュータとに接続される管理装置における再送パケット管理方法であって、
前記第１コンピュータにおける第１ルータが前記第２コンピュータと通信した際に再送対象のパケットを記憶する第１記憶領域において、値をクリアし、
前記第２コンピュータにおける第２ルータが前記第１コンピュータと通信した際に再送対象のパケットを記憶する第２記憶領域において、値をクリアし、
前記第１記憶領域及び前記第２記憶領域において値が書き込まれていない場合に、前記第１コンピュータ又は前記第２コンピュータをパケットの待ち受け状態に設定する、
再送パケット管理方法。
【０１６５】
（付記５）
前記第１記憶領域及び前記第２記憶領域において値が書き込まれている場合に、
前記第１記憶領域の値を再度クリアし、
前記第２記憶領域の値を再度クリアする、
付記４に記載の再送パケット管理方法。
【０１６６】
（付記６）
前記第１コンピュータ又は前記第２コンピュータが前記待ち受け状態に設定された場合に、前記第１記憶領域に記憶されていた値と前記第２記憶領域に記憶されていた値とを比較する、
付記４又は５に記載の再送パケット管理方法。
【符号の説明】
【０１６７】
１００    ：並列処理システム
１０      ：ＳＶＰ管理単位
１        ：ノード
１１      ：ＣＰＵ
１２      ：ルータ
１２１    ：受信バッファ
１２２    ：送信バッファ
１２３    ：再送パケット格納ＲＡＭ
２０      ：ＳＶＰサブシステム
２０１    ：第１領域クリア部
２０２    ：第２領域クリア部
２０３    ：状態設定部
２０４    ：比較部
２        ：ＳＶＰ
２１      ：メモリ
２２      ：ディスク
３        ：イーサネット
４        ：ＦＰＧＡ
【図１】
2020113870.tif 000003
【図２】
2020113870.tif 000004
【図３】
2020113870.tif 000005
【図４】
2020113870.tif 000006
【図５】
2020113870.tif 000007
【図６】
2020113870.tif 000008
【図７】
2020113870.tif 000009
【図８】
2020113870.tif 000010
【図９】
2020113870.tif 000011
【図１０】
2020113870.tif 000012
【図１１】
2020113870.tif 000013
【図１２】
2020113870.tif 000014
【図１３】
2020113870.tif 000015
【図１４】
2020113870.tif 000016
【図１５】
2020113870.tif 000017
【図１６】
2020113870.tif 000018
【図１７】
2020113870.tif 000019
【図１８】
2020113870.tif 000020