(57)【要約】【課題】ネットワーク使用中にネットワークの帯域幅が変化したことを自動的に検知するネットワークパラメータの変動検出方法およびｉＳＣＳＩイニシエータを提供する。【解決手段】ネットワークパラメータ変動検出部４は、ｉＳＣＳＩ接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行って当該データの往復遅延を計測し、往復遅延の計測をＴＣＰコネクションの数を変えて複数回行って、所定の計算式によりネットワーク定数を算出し、算出したネットワーク定数を用いて、固定化したコネクションの数のもとで算出した往復遅延の変化量と、固定化したコネクションの数のもとで計測した往復遅延の変化量とを比較して所定の範囲を超える差がある場合にネットワークパラメータが変動したと判定する。【選択図】図２
2012028919.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置とデバイス装置とがＩＰネットワークを介して接続されるときに、ホスト装置によりネットワークパラメータの変動検出する方法であって、
前記接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行って当該データの往復遅延を計測するステップと、
前記往復遅延の計測を前記ＴＣＰコネクションの数を変えて複数回行って、所定の計算式によりネットワーク定数を算出するステップと、
算出した前記ネットワーク定数を用いて、固定化したコネクションの数のもとで算出した往復遅延の変化量と、固定化したコネクションの数のもとで計測した往復遅延の変化量とを比較して所定の範囲を超える差がある場合にネットワークパラメータが変動したと判定するステップと、
を含むことを特徴とするネットワークパラメータの変動検出方法。
【請求項２】
前記ネットワーク定数を算出するステップは、
所定の計算式
ｄＲ＝ｆ（ｎ，Ｒ，ｑ，τ，ｃ，ψ，ξ）
（ｄＲ：往復遅延の変化量、ｎ：コネクション数、Ｒ：往復遅延、ｑ：平均キュー長、τ：伝送路の遅延、ｃ：帯域幅、ψ：変数、ξ：変数）
に前記複数回の計測値を代入して連立方程式を導出し、該連立方程式を解いて前記ネットワーク定数を算出することを特徴とする請求項１に記載のネットワークパラメータの変動検出方法。
【請求項３】
デバイス装置とＩＰネットワークを介して接続され、該接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行うホスト装置であって、
前記接続をとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を変数として、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数の増減を決定するＴＣＰコネクション数制御部と、
前記接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行って当該データの往復遅延を計測し、前記往復遅延の計測を前記ＴＣＰコネクションの数を変えて複数回行って、所定の計算式によりネットワーク定数を算出し、算出した前記ネットワーク定数を用いて、固定化したコネクションの数のもとで算出した往復遅延の変化量と、固定化したコネクションの数のもとで計測した往復遅延の変化量とを比較して所定の範囲を超える差がある場合にネットワークパラメータが変動したと判定するネットワークパラメータ変動検出部と、
を備えることを特徴とするホスト装置。
【請求項４】
前記ネットワークパラメータ変動検出部は、
所定の計算式
ｄＲ＝ｆ（ｎ，Ｒ，ｑ，τ，ｃ，ψ，ξ）
（ｄＲ：往復遅延の変化量、ｎ：コネクション数、Ｒ：往復遅延、ｑ：平均キュー長、τ：伝送路の遅延、ｃ：帯域幅、ψ：変数、ξ：変数ξ）
に前記複数回の計測値を代入して連立方程式を導出し、該連立方程式を解いて前記ネットワーク定数を算出することを特徴とする請求項３に記載のホスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のＴＣＰコネクションを利用するデータ通信に際して、利用するＩＰネットワークの帯域や遅延などが予め未知であって、時間変動の可能性のあるネットワークの条件の下で、ネットワークパラメータが変化したことを検出する方法に関する。
【背景技術】
【０００２】
（ｉＳＣＳＩ）
単体、もしくは複数のハードディスクドライブの集合体、あるいは専用の制御部で複数のハードディスクドライブを制御するディスクアレイ装置等から構成されるストレージ装置が実用化されている。ストレージ装置とホスト装置（サーバ、ＰＣ）間を接続するインターフェース技術としては、ファイバチャネル（ＦＣ：Fiber Channel）、インフィニバンド（InfiniBand）、ＳＣＳＩ（Small Computer Systems Interface）などがある。ＳＣＳＩインターフェースは、近距離間を経済的に接続する用途として優れ、既に広く普及している。当該インターフェースでは、クライアントに相当する機能をイニシエータ、サーバに相当する機能をターゲットと呼び、イニシエータとターゲット間でＳＣＳＩコマンド（ＣＤＢ：Command Descriptor Block）を交換する。ｉＳＣＳＩ（Internet SCSI）技術は、２００４年にネットワークプロトコルであるＴＣＰ／ＩＰの上位プロトコルとしてＩＥＴＦ（The Internet Engineering Task Force）でＲＦＣ３７２０によって標準化された（非特許文献１参照）。現在、ｉＳＣＳＩ技術は、ギガビット以上の回線品質、特にデータセンター内、データセンター間や大規模ＬＡＮシステム等の基幹回線で利用されている。ｉＳＣＳＩ技術には、１本のｉＳＣＳＩセッション内に、複数のＴＣＰコネクションを確立して、データ転送を行うＭＣ／Ｓ（Multi-Connections per Session）の機能が規定されている。
【０００３】
（ｉＳＣＳＩ高速化技術）
高遅延特性を有するＩＰネットワーク上で、ネットワーク遅延によるｉＳＣＳＩスループットの低下を防ぐ方法として、ＭＣ／Ｓの有効性は知られている（非特許文献２、３参照）。また、ＴＣＰコネクションの複数利用の実現手段としてマルチリンクを用いる手法（非特許文献４参照）やトランスポート層のプロトコルを変更する方法（非特許文献５参照）なども提案されている。例えば、マルチリンクを用いる手法である非特許文献４では、ＶＰＮのマルチホーミング機能を用いて、並列ＴＣＰコネクションを複数の経路で確立させ、スループット向上を実現する手法が提案されている。また、トランスポート層のプロトコルを変更する手法である非特許文献５では、複数のＬＡＮポートを利用して物理的にリンクを多重化し、ＴＣＰコネクションを異なる経路で確立することによりスループットの向上を図っている。しかしながら、前者（非特許文献４）はマルチリンクを利用できる環境に制限があり、後者（非特許文献５）はマルチベンダー機器への接続が困難であるという課題を有する。
【０００４】
（ＴＣＰ多重接続数自動調整技術）
ｉＳＣＳＩ接続への適用のみならず、並列ＴＣＰコネクション利用の有効性は、非特許文献６で性能評価が行われている。その結果、並列ＴＣＰコネクション数が増加するにつれてＴＣＰスループットは増加するものの、多すぎると逆にＴＣＰスループットが低下することが知られている。
与えられたネットワークに応じて、ＭＣ／ＳのＴＣＰコネクション数を自動的に調整する機構ｉＳＣＳＩ−ＡＰＴ（iSCSI with Automatic Parallelism Tuning）が特許文献１で示されている。ｉＳＣＳＩ−ＡＰＴは、広域・広帯域ネットワークを介して、遠隔に設置されたストレージ装置間のレプリケーションを行うなど、連続的なデータ転送を主な用途とする制御技術である。ｉＳＣＳＩイニシエータへの付加機能であるため、ＭＣ／Ｓ機能をサポートした市販のｉＳＣＳＩターゲット装置が利用可能であるとともに、ＴＣＰの実装に依存しないことから適用範囲が広いという長所を持つ。
【０００５】
（ＲＥＤ（Random Early Detection））
ＲＥＤ（非特許文献７参照）は、輻輳回避アルゴリズムであり、キューが一杯にならないことを確実にすることで、ネットワークの輻輳を回避することを目的とする。キューの平均的な長さ（サイズ）を連続的に計算し、２つの閾値（下限の閾値、上限の閾値）と比較することによって処理が行われる。平均的なキューのサイズが下限の閾値を下回っている場合は、パケットは廃棄されず、反対に、上限の閾値を上回っている場合は、新たに到着するすべてのパケットを廃棄する。平均的なキューのサイズが、上限と下限の閾値の間にあれば、平均的なキューのサイズから導出される確率に基づいて、新たに到着するパケットが廃棄される。この結果、平均的なキューのサイズが上限の閾値に近付くほどパケット廃棄率は高まる。また、パケット廃棄の際に、ＲＥＤではパケットの送出先をランダムに選択するため、帯域幅の総量の多い接続ほど、パケットの廃棄される確率が高くなる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２００６１１号公報
【非特許文献】
【０００７】
【非特許文献１】RFC3720 Internet Small Computer Systems Interface (iSCSI), Apr 2004.
【非特許文献２】Q.K.Yang, “On performance of parallel iSCSI protocol for networked storage systems,” in Proceedings of the 20th International Conference on Advanced Information Networking and Applications (AINA 2006), vol.1, pp.629-636, Apr. 2006.
【非特許文献３】G.Motwani and K.Gopinath, “Evaluation of advanced TCP stacks in the iSCSI environment using simulation model,” Proceedings of the 22nd IEEE/13th NASA Goddard Conference on Mass Storage Systems and Technologies (MSST’05), pp.210-217, 2005.
【非特許文献４】B.K.Kancheria, G.M.Narayan, and K.Gopinath, “Performance evaluation of Multiple TCP connection in iSCSI,” in Proceedings of the 24th IEEE Conference on Mass Storage Systems and Technologies, pp.239-244, IEEE Computer Society, Sept. 2007.
【非特許文献５】千島  望、山口  実靖、小口  正人、“ｉＳＣＳＩストレージにおけるＶＰＮ複数経路アクセス時の性能とＴＣＰパラメータ解析”、電子情報通信学会  第１８回データ工学ワークショップ  ＤＥＷＳ２００７、Ｆｅｂ．２００７
【非特許文献６】L.Qiu, Y.Zhang, and S.Keshav, “On individual and aggregate TCP Performance,” in Proceedings of Internet Conference on Network Protocols, pp.203-212, Oct. 1999.
【非特許文献７】S.Floyd, and V.Jacobson, “Random Early Detection Gateways for Congestion Avoidance,” in IEEE/ACM Transactions on Networking, Aug. 1993.
【非特許文献８】Jitendra Padhye, Victor Firoiu, Don Towsley, and Jim Kurose, “Modeling TCP Throughput A Simple Model and its Empirical Validation”, Department of Computer Science, University of Massachusetts,［online］,［２０１０年２月８日検索］,インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｅｃｓｅ．ｒｐｉ．ｅｄｕ／Ｈｏｍｅｐａｇｅｓ／ｓｈｉｖｋｕｍａ／ｔｅａｃｈｉｎｇ／ｓｐ２００１／ｒｅａｄｉｎｇｓ／Ｐａｄｈｙｅ９８．ｐｄｆ＞
【発明の概要】
【発明が解決しようとする課題】
【０００８】
帯域予約型のネットワークサービスが利用可能となりつつある。当該ネットワークを利用して、ＴＣＰ／ＩＰプロトコルを多重接続するデータ転送手段において、予め帯域幅や往復遅延などのパラメータが不明の場合でも、予約ネットワークを使用した転送スループットを最大化するためのＴＣＰコネクション数へ自動的に調整する手法が特許文献１に開示されている。
しかし、特許文献１に記載された手法は、利用するネットワークの帯域幅が利用期間中は一定である場合を前提としているため、利用期間中に帯域が変化する場合は、最適利用（スループットの最大化）を保証できなかった。
以上を解決するには、データ送信側で、帯域幅が変化したことを自動的に検知し、再度、ＴＣＰコネクション数を最適化するアルゴリズムを駆動する必要がある。
【０００９】
本発明は、このような問題点に鑑みてなされたものであり、本発明の目的は、ネットワーク使用中にネットワークの帯域幅が変化したことを自動的に検知するネットワークパラメータの変動検出方法およびホスト装置を提供することにある。
【課題を解決するための手段】
【００１０】
帯域予約型ネットワークサービスでは、サービス利用中の帯域幅を途中で増減できる場合がある。ＴＣＰコネクション数を複数利用する並列転送などのアプリケーションでは、転送効率を高く維持するために、帯域幅の増減に合わせて、使用中のコネクション数を増減調整する必要がある。このため、コネクション数を再度調整するための契機を得る、帯域幅等のパラメータの変動検出の手法が必要となっている。
【００１１】
ＴＣＰコネクションを複数利用して並列転送を行う場合、リンク予約の当初の段階で異なったコネクション数を用いながら、転送効率の高いコネクションに自動的に調整することが可能である。この処理に際し、送信側では往復遅延（ＲＴＴ：Round Trip Time）を計測することから、併せて、往復遅延の変動量を測定することが可能である。この結果、送信側では、コネクション数と往復遅延、および往復遅延の変動などから導出できるネットワーク定数がある。コネクション数が安定した段階で、得られたネットワークパラメータと利用中のコネクション数から得られる算定値を計測することで、帯域幅の変化を検出することが可能となる。
【００１２】
すなわち、本発明は、ホスト装置とデバイス装置とがＩＰネットワークを介して接続されるときに、ホスト装置によりネットワークパラメータの変動検出する方法であって、前記接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行って当該データの往復遅延を計測するステップと、前記往復遅延の計測を前記ＴＣＰコネクションの数を変えて複数回行って、所定の計算式によりネットワーク定数を算出するステップと、算出した前記ネットワーク定数を用いて、固定化したコネクションの数のもとで算出した往復遅延の変化量と、固定化したコネクションの数のもとで計測した往復遅延の変化量とを比較して所定の範囲を超える差がある場合にネットワークパラメータが変動したと判定するステップとを含むことを特徴とする。
【００１３】
前記ネットワーク定数を算出するステップは、所定の計算式
ｄＲ＝ｆ（ｎ，Ｒ，ｑ，τ，ｃ，ψ，ξ）
（ｄＲ：往復遅延の変化量、ｎ：コネクション数、Ｒ：往復遅延、ｑ：平均キュー長、τ：伝送路の遅延、ｃ：帯域幅、ψ：変数、ξ：変数）
に前記複数回の計測値を代入して連立方程式を導出し、該連立方程式を解いて前記ネットワーク定数を算出することが好ましい。
【００１４】
また、本発明は、デバイス装置とＩＰネットワークを介して接続され、該接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行うホスト装置であって、前記接続をとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を変数として、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数の増減を決定するＴＣＰコネクション数制御部と、前記接続の中に形成されたＴＣＰコネクションを用いてデータの送受信を行って当該データの往復遅延を計測し、前記往復遅延の計測を前記ＴＣＰコネクションの数を変えて複数回行って、所定の計算式によりネットワーク定数を算出し、算出した前記ネットワーク定数を用いて、固定化したコネクションの数のもとで算出した往復遅延の変化量と、固定化したコネクションの数のもとで計測した往復遅延の変化量とを比較して所定の範囲を超える差がある場合にネットワークパラメータが変動したと判定するネットワークパラメータ変動検出部とを備えることを特徴とする。
【００１５】
前記ネットワークパラメータ変動検出部は、所定の計算式
ｄＲ＝ｆ（ｎ，Ｒ，ｑ，τ，ｃ，ψ，ξ）
（ｄＲ：往復遅延の変化量、ｎ：コネクション数、Ｒ：往復遅延、ｑ：平均キュー長、τ：伝送路の遅延、ｃ：帯域幅、ψ：変数、ξ：変数ξ）
に前記複数回の計測値を代入して連立方程式を導出し、該連立方程式を解いて前記ネットワーク定数を算出することが好ましい。
【発明の効果】
【００１６】
特許文献１の手法を用いることで、予め帯域幅と往復遅延が不明なネットワーク利用に際して、スループットを最大化するＴＣＰコネクション数を探索し、自動設定できる。しかし、当該手法は利用開始時という明確なトリガーの下でのみ利用可能な手法であり、帯域幅が使用中に変化するような状況の下では、スループットを最適化した状態を維持することは難しい。
例えば、帯域予約型のネットワークでは、ネットワークの予約時間帯の中で帯域を増減することができるものがある。帯域幅切り替えの時間精度は他のネットワークとの関係で、高く設定することは困難である。
【００１７】
図６は、帯域予約型ネットワーク利用時の時間推移と利用できる帯域の関係例を示す図である。この例では、予約開始時刻ｔｓから、帯域変動時刻ｔｍまでを、帯域ｃ１で予約を行い、ｔｍから予約終了時刻ｔｅまでを、帯域ｃ２で予約している。ただし、帯域予約型ネットワークにおいては、ｔｍの精度は高くなく、予めｉＳＣＳＩイニシエータは当該時刻を正確に知り得ないものとする。
【００１８】
このようなネットワーク利用条件の下で、特許文献１の手法を運用するためには、帯域の増減が行われたことを、送信側で自動的に検知し、再度、新たに増減した帯域に対して、最適化したＴＣＰコネクション数の調整を行う必要があった。
【００１９】
本発明によれば、特許文献１の手法を駆動するに際して、往復遅延などの計測値を用いて、帯域幅の変動指標算出が可能であり、定期的な計測により、帯域の増減を検出することが可能となり、特許文献１の手法の適用領域を拡大することが可能となる。
【図面の簡単な説明】
【００２０】
【図１】ＴＣＰ多重接続（複数コネクション）を利用するｉＳＣＳＩ接続セッションの動作概要を示す図である。
【図２】本発明の実施形態に係る、ｉＳＣＳＩイニシエータへ帯域変動を検知する機能を追加した構成例を示す図である。
【図３】利用するネットワークのパケット制御がＲＥＤにより処理される場合の、リンクキュー長ｑとパケット廃棄確率ｐの関係（式（２））を示す図である。
【図４】利用するネットワークの往復遅延Ｒを構成する片道遅延τとリンクキュー長ｑ、ネットワークの帯域ｃの関係（式（５））を示す図である。
【図５】ＴＣＰコネクション数と、各コネクション数の下でのチャンクと呼ぶ小データサイズのスループットの関係を示す図である。
【図６】帯域予約型ネットワーク利用時の時間推移と利用できる帯域の関係例を示す図である。
【発明を実施するための形態】
【００２１】
以下、図１〜図５に基づき本発明の実施形態を詳細に説明する。図１は、ｉＳＣＳＩイニシエータ１とｉＳＣＳＩターゲット２とがＩＰ（Internet Protocol）ネットワークを介して、ｉＳＣＳＩ接続される基本的な形態を示している。ｉＳＣＳＩイニシエータ１は、ホスト装置を構成するサーバに実装される一方、ｉＳＣＳＩターゲット２は、デバイス装置を構成するストレージに実装される。ｉＳＣＳＩ接続（iSCSI session）の中にＴＣＰコネクションを複数形成することが可能であり、ＴＣＰコネクション数をｎと表記する。
【００２２】
図２は、図１に示すｉＳＣＳＩイニシエータ１に、ＴＣＰコネクション数の制御機能を有するｉＳＣＳＩ−ＡＰＴ（Automatic Parallelism Tuning：ＴＣＰコネクション数制御部）３と、ネットワークパラメータ変動検出部４が追加された本発明の構成例を示している。このｉＳＣＳＩ−ＡＰＴ３およびネットワークパラメータ変動検出部４は、サーバ（ホスト装置）の処理部（ＣＰＵ）が、イニシエータ構成プログラムのプログラムコードを読み込んで実現される。
【００２３】
ここではｉＳＣＳＩイニシエータ１を実装したサーバ（ホスト装置）が、ｉＳＣＳＩターゲット２を実装したストレージ（デバイス装置）に書き込む（転送する）データを、ＴＣＰコネクション数ｎが変動してもほぼ一定のサイズのデータ（チャンク）に分割しながら転送する。
このときチャンクは、ｉＳＣＳＩ  ＰＤＵサイズの整数倍となるため、ＴＣコネクション数ｎに対して、各ＴＣＰコネクションにほぼ均等にＮ個を振り分けるとすると、（チャンクサイズ＝ｉＳＣＳＩ  ＰＤＵ数×ｎ×Ｎ）の式が成立する。
【００２４】
以下、図２に基づき動作例Ｓ１〜Ｓ７を説明する。
Ｓ１の処理：まず、ｉＳＣＳＩイニシエータ１の配置されるサーバ内の上位層をとおして、ｉＳＣＳＩ層に書き込み要求のあった転送データを、ＴＣＰコネクション数ｎに依存しない均一サイズのデータ（チャンク）に分割する。
【００２５】
Ｓ２の処理：ｉＳＣＳＩ−ＡＰＴ３が、ｉＳＣＳＩターゲット２（ストレージ）に対してｉＳＣＳＩ接続するために、初期のＴＣＰコネクションを確立し，ｉＳＣＳＩ  ｌｏｇｉｎ認証を行う（通常ここで接続されるＴＣＰコネクションは１本である）。
【００２６】
Ｓ３の処理：Ｓ１の処理で生成したチャンクを、ｉＳＣＳＩのデータ転送単位であるｉＳＣＳＩ  ＰＤＵサイズに分割し、分割したｉＳＣＳＩ  ＰＤＵをＴＣＰコネクションｎ本に対して、ほぼ均等にＮ個に振り分ける。
【００２７】
Ｓ４の処理：振り分けられた各ＴＣＰコネクション毎に転送するｉＳＣＳＩ  ＰＤＵ（約Ｎ個）を各々のＴＣＰコネクションをとおして転送する。このときｉＳＣＳＩ−ＡＰＴ３は、すべてのＴＣＰコネクションの中で一番最初に転送を始めた時刻を記録する。
【００２８】
Ｓ５の処理：ＳＣＳＩターゲット２が、各ＴＣＰコネクション毎にｉＳＣＳＩ  ＰＤＵ受信完了通知、即ちＲ２Ｔ（Ready to transfer）を逐次送信する。
【００２９】
Ｓ６の処理：ｉＳＣＳＩ−ＡＰＴ３により、すべてのＴＣＰコネクションの中で、最後にＲ２Ｔを受信した時刻が記録し、当該チャンクの転送時間から当該チャンク転送でのスループットＧ（Ｎ）を算出し、次のチャンク転送に設定するＴＣＰコネクション数ｎを後述の内蔵アルゴリズム処理に基づいて決定する処理に際して、ネットワークパラメータ変動検出部４により、ネットワーク定数の導出と帯域変動の検出処理、および、ｉＳＣＳＩ−ＡＰＴの再起動を行う。
【００３０】
Ｓ７の処理：次のチャンク転送に設定するＴＣＰコネクション数ｎに変更するため、ＴＣＰコネクションの増減制御を行う。
【００３１】
まず、ｉＳＣＳＩ−ＡＰＴ（ＴＣＰコネクション数制御部）３について説明する。ｉＳＣＳＩ−ＡＰＴ３は、ｉＳＣＳＩ接続を行うサーバとストレージとの間において、ｉＳＣＳＩセッションをとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を変数として、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数の増減を決定するアルゴリズムの処理機能を内蔵する。
【００３２】
ｉＳＣＳＩ−ＡＰＴ３は、図５に示すように、並列ＴＣＰコネクションのスループット（チャンク（データ）／転送時間Ｔ）が、コネクション数ｎの多重度に関して上に凸の関数になるという性質（図５のＡ〜Ｅ）を利用するものであり、ＴＣＰコネクション毎に一定のデータ量に振り分けてｉＳＣＳＩターゲット２と送受信を行い、ｉＳＣＳＩターゲット２側から送信されたＴＣＰコネクション毎の送受信完了通知に基づき送受信に要した時間を求め、ＴＣＰコネクション数を増加させながらデータ送受信のスループット値を計測し、該スループット値が前回値よりも低下したときにＴＣＰコネクション数の数値巾を抽出し、この数値巾に黄金分割比の探索法を適用してＴＣＰコネクション数を絞り込んで、スループット値が最大となるＴＣＰコネクション数の最適値を決定する。そして、次に送受信するために使用するＴＣＰコネクション数を増減制御する。
【００３３】
すなわち、ｉＳＣＳＩ−ＡＰＴ３は、予め使用するネットワークの遅延特性や帯域等の情報が無い場合でも、ｉＳＣＳＩ−ＡＰＴ３の処理機能を動作させることで、動作時のネットワークに最適化したＴＣＰコネクション数Ｎｏｐｔに自動追従させることができる（特許文献１参照）。
【００３４】
次に、本発明に係るネットワークパラメータ変動検出部４の動作について説明する。
非特許文献８によれば、ＴＣＰの平均スループット（Ｔ）は、
【数１】
2012028919.tif 000003
である。ｐはネットワークリンクの廃棄確率とする。
ネットワークのキューイング処理をＲＥＤとすると、ＲＥＤ処理における平均キュー長をｑとして、
【数２】
2012028919.tif 000004
となる（図３参照）。
式（２）の変数ξは、
【数３】
2012028919.tif 000005
また、変数ψは、
【数４】
2012028919.tif 000006
とする。
また、式（１）のＲは、ネットワークの往復遅延（ＲＴＴ：Round Trip Time）であり、
【数５】
2012028919.tif 000007
（図４参照、τは伝送路の遅延、ｃは帯域幅）
一方、ＲＥＤ処理に基づくキュー長の微分方程式
【数６】
2012028919.tif 000008
に対して、式（１）、（２）、（５）を代入し、Ｔ、ｐ、ｑを消去すると、
【数７】
2012028919.tif 000009
式（５）から
【数８】
2012028919.tif 000010
であり、式（７）からｄｑを消去して、
【数９】
2012028919.tif 000011
が得られる。送信側では、式（９）内の３つの変数ｎ、Ｒ、ｄＲを計測することができることから、式（９）内の未知の定数は以下の４つとなる。
【数１０】
2012028919.tif 000012
これは、変数ｎ、Ｒ、ｄＲについて、異なる変数（ＴＣＰコネクション数）ｎの下で、往復遅延Ｒを４回計測すれば、ｃ、τ、ξ、ψを特定できることを意味する。
【００３５】
定数導出後、変数ｎも固定値で運用される状況では、
【数１１】
2012028919.tif 000013
が成り立ち、左辺の算出値が０から外れる場合は、ｃ、τ、ξ、ψのいずれかの定数が変化したことを意味する。
【００３６】
帯域予約型ネットワークでの利用を前提とすると、４つの変数の中で変化量が大きいと想定されるのは、変数ｃ（帯域幅）である。以上の原理に基づき、式（１１）の左辺の値を、ＴＣＰコネクション数ｎが固定運用される状態で、定期的に算出し続けることで、その変化（数字が０から離れる）により、帯域変動を自動検出可能である。
【００３７】
上述したように、本発明は、特定の条件のネットワーク構成のもとでは、未知のネットワークパラメータ定数が固定数であることを利用する。ネットワークパラメータが変動する前に、固定数回分の往復遅延の計測を行いことで、未知のネットワークパラメータ定数を算出する。ネットワークパラメータの変動時には、所定の計算値が変化することを観測してネットワークパラメータが変化したことを検知するものである。
【００３８】
図５は、ｉＳＣＳＩ−ＡＰＴのアルゴルズムを駆動する際のＴＣＰコネクション数と、各コネクション数の下でのチャンクと呼ぶ小データサイズのスループットの関係を示す図である。この例では、ＴＣＰコネクション数の初期値を１とし、以降、コネクション数を２倍増しながらスループットＧを計測し（Ａから始まり、Ｂ、Ｃ、Ｄ、Ｅの順にＴＣＰコネクション数を変更して、スループットの計測を行う）、Ｇが前回計測値を下回った段階から黄金分割法を用いて後方探索を行い、Ｇがピーク値を示すＴＣＰコネクション数を探索している。
【００３９】
ネットワークパラメータ変動検出部４は、ｉＳＣＳＩ−ＡＰＴ３の処理に際して、図５に示すＴＣＰコネクション数が２の時点（Ｂ）と、ＴＣＰコネクション数が４の時点（Ｃ）と、ＴＣＰコネクション数が８の時点（Ｄ）と、ＴＣＰコネクション数が６の時点（Ｅ）において、式（９）に計測値を代入し、方程式を導出する。導出した方程式が４つとなった時点（Ｅ）で、連立方程式を解き、４つの定数ｃ、τ、ξ、ψを算出する。
【００４０】
そして、ｉＳＣＳＩ−ＡＰＴ３の処理により、ＴＣＰコネクション数の増減処理が収束した時点より、式（１１）の左辺を計測し、数値の変動を監視する。数値が大きく外れた場合に帯域増減が生じたと判断し、ｉＳＣＳＩ−ＡＰＴ３の処理を再起動する。
【００４１】
また、ネットワークパラメータ変動検出部４は、ＴＣＰコネクション数の増減処理が収束した以降も、ネットワーク定数を用いて算出する式（１１）の左辺の処理を定期的に行う。
【００４２】
これにより、本発明によれば、特許文献１の手法を駆動するに際して、往復遅延などの計測値を用いて、帯域幅の変動指標算出が可能であり、定期的な計測により、帯域の増減を検出することが可能となり、特許文献１の手法の適用領域を拡大することが可能となる。
【００４３】
なお、本発明は同じネットワーク利用条件の下で、複数のＴＣＰコネクションを利用可能なすべての上位プロトコルにおいて適用可能である（ｉＳＣＳＩだけでなく、ＧｒｉＦＴＰや独自プロトコルを含め複数のＴＣＰコネクションを利用するあらゆるプロトコルにおいて共通に適用可能である）。
【符号の説明】
【００４４】
１  ｉＳＣＳＩイニシエータ１
２  ｉＳＣＳＩターゲット
３  ｉＳＣＳＩ−ＡＰＴ（ＴＣＰコネクション数制御部）
４  ネットワークパラメータ変動検出部
ｓ１  転送データをチャンクに分割
ｓ２  ＴＣＰコネクションを設定
ｓ３  チャンクをｉＳＣＳＩ  ＰＤＵに分割
ｓ４  ｉＳＣＳＩ  ＰＤＵ単位にデータ転送
ｓ５  ｉＳＣＳＩ  ＰＤＵの受信完了を通知
ｓ６  チャンクの転送スループットからＴＣＰコネクション数を算出、ネットワーク定数の導出と帯域変動の検出処理、ｉＳＣＳＩ−ＡＰＴの再起動
ｓ７  ＴＣＰコネクション数を増減制御
【図１】
2012028919.tif 000014
【図２】
2012028919.tif 000015
【図３】
2012028919.tif 000016
【図４】
2012028919.tif 000017
【図５】
2012028919.tif 000018
【図６】
2012028919.tif 000019