(57)【特許請求の範囲】
【請求項１】
ｉＳＣＳＩホスト装置とｉＳＣＳＩデバイス装置とがｉＳＣＳＩセッションによって接続されるときに
ｉＳＣＳＩホスト装置に構築されたイニシエータ機能をもってＴＣＰコネクション数を制御する方法であって、
ｉＳＣＳＩセッションをとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を参照して、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数を決定する第１ステップと、
前記決定に基づき次に送受信するために使用するＴＣＰコネクション数を増減制御する第２ステップと、
を有することを特徴とするｉＳＣＳＩセッションのＴＣＰコネクション数の制御方法。
【請求項２】
前記第１ステップは、ＴＣＰコネクション毎に一定のデータ量に振り分けて前記ｉＳＣＳＩデバイス装置と送受信を行うステップと、
前記ｉＳＣＳＩデバイス装置側から送信されたＴＣＰコネクション毎の送受信完了通知に基づき前記送受信に要した時間を求めるステップと、
を有することを特徴とする請求項１記載のｉＳＣＳＩセッションのＴＣＰコネクション数の制御方法。
【請求項３】
前記第１ステップは、ＴＣＰコネクション数を増加させながらデータ送受信のスループット値を計測し、該スループット値が前回値よりも低下したときにＴＣＰコネクション数の数値巾を抽出するステップと、
前記数値巾に黄金探索法を適用してＴＣＰコネクション数を絞り込んで、スループット値が最大となるＴＣＰコネクション数の最適値を決定するステップと、
を有することを特徴とする請求項１または２いずれか記載のｉＳＣＳＩセッションのＴＣＰコネクション数の制御方法。
【請求項４】
ｉＳＣＳＩデバイス装置とｉＳＣＳＩセッションによって接続されるイニシエータ機能が構築されたｉＳＣＳＩホスト装置であって、
ｉＳＣＳＩセッションをとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を参照して、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数を決定する手段と、
前記決定に基づき次に送受信するために使用するＴＣＰコネクション数を増減制御する手段と、
して機能することを特徴とするｉＳＣＳＩホスト装置。
【請求項５】
ＴＣＰコネクション毎に一定のデータ量に振り分けて前記ｉＳＣＳＩデバイス装置と送受信を行う手段と、
前記ｉＳＣＳＩデバイス装置側から送信されたＴＣＰコネクション毎の送受信完了通知に基づき前記送受信に要した時間を求める手段と、
して機能することを特徴とする請求項４記載のｉＳＣＳＩホスト装置。
【請求項６】
ＴＣＰコネクション数を増加させながらデータ送受信のスループット値を計測し、該スループット値が前回値よりも低下したときにＴＣＰコネクション数の数値巾を抽出する手段と、
前記数値巾に黄金探索法を適用してＴＣＰコネクション数を絞り込んで、スループット値が最大となるＴＣＰコネクション数の最適値を決定する手段と、
して機能することを特徴とする請求項４または５いずれか記載のｉＳＣＳＩホスト装置。
【請求項７】
請求項４〜６記載のｉＳＣＳＩホスト装置として、コンピュータを機能させることを特徴とするｉＳＣＳＩイニシエータの構成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルサーバなどのｉＳＣＳＩホスト装置とストレージなどのｉＳＣＳＩデバイス装置とをＩＰネットワークを介して接続するｉＳＣＳＩの技術に関し、特にスループットを向上させる技術に関する。
【背景技術】
【０００２】
（１）ｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  ＳＣＳＩ）
単体、もしくは複数のハードディスクドライブ装置の集合体、あるいは専用の制御部で複数のハードディスクドライブを制御するディスクアレイストレージ装置等から構成されるストレージ装置が実用化されている。
【０００３】
ストレージ装置（デバイス装置）とホスト装置（サーバ，ＰＣ）間を接続するインタフェース技術としてはファイバチャネル（ＦＣ），インフィニバンド（ＩｎｆｉｎｉＢａｎｄ），ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ）などがある。
【０００４】
ＳＣＳＩインタフェースは近距離間を経済的に接続する用途として優れ、既に広く普及している。当該インタフェースでは、クライアントに相当する機能をイニシエータ，サーバに相当する機能をターゲットと呼び、イニシエータとターゲット間で，ＳＣＳＩコマンド（ＣＤＢ：ＣＯＭＭＡＮＤ  Ｄｅｓｃｒｉｐｔｏｒ  Ｂｌｏｃｋ）を交換する。
【０００５】
ｉＳＣＳＩ（ｉｎｔｅｒｎｅｔ  ＳＣＳＩ）技術は、非特許文献１に示すように、２００４年にネットワークプロトコルであるＴＣＰ／ＩＰの上位プロトコルとして、ＩＥＴＦ（Ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）で標準化された（ＲＦＣ３７２０）。このｉＳＣＳＩ接続は、ファイバチャネルなどの他のネットワークストレージプロトコルと違ってコンピュータにイーサネット（登録商標）インタフェースがあれば使用することができる。
【０００６】
現在、ｉＳＣＳＩ技術は、ギガビット以上の回線品質、特にデータセンター内、データセンター間や大規模ＬＡＮシステム等の基幹回線で利用されている。非特許文献１によれば、ｉＳＣＳＩ技術はＴＣＰコネクションを複数利用する方法を規定しているが、オプション機能のため必ずしも実装されているわけではない．
（２）ｉＳＣＳＩ高速化技術
一方で，広域・広帯域のＩＰネットワーク上で，ネットワーク遅延によるｉＳＣＳＩスループットの低下を防ぐ方法として，ＴＣＰコネクションの複数利用の有効性は知られている（非特許文献２．３）。また、ＴＣＰコネクションの複数利用の実現手段としてマルチリンクを用いる手法の非特許文献４やトランスポート層のプロトコルを変更する非特許文献５なども提案されている。
【０００７】
例えば、マルチリンクを用いる手法に関する非特許文献４では、ＶＰＮのマルチホーミング機能を用いて，並列ＴＣＰコネクションを複数の経路で確立させ，スループット向上を実現する手法が提案されている。
【０００８】
また、トランスポート層のプロトコルを変更する手法に関する非特許文献５では，複数のＬＡＮポートを利用して物理的にリンクを多重化し，ＴＣＰコネクションを異なる経路で確立することによりスループットの向上を図っている。
【０００９】
しかしながら，非特許文献４では、マルチリンクを利用できる環境に制限があり、非特許文献５ではマルチベンダー機器への接続が困難であるという問題を有している。
【非特許文献１】ＲＦＣ３７０  “Ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒ−ｆａｃｅ  （ｉＳＣＳＩ）”，Ａｐｒ  ２００４
【非特許文献２】Ｑ．Ｋ．Ｙａｎｇ，“Ｏｎ  ｐｅｒｆｏｒｍａｃｅ  ｏｆ  ｐａｒａｌｌｅｌ  ｉＳＣＳＩ  ｐｒｏｔｏｃｏｌ  ｆｏｒｎｅｔｗｏｒｋｅｄ  ｓｔｏｒａｇｅ  ｓｙｓｔｅｍｓ，”  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２０ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ａｄｖａｎｃｅｄ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｎｅｔｗｏｒｋｉｎｇ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ  （ＡＩＮＡ  ２００６），  ｖｏｌ．１，  ｐｐ．６２９−６３６，  Ａｐｒ．  ２００６．
【非特許文献３】Ｇ．Ｍｏｔｗａｎｉ  ａｎｄ  Ｋ．Ｇｏｐｉｎａｔｈ，“Ｅｖａｌｕａｔｉｏｎ  ｏｆ  ａｄｖａｎｃｅｄ  ＴＣＰ  ｓｔａｃｋｓ  ｉｎ  ｔｈｅ  ｉＳＣＳＩ  ｅｎｖｉｒｏｎｍｅｎｔ  ｕｓｉｎｇ  ｓｉｍｕｌａｔｉｏｎ  ｍｏｄｅｌ，”  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２２ｎｄ  ＩＥＥＥ／１３ｔｈ  ＮＡＳＡ  Ｇｏｄｄａｒｄ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎＭａｓｓ  Ｓｔｏｒａｇｅ  Ｓｙｓｔｅｍｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  （ＭＳＳＴ≡０５）｝，  ｐｐ．２１０−２１７，  ２００５．
【非特許文献４】Ｂ．Ｋ．Ｋａｎｃｈｅｒｉａ，  Ｇ．Ｍ．Ｎａｒａｙａｎ，  ａｎｄ  Ｋ．Ｇｏｐｉｎａｔｈ，“Ｐｅｒｆｏｒｍａｎｃｅ  ｅｖａｌｕａｔｉｏｎ  ｏｆ  Ｍｕｌｔｉｐｌｅ  ＴＣＰ  ｃｏｎｎｅｃｔｉｏｎ  ｉｎ  ｉＳＣＳＩ，”  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２４ｔｈ  ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｓｙｓｔｅｍｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｉｅｓ，ｐｐ．２３９−２４４，  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ，  Ｓｅｐｔ．  ２００７
【非特許文献５】千島  望，  山口  実靖，  小口  正人，“ｉＳＣＳＩストレージにおけるＶＰＮ複数経路アクセス時の性能とＴＣＰパラメータ解析，”  電子情報通信学会  第１８回データ工学ワークショップ  ＤＥＷＳ２００７，Ｆｅｂ．２００７．
【非特許文献６】Ｌ．Ｑｉｕ，  Ｙ．Ｚｈａｎｇ，  ａｎｄ  Ｓ．Ｋｅｓｈａｖ，“Ｏｎ  ｉｎｄｉｖｉｄｕａｌ  ａｎｄ  ａｇｇｒｅｇａｔｅ  ＴＣＰ  Ｐｅｒｆｏｒｍａｎｃｅ，”  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｉｎｔｅｒｎｅｔ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｎｅｔｗｏｒｋ  Ｐｒｏｔｏｃｏｌｓ，ｐｐ．２０３−２１２，  Ｏｃｔ．  １９９９．
【非特許文献７】Ｔ．Ｉｔｏ，  Ｈ．Ｏｈｓａｋｉ，  ａｎｄ  Ｍ．Ｉｍａｓｅ，“Ｏｎ  ｐａｒａｍｅｔｅｒ  ｔｕｎｉｎｇ  ｏｆ  ｄａｔａｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ  ＧｒｉｄＦＴＰ  ｉｎ  ｗｉｄｅ−ａｒｅａ  Ｇｒｉｄ  ｃｏｍｐｕｔｉｎｇ，”  ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｓｅｃｏｎｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｗｏｒｋｓｈｏｐ  ｏｎ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｇｒｉｄ  Ａｐｐｌｉｃａｔｉｏｎｓ（ＧｒｉｄＮｅｔｓ  ２００５）｝，  ｐｐ．４１５−４２１，  Ｏｃｔ．  ２００５．
【非特許文献８】Ｔ．Ｉｔｏ，  Ｈ．Ｏｈｓａｋｉ，  ａｎｄ  Ｍ．Ｉｍａｓｅ，“ＧｒｉｄＦＴＰ−ＡＰＴ：  Ａｕｔｏｍａｔｉｃ  ｐａｒａｌｌｅｌｉｓｍ  ｔｕｎｉｎｇ  ｍｅｃｈａｎｉｓｍ  ｆｏｒ  ｄａｔａ  ｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ  ＧｒｉｄＦＴＰ，”  ｉｎ    Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ６ｔｈ  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｃｌｕｓｔｅｒ  Ｃｏｍｐｕｔｉｎｇ  ａｎｄ  ｔｈｅ  Ｇｒｉｄ  （ＣＣＧｒｉｄ２００６）｝，  ｐｐ．４５４−４６１，  Ｍａｙ．  ２００６．
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、広域・広帯域のＩＰネットワークにおいてｉＳＣＳＩのスループットが低下する問題は広く知られているものの、この問題を従来は効果的に解決できなかった。
【００１１】
すなわち、広域・広帯域のＩＰネットワークを前提としたｉＳＣＳＩ接続では，スループット向上のため、利用する回線の帯域や遅延情報に基づき予めｉＳＣＳＩ／ＴＣＰなどのパラメータをチューニングし、あるいはサーバとストレージ間にプロトコル変換機を設置してスループットを改善するなど、運用設定が煩雑で、かつ経済的な運用が困難なおそれがあった。
【００１２】
また、このような改善は、固定的な情報に基づく設定であるため，帯域の変動に追随できず、効率的なデータ転送が難しく、またベストエフォート型の経済性の高い回線を利用できないおそれもあった。
【００１３】
そこで本発明は、広域・広帯域のＩＰネットワークにおいてｉＳＣＳＩのスループットが低下する問題を、（１）既存のストレージ装置を利用しつつ、（２）ネットワークの遅延，利用帯域などの利用環境を限定することなく、（３）経済的に解決することを課題としている。
【課題を解決するための手段】
【００１４】
ｉＳＣＳＩ技術は、一つのｉＳＣＳＩセッション内に複数のＴＣＰコネクションを確立して、複数のコマンドを並列に発行し、各ＴＣＰコネクションで同時にデータの送受信を行う機能を有しているものの、前記従来例にはＴＣＰコネクション数をどのように決定するかは記述されていない。
【００１５】
本発明は、並列ＴＣＰコネクションのスループットが多重度に関して上に凸の関数になる性質に着目して創作された技術的思想であり、ＴＣＰコネクションの多重度をスループットに対して最適化させて前記課題を解決している。
【００１６】
具体的には、請求項１記載の発明は、ｉＳＣＳＩホスト装置とｉＳＣＳＩデバイス装置とがｉＳＣＳＩセッションによって接続されるときにｉＳＣＳＩホスト装置に構築されたイニシエータ機能をもってＴＣＰコネクション数を制御する方法であって、ｉＳＣＳＩセッションをとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を参照して、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数を決定する第１ステップと、前記決定に基づき次に送受信するために使用するＴＣＰコネクション数を増減制御する第２ステップと、を有することを特徴としている。
【００１７】
請求項２記載の発明は、前記第１ステップは、ＴＣＰコネクション毎に一定のデータ量に振り分けて前記ｉＳＣＳＩデバイス装置と送受信を行うステップと、前記ｉＳＣＳＩデバイス装置側から送信されたＴＣＰコネクション毎の送受信完了通知に基づき前記送受信に要した時間を求めるステップと、を有することを特徴としている。
【００１８】
請求項３記載の発明は、前記第１ステップは、ＴＣＰコネクション数を増加させながらデータ送受信のスループット値を計測し、該スループット値が前回値よりも低下したときにＴＣＰコネクション数の数値巾を抽出するステップと、前記数値巾に黄金探索法を適用してＴＣＰコネクション数を絞り込んで、スループット値が最大となるＴＣＰコネクション数の最適値を決定するステップと、を有することを特徴としている。
【００１９】
請求項４記載の発明は、ｉＳＣＳＩデバイス装置とｉＳＣＳＩセッションによって接続されるイニシエータ機能が構築されたｉＳＣＳＩホスト装置であって、ｉＳＣＳＩセッションをとおして送受信する一定のデータ量と当該データ量を送受信するのに要した時間との比を参照して、次に送受信する一定のデータ量を送受信するために使用するＴＣＰコネクション数を決定する手段と、前記決定に基づき次に送受信するために使用するＴＣＰコネクション数を増減制御する手段と、して機能することを特徴としている。
【００２０】
請求項５記載の発明は、ＴＣＰコネクション毎に一定のデータ量に振り分けて前記ｉＳＣＳＩデバイス装置と送受信を行う手段と、前記ｉＳＣＳＩデバイス装置側から送信されたＴＣＰコネクション毎の送受信完了通知に基づき前記送受信に要した時間を求める手段と、して機能することを特徴としている。
【００２１】
請求項６記載の発明は、ＴＣＰコネクション数を増加させながらデータ送受信のスループット値を計測し、該スループット値が前回値よりも低下したときにＴＣＰコネクション数の数値巾を抽出する手段と、前記数値巾に黄金探索法を適用してＴＣＰコネクション数を絞り込んで、スループット値が最大となるＴＣＰコネクション数の最適値を決定する手段と、して機能することを特徴としている。
【００２２】
請求項７記載の発明は、請求項４〜６記載のｉＳＣＳＩホスト装置として、コンピュータを機能させることを特徴としている。
【発明の効果】
【００２３】
請求項１〜７記載の発明によれば、ＴＣＰコネクション数の最適値が自動的に算出され、当該値でＴＣＰコネクション数が運用される。したがって、運用設置が簡略化され，帯域変動にも追随でき、これにより与えられた回線で常に効率的なデータ転送が実現可能となり、経済性も向上する。
【００２４】
特に、請求項７記載の発明によれば、既存のｉＳＣＳＩホスト装置にプロラムをインストールすれば足り、システム構築・更新の経済性が一層向上する。
【発明を実施するための最良の形態】
【００２５】
以下、図１〜図５に基づき本発明の実施形態を説明する。図１は、ｉＳＣＳＩイニシエータ１とｉＳＣＳＩターゲット２とがＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）ネットワークを介して、ｉＳＣＳＩ接続される基本的な形態を示している。
【００２６】
前記ｉＳＣＳＩイニシエータ１は、ｉＳＣＳＩホスト装置を構成するファイルサーバに実装される一方、前記ｉＳＣＳＩターゲット２は、ｉＳＣＳＩデバイス装置を構成するディスクストレージ装置に実装されている。ここではｉＳＣＳＩ接続（ｉＳＣＳＩ  ｓｅｓｓｉｏｎ）の中にＴＣＰコネクションを複数形成することができ、ＴＣＰコネクション数を「Ｎ」と表記する。
【００２７】
前記ｉＳＣＳＩイニシエータ１の機能は、ファイルサーバの処理部（ＣＰＵ「Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ」など）が、イニシエータ構成プログラムのプログラムコードを読み込んで、通信デバイス（例えばイーサネットインタフェースなど）を通じて実現構築されている。
【００２８】
なお、前記ファイルサーバは、コンピュータにより構成され、処理データなどを一時記憶可能なメモリ（ＲＡＭ），キーボードやマウスなどの入力デバイス，モニタなどの表示部などを有している。
【００２９】
図２は、前記ｉＳＣＳＩイニシエータ１の機能にＴＣＰコネクション数Ｎの制御機能（図２中のｉＳＣＳＩ−ＡＰＴ「Ａｕｔｏｍａｔｉｃ  Ｐａｒａｌｌｅｌｉｓｍ  Ｔｕｎｉｎｇ」３）が追加された構成を示している。この制御機能は、前記ｉＳＣＳＩイニシエータ１の機能と同様に、ファイルサーバの前記処理部などが前記イニシエータ構成プログラムのプログラムコードを読み込んで実現構築されている。
【００３０】
ここではｉＳＣＳＩイニシエータ１を実装したファイルサーバが、ｉＳＣＳＩターゲット２を実装したストレージ装置に書き込む（転送する）データを、ＴＣＰコネクション数Ｎが変動してもほぼ一定のサイズのデータ（チャンク）に分割しながら転送する。
【００３１】
このときチャンクは，「ｉＳＣＳＩ  ＰＤＵ」サイズの整数倍となるため，ＴＣコネクション数「Ｎ」に対して，各ＴＣＰコネクションにほぼ均等に「ｎ」個を振り分けるとすると以下の式１が成立する。
【００３２】
【数１】
0005179218.tif 000002
【００３３】
以下、図２に基づき動作例Ｓ１〜Ｓ７を説明する。
（１）Ｓ１〜Ｓ７の動作例
Ｓ１の処理：まず、ｉＳＣＳＩイニシエータ１の配置されるファイルサーバ内の上位層、例えばファイルシステムをとおして、ｉＳＣＳＩ層に書き込み要求のあった転送データを、ＴＣＰコネクション数Ｎに依存しない均一サイズのデータ（チャンク）に分割する。チャンクの大きさは、小さすぎるとＴＣＰ／ＩＰプロトコルの特性上、スループットを正確に反映できないため、スループットをほぼ正確に算出できる充分な大きさとする。
【００３４】
Ｓ２の処理：本発明の処理機能であるｉＳＣＳＩ−ＡＰＴ３が、ｉＳＣＳＩターゲット２（ストレージ）に対してｉＳＣＳＩ接続するために、初期のＴＣＰコネクションを確立し，「ｉＳＣＳＩ  ｌｏｇｉｎ」認証を行う（通常ここで接続されるＴＣＰコネクションは１本である。）。
【００３５】
Ｓ３の処理：Ｓ１の処理で生成したチャンクを、ｉＳＣＳＩのデータ転送単位である「ｉＳＣＳＩ  ＰＤＵ」サイズに分割し、分割した「ｉＳＣＳＩ  ＰＤＵ」をＴＣＰコネクションＮ本に対して、ほぼ均等「ｎ個」に振り分ける。
【００３６】
【表１】
0005179218.tif 000003
【００３７】
表１は、「Ｔａｂｅｌｅ  １」のＴＣＰコネクション数Ｎとチャンク分割の例を示している。ここでは「チャンク（ｎ）：ｉＳＣＳＩ  ＰＤＵ数／ＴＣＰセッション」を例に、ＴＣＰコネクション「Ｎ」の増加に伴い、１本のＴＣＰコネクションあたり「１／Ｎ」に減少することが示されている。
【００３８】
Ｓ４の処理：振り分けられた各ＴＣＰコネクション毎に転送する「ｉＳＣＳＩ  ＰＤＵ」（約ｎ個）を各々のＴＣＰコネクションをとおして転送する。このときｉＳＣＳＩ−ＡＰＴ３は、図３及び図４に示すように、すべてのＴＣＰコネクションの中で一番最初に転送を始めた時刻を記録する。
【００３９】
Ｓ５の処理：ＳＣＳＩターゲット２が、図３に示すように、各ＴＣＰコネクション毎に「ｉＳＣＳＩ  ＰＤＵ」受信完了通知、即ちＲ２Ｔ（Ｒｅａｄｙ  ｔｏ  ｔｒａｎｓｆｅｒ）を逐次送信する。
【００４０】
Ｓ６の処理：ｉＳＣＳＩ−ＡＰＴ３は、すべてのＴＣＰコネクションの中で、最後にＲ２Ｔを受信した時刻が記録し、図４に示すように、当該チャンクの転送時間から当該チャンク転送でのスループットＧ（Ｎ）を算出する。直後に，次のチャンク転送に設定するＴＣＰコネクション数Ｎを後述の内蔵アルゴリズム処理に基づいて決定する。
【００４１】
Ｓ７の処理：次のチャンク転送に設定するＴＣＰコネクション数Ｎに変更するため，ＴＣＰコネクションの増減制御を行う。
（２）内蔵アルゴリズム処理
ここではＳ６の処理で行うＴＣＰコネクション数Ｎの決定例を、図５に基づき説明する。ここでは並列ＴＣＰコネクションのスループット（チャンク／転送時間Ｔ）が、コネクション数Ｎの多重度に関して上に凸の関数となる性質が示されている。
【００４２】
【表２】
0005179218.tif 000004
【００４３】
表２は、図５の処理例に使用される「Ｔａｂｌｅ  ２」を示している。この「Ｔａｂｌｅ  ２」は、ＴＣＰコネクション数Ｎの初期値Ｎｏが「１」に設定され、制御パラメータｋが「２」に設定されている。
【００４４】
ＴＣＰコネクション数Ｎを最適化する処理は、以下のステージ１．２で構成されている。このステージ１には図５に示す「Ａ〜Ｅ」の推移が該当し、ステージ２には図５に示す「Ｅ〜Ｈ」までの推移が該当する。
（１）ステージ１
ステージ１は、ＴＣＰコネクション数Ｎを初期値Ｎ0から、制御パラメータｋを乗じて増加させ、最適値Ｎｏｐｔの含まれるコネクション数（図５の横軸）のおおまかな巾（以降，ブラケットと呼ぶ）を探索する。この状態を式（２）に示す。
【００４５】
【数２】
0005179218.tif 000005
【００４６】
そのうえで、Ｓ３〜Ｓ６の処理で記載した方法に基づき、チャンク転送のスループットＧ（Ｎ）を算出する。算出したスループットＧ（Ｎ）が前回の算出値との間で以下の式（３）の関係となるまで、
【００４７】
【数３】
0005179218.tif 000006
【００４８】
以下の式（４）に基づき、
【００４９】
【数４】
0005179218.tif 000007
【００５０】
ＴＣＰコネクション数Ｎを増加させながら、チャンクのスループットＧ（Ｎ）を計測し，式（３）の評価（前回値との比較）を行う。式（３）が満たされた（ＴＲＵＥ）の場合（前回値よりスループットが低下した場合）、最初のブラケットには，式（５）に示すように、過去３回分の履歴にある３つのＮ値を組として定め、ステージ２へ移行する。
【００５１】
【数５】
0005179218.tif 000008
【００５２】
図５中、「Ａ」は初期値であり、「Ｔａｂｌｅ  ２」に記載のとおり、「Ｎ＝Ｎ0＝１」とする。次いで「Ｔａｂｌｅ  ２」に記載のパラメータｋを用いて、ＴＣＰコネクションを２倍（図５中の「Ｂ」）にする。さらに次のチャンク転送では、Ｎ＝４（図５中の「Ｃ」），Ｎ＝８（図５中の「Ｄ」）と増やした段階で式（３）の評価が、式（６）となり、最初（１ｓｔ）のブラケット（２，４，８）を得る（図５中の「Ｅ」）。
【００５３】
【数６】
0005179218.tif 000009
【００５４】
（２）ステージ２
ステージ２では、ステージ１で算出した最適値Ｎｏｐｔ（チャンクのスループットの唯一の極大点を示すＮの値）の含まれる最初のブラケットの巾（図５の横軸）に黄金探索法を適用して絞り込み、最適値Ｎｏｐｔを抽出する。これは主に非特許文献８の手法が用いられる。この非特許文献８は、ｉＳＣＳＩではなく、ＧｒｉｄＦＴＰという別の技術に黄金探索法が用いられている。以下、ステージ２の絞込みを具体的に説明する。
【００５５】
まず、最初に式（７）と式（８）の黄金比（Ｇｏｌｄｅｎ  Ｒａｓｉｏ）とを用いて、ステージ１で抽出した最初のブラケットから新たなＴＣＰコネクション数となる「Ｎ」を算出する。
【００５６】
【数７】
0005179218.tif 000010
【００５７】
【数８】
0005179218.tif 000011
【００５８】
ブラケット（ｌ，ｍ，ｒ）｝に対して、新たなＴＣＰコネクション数  Ｎを算出するため、式（９）を適用する（小数点以下は切り上げ）。
【００５９】
【数９】
0005179218.tif 000012
【００６０】
次に，Ｓ３〜Ｓ６の処理で記載した方法に基づき、チャンク転送のスループットＧ（Ｎ）を算出する。式（７）の関係が成り立つ（ＴＲＵＥ）場合、式（１０）により、新たなブラケットを導入する。
【００６１】
【数１０】
0005179218.tif 000013
【００６２】
式（７）の関係が成り立たない場合（ＦＡＬＳＥ）は、式（１１）により、新たなブラケットを導出し、新たに導出したブラケットを用いて，式（９）から新たなＴＣＰコネクション数Ｎを算出する。
【００６３】
【数１１】
0005179218.tif 000014
【００６４】
以上の過程を繰り返し，（ｌ，ｍ，ｒ）が連続する整数となった場合、式（１２）とする。
【００６５】
【数１２】
0005179218.tif 000015
【００６６】
実際に，ステージ１で抽出した１ｓｔブラケット（２，４，８）を式（９）に当てはめると式（１３）となる。
【００６７】
【数１３】
0005179218.tif 000016
【００６８】
Ｎ＝６で式（７）を図５の結果（縦軸）で評価すると、式（１４）が成立する。
【００６９】
【数１４】
0005179218.tif 000017
【００７０】
よって，式（１１）で式（１５）の２ｎｄブラケットを構成する（図５の「Ｅ」）。
【数１５】
0005179218.tif 000018
【００７１】
再び式（９）で「Ｎ」を算出すると、式（１６）となる。
【００７２】
【数１６】
0005179218.tif 000019
【００７３】
Ｎ＝７で式（７）を評価（図５参照）し、式（１７）の結果から式（１０）で式（１８）の３ｒｄブラケットを構成する（図５の「Ｆ」〜「Ｇ」）。
【００７４】
【数１７】
0005179218.tif 000020
【００７５】
【数１８】
0005179218.tif 000021
【００７６】
再び式（９）でＮを算出すると式（１９）となる。
【００７７】
【数１９】
0005179218.tif 000022
【００７８】
Ｎ＝５で式（７）を評価（図５参照）し、式（２０）の結果から式（１１）で式（２１）の４ｒｄブラケットを構成する。
【００７９】
【数２０】
0005179218.tif 000023
【００８０】
【数２１】
0005179218.tif 000024
【００８１】
ここでブラケット内の整数がすべて連続となったため、ステージ２を終了する。スループットを最大にするＴＣＰコネクション数の最適値Ｎｏｐｔとして、式（２２）に示す最後のブラケットの中央の数字である「６」が抽出できる。
【００８２】
【数２２】
0005179218.tif 000025
【００８３】
整理すると、図５の例では、ＴＣＰコネクション数の初期値Ｎ0から最適値Ｎｏｐｔに移行するまで、式（２３）に示す遷移を行う。
【００８４】
【数２３】
0005179218.tif 000026
【００８５】
このように並列ＴＣＰコネクションのスループット（チャンク／転送時間Ｔ）が、コネクションＮの多重度に関して上に凸の関数になるという性質（図５の「Ａ」〜「Ｈ」）を利用して、ＴＣＰコネクションの多重度をスループットに対して最適化させている（スループットが最大となるＴＣＰコネクション数を探索し、当該数のＴＣＰコネクション数にまで増減制御している。）。
【００８６】
すなわち、ｉＳＣＳＩイニシエータ１に組み込まれたＴＣＰコネクション数Ｎを自動調整するｉＳＣＳＩ−ＡＰＴ３の制御機能によって、予め使用するネットワークの遅延特性や帯域等の情報が無い場合でも、ｉＳＣＳＩ−ＡＰＴ３の処理機能を定期的に動作させることで、動作時のネットワークに最適化したＴＣＰコネクション数Ｎｏｐｔに自動追従させている。
【００８７】
これによりｉＳＣＳＩ接続されるファイルサーバとストレージとの間のスループットの高速化を実現させている。この結果、ファイルサーバなどの運用設置を大幅に簡略でき、帯域変動にも追従可能となることから、与えられた回線で常に効率的なデータ転送が実現可能となる。
【００８８】
また、ファイルサーバの実装的にはｉＳＣＳＩイニシエータの修正で済むので、ＴＣＰコネクションの多重化オプションをサポートする市販のターゲット装置の利用でき、この意味で経済的なシステム構築・更新が可能である。
【００８９】
なお、本発明は、上記実施形態に限定されるものではなく、各請求項に記載した範囲において各種の変形を行うことが可能である。例えばデータ転送（送信）だけではなく、データの読み込み（受信）に関しても同様の効果が期待できる。
【００９０】
また、前記ｉＳＣＳＩ−ＡＴＰ３の制御機能を内蔵したｉＳＣＳＩイニシエータ１として、コンピュータを機能させるプログラムとして構築することもできる。
【００９１】
この場合には、コンピュータの処理部（例えばＣＰＵなど）がプログラムコードを読み出し、通信デバイスを通じてステージ１．２の処理が実行される。
【００９２】
したがって、既存のｉＳＣＳＩシステムにおいてファイルサーバに前記プログラムをインストールするだけで、本実施形態に係るｉＳＣＳＩイニシエータ機能を有するファイルサーバが構築でき、この点でシステム構築・更新の経済性が一層向上する。
【００９３】
このプログラムコードは、例えばＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＭＯ，ＨＤＤなどの記録媒体に格納される。また、前記プログラムを、インターネットサイトからダウンロードしてコンピュータに提供してもよい。
【符号の説明】
【００９４】
１…ｉＳＣＳＩイニシエータ
２…ｉＳＣＳＩターゲット（ｉＳＣＳＩデバイス）
３…ｉＳＣＳＩ−ＳＰＴ
Ｎ…ＴＣＰコネクション数
Ｇ（Ｎ）…スループット値
【図面の簡単な説明】
【００９５】
【図１】ＴＣＰコネクション数を複数利用するｉＳＣＳＩ接続の概略図。
【図２】本発明の実施形態に係るＴＣＰコネクション数制御機能（ｉＳＣＳＩ−ＡＰＴ）をｉＳＣＳＩイニシエータのｉＳＣＳＩ接続の概略図。
【図３】１つのＴＣＰコネクションでの「ｉＳＣＳＩ  ＰＤＵ」転送のシーケンス例を示し、チャンク転送時間算出のための時刻定義の概略図。
【図４】複数のＴＣＰコネクションを用いたチャンク転送での転送時間の定義を示す概略図。
【図５】チャンク転送のスループットの観測から最適なＴＣＰコネクション数を導出する処理過程例を示す概略図。
【図１】
0005179218.tif 000027
【図２】
0005179218.tif 000028
【図３】
0005179218.tif 000029
【図４】
0005179218.tif 000030
【図５】
0005179218.tif 000031