(57)【要約】【課題】情報処理システム、情報処理装置及び情報処理プログラムに関し、ネットワークで輻輳を引き起こしているフローの情報を取得することができる。【解決手段】複数のフローを通信するスイッチ１３と、情報処理装置４１とを備え、スイッチは、輻輳を検知すると、輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を情報処理装置に送信し、情報処理装置は、受信した輻輳の発生を示す情報とフロー情報に基づいて輻輳に関係するフローを推定する。【選択図】図４
2019047254.tif 000002
【特許請求の範囲】
【請求項１】
複数のフローを通信するスイッチと、情報処理装置とを備え、
前記スイッチは、輻輳を検知すると、輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記情報処理装置に送信し、
前記情報処理装置は、受信した前記輻輳の発生を示す情報と前記フロー情報に基づいて輻輳に関係するフローを推定する、
ことを特徴とする情報処理システム。
【請求項２】
前記情報処理装置は、ポートの接続関係を示すネットワークトポロジ情報を更に含めて、前記輻輳に関係するフローを推定することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記情報処理装置は、推定した輻輳に関係するフローの流量を示す情報のカウント指示を送信し、
前記スイッチは、前記カウント指示に応じて前記情報を集計し、集計された前記情報を前記情報処理装置へ送信し、
前記情報処理装置は、前記情報に基づいて輻輳の原因フローを特定する、
ことを特徴とする請求項１又は２に記載の情報処理システム。
【請求項４】
前記情報処理装置は、前記カウント指示を送信し、所定の時間を経過した後に前記スイッチによって集計された前記情報を取得するための取得要求を前記スイッチに送信し、
前記スイッチは、前記取得要求に応じて前記情報を集計することを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記スイッチは、輻輳を検知したパケットのフロー情報を送信する際、蓄積された前記フロー情報のうち、フロー情報のカウンタ値が最も大きいフロー情報を前記情報処理装置へ送信することを特徴とする請求項１から４のいずれか１つに記載の情報処理システム。
【請求項６】
前記スイッチは、受信したパケット内に、受信するパケットの量と所定の閾値に基づいて付与される輻輳を示すマークが存在することにより前記輻輳を検知することを特徴とする請求項１から５のいずれか１つに記載の情報処理システム。
【請求項７】
複数のフローを通信するスイッチと、情報処理装置とを備える情報処理システムにおける前記情報処理装置であって、
輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記スイッチから受信する受信部と、
受信された前記輻輳の発生を示す情報及び前記フロー情報に基づいて輻輳に関係するフローを推定する推定部とを、
有することを特徴とする情報処理装置。
【請求項８】
複数のフローを通信するスイッチと、情報処理装置とを備える情報処理システムにおける前記情報処理装置によって実行される情報処理プログラムであって、
輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記スイッチから受信し、
受信された前記輻輳の発生を示す情報及び前記フロー情報に基づいて輻輳に関係するフローを推定する、
処理を前記情報処理装置のコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
情報処理システム、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
近年、クラウドコンピューティングによりシステムの集約化が進行している。そのため、ネットワークの安定稼働は重要な課題となっている。ネットワークで安定した性能を得るには輻輳、すなわちトラフィックの衝突への対処が不可欠である。輻輳へ対処するための輻輳制御技術（下記の特許文献１を参照）は従来から存在し、例えばＥＣＮ（Explicit Congestion Notification）などを用いた輻輳制御技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３１９７４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、ＥＣＮなどを用いた輻輳制御技術は、輻輳の発生に対して制御を行うものであり、輻輳の根本原因、すなわちフローの集中への対処はできない。根本原因となっているフローが分かれば、その経路を調整するなどしてネットワークを有効活用することでフローの帯域制限を避けられる。また、従来は輻輳ポイントを経由するすべてのフローが制限され、フローの種別によって使用帯域を設定するなどの制御はできない。より効果的な制御を行うためには輻輳の原因となるフローを知ることが必要であるが、スイッチでフローの流量を調べるにはスイッチのリソースに限界があり、全フローの測定はできず、輻輳に関係するフローを特定することは困難である。
【０００５】
そこで、本発明の１つの側面では、ネットワークで輻輳を引き起こしているフローの情報を取得することを目的とする。
【課題を解決するための手段】
【０００６】
態様の一例では、複数のフローを通信するスイッチと、情報処理装置とを備え、前記スイッチは、輻輳を検知すると、輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記情報処理装置に送信し、前記情報処理装置は、受信した前記輻輳の発生を示す情報と前記フロー情報に基づいて輻輳に関係するフローを推定する。
【発明の効果】
【０００７】
ネットワークで輻輳を引き起こしているフローの情報を取得することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態におけるスイッチを介して装置間で行われる通信の概要を説明するための図である。
【図２Ａ】実施形態におけるＥＣＮのマーク付与について説明するための図である。
【図２Ｂ】実施形態におけるＥＣＮのマーク付与について説明するための図である。
【図３】実施形態におけるキュー閾値通過通知、輻輳情報テーブル、輻輳検知情報のフォーマットを示す図である。
【図４】実施形態の情報処理システムの一例を示す構成図である。
【図５Ａ】実施形態におけるスイッチの上流及び下流の定義を説明するための図である。
【図５Ｂ】実施形態におけるフロー情報、フロー情報テーブル、輻輳フロー情報のフォーマットを示す図である。
【図５Ｃ】実施形態における特定パターンカウント設定、カウント情報のフォーマットを示す図である。
【図６】実施形態の情報処理システムの一例を示す構成図である。
【図７】実施形態の情報処理システムにおける輻輳に関係する関係フローを推定する処理と輻輳の原因フローを特定する処理を示すシーケンスチャートである。
【図８】実施形態におけるスイッチの構成を示す図である。
【図９】実施形態におけるスイッチのプロセッサの処理を示すフローチャートである。
【図１０】実施形態におけるフロー情報通知を受信した場合の処理を示すフローチャートである。
【図１１】実施形態におけるキュー閾値通過通知を受信した場合の処理を示すフローチャートである。
【図１２】実施形態における特定パターンカウント設定の指示を受信した場合の処理を示すフローチャートである。
【図１３】実施形態における特定パターンカウント取得の指示を受信した場合の処理を示すフローチャートである。
【図１４】実施形態におけるスイッチのスイッチＬＳＩの構成を示す図である。
【図１５】実施形態におけるパケット照合処理テーブルの構成を示す図である。
【図１６】実施形態におけるスイッチＬＳＩのパケット受信処理を示すフローチャートである。
【図１７】実施形態におけるスイッチＬＳＩのパケット送信処理を示すフローチャートである。
【図１８】実施形態におけるスイッチＬＳＩのパケット照合処理を示すフローチャートである。
【図１９】実施形態におけるスイッチＬＳＩのエンキュー処理を示すフローチャートである。
【図２０】実施形態における管理装置の機能構成を示す構成図である。
【図２１】実施形態におけるネットワークトポロジ情報を説明するための図である。
【図２２】実施形態における管理装置の輻輳に関係する関係フロー候補の推定及び特定パターンカウント設定の指示の送信処理を示すフローチャートである。
【図２３】実施形態における管理装置の輻輳の原因フローを特定する処理を示すフローチャートである。
【図２４】実施形態における管理装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１０】
図１はスイッチ１３を介して送信装置１１（１１ａ、１１ｂ）と受信装置１２が通信を行う通信ネットワークの概要を示す図である。図１に示すように、送信装置１１と受信装置１２はスイッチ１３を介してパケットを送受信することによって通信を行っている。送信装置１１及び受信装置１２は、例えば後述するようにサーバなどである。各送信装置１１は受信装置１２に対してパケットを送信する。送信されたパケットはスイッチ１３においてキュー１４内に一時的に保持される。このとき、スイッチ１３はキュー１４の長さ（キュー長）を監視し、キュー長が閾値を超えている場合にはパケットに確率的にＥＣＮのマークを付与し、受信装置１２へ送信する。キュー長とは保持されたパケット全体の長さを言う。
【００１１】
なお、ＥＣＮの詳細については従来技術のため説明を省略するが、例えば以下を参照することが可能である（RFC3168 http://www.icir.org/floyd/papers/rfc3168.txt）。
【００１２】
ここで、ＥＣＮのマーク付与の一例について図２Ａ及び図２Ｂを用いて説明する。この例ではキュー長と閾値の関係により定められる確率によってパケットに輻輳を示すＥＣＮマークを付与する。図２Ａに示すように、受信されたパケットはキュー１４に保持される。この例では第１閾値、第２閾値、第３閾値が示されており、図２Ｂに示すように、例えばキュー長が０から第１閾値の間の場合にはＥＣＮマーク付与の確率は０とする。キュー長が第１閾値から第２閾値の間の場合にはＥＣＮマーク付与の確率は所定の関数に応じて第２閾値に近づくにつれて上昇し、第２閾値以上ではＥＣＮマーク付与の確率は１とする。なお、ＥＣＮマークの付与のための関数や付与の方法はこれに限定されるものではなく、他の関数や方法であってもよい。
【００１３】
なお、スイッチ１３は、キュー長があらかじめ定められた閾値（例えば、第３閾値）を通過した（跨ぐ）ときや、前回の更新から一定の時間が経過するごとにキュー長の情報を後述するスイッチ１３内のプロセッサに通知するようにしてもよい。
【００１４】
このときのプロセッサへの通知（キュー閾値通過通知）は、図３に示すようにポート番号とステータスの項目から構成されている。ポート番号には閾値通過したポート、すなわち所定の閾値（例えば第３閾値）を境にしてキュー長が上昇した又は減少したポートの番号が示される。ステータスには輻輳の検知がされたか否かが示され、例えばＳ１の値が０又は１で示され、０の場合には検知されず、１の場合には検知されたことを示す。
【００１５】
プロセッサはキュー閾値通過通知を受けると、その通知内容を輻輳情報テーブルに記録し、受けた時刻を時間の項目に記録する。この時間は古い情報を削除するために用いられる情報であって、例えばあらかじめ設定された時間を超えたエントリについては削除される。
【００１６】
図１の説明に戻り、受信装置１２は、ＥＣＮマークの付いたパケットを受信すると、各送信装置１１への応答パケット（ACKパケット）にＥＣＮマークを付与して送信する。ＥＣＮマークが付いたパケットを受信した送信装置１１は送信レートの制限を行う。しかし、送信レートの制限を行うことでは輻輳の根本原因であるフローの集中への対処はできず、輻輳ポイントを経由するすべてのフローが帯域制限されてしまい、ネットワーク帯域を有効に活用できない。
【００１７】
スイッチ１３でフローの流量を調べるなどして輻輳の原因フローを特定することが考えられるが、既存のスイッチではリソース（例えば、メモリ）に限界があり、全フローの測定はできない。例えば、仮想システム管理から仮想ホストのＩＰアドレス情報を得て、それがＮ個、すなわちエンドポイントがＮ個であるとする。考えられる通信ペアはＮ２個であり、それらのペアに対応する通信量をカウントする設定をスイッチに行うにはリソースが不足する。一般的なスイッチでは、パターンマッチを行ってカウントするリソースは２Ｋ（２０４８）エントリ程度である。Ｎ２＝２０４８とするとＮ＝４５．２であり、一定規模の仮想システムでは容易に超えてしまう。ここで、フローとは同じパターンを有する一連のパケットを言う。また、パターンとはヘッダが有するフィールドのパターンを言う。
【００１８】
以下で説明する実施形態の情報処理システムでは、ネットワーク帯域を有効活用できるように、ネットワークで輻輳を引き起こしているフローの情報を取得する。
【００１９】
図４は実施形態の情報処理システムの一例を示すものである。情報処理システム４０は、管理装置（情報処理装置とも言う）４１とスイッチ１３（１３ａから１３ｇ）から構成されている。図４では説明をわかりやすくするためにスイッチ１３ａのみが管理装置４１に接続しているように描かれているが、他のスイッチ１３も管理装置４１に接続している。
【００２０】
図４では、スイッチ１３ａが他のスイッチ１３（１３ｂから１３ｇ）に対して上流のスイッチであるように描かれているが、スイッチ１３ａが常に上流のスイッチとは限らない。図５Ａに示すように、フローがスイッチ１３ｂからスイッチ１３ａを経由してスイッチ１３ｃへ流れる場合を考える。この場合、スイッチ１３ａにとってはフローが流れてくる側のスイッチ１３ｂが上流（実線）のスイッチとなり、スイッチ１３ｂにとってスイッチ１３ａは下流（実線）のスイッチとなる。一方、スイッチ１３ａにとってはフローが流れていく側のスイッチ１３ｃが下流（破線）のスイッチとなり、スイッチ１３ｃにとってスイッチ１３ａは上流（破線）のスイッチとなる。
【００２１】
このように、視点によって１つのスイッチが上流のスイッチとなったり、下流のスイッチとなったりする。すなわち、スイッチ１３ａは１つのフローに対して上流のスイッチでもあり下流のスイッチでもある。また、スイッチにおいてフローが複数存在する場合には、フローごとに上流や下流が複数存在する可能性がある。
【００２２】
ここで、図４の情報処理システム４０において、例えばスイッチ１３ｂからのフローがスイッチ１３ａ、１３ｄを経由してスイッチ１３ｆへ送信される場合を考える。スイッチ１３ａがスイッチ１３ｂからのフロー、すなわちパケットを受信した場合、スイッチ１３ａはキュー長を監視し、キュー長が閾値を超えている（輻輳が発生している）場合にはパケットに確率的にＥＣＮのマークを付与し、スイッチ１３ｆへ送信する。このとき、スイッチ１３ａは、スイッチ１３ａの識別子と輻輳が発生しているポート番号の情報を含む輻輳検知情報を管理装置４１へ送信する。
【００２３】
一方、スイッチ１３ａの下流のスイッチ１３ｄがスイッチ１３ａからのパケットを受信すると、パケットに輻輳を示すＥＣＮマークが付与されているか否かを判断する。すなわち、スイッチは、受信したパケット内に、受信するパケットの量（キュー長）と所定の閾値（第１閾値から第３閾値）に基づいて付与される輻輳を示すＥＣＮマークが存在することにより輻輳を検知する。
【００２４】
ＥＣＮマークが検出されると、スイッチ１３ｄはフロー情報（例えば、ＭＡＣヘッダ、ＩＰヘッダ、ＴＣＰ／ＵＤＰポート番号など）を輻輳フロー情報として管理装置４１へ送信する。このとき、スイッチ１３ｄは、パケットをスイッチ１３ｄ内部のＣＰＵ（Central Processor Unit）に送信し、ＣＰＵでの処理（冗長な情報の除去）を行った後、管理装置４１へ送信してもよく、またＣＰＵの処理を経ずに管理装置４１へ送信してもよい。
【００２５】
管理装置４１は、スイッチ１３ａから輻輳検知情報を受信し、スイッチ１３ｄから輻輳フロー情報を受信する。管理装置４１は、受信した輻輳検知情報及び輻輳フロー情報と、後述するネットワークトポロジ情報とに基づいて、輻輳に関係する関係フローの候補を推定する。
【００２６】
また、管理装置４１は、輻輳の原因のフローを特定するために、関係フローの候補におけるフロー数（パケット数）と量（バイト数）、すなわちフローの流量を示す情報をカウントさせるためのカウント設定（特定パターンカウント設定）をスイッチ１３ａに対して行う。
【００２７】
特定パターンカウント設定をされたスイッチ１３ａは、関係フローの候補のフロー数及び量をカウントし、管理装置４１からの取得要求に応じて、関係フローの候補（特定パターン）のフロー数及び量を集計し、集計情報を管理装置４１へ送信する。
【００２８】
管理装置４１は、受信した集計情報に基づいて輻輳の原因フローを特定する。なお、輻輳の原因フローが特定された場合、管理装置４１は輻輳原因の排除処理（例えば、原因フローの経路を変更する、原因フローの帯域を絞る設定を不図示のホストに行うなどの処理）を行ってもよい。
【００２９】
ここで、上記輻輳検知情報について図３を用いて、フロー情報及び輻輳フロー情報について図５Ｂを用いて、特定パターンカウント設定及びカウント情報について図５Ｃを用いて説明する。
【００３０】
まず、輻輳検知情報はスイッチＩＤ、ポート番号、ステータス、時間の項目から構成されている。スイッチＩＤはスイッチの識別子であり、ポート番号は輻輳を検知したポート番号であり、ステータスは輻輳の検知がされたか否かが示され、例えばＳ１の値が０又は１で示され、０の場合には検知されず、１の場合には検知されたことを示す。時間は輻輳を検知した時刻を示し、この時刻と管理装置４１で処理する時点での時刻を比較し、あらかじめ設定された時間を超えている情報については無視するなどのために用いられる。
【００３１】
また、フロー情報は、ＤＡ、ＳＡ、ＥＴ、ＴｏＳ、ＳＩＰ、ＤＩＰ、プロトコル、ＳＰ、ＤＰの項目から構成され、ＤＡ、ＳＡ、ＥＴ、ＴｏＳ、ＳＩＰ、ＤＩＰ、ＳＰ、ＤＰはパケットヘッダの情報である。スイッチ１３は、フローを受信すると受信したフローの情報をフロー情報テーブルに記録し、同じフローを受信した場合にはカウントし、カウント値をカウントの項目に記録する。
【００３２】
管理装置４１へ輻輳フロー情報を送信する場合には、フロー情報テーブルの内容を輻輳フロー情報として管理装置４１へ送信するが、送信対象のエントリが多い場合にはカウント値の最も大きいフロー情報のみを輻輳フロー情報として送信してもよい。
【００３３】
ＤＡ（Destination MAC Address）は送信先（宛先）のＭＡＣアドレスであり、ＳＡ（Source MAC Address）は送信元のＭＡＣアドレスである。ＥＴ（EtherType）はイーサネット（登録商標）のフレームのタイプであり、例えばＩＰｖ４などである。ＴｏＳ（Type of Service）はＩＰｖ４のパケットのヘッダを構成するフィールドの１つで通信サービスの種別を示すものであり、ここでは輻輳を示す目的で使用され、例えば輻輳を示すＥＣＮ＝１などが示される。
【００３４】
ＳＩＰ（Source IP address）は送信元のＩＰアドレスであり、ＤＩＰ（Destination IP address）は送信先（宛先）のＩＰアドレスである。プロトコルはプロトコルの種別を示し、例えばＴＣＰである。ＳＰ（Source Port）は送信元のポートであり、ＤＰ（Destination Port）は送信先（宛先）のポートである。カウントは同じフローを受信した場合にカウントされ蓄積された値を示す。
【００３５】
また、特定パターンカウント設定は、管理装置４１からの設定要求であり、例えば図５Ｃに示すフローに関するカウント情報（パケット数やバイト数）を取得するために設定されるものである。設定されるこのパターンとこのパターンを識別するための識別番号はパターンカウントテーブルに登録される。識別番号と関連付けて登録することによって、管理装置４１からの識別番号を含む特定パターンカウント取得の要求に対して容易にカウント情報を取得することができる。
【００３６】
一方、カウント情報は、図５Ｃに示すように特定パターンカウント設定がされたフローに関するフロー数（パケット数）と量（バイト数）である。管理装置４１からの特定パターンカウント取得の要求に応じて、集計されたカウント情報が管理装置４１へ送信される。
【００３７】
以下では具体的な処理内容について説明する。
【００３８】
図６は実施形態の情報処理システムの一例の構成を示し、図４の構成にはない管理ネットワーク６１やサーバ６２が示されているが、基本的な処理は図４に示すシステムと同様である。情報処理システム６０は、管理装置４１、スイッチ１３（１３ａ、１３ｈから１３ｋ）、サーバ６２（６２ａから６２ｈ）から構成されている。各スイッチ１３の管理ポートは管理ネットワーク６１に接続され、管理装置４１とつながっている。スイッチ１３の配下につながっているサーバ６２は、上述した送信装置１１や受信装置１２に相当するものである。なお、ネットワークは木構造のみでなく、他の構造（例えば、メッシュ構造など）であってもよい。また、管理ネットワーク６１を別個に設けずに、スイッチ１３によって構成されるネットワークを活用してもよい。
【００３９】
以下では情報処理システム６０における輻輳に関係する関係フローを推定する処理と輻輳の原因フローを特定する処理について図７に示すシーケンスチャートを用いて説明する。
【００４０】
ここでは、フローがスイッチ１３ｈからスイッチ１３ａを経由してスイッチ１３ｉに流れる場合を考える。スイッチ１３ａが上流のスイッチ１３ｈからパケットを受信すると、スイッチ１３ａはキュー長を監視し、キュー長が閾値を超えている場合にはパケットに確率的にＥＣＮのマークを付与し、付与したパケットをスイッチ１３ｉへ送信する。このとき、スイッチ１３ａは輻輳検知情報を管理装置４１へ送信する。
【００４１】
スイッチ１３ａからのパケットを受信するスイッチ１３ｉは、パケットに輻輳を示すＥＣＮマークが付与されているか否かを判断する。ＥＣＮマークが検出されると、スイッチ１３ｉは輻輳フロー情報を管理装置４１へ送信する。
【００４２】
輻輳検知情報及び輻輳フロー情報を受信する管理装置４１は、受信した輻輳検知情報及び輻輳フロー情報と、ポートの接続関係を示すネットワークトポロジ情報とに基づいて、輻輳に関係する関係フロー候補を推定する。具体的には、スイッチ１３ａにおける輻輳が発生しているポート番号のポートに接続するポートＩＤがわかるため、輻輳に関係する関係フロー候補の推定が可能となる。ネットワークトポロジ情報については後述する。
【００４３】
また、管理装置４１は、関係フロー候補を推定後、輻輳の原因のフローを特定するために、関係フロー候補のフロー数（パケット数）と量（バイト数）をカウントさせるためのカウント設定（特定パターンカウント設定）をスイッチ１３ａに対して行う。
【００４４】
特定パターンカウント設定を受信するスイッチ１３ａは、関係フロー候補のフロー数及び量のカウントを開始するとともに、特定パターンに対する識別番号を管理装置４１へ送信する。この識別番号は後述するカウント情報を取得する際に取得対象を特定するために用いられる。
【００４５】
管理装置４１は、識別番号を受信してから一定時間の経過を待ち、受信した識別番号を含む特定パターンカウント取得要求をスイッチ１３ａに送信する。一定時間の経過を待つのは、ネットワーク内の通信速度などの関係により、特定パターンカウント設定をした直後にカウント情報を取得しても何もカウントされていない場合があるためである。
【００４６】
スイッチ１３ａは、特定パターンカウント取得要求を受信すると、識別番号に該当する特定パターンのカウント情報を管理装置４１に送信する。
【００４７】
管理装置４１は、受信したカウント情報に基づいて輻輳の原因フローを特定する。例えば、受信したカウント情報のうち、最も流量の多いフローから輻輳原因の寄与率が高いとして輻輳の原因フローであると特定する。特定の方法はこれに限定されるものではない。
【００４８】
次に、実施形態におけるスイッチの構成について図８を用いて説明する。なお、スイッチの構成はすべてのスイッチにおいて共通する。
【００４９】
スイッチ１３は、プロセッサ８０、スイッチＬＳＩ８１、管理ポート８２、ポート８３（８３ａ、８３ｂ、・・・）から構成されている。管理ポート８２は管理装置４１につながるポートであり、ポート８３は他のスイッチ１３やサーバ６２につながるポートである。
【００５０】
プロセッサ８０は、管理ポート８２との間のデータの送受信を行うインタフェースである管理インタフェース８０ａと、スイッチＬＳＩ８１との間のデータの送受信を行うインタフェースであるスイッチＬＳＩインタフェース８０ｂを備える。また、プロセッサ８０は、所定のプログラムを実行することで、各種テーブル８０ｆ、８０ｇ、８０ｈを用い、後述するフロー情報管理部８０ｃのフロー情報管理機能、輻輳情報管理部８０ｄの輻輳情報管理機能、パターンカウント管理部８０ｅのパターンカウント管理機能を実現する。
【００５１】
ここで、プロセッサ８０の具体的な処理について図９を用いて説明する。プロセッサ８０は、フロー情報の送信のタイミングか否かを判断する（ステップＳ９０１）。すなわち、あらかじめ決められた一定の送信タイミングの時間を経過したか否かを判断し、経過していれば送信タイミングと判断する。一定時間の経過ごとに送信するのは、プロセッサ８０の処理負荷を減らすためである。
【００５２】
送信タイミングであると判断された場合（ステップＳ９０１でＹｅｓ）、プロセッサ８０はフロー情報テーブル８０ｆの内容を輻輳フロー情報として管理ポート８２を介して管理装置４１へ送信する（ステップＳ９０２）。フロー情報テーブル８０ｆの内容を管理装置４１へ送信する際、エントリ数があらかじめ設定された最大送信数を超える場合はカウンタ数が大きいエントリを選択し、選択されたエントリのフロー情報テーブル８０ｆの内容を管理装置４１へ送信するようにしてもよい。例えば、エントリが１０００個ある場合、すべてのエントリの内容を管理装置４１へ送信すると管理装置４１の負荷が大きくなるため、エントリの一部を選択することで管理装置４１の負荷を減らすことができる。
【００５３】
一方、フロー情報の送信のタイミングでないと判断された場合（ステップＳ９０１でＮｏ）、プロセッサ８０は受信パケットがあるか否かを判断する（ステップＳ９０３）。受信パケットがない場合（ステップＳ９０３でＮｏ）、ステップＳ９０１へ戻る。一方、受信パケットがある場合（ステップＳ９０３でＹｅｓ）、プロセッサ８０はパケット受信処理を行う（ステップＳ９０４）。
【００５４】
次に、プロセッサ８０の上記パケット受信処理について説明する。
【００５５】
まず、フロー情報通知を受信した場合の受信処理について図１０を用いて説明する。プロセッサ８０は、スイッチＬＳＩ８１からのパケットをスイッチＬＳＩインタフェース８０ｂを介して受信する（ステップＳ１００１）。プロセッサ８０は受信したパケットの内容を確認する（ステップＳ１００２）。プロセッサ８０は確認した結果、フロー情報通知である場合、フロー情報テーブル８０ｆに登録又はカウンタを更新する（ステップＳ１００３）。
【００５６】
次に、キュー閾値通過通知を受信した場合の受信処理について図１１を用いて説明する。プロセッサ８０は、スイッチＬＳＩ８１からのパケットをスイッチＬＳＩインタフェース８０ｂを介して受信する（ステップＳ１１０１）。プロセッサ８０は受信したパケットの内容を確認する（ステップＳ１１０２）。プロセッサ８０は確認した結果、キュー閾値通過通知である場合、キュー閾値通過通知に基づいて通知内容を輻輳情報テーブル８０ｇに登録又は更新する（ステップＳ１１０３）。さらに、プロセッサ８０は、所定の場合、すなわち状態変化（ステータス変化）がある場合や前回の更新時刻から一定時間が経過している場合、輻輳検知情報を管理ポート８２を介して管理装置４１へ送信する（ステップＳ１１０３）。
【００５７】
次に、特定パターンカウント設定の指示を受信した場合の受信処理について図１２を用いて説明する。プロセッサ８０は、管理装置４１からのパケットを管理ポート８２を介して受信する（ステップＳ１２０１）。プロセッサ８０は受信したパケットの内容を確認する（ステップＳ１２０２）。プロセッサ８０は確認した結果、特定パターンカウント設定の指示である場合、特定パターンカウント設定をスイッチＬＳＩ８１に対して行い、カウント情報を集計させる（ステップＳ１２０３）。
【００５８】
次に、特定パターンカウント取得の指示を受信した場合の受信処理について図１３を用いて説明する。プロセッサ８０は、管理装置４１からのパケットを管理ポート８２を介して受信する（ステップＳ１３０１）。プロセッサ８０は受信したパケットの内容を確認する（ステップＳ１３０２）。プロセッサ８０は確認した結果、特定パターンカウント取得の指示である場合、特定パターンのカウント情報をスイッチＬＳＩ８１から取得し、管理ポート８２を介して管理装置４１へ送信する（ステップＳ１３０３）。
【００５９】
スイッチ１３の説明に戻り、スイッチＬＳＩ８１は、ポート８３を通じて他のスイッチ１３やサーバ６２とデータの送受信を行うとともに、スイッチＬＳＩインタフェース８０ｂを通じてプロセッサ８０とデータのやり取りを行う。例えば、管理装置４１からの要求に応じてフロー数（パケット数）と量（バイト数）を集計したりする。
【００６０】
ここで、スイッチＬＳＩ８１の構成について図１４を用いて説明する。スイッチＬＳＩ８１は、マルチプレクサ１４０、パケット照合処理部１４１、中継処理部１４２、パケット照合処理テーブル１４３、中継テーブル１４４、パケットバッファ１４５、送信キュー１４６（１４６ａ、１４６ｂ、・・・、１４６ｎ）、パケット更新部１４７（１４７ａ、１４７ｂ、・・・、１４７ｎ）から構成されている。スイッチＬＳＩ８１は、所定のプログラムを実行することで、マルチプレクサ１４０の処理機能、パケット照合処理部１４１のパケット照合機能、中継処理部１４２の送信ポート選択機能、パケット更新部１４７のパケット更新及び送信機能を実現する。
【００６１】
マルチプレクサ１４０は、各受信ポートから受信する複数の入力を１つの出力として処理する。例えば、受信したパケット全体をパケットバッファ１４５へ出力し、パケットのヘッダ情報と制御情報をパケット照合処理部１４１へ出力する。
【００６２】
パケット照合処理部１４１は、パケットのヘッダ情報と、パケット照合処理テーブル１４３に記録された情報とを照合し、該当する情報があった場合には該当する情報に指定されたアクション（処理）を実行する。アクションとしては、例えばパケットの指定ポートへの転送などである。また、パケット照合処理部１４１は、カウント情報の記録、更新、集計なども行う。
【００６３】
中継処理部１４２は、ヘッダ情報を見てパケットを送信するための送信ポートを選択する。この際、中継テーブル１４４の情報、すなわちヘッダ情報と送信ポートを対応付けるテーブルに基づいて送信ポートが選択される。
【００６４】
パケット照合処理テーブル１４３は、パケットのヘッダ情報（マッチ）、アクション、照合してマッチしたパケットの数及びサイズのカウント情報から構成されており、例えば図１５に示すようなテーブルである。ヘッダ情報については上述したフロー情報の内容と同様であるため説明を省略するが、「※」印はワイルドカード、すなわちすべての値とマッチすることを意味している。
【００６５】
アクションは修正、転送、コピーの項目から構成されており、修正はパケットヘッダの修正を意味し、転送は指定ポートへの転送を意味し、コピーはプロセッサ８０へパケットのコピーを送信することを意味している。
【００６６】
カウント情報はパケット数とバイト数（サイズ）の項目から構成されており、パケット数は照合してマッチしたパケットの数を示し、バイト数はパケットのサイズを示し、例えばマッチしたパケットすべてのサイズの合計や最も大きいサイズなどである。
【００６７】
中継テーブル１４４はヘッダ情報と送信ポートを対応付けたテーブルである。
【００６８】
パケットバッファ１４５は、受信ポートから受信したパケット全体を記録する。パケットの送信ポートが決まった場合に送信するパケットが読み出される。
【００６９】
送信キュー１４６は、中継処理部１４２から送信されたパケット情報を一時的に格納する。
【００７０】
パケット更新部１４７は、送信キュー１４６に格納されたパケット情報を取り出すとともに、対応するパケット全体をパケットバッファ１４５から読み出し、パケット情報に応じて必要なパケット更新（例えば、ＥＣＮマークの付与など）を行う。そして、パケット更新部１４７はパケットを該当の送信ポートから送信する。
【００７１】
ここで、スイッチＬＳＩ８１における各処理についてフロー図を用いて説明する。
【００７２】
まず、スイッチＬＳＩ８１におけるパケットの受信処理について図１６を用いて説明する。マルチプレクサ１４０は受信ポートからパケットを受信する（ステップＳ１６０１）。マルチプレクサ１４０は受信したパケット全体をパケットバッファ１４５へ送信し、パケット情報（ヘッダ情報と制御情報）について処理継続のためパケット照合処理部１４１へ送る（ステップＳ１６０２）。
【００７３】
パケット照合処理部１４１はパケット照合処理を行う（ステップＳ１６０３）。詳細な処理については後述する。中継処理部１４２はパケットのヘッダ情報を用いて中継テーブル１４４を検索し、送信ポートを選択する（ステップＳ１６０４）。中継処理部１４２は選択された送信ポートに対応する送信キュー１４６へパケット情報を送る（ステップＳ１６０５）。送信キュー１４６はエンキュー処理を行う（ステップＳ１６０６）。エンキュー処理の詳細については後述する。
【００７４】
次に、スイッチＬＳＩ８１におけるパケットの送信処理について図１７を用いて説明する。パケット更新部１４７は送信キュー１４６に送信可能なパケットが格納されるまで待機する（ステップＳ１７０１）。パケット更新部１４７は、送信可能なパケットが送信キュー１４６に格納されると、送信キュー１４６からパケット情報を取り出す（ステップＳ１７０２）。パケット更新部１４７はパケットバッファ１４５からパケットを読み出す（ステップＳ１７０３）。パケット更新部１４７はパケット情報に応じて必要なパケット更新（例えば、ＥＣＮマークの付与など）を行う（ステップＳ１７０４）。パケット更新部１４７はパケットを送信ポートから送信する（ステップＳ１７０５）。
【００７５】
次に、スイッチＬＳＩ８１におけるパケットの照合処理について図１８を用いて説明する。パケット照合処理部１４１は、マルチプレクサ１４０からのヘッダ情報をパケット照合処理テーブル１４３から探し（ステップＳ１８０１）、見つかったか否かを判断する（ステップＳ１８０２）。見つかった場合（ステップＳ１８０２でＹｅｓ）、パケット照合処理部１４１はパケット照合処理テーブル１４３で指定されたアクションを実行する（ステップＳ１８０３）。一方、見つからなかった場合（ステップＳ１８０２でＮｏ）、パケットの照合処理を終了する。
【００７６】
次に、スイッチＬＳＩ８１におけるエンキュー処理について図１９を用いて説明する。エンキュー処理の主体がどこになるかは実装に依存するが、ここでは例えば送信キュー１４６が処理の主体となる。エンキュー時にキュー長が、例えば第３閾値をまたいで変化する場合、キュー閾値通過通知をプロセッサへ送信する（ステップＳ１９０１）。送信キュー１４６に空きがあるか否かを判断する（ステップＳ１９０２）。空きがある場合（ステップＳ１９０２でＹｅｓ）、キュー長と、第１閾値及び第２閾値とに基づいて、ＥＣＮをマーキングする確率を計算する（ステップＳ１９０３）。具体的には図２Ｂに示す関数を用いて計算する。一方、空きがない場合（ステップＳ１９０２でＮｏ）、パケットの送信ができないため、パケット廃棄し（ステップＳ１９０４）、エンキュー処理を終了する。
【００７７】
マーキングの確率を計算後、ＥＣＮをマークするか否かを判断する（ステップＳ１９０５）。すなわち、計算された確率に基づいてマークを付与するか否かを決定する。ＥＣＮをマークする場合（ステップＳ１９０５でＹｅｓ）、パケット情報にＥＣＮマークを付与し（ステップＳ１９０６）、パケット情報を送信キュー１４６に格納する（ステップＳ１９０７）。一方、ＥＣＮをマークしない場合（ステップＳ１９０５でＮｏ）、ステップＳ１９０７へ進む。
【００７８】
次に、実施形態における管理装置の機能構成について図２０を用いて説明する。管理装置４１は、パケット受信部（受信部とも言う）２００、パケット送信部（送信部とも言う）２０１、受信識別処理部２０２、輻輳原因推定部（推定部とも言う）２０３、輻輳原因特定部（特定部とも言う）２０４、輻輳検知情報テーブル２０５、輻輳フロー情報テーブル２０６、フロー流量情報テーブル２０７、輻輳フロー候補テーブル２０８、ネットワークトポロジ情報テーブル２０９から構成されている。
【００７９】
パケット受信部２００はスイッチ１３から輻輳検知情報、輻輳フロー情報、カウント情報などを受信し、パケット送信部２０１はスイッチ１３へ特定パターンカウント設定や特定パターンカウント取得要求などを送信する。
【００８０】
受信識別処理部２０２は、受信したパケットの内容を確認し、パケットの内容に応じて各種テーブルに記録する。
【００８１】
輻輳原因推定部２０３は、輻輳検知情報テーブル２０５の輻輳検知情報と、輻輳フロー情報テーブル２０６の輻輳フロー情報と、ネットワークトポロジ情報テーブル２０９のネットワークトポロジの情報とに基づいて、輻輳に関係する関係フローの候補を推定する。
【００８２】
輻輳原因特定部２０４は、フロー流量情報テーブル２０７に記録された関係フローの候補におけるフロー数（パケット数）と量（バイト数）に基づいて輻輳の原因フローを特定する。なお、輻輳原因特定部２０４は、特定された輻輳の原因フローの情報を不図示の表示装置などに表示するようにしてもよい。関係フローの候補におけるフロー数（パケット数）と量（バイト数）は、上述したように、特定パターンカウント設定に基づいてスイッチ１３によって集計されたものである。
【００８３】
輻輳検知情報テーブル２０５は、スイッチ１３から送信された輻輳検知情報を記録する。
【００８４】
輻輳フロー情報テーブル２０６は、スイッチ１３から送信された輻輳フロー情報を記録する。
【００８５】
フロー流量情報テーブル２０７は、スイッチ１３から送信されたカウント情報を記録する。
【００８６】
輻輳フロー候補テーブル２０８は、輻輳原因推定部２０３によって推定された輻輳に関係する関係フローの候補を記録する。
【００８７】
ネットワークトポロジ情報テーブル２０９は、ネットワークトポロジ情報を記録、すなわちポートの接続関係を示す情報を記録する。例えば、図２１に示すようにＰＩＤ（ポートＩＤ）１１とＰＩＤ２１が接続し、ＰＩＤ１２とＰＩＤ３１が接続することを示している。ここで、ＰＩＤに付された数字の組を、例えばデバイスＩＤとポート番号の組と定める。すなわち、ＰＩＤ１１はデバイスＩＤが１のデバイス２１０においてポート番号が１であることを示している。ＰＩＤ２１はデバイスＩＤが２のデバイス２１１においてポート番号が１であることを示している。ＰＩＤ３１はデバイスＩＤが３のデバイス２１２においてポート番号が１であることを示している。なお、デバイスＩＤはスイッチＩＤなどネットワークデバイスを一意に特定できるものである。
【００８８】
次に、実施形態における管理装置の輻輳に関係する関係フロー候補の推定及び特定パターンカウント設定の指示の送信処理について図２２を用いて説明する。
【００８９】
管理装置４１はスイッチ１３から輻輳検知情報を受信し（ステップＳ２２０１）、輻輳検知情報を輻輳検知情報テーブル２０５へ記録する（ステップＳ２２０２）。一方、管理装置４１はスイッチ１３から輻輳フロー情報を受信し（ステップＳ２２０３）、輻輳フロー情報を輻輳フロー情報テーブル２０６に記録する（ステップＳ２２０４）。なお、輻輳検知情報と輻輳フロー情報は異なるスイッチ１３から受信するため、受信処理と記録処理の順番が異なる場合がある。例えば、輻輳検知情報を輻輳検知情報テーブル２０５へ記録する前に輻輳フロー情報を受信する場合などもある。よって、処理の順番はこのフローに限定されるものではない。
【００９０】
管理装置４１は、輻輳検知情報テーブル２０５の輻輳検知情報、輻輳フロー情報テーブル２０６の輻輳フロー情報、ネットワークトポロジ情報テーブル２０９のネットワークトポロジ情報を参照して、輻輳検知情報と輻輳フロー情報を照合する（ステップＳ２２０５）。管理装置４１は照合した結果、マッチしたか否かを判断する（ステップＳ２２０６）。
【００９１】
マッチした場合（ステップＳ２２０６でＹｅｓ）、管理装置４１は輻輳フロー候補のリストを作成し、輻輳フロー候補テーブル２０８に記録する（ステップＳ２２０７）。すなわち、輻輳に関係する関係フロー候補の推定を行う。なお、マッチしない場合（ステップＳ２２０６でＮｏ）、処理は終了する。
【００９２】
管理装置４１は輻輳フロー候補テーブル２０８のリストに基づき、特定パターンカウント設定の指示を作成し、対象スイッチ１３へ送信し、対象スイッチ１３から受信した特定パターンの識別番号を輻輳フロー候補テーブル２０８に記録する（ステップＳ２２０８）。
【００９３】
次に、実施形態における管理装置の輻輳の原因フローを特定する処理について図２３を用いて説明する。管理装置４１はスイッチ１３から識別番号を受信してから一定時間待つ（ステップＳ２３０１）。管理装置４１は輻輳フロー候補テーブル２０８に記録された識別番号を含む特定パターンカウント取得の指示を作成し、対象スイッチ１３に送信する（ステップＳ２３０２）。管理装置４１は対象スイッチ１３からの応答を待ち、受信したカウント情報をフロー流量情報テーブル２０７に記録する（ステップＳ２３０３）。
【００９４】
管理装置４１はフロー流量情報テーブル２０７を走査し、最も流量の多いフローから輻輳原因の寄与率が高いと決定し、決定されたフローをリスト化する（ステップＳ２３０４）。なお、ここでは最も流量の多いフローに基づいてリスト化しているが、これに限定されるものではない。管理装置４１は、リスト化した結果を不図示の表示装置や外部の全体を管理する不図示の全体管理装置に送信する（ステップＳ２３０５）。なお、ステップＳ２３０５の処理は必須の処理ではない。
【００９５】
次に、実施形態における管理装置のハードウェア構成について図２４を用いて説明する。管理装置４１のハードウェアは、ＣＰＵ２４０、ＨＤＤ（Hard Disk Drive）２４１、ＲＡＭ（Random Access Memory）２４２、ＲＯＭ（Read Only Memory）２４３、通信インタフェース２４４、バス２４５から構成されている。ＣＰＵ２４０、ＨＤＤ２４１、ＲＡＭ２４２、ＲＯＭ２４３、通信インタフェース２４４は、例えばバス２４５を介して互いに接続されている。
【００９６】
ＣＰＵ２４０は、バス２４５を介して、ＨＤＤ２４１などに格納される各種処理（例えば、輻輳に関係する関係フロー候補の推定処理や輻輳の原因フローの特定処理など）を行うためのプログラムを読み込み、読み込んだプログラムをＲＡＭ２４２に一時的に格納し、そのプログラムにしたがって各種処理を行う。ＣＰＵ２４０は、主として、プログラムを実行することで、上述した受信識別処理部２０２、輻輳原因推定部２０３、輻輳原因特定部２０４の各機能を実現する。
【００９７】
ＨＤＤ２４１には、管理装置４１の各種処理を行うためのアプリケーションプログラムや、管理装置４１の処理に必要なデータなどが格納される。ＨＤＤ２４１は、主として輻輳検知情報テーブル２０５、輻輳フロー情報テーブル２０６、フロー流量情報テーブル２０７、輻輳フロー候補テーブル２０８、ネットワークトポロジ情報テーブル２０９の情報を格納する。
【００９８】
ＲＡＭ２４２は、揮発性メモリであって、ＣＰＵ２４０に実行させるためのＯＳ（Operating System）プログラムやアプリケーションプログラムの一部が一時的に格納される。また、ＲＡＭ２４２には、ＣＰＵ２４０による処理に必要な各種データが格納される。
【００９９】
ＲＯＭ２４３は、不揮発性メモリであって、ブートプログラムやＢＩＯＳ（Basic Input / Output System）などのプログラムを記憶する。
【０１００】
通信インタフェース２４４は、外部（スイッチなど）とネットワークを介してデータの送受信を行うものである。
【０１０１】
バス２４５は、各装置間の制御信号、データ信号などの授受を媒介する経路である。
【０１０２】
実施形態の情報処理システムの１つの側面によれば、ネットワークで輻輳を引き起こしているフローの情報を取得することができる。フロー全体の観測を行うためには、ホスト数がＮ個としてＮ２個のフローを観測する必要があるのに対し、実施形態では例えば輻輳に強く関係するフローが１０個と見積る（特定する）場合であれば１０個の観測を行うリソースのみを必要とする。
【０１０３】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）複数のフローを通信するスイッチと、情報処理装置とを備える情報処理システムにおける前記情報処理装置であって、
輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記スイッチから受信する受信部と、
受信された前記輻輳の発生を示す情報及び前記フロー情報に基づいて輻輳に関係するフローを推定する推定部とを、
有することを特徴とする情報処理装置。
（付記２）前記推定部は、ポートの接続関係を示すネットワークトポロジ情報を更に含めて、前記輻輳に関係するフローを推定することを特徴とする付記１に記載の情報処理装置。
（付記３）推定した輻輳に関係するフローの流量を示す情報のカウント指示を送信する送信部を更に有し、
前記カウント指示に応じて前記情報を集計する前記スイッチによって前記情報処理装置へ送信される前記情報に基づいて、輻輳の原因フローを特定する特定部を有することを特徴とする付記１又は２に記載の情報処理装置。
（付記４）前記送信部は、前記カウント指示を送信し、所定の時間を経過した後に前記スイッチによって集計された前記情報を取得するための取得要求を前記スイッチに送信することを特徴とする付記３に記載の情報処理装置。
（付記５）複数のフローを通信するスイッチと、情報処理装置とを備える情報処理システムにおける前記情報処理装置によって実行される情報処理プログラムであって、
輻輳の発生を示す情報及び輻輳を検知したパケットのフロー情報を前記スイッチから受信し、
受信された前記輻輳の発生を示す情報及び前記フロー情報に基づいて輻輳に関係するフローを推定する、
処理を前記情報処理装置のコンピュータに実行させることを特徴とする情報処理プログラム。
（付記６）ポートの接続関係を示すネットワークトポロジ情報を更に含めて、前記輻輳に関係するフローを推定することを特徴とする付記５に記載の情報処理プログラム。
（付記７）推定した輻輳に関係するフローに関する情報のカウント指示を送信し、
前記カウント指示に応じて前記情報を集計する前記スイッチによって前記情報処理装置へ送信される前記情報に基づいて、輻輳の原因フローを特定することを特徴とする付記５又は６に記載の情報処理プログラム。
（付記８）前記カウント指示を送信し、所定の時間を経過した後に前記スイッチによって集計された前記情報を取得するための取得要求を前記スイッチに送信することを特徴とする付記７に記載の情報処理プログラム。
【符号の説明】
【０１０４】
１１  送信装置
１２  受信装置
１３  スイッチ
１４  キュー
４０、６０  情報処理システム
４１  管理装置
６１  管理ネットワーク
６２  サーバ
８０  プロセッサ
８０ａ  管理インタフェース
８０ｂ  スイッチＬＳＩインタフェース
８０ｃ  フロー情報管理部
８０ｄ  輻輳情報管理部
８０ｅ  パターンカウント管理部
８０ｆ  フロー情報テーブル
８０ｇ  輻輳情報テーブル
８０ｈ  パターンカウントテーブル
８１  スイッチＬＳＩ
８２  管理ポート
８３  ポート
２００  パケット受信部
２０１  パケット送信部
２０２  受信識別処理部
２０３  輻輳原因推定部
２０４  輻輳原因特定部
２０５  輻輳検知情報テーブル
２０６  輻輳フロー情報テーブル
２０７  フロー流量情報テーブル
２０８  輻輳フロー候補テーブル
２０９  ネットワークトポロジ情報テーブル
２１０、２１１、２１２  デバイス
２４０  ＣＰＵ
２４１  ＨＤＤ
２４２  ＲＡＭ
２４３  ＲＯＭ
２４４  通信インタフェース
２４５  バス
１４０  マルチプレクサ
１４１  パケット照合処理部
１４２  中継処理部
１４３  パケット照合処理テーブル
１４４  中継テーブル
１４５  パケットバッファ
１４６（１４６ａ、１４６ｂ、・・・、１４６ｎ）  送信キュー
１４７（１４７ａ、１４７ｂ、・・・、１４７ｎ）  パケット更新部
【図１】
2019047254.tif 000003
【図２Ａ】
2019047254.tif 000004
【図２Ｂ】
2019047254.tif 000005
【図３】
2019047254.tif 000006
【図４】
2019047254.tif 000007
【図５Ａ】
2019047254.tif 000008
【図５Ｂ】
2019047254.tif 000009
【図５Ｃ】
2019047254.tif 000010
【図６】
2019047254.tif 000011
【図７】
2019047254.tif 000012
【図８】
2019047254.tif 000013
【図９】
2019047254.tif 000014
【図１０】
2019047254.tif 000015
【図１１】
2019047254.tif 000016
【図１２】
2019047254.tif 000017
【図１３】
2019047254.tif 000018
【図１４】
2019047254.tif 000019
【図１５】
2019047254.tif 000020
【図１６】
2019047254.tif 000021
【図１７】
2019047254.tif 000022
【図１８】
2019047254.tif 000023
【図１９】
2019047254.tif 000024
【図２０】
2019047254.tif 000025
【図２１】
2019047254.tif 000026
【図２２】
2019047254.tif 000027
【図２３】
2019047254.tif 000028
【図２４】
2019047254.tif 000029