(57)【特許請求の範囲】
【請求項１】
現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するように構成された装置（１００）であって、現在の宛先ネットワークエンティティが、複数の宛先ネットワークエンティティから選択され、装置（１００）が、
現在のデータパケットを受信するように構成された手段（１１０）と、
負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するように構成された手段（１２０）と、
現在のデータパケットを現在の宛先ネットワークエンティティへと転送するように構成された手段（１３０）と、
現在のネットワーク宛先エンティティから応答データパケットを受信するように構成された手段（１４０）であって、応答データパケットが、データパケット関連付けについての情報を含み、データパケット関連付けが、データ送信元とデータ宛先とのデータセッションに属する複数の異なるデータパケット間の関連付けである、受信するように構成された手段（１４０）と
を含み、
選択するように構成された手段（１２０）が、関連付けについての情報および現在の宛先ネットワークエンティティについての情報を記憶するためにさらに構成されており、受信するように構成された手段（１１０）が、別の送信元ネットワークエンティティから関連付けられたデータパケットを受信するためにさらに構成されており、関連付けられたデータパケットが、応答データパケットの後に受信され、関連付けられたデータパケットが、データセッションに属し、かつデータパケット関連付けについての情報を含み、選択するように構成された手段（１２０）が、データパケット関連付けについての情報に基づいて、現在の宛先ネットワークエンティティを選択するためにさらに構成されており、転送するように構成された手段（１３０）が、関連付けられたデータパケットを現在の宛先ネットワークエンティティへと転送するためにさらに構成されており、
応答データパケットに含まれるデータパケット関連付けについての情報が、関連付けられたデータパケットに含まれるデータパケット関連付けについての情報と同一であり、
データパケット関連付けについての情報が、マルチパスＴＣＰのトークンに相当する、装置。
【請求項２】
選択するように構成された手段（１２０）が、データパケット関連付けについての情報と共に、現在の宛先ネットワークエンティティについての情報を記憶するためにさらに構成されている、請求項１に記載の装置（１００）。
【請求項３】
選択するように構成された手段（１２０）が、データパケット関連付けについての情報を含むデータパケットを受信することなく所定の時間が経過した後に、または、データパケット関連付けを取り外すための要求を含むデータパケットの受信後に、ストレージからデータパケット関連付けについての情報を取り除くためにさらに構成されている、請求項１に記載の装置（１００）。
【請求項４】
受信するように構成された手段（１４０）が、別のネットワーク宛先エンティティからさらなる応答データパケットを受信するためにさらに構成されており、さらなる応答データパケットがまたデータパケット関連付けについての情報を含み、装置が、さらなる応答データパケットからデータパケット関連付けについての情報を取り除くために、またはさらなる応答データパケットにおけるデータパケット関連付けについての情報を変更するように構成された手段を含む、請求項１に記載の装置（１００）。
【請求項５】
データパケット関連付けについての情報を取り除くこと、または変更することについて、別のネットワーク宛先エンティティに通知するように構成された手段をさらに含む、請求項４に記載の装置（１００）。
【請求項６】
ネットワークエンティティから、複数の異なるデータパケット関連付けについての情報を含むデータ関連付けパケットを受信するように構成された手段をさらに含む、請求項３に記載の装置（１００）。
【請求項７】
現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するための方法であって、現在の宛先ネットワークエンティティが、複数の宛先ネットワークエンティティから選択され、方法が、
現在のデータパケットを受信するステップ（６００）と、
負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するステップ（６１０）と、
現在のデータパケットを現在の宛先ネットワークエンティティへと転送するステップ（６２０）と、
現在のネットワーク宛先エンティティから応答データパケットを受信するステップ（６３０）であって、応答データパケットが、データパケット関連付けについての情報を含み、データパケット関連付けが、データ送信元とデータ宛先との間のデータセッションに属する複数の異なるデータパケット間の関連付けである、受信するステップ（６３０）と、
関連付けについての情報および現在の宛先ネットワークエンティティについての情報を記憶するステップ（６４０）と、
別の送信元ネットワークエンティティから関連付けられたデータパケットを受信するステップであって、関連付けられたデータパケットが、応答データパケットの後に受信され、関連付けられたデータパケットが、データセッションに属し、かつデータパケット関連付けについての情報を含む、受信するステップと、
データパケット関連付けについての情報に基づいて、現在の宛先ネットワークエンティティを選択するステップと、
関連付けられたデータパケットを現在の宛先ネットワークエンティティへと転送するステップと
を含み、
応答データパケットに含まれるデータパケット関連付けについての情報が、関連付けられたデータパケットに含まれるデータパケット関連付けについての情報と同一であり、
データパケット関連付けについての情報が、マルチパスＴＣＰのトークンに相当する、方法。
【請求項８】
コンピュータまたはプロセッサ上で実行されるときに、請求項７に記載の方法を実施するためのプログラムコードを有する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークに関し、限定せずにより詳細には、通信ネットワークにおけるマルチパス伝送または結合された伝送に関する。
【背景技術】
【０００２】
パケット交換通信ネットワークは、有線通信および無線通信の両方の分野において、着実に拡大している。データパケットサービスへの需要の高まりにより、ネットワークの負荷ならびにその容量が増大している。いくつかのサービスについては、データへの需要が、単一のサーバまたはデータ送信元の容量よりも高くなることがある。したがって、いくつかの容量拡張の概念は、同じサービスを提供するために、たとえば、サーバファームのような、多数のネットワークエンティティの使用を見越している。その場合、需要および関連付けられたトラフィックの負荷は、負荷分散を使用して、同じデータサービスを提供するこれらのネットワークエンティティの間で共有されてよい。
【０００３】
負荷分散装置は、インターネットにおいて、および具体的には、ハイパーテキスト転送プロトコル（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ、略してＨＴＴＰ）を使用するワールドワイドウェブ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ、略してＷＷＷ）について、サービスプロビジョニングをスケール変更するために、幅広く使用されるソリューションである。ほとんどがインターネットプロトコル（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ、略してＩＰ）に基づくこれらのＷＷＷサービスは、普及が進むと、高性能なサーバデバイスであっても、結果としての利用が容易に過負荷になり得るため、単一のサーバでは提供され得ない。１つの幅広く配置されるソリューションは、単一のサーバファームにおいて、または地理的に分散されたサーバの間のいずれかで、いくつかのサーバの間で負荷を分散することである。「負荷分散装置」は、着信サービス要求、たとえば、伝送制御プロトコル（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ、略してＴＣＰ）接続またはＨＴＴＰ要求を、いくつかのサーバのうちの１つに分散することができる、ネットワークエンティティである。サーバへの実際の送り出しは、さまざまな方法によって実現されてよい。一方で、これは、リンク層アドレスのインテリジェントな使用、ならびに／またはアドレスおよびポートフィールドを変換するパケット書き換え技術を含む。これらのソリューションは、端末に透過的である。すなわち、クライアントは、サービスが２つ以上のサーバによって果たされていることに気付かない。他方で、たとえば、ＨＴＴＰリダイレクション、コンテンツ書き換え、またはドメイン名システム（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ、略してＤＮＳ）ベースの負荷分散などのメカニズムが存在し、これらは透過的ではない。
【０００４】
いくつかの既存の負荷分散装置ソリューションは、標準のＴＣＰ接続のために設計されている。マルチメディアサービスについては、ユニバーサルデータグラムプロトコル（Ｕｎｉｖｅｒｓａｌ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ、略してＵＤＰ）トラフィックのために、同等の負荷分散装置がまた存在してよい。以下では、ＴＣＰベースのサービスが検討されることになる。インターネットエンジニアリングタスクフォース（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ、略してＩＥＴＦ）は、いくつかの潜在的に互いに独立なパス上で同時データ転送を可能にするために、「サブフロー」とも呼ばれるいくつかの結合された接続を使用する、ＴＣＰ拡張としてのマルチパスＴＣＰ（Ｍｕｌｔｉｐａｔｈ  ＴＣＰ、略してＭＰＴＣＰ）を現在規格化している。個々のサブフローは、ＴＣＰ接続に類似しているが、通常、データのサブセットのみをトランスポートする。マルチパスＴＣＰは、いくつかのサブフローからなる、または単一のＴＣＰ接続のように互いに関連付けられたデータパケットからなるセッションにアクセスすることができるアプリケーションに透過的である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ａ．Ｆｏｒｄ、Ｃ．Ｒａｉｃｕｉ、Ｍ．Ｈａｎｄｌｅｙ、「ＴＣＰ  Ｅｘｔｅｎｓｉｏｎｓ  ｆｏｒ  Ｍｕｌｔｉｐａｔｈ  Ｏｐｅｒａｔｉｏｎ  ｗｉｔｈ  Ｍｕｌｔｉｐｌｅ  Ａｄｄｒｅｓｓｅｓ」、ＩＥＴＦ  Ｉｎｔｅｒｎｅｔ  Ｄｒａｆｔ、ｗｏｒｋ  ｉｎ  ｐｒｏｇｒｅｓｓ、２０１０年１０月、ｄｒａｆｔ−ｉｅｔｆ−ｍｐｔｃｐ−ｍｕｌｔｉａｄｄｒｅｓｓｅｄ−０２、および２０１０年７月、ｄｒａｆｔ−ｉｅｔｆ−ｍｐｔｃｐ−ｍｕｌｔｉａｄｄｒｅｓｓｅｄ−０１
【非特許文献２】Ｍ．Ｓｃｈａｒｆ、「Ｍｕｌｔｉ−Ｃｏｎｎｅｃｔｉｏｎ  ＴＣＰ（ＭＣＴＣＰ）Ｔｒａｎｓｐｏｒｔ」、ＩＥＴＦ  Ｉｎｔｅｒｎｅｔ  Ｄｒａｆｔ、ｗｏｒｋ  ｉｎ  ｐｒｏｇｒｅｓｓ、２０１０年７月、ｄｒａｆｔ−ｓｃｈａｒｆ−ｍｐｔｃｐ−ｍｃｔｃｐ−０１
【発明の概要】
【課題を解決するための手段】
【０００６】
実施形態は、ＴＣＰ接続の結合が、負荷分散装置を使用するシナリオにおいて問題を引き起こすことがある、という発見に基づいていてよい。マルチパスＴＣＰを使用するサービスは、既存の負荷分散装置ソリューションがＴＣＰ接続の結合に気付かないために、このソリューションによって低下することがある。実施形態はさらに、そのような負荷分散装置における追加的なサポートによってマルチパスサービスが向上され得る、という発見に基づいていてよい。
【０００７】
実施形態はさらに、マルチパスＴＣＰセッションのサブフローが、完全に異なる送信元および宛先ＩＰアドレスならびにＴＣＰポート番号を使用することがあっても、それらのサブフローは結合される、という発見に基づいていてよい。一般に、そのようなサブフローは、複数のデータパケットから構成されていてよい。現在のマルチパスＴＣＰプロトコル仕様に従って、これは、ＴＣＰプロトコルヘッダにおける追加的な識別子によって実現されてよく、識別子は、「トークン」とも呼ばれ、「トークン」は、接続セットアップ中に交換される。言い換えれば、異なるサブフローのデータパケットは、互いに関連付けられてよく、データパケット関連付けについての情報を含むことができる。マルチパスＴＣＰセッションのエンドポイントは、このように、どのセッションに新しいマルチパスＴＣＰサブフローが属するのかを決定し、それをこのセッションに加えることができる。したがって、実施形態は、そのような識別子を利用することができる、または概して、そのようなデータパケットに含まれるデータパケット関連付けについての情報を利用することができる。
【０００８】
実施形態はさらに、たとえば、透過的な負荷分散装置が、ＴＣＰ／ＩＰゲートウェイ、たとえば第４層ゲートウェイとして動作することができ、分散装置が、特定のポリシーに従って、着信ＴＣＰ接続のデータパケットをいくつかのサーバのうちの１つに送り出す、という発見に基づいていてよい。たとえば、１つのクライアントのすべてのＨＴＴＰ要求が同じＷｅｂサーバによって果たされるように、１つのＩＰアドレスからのすべての接続を、同じサーバに割り当てることが理にかなうことがある。たとえば、ＭＰＴＣＰを使用するときのように、データパケットが異なるネットワークエンティティから生じる場合、異なるサブフローの関連付けられたデータパケットが異なるＩＰアドレスを有することがあるために、ＩＰアドレス駆動型の割り当ては失敗につながることがあり、その結果、異なるサーバに割り当てられることがある、というのが実施形態のもう１つの発見である。いくつかのさらなるシナリオが、続いてより詳細に論じられる。
【０００９】
実施形態は、現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するように構成された装置を提供し、現在の宛先ネットワークエンティティは、複数の宛先ネットワークエンティティから選択される。装置は、現在のデータパケットを受信するように構成された手段と、負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するように構成された手段とを含む。装置は、現在のデータパケットを現在の宛先ネットワークエンティティへと転送するように構成された手段と、現在のネットワーク宛先エンティティから応答データパケットを受信するように構成された手段とをさらに含み、応答データパケットは、データパケット関連付けについての情報を含む。データパケット関連付けは、データ送信元とデータ宛先との間のデータセッションに属する複数の異なるデータパケット間の関連付けである。たとえば、データ送信元としての端末は、多数のデータパケットから構成される少なくとも２つのサブフローを有するＭＰＴＣＰを使用して、データ宛先としてのサーバとデータセッションを持つ。次いで２つのサブフローのデータパケットが、データパケット関連付けにおいて関連付けられる。選択するように構成された手段は、関連付けについての情報を記憶するためにさらに構成されている。
【００１０】
言い換えれば、実施形態において、装置は、データパケットにおいてデータパケット関連付けについての情報をモニタすることができ、たとえば、装置は、負荷分散装置において実装され、ＭＰＴＣＰトークンをモニタすることができる。たとえば、そのような接続がセットアップされるとき、データパケット関連付けについての情報は、関与する送信元ネットワークエンティティと宛先ネットワークエンティティとの間で交換されてよい。装置は、情報をモニタし、それを、たとえばメモリに記憶することができる。
【００１１】
いくつかの実施形態において、受信するように構成された手段は、別の送信元ネットワークエンティティから関連付けられたデータパケットを受信するためにさらに構成されていてよく、関連付けられたデータパケットは、応答データパケットの後に受信され、関連付けられたデータパケットは、データセッションに属し、かつデータパケット関連付けについての情報を含む。言い換えれば、装置は、別の送信元ネットワークノードまたはエンティティから、もう１つのデータパケットを続いて受信することができる。続いて受信された他のデータパケットは、たとえば、別の送信元ネットワークノードまたはエンティティから生じる別のアドレス、たとえば、別のＩＰアドレスおよび／またはポート番号で受信されてよく、ここで、別の送信元またはエンティティは、たとえば、別のルータとしての物理的に異なるノード、または同じ起点の異なるインターフェースに相当してよい。選択するように構成された手段は、データパケット関連付けについての情報に基づいて、現在の宛先ネットワークエンティティを選択するためにさらに構成されていてよく、転送するように構成された手段は、関連付けられたデータパケットを現在の宛先ネットワークエンティティへと転送するためにさらに構成されていてよい。またこのように、実施形態において、別の送信元から来たデータパケットは、記憶されたデータパケット関連付けについての情報、およびデータパケットに含まれるデータパケット関連付けについての情報に基づいて、データパケット関連付けに属するものとして識別されてよく、次いで、同じかつ正しい宛先へと転送される。実施形態は、それにより、場合によって関連付けられたデータパケットを異なる宛先に割り当てる、たとえば、ＩＰアドレス駆動型の負荷分散によって引き起こされる問題を克服することができる。
【００１２】
実施形態において、応答データパケットに含まれるデータパケット関連付けについての情報は、関連付けられたデータパケットに含まれるデータパケット関連付けについての情報と同一であってよい。いくつかの実施形態において、関連付けられたデータパケットは、同じトークンを使用することができる。言い換えれば、いくつかの実施形態において、データパケット関連付けについての情報は、マルチパスＴＣＰのトークンに、またはマルチパスＴＣＰの複数の異なるトークンからなるセットに相当してよい。トークンは、任意の種類の識別情報として、たとえば、いくつかのビットまたはビットのシーケンスなどとして解釈されてよい。いくつかの実施形態において、たとえば、関連付けのために複数のトークンからなるセットが使用されるとき、応答データパケットに含まれるデータパケット関連付けについての情報は、関連付けられたデータパケットに含まれる情報と異なっていてもよい。さらなる実施形態において、データセッションの異なるサブフローの関連付けられたパケットにおけるトークンは、最初のサブフローにおいて交換された情報、および場合によって両方のエンドポイントによって共有される追加の情報から、関数によって計算されてよい。言い換えれば、複数のトークンからなるセットが使用されるとき、異なるサブフローが異なるトークンを使用することがあり、しかしながら、装置の実施形態はなお、複数のトークンからなるセットが記憶され得るので、正しい宛先ネットワークエンティティを選択することができる。実施形態において、応答データパケットに含まれるデータパケット関連付けについての情報は、マルチパスＴＣＰの複数の異なるトークンからなるセットに相当することができ、関連付けられたデータパケットに含まれるデータパケット関連付けについての情報は、マルチパスＴＣＰの複数の異なるトークンからなるセットに含まれるマルチパスＴＣＰの単一のトークンに相当することができる。選択するように構成された手段は、データパケット関連付けについての情報と共に、現在の宛先ネットワークエンティティについての情報を記憶するためにさらに構成されていてよい。
【００１３】
さらなる実施形態において、選択するように構成された手段は、データパケット関連付けについての情報を含むデータパケットを受信することなく所定の時間が経過した後に、ストレージからデータパケット関連付けについての情報を取り除くためにさらに構成されていてよい。あるいは、情報は、すべてのサブフローもしくはＭＰＴＣＰセッション、またはデータパケット関連付けが明示的に閉じられる場合に、取り除かれてもよい。言い換えれば、装置の実施形態は、タイムアウトメカニズムを使用することができ、特定の時間期間の間に特定のパケット関連付けからのパケットが受信されない場合、データパケット関連付けについての情報は、ストレージから取り除かれてよい。そのようにして、たとえば、トークンまたは複数のトークンからなるセットは再使用されてよく、関連付けられたデータパケットが受信されないときの延長された期間に妨げられない。
【００１４】
さらに、たとえば、データパケット関連付けのセットアップ段階の間に、別のパケットデータ関連付けによって既に使用中のトークンが使用された場合、実施形態は、新たなデータ関連付けがこのトークンによって確立されるのを防ぐことができる。受信するように構成された手段は、別のネットワーク宛先エンティティからさらなる応答データパケットを受信するためにさらに構成されていてよく、さらなる応答データパケットは、データパケット関連付けについての情報を含む。装置は、さらなる応答データパケットからデータ関連付けについての情報を取り除くように構成された手段を含むことができる。データパケット関連付けについての再使用された情報を取り除くことによって、実施形態は、データパケット関連付けの曖昧さによって引き起こされる失敗を防ぐことができる。いくつかの実施形態において、受信するように構成された手段は、別のネットワーク宛先エンティティからさらなる応答データパケットを受信するためにさらに構成されていてよく、さらなる応答データパケットは、データパケット関連付けについての情報を含む。装置は、さらなる応答データパケットにおけるデータ関連付けについての情報を、データパケット関連付けについての異なる情報に変更するように構成された手段を含むことができる。言い換えれば、装置は、曖昧さ検出時に、データパケット関連付けについての情報を変更するように構成された手段を含むことができる。
【００１５】
さらなる実施形態において、データパケット関連付けについての情報はまた、他のネットワークエンティティ、たとえば、データパケット関連付けについての情報の集中調整のための、または曖昧さを回避するためのトークン割り当てのためのエンティティから受信されてもよい。したがって、装置は、ネットワークエンティティからデータ関連付けパケットを受信するように構成されたさらなる手段を含むことができ、データ関連付けパケットは、別のデータパケット関連付けについての情報を含む。受信するように構成された手段は、任意のインターフェースに相当することができる。実施形態において、装置は、負荷分散装置に含まれていてよい。
【００１６】
実施形態はまた、データ送信元ネットワークエンティティ、上で説明された装置を含む負荷分散装置、および多数のサーバまたは宛先ネットワークエンティティを有するシステムを提供することができる。
【００１７】
実施形態は、データパケット関連付けについての情報を、たとえば、集中調整のためのネットワークエンティティにおけるネットワークエンティティに、提供するための装置をさらに提供することができる。装置は、データパケット関連付けのための識別情報を生成するように構成された手段を含むことができ、データパケット関連付けのための識別情報は、ある時間期間の間有効である。生成するように構成された手段は、データパケット関連付けのための複数の識別情報を生成するためにさらに構成されていてよく、複数の識別情報のそれぞれは、時間期間の間に生成されたときのデータパケット関連付けのための識別情報とは異なる。装置は、データパケット関連付けの識別情報についての情報を含むデータパケット関連付けについての情報を、異なるネットワークエンティティに提供するように構成された手段をさらに含むことができる。実施形態において、識別情報は、トークンに相当することができる。
【００１８】
実施形態はまた、現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するための方法を含み、現在の宛先ネットワークエンティティは、複数の宛先ネットワークエンティティから選択される。方法は、現在のデータパケットを受信するステップと、負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するステップとを含むことができる。方法は、現在のデータパケットを現在の宛先ネットワークエンティティへと転送するステップと、現在のネットワーク宛先エンティティから応答データパケットを受信するステップとをさらに含むことができ、応答データパケットは、データパケット関連付けについての情報を含み、データパケット関連付けは、データ送信元とデータ宛先との間のデータセッションに属する複数の異なるデータパケット間の関連付けである。方法は、関連付けについての情報を記憶するステップをさらに含むことができる。
【００１９】
さらに、実施形態は、データパケット関連付けについての情報をネットワークエンティティに提供するための方法を提供し、方法は、データパケット関連付けのための識別情報を生成するステップを含み、データパケット関連付けのための識別情報は、ある時間期間の間有効である。方法は、データパケット関連付けの識別情報についての情報を含むデータパケット関連付けについての情報を、異なるネットワークエンティティに提供するステップをさらに含む。方法は、データパケット関連付けのための複数の識別情報を生成するステップをさらに含むことができ、複数の識別情報のそれぞれは、時間期間の間に生成されたときのデータパケット関連付けのための識別情報とは異なる。
【００２０】
さらに、実施形態は、コンピュータプログラムを提供することができ、コンピュータプログラムは、コンピュータまたはプロセッサ上で実行されるときに、上の方法のうちの１つを実施するためのプログラムコードを有する。
【００２１】
装置および／または方法および／またはコンピュータプログラムの以下の非限定的な実施形態を例としてのみ使用し、添付の図面を参照して、いくつかの特徴または態様が説明される。
【図面の簡単な説明】
【００２２】
【図１ａ】転送するように構成された装置の実施形態のブロック図である。
【図１ｂ】提供するための装置の実施形態のブロック図である。
【図２】負荷分散装置の実施形態によるインターネットシナリオのブロック図である。
【図３】負荷分散装置の実施形態によるインターネットシナリオの別のブロック図である。
【図４】実施形態によって使用されるときのＭＰＴＣＰセットアップのメッセージシーケンス図である。
【図５】実施形態によって使用されるときのＭＰＴＣＰセットアップの別のメッセージシーケンス図である。
【図６ａ】転送するための方法の実施形態を例示する流れ図である。
【図６ｂ】提供するための方法の実施形態を例示する別の流れ図である。
【図７ａ】方法の実施形態を例示する流れ図である。
【図７ｂ】方法の実施形態を例示する別の流れ図である。
【図８】負荷分散装置における実施形態の別のブロック図である。
【図９】ＭＰＴＣＰによる実施形態の図である。
【発明を実施するための形態】
【００２３】
例示的な実施形態の説明が、添付の図面と組み合わされて詳細に示される。理解しやすいように、いくつかの技術的な用語が最初に説明される。
【００２４】
以下において、単一の接続は、双方向の通信のための２つのエンドポイント（開始側および応答側）の間の関連付けに対応する。たとえば、一方向において、開始側はデータ送信元であってよく、応答側はデータ宛先であってよく、他の方向においては、それぞれその逆であってよい。接続は、たとえば、両方のエンドポイントにおけるＩＰアドレスおよびポート番号によって定義されていてよい。標準のＴＣＰは、そのような単一の接続を、ホスト間、たとえば、データの送信元とデータ宛先との間でのデータ転送のために使用する。
【００２５】
結合された接続は、単一の接続と同様のプロトコル意味論を使用するものの、接続が単独ではなく、セッションの一部である、２つのエンドポイント間の関連付けに対応する。１つのセッションのデータパケットは、たとえば、特定の識別子またはトークンを使用することによって、関連付けられてよい。とりわけ、そのような関連付けは、トークンを含むセットアップメッセージを使用してセットアップされてよく、トークンは（必ずしも）セッションにおいて交換されるすべてのメッセージに存在しなくてもよい。データパケットの関連付けは、多数のデータパケットをセッションに関連付けるプロトコルプロパティであってよい。セッションは多数のサブフローを含むことができ、そのそれぞれが、続くデータパケットを含むことができる。データパケットはすべて、セッションに関連付けられてよく、データパケットは、セッションまたは別のサブフローに関連付けられてよいサブフローに関連付けられてもよく、および／または、データパケットは、互いの間で、たとえば、別のサブフローのデータパケットに関連付けられてもよい。マルチパスＴＣＰのコンテキストにおいてのみならず、結合された接続は、やはりサブフローと呼ばれる。実施形態において、ネットワークエンティティは、パケットを解析することによって、単一の接続と結合された接続とを区別することができる。
【００２６】
セッションは、２つのホスト間、たとえば、クライアント／端末とサーバとの間、データ送信元とデータ宛先との間などの、１つまたは複数の結合された接続の組み合わせを指す。マルチパスＴＣＰの場合、セッションは「ＭＰＴＣＰ接続」とも呼ばれる。セッションは、データ送信元とデータ宛先との間のプロトコルコンテキストであってよく、ここで、多数の関連付けられたサブフローが、データ伝送のために使用される。サブフローのそれぞれは、複数のデータパケットから構成されてよく、ここで、異なるフローのデータパケットがそのセッションに関連付けられ、それにより、データパケット同士が関連付けられる。
【００２７】
セッションの第１の（結合された）接続または第１のサブフローは、セッションの最初のサブフローまたは第１のサブフローに属する続くデータパケットに対応することができる。追加の（結合された）接続は、セッションの任意のさらに結合された接続に、または追加のサブフローに対応することができる。データパケット関連付けについての情報、たとえば、データパケットが属する共通のセッションについての情報を使用して、追加のサブフローに属する続くデータパケットが、第１のサブフローに属する続くデータパケットに関連付けられてよい。
【００２８】
図１ａは、転送するように構成された装置１００の実施形態のブロック図を示す。装置１００は、現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するように構成されており、現在の宛先ネットワークエンティティは、複数の宛先ネットワークエンティティから選択される。装置１００は、現在のデータパケットを受信するように構成された手段１１０を含み、手段１１０は、たとえば、イーサネット（登録商標）インターフェースもしくは任意のエアインターフェースなどのような、受信機またはインターフェースとして実装される。さらに、装置１００は、負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するように構成された手段１２０を含み、手段１２０は、たとえば、セレクタ、コントローラ、プロセッサなどとして実装される。さらに、装置１００は、現在のデータパケットを現在の宛先ネットワークエンティティへと転送するように構成された手段１３０を含み、手段１３０は、転送装置、送信機、インターフェースなどとして実装されてよい。さらに、装置１００は、現在のネットワーク宛先エンティティから応答データパケットを受信するように構成された手段１４０を含み、応答データパケットは、データパケット関連付けについての情報を含み、データパケット関連付けは、データ送信元とデータ宛先との間のデータセッションに属する複数の異なるデータパケット間の関連付けである。受信するように構成された手段１４０はやはり、イーサネットインターフェースもしくは任意のエアインターフェースなどのような、受信機またはインターフェースとして実装されてよい。いくつかの実施形態において、手段１２０および手段１４０は、別々に実装されてよく、いくつかの実装形態においては、それらは、同じ機能性エンティティにおいて実装されてもよい。選択するように構成された手段１２０は、データパケット関連付けについての情報を記憶するためにさらに構成されていてよい。言い換えれば、装置１００は、データセッションの第１のサブフローのセットアップ中に、データパケット関連付けについての情報を記憶することができる。
【００２９】
図１ｂは、データパケット関連付けについての情報を提供するための装置１５０の実施形態のブロック図を示す。データパケット関連付けについての情報をネットワークエンティティに提供するための装置１５０は、データパケット関連付けのための識別情報を生成するように構成された手段１６０を含み、データパケット関連付けのための識別情報は、ある時間期間の間有効である。そのような識別情報は、ＭＰＴＣＰセッションについてのトークンに相当してよい。手段１６０は、たとえば、乱数生成装置、擬似乱数生成装置などとして実装される、生成装置に相当することができる。生成するように構成された手段１６０は、データパケット関連付けのための複数の識別情報を生成するためにさらに構成されており、複数の識別情報のそれぞれは、時間期間の間に生成されたときのデータパケット関連付けのための識別情報とは異なる。すなわち、実施形態において、装置１５０は、識別情報がその有効時間の間に一意であるように、識別情報を生成することができる。装置１５０は、データパケット関連付けの識別情報についての情報を含むデータパケット関連付けについての情報を、異なるネットワークエンティティに提供するように構成された手段１７０を含む。言い換えれば、そのような一意の識別情報は、たとえば、ＭＰＴＣＰトークンの集中生成を実行する装置から識別情報を受信する、多数のネットワークエンティティに提供されてよい。それにより、トークンの分散された生成、すなわち、多数のネットワークエンティティにおけるトークンの独立した生成に関する曖昧さの問題が、実施形態によって解決されてよい。
【００３０】
図２は、上で説明された装置１００、１５０のうちの１つまたは両方を含むことができる負荷分散装置２２０の実施形態によるインターネットシナリオのブロック図を示す。図２は、すべてが同じサービスを提供することができる複数のサーバ、２３０、２３２、２３４、２３６、２３８のうちの１つとインターネット２１０を介して通信するために、たとえば送信元ＩＰアドレスＩＰｔｅｒｍを用いてインターフェース２０５上でＩＰサービスを使用する、端末２００を示す。負荷分散装置２２０は、インターネット２１０を介して端末２００と通信するために、１つまたは複数のＩＰインターフェース２１５を使用し、場合によって、１つのＩＰアドレスＩＰｓｅｒｖｉｃｅ、またはいくつかのアドレスを使用して、複数のサーバ２３０−２３８の間でＩＰサービスを分散する。
【００３１】
たとえば、端末２００からＨＴＴＰ要求が届いた場合、すなわち、新しいＴＣＰ接続がセットアップされた場合、負荷分散装置２２０は、それをサーバ２３０−２３８のうちの１つ、たとえば、サーバ２３０に割り当てることができる。以下で、このＴＣＰ接続に属するすべてのパケットは、このサーバ２３０に送信されてよい。１つの可能性は、負荷分散装置２２０が、着信パケットの送信元ＩＰアドレスおよび送信元ポート番号、ならびに場合によって他のヘッダフィールドおよび利用可能なサーバ２３０−２３８についての情報を、ハッシュ関数などの、負荷分散基準としての選択アルゴリズムのための入力として使用して、この要求に対処するためのサーバ２３０を選択することである。そのような単純なポリシーは、所与の宛先ＩＰアドレスおよびポート番号に対し、送信元ＩＰアドレスと送信元ポート番号との組み合わせが、この接続の存続時間の間、所与のＴＣＰ接続のために一意であることから、機能することができる。マルチパスＴＣＰ接続の場合、そのようなポリシーだけでは十分でないことがある。
【００３２】
図３は、負荷分散装置２２０の実施形態によるインターネットシナリオの別のブロック図を示す。図３に示されたシナリオは、図２に関連して上で説明されたものと同様のコンポーネントを示し、同じ参照符号が、同じまたは同様のコンポーネントを示す。加えて、図３は、端末２００が、たとえば、アクセス「ａ」ネットワーク２０８を介してアドレスＩＰａから第１のサブフローを確立するための、およびアクセス「ｂ」ネットワーク２０９を介してアドレスＩＰｂから追加のサブフローを確立するための、２つのネットワークインターフェース２０６および２０７を含むことを示す。図３に示されるシナリオにおいて、アクセスネットワーク２０８および２０９の両方は、上で説明されたインターネット２１０に接続されている。たとえば、異なるアクセスネットワーク２０８および２０９、ならびにそれに応じたインターフェース２０６および２０７は、たとえば、イーサネットインターフェースのような有線インターフェースに、およびたとえば、ＷＬＡＮ（ワイヤレスローカルエリアネットワークの省略形）のような無線インターフェースに、または、３ＧＰＰ（第３世代パートナーシッププロジェクトの省略形）もしくは３ＧＰＰ２によって規格化された無線インターフェースのうちの１つに相当することができる。実施形態において、マルチパスＴＣＰのための１つの使用事例は、図３に示されるように、いくつかの異なるアクセスリンク２０８、２０９を並列使用することによって、端末２００がそれらの能力を利用することである。端末のネットワークインターフェース２０６、２０７は、通常、異なるＩＰアドレスを有するので、たとえば、マルチパスＴＣＰセッションを形成する異なるサブフローは、異なる送信元ＩＰアドレスを有することになる。これに気付かない負荷分散装置２２０は、上で説明されたメカニズムによって、マルチパスＴＣＰセッションを形成するすべての接続が同じサーバ２３０へと転送されることになるのを確実にすることはできない。マルチパスＴＣＰがこの問題を検出することができ、後方互換のＴＣＰ通信にフォールバックし得るとしても、その場合にはマルチパスＴＣＰの付加価値は存在しないことになる。実施形態は、この問題を克服するメカニズムを提供することができる。実施形態は、マルチパスＴＣＰプロトコルのいくつかの要素を活用して、特定のマルチパスＴＣＰセッションのすべてのサブフローのすべてのパケットを、同じサーバへと適切に転送するのを確実にすることができる。
【００３３】
実施形態は、ＴＣＰおよびＭＰＴＣＰに限定されなくてもよいが、一般に、負荷分散装置が、多数の結合された接続を使用するトランスポートプロトコルと組み合わせて使用される場合に生じる問題に取り組むことができる。たとえば、結合された接続またはデータパケット関連付けを同様のやり方で使用することができる別のプロトコルに、ストリームコントロールトランスミッションプロトコル（Ｓｔｒｅａｍ  Ｃｏｎｔｒｏｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｒｏｔｏｃｏｌ、略してＳＣＴＰ）、および現在のマルチパス転送のための拡張がある。以下では、負荷分散についてのいくつかのさらなる背景情報が提供され、実施形態がＴＣＰおよびマルチパスＴＣＰについて説明されるが、説明される原理はまた、結合された接続または関連付けられた接続を使用することができる他のプロトコルを使用する実施形態にも有効である。以下で、用語「結合された接続」、「関連付けられたデータパケット」、および「サブフロー」は、同義語として使用される。
【００３４】
図３に示されるシナリオにおいて、未修正の負荷分散装置２２０は、単一の接続と、結合された接続／サブフローとを区別しないものとする。無認識の負荷分散装置２２０が、場合により異なるＩＰアドレスから生じる結合された接続を、異なるサーバ２３０−２３８に割り当てることができるとすると、結合された接続のセットアップは、決定論的に起こらないことになる。マルチパスＴＣＰ仕様によれば、両方の接続エンドポイントは、結合された接続が実際に同じピアに対して確立されているかどうかを、トークンの比較によって検査することになる。負荷分散装置２２０が、結合された接続を、別のサーバ２３０−２３８に送り出す場合、このテストは失敗となり、結合された接続は、セットアップされないことになる。結果として、マルチパストランスポートは、有効にされ得ない。この場合のマルチパスＴＣＰは、標準のＴＣＰ転送にフォールバックすることができ、すなわち、通信は、依然可能ではあるが、効率が落ちる。要約すると、１つまたは複数の負荷分散装置２２０と備えたパス上でのマルチパスＴＣＰは、負荷分散装置２２０が、本明細書で説明されるメカニズムのうちの１つをサポートする実施形態を含む場合にのみ、付加価値を有することができる。
【００３５】
未修正の負荷分散装置２２０により、異なるエンドシステムへの接続が、偶発的に同じトークンを使用した場合に誤って結合され得るとすると、小さなセキュリティリスクが存在することもある。したがって、実施形態は、装置１５０を提供することができる、または、トークンについての一意性検査もまた含むことができる。実施形態は、たとえば、ＩＥＴＦのマルチパスＴＣＰプロトコル設計およびその特性を生かすことができる。たとえば、接続を結合するためにトークンを交換する基礎的なメカニズムは、たとえば、アプリケーション層プロトコルなどのような、他のプロトコルもまた利用することができる実施形態において利用されてよい。
【００３６】
実施形態は、負荷分散装置に含まれてよく、結合された接続に対処するために動作を拡張することができる。負荷分散装置のそのような実施形態は、結合された接続のセットアップ中に交換されるプロトコル情報を決定し、記憶するための機能を使用することができ、図１ａを役立てながら既に説明されたように、セッションの結合された接続を同じサーバに送り出すために、この情報を使用することができる。いくつかの実施形態において、負荷分散装置は、トークン、すなわち、接続セットアップ段階の間に、および続くデータパケット交換中に交換されるデータパケット関連付けについての情報を、読み込み、処理することができる。実施形態は、結合された接続を使用するトランスポートプロトコルとの相互作用を可能にすることができる。
【００３７】
以下では、結合された接続をセットアップする原理が、実施形態を理解するための背景情報として簡単に説明される。以下の実施形態のために提示されるメカニズムは、マルチパスＴＣＰについて現在定義されている１つである。セッションの一部である結合された接続は、送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス、および宛先ポート番号の組み合わせによって識別されてよい。結合された接続を識別し、リンクするために、かつセキュリティの理由のために、少なくとも１つの追加の識別子（通常、トークンと呼ばれる）が実施形態において使用されてよく、識別子は、結合された接続が属するセッションを一意に識別することができる。セッションごとに１つのトークンを使用する代わりに、エンドポイントにおいてローカルに一意である２つ（またはそれ以上）のトークンを使用することもまた可能である。結合された接続を識別するための潜在的な方法の詳細は、たとえば、マルチパスＴＣＰのプロトコル仕様、Ａ．Ｆｏｒｄ、Ｃ．Ｒａｉｃｕｉ、Ｍ．Ｈａｎｄｌｅｙ、「ＴＣＰ  Ｅｘｔｅｎｓｉｏｎｓ  ｆｏｒ  Ｍｕｌｔｉｐａｔｈ  Ｏｐｅｒａｔｉｏｎ  ｗｉｔｈ  Ｍｕｌｔｉｐｌｅ  Ａｄｄｒｅｓｓｅｓ」、ＩＥＴＦ  Ｉｎｔｅｒｎｅｔ  Ｄｒａｆｔ、ｗｏｒｋ  ｉｎ  ｐｒｏｇｒｅｓｓ、２０１０年１０月、ｄｒａｆｔ−ｉｅｔｆ−ｍｐｔｃｐ−ｍｕｌｔｉａｄｄｒｅｓｓｅｄ−０２を参照のこと、または、代替のプロトコル設計、Ｍ．Ｓｃｈａｒｆ、「Ｍｕｌｔｉ−Ｃｏｎｎｅｃｔｉｏｎ  ＴＣＰ（ＭＣＴＣＰ）Ｔｒａｎｓｐｏｒｔ」、ＩＥＴＦ  Ｉｎｔｅｒｎｅｔ  Ｄｒａｆｔ、ｗｏｒｋ  ｉｎ  ｐｒｏｇｒｅｓｓ、２０１０年７月、ｄｒａｆｔ−ｓｃｈａｒｆ−ｍｐｔｃｐ−ｍｃｔｃｐ−０１を参照のこと、に見出され、これらは本明細書に組み込まれるものとする。以下では、マルチパスプロトコルの詳細のみが、実施形態を理解するために必要とされる範囲で説明される。
【００３８】
図４は、実施形態によって使用され得るときのＭＰＴＣＰセットアップのメッセージシーケンス図を示す。図４は、セッションを形成する結合された接続のセットアップを簡略化した形で示す。第１の接続のセットアップ中に、２つのエンドポイントは、それぞれのエンドポイントにおいて結合された接続を識別するために使用されることになるトークンを交換する（「割り当て」メッセージ）。端末側において、図４は、２つのインターフェース２０６および２０７を示し、そこから、図４において矢印で示されるメッセージが、たとえばアドレスＩＰｓｅｒｖｉｃｅを用いて、それに応じたインターフェースをやはり有するサーバ２３０に送信される。最初に、２つの割り当てメッセージ３０５および３１０が、ネットワークインターフェース２０６とサーバ２３０との間で交換される。メッセージ３０５は、上で言及された現在のデータパケットに対応する、端末２００からのトークンを含むことができ、メッセージ３１０は、上で言及された応答データパケットに対応する、サーバ２３０からのトークンを含むことができる。これらのトークンは、第１の接続のセットアップ中に交換される（第１のパケット）。続いて、場合により、データ転送３１５が第１の接続で実行されてよい。このデータ転送の間、さらなる制御情報もまた交換されてよい。図４でさらに示されるように、インターフェース２０７からサーバ２３０への、メッセージ３２０および３２５を使用して、追加のサブフローがセットアップされてよい。再び、インターフェース２０７からのトークンは、参加メッセージ３２０においてサーバ２３０へと転送されてよく、対応する応答参加メッセージ３２５において、サーバ２３０からのトークンが転送されてよい。続いて、場合により、セッションの一部である、第２のインターフェース２０７とサーバ２３０との間でのデータ転送３３０が実行されてよい。
【００３９】
２つのトークンは、トークンを生成するホスト上でローカルに一意であってよい。エンドポイントのうちの１つが、既存のセッションに追加の接続を加えたい場合、エンドポイントは、追加の接続のセットアップ中に、「参加」メッセージ３２０、３２５を用いて、これをシグナリングすることができる。含まれた情報により、もう一方のエンドポイントは、新しく結合された接続を既存のセッションに統合することができる。
【００４０】
メッセージ名（「割り当て」、「参加」）は、マルチパスプロトコルで使用される２つの異なるプロトコル機能のための単なるプレースホルダーであることに留意されたい。さらに、「参加」メッセージ３２０、３２５は、必ずしもプレーンテキストにおいてトークンの値をトランスポートしなくてもよい。代わりに、任意の十分定義された関数を使用して、トークンから、および場合により、エンドポイントがアクセスすることができる他の情報からもまた、識別子を計算することができ、「参加」メッセージ３２０、３２５は、そのような識別子を含むことができる。唯一の制約は、両方のエンドポイントが、結合された接続が属するセッションを一意に決定できることであってよい。
【００４１】
図５は、負荷分散装置において実装される実施形態２２０によって使用されるときの、ＭＰＴＣＰセットアップの別のメッセージシーケンス図を示す。図５は、図４により説明されたものと同様のメッセージを示すが、負荷分散装置２２０は、伝送パスにおいて、その２つのインターフェース２０６および２０７を有する端末２００と、サーバ２３０との間に設置される。図５に示される実施形態において、装置１００の実施形態は、負荷分散装置２２０に含まれることが想定される。装置１００は、現在のデータパケット、すなわち割り当てメッセージ３０５を、現在の送信元ネットワークエンティティ２０６から現在の宛先ネットワークエンティティ２３０へと転送するように構成されており、現在の宛先ネットワークエンティティ２３０は、複数の宛先ネットワークエンティティ２３０−２３８から選択される（図３を参照されたい）。図５から見られ得るように、メッセージ３０５は、負荷分散装置２２０によって受信される、すなわち、装置１００は、現在のデータパケットを受信するように構成された手段１１０を含む。さらに、装置１００は、負荷分散基準に基づいて、現在の宛先ネットワークエンティティ２３０を選択するように構成された手段１２０と、現在のデータパケット３０５を現在の宛先ネットワークエンティティ２３０へと転送するように構成された手段１３０とを含む。たとえば、負荷分散装置は、送信元ＩＰおよびＴＣＰポートを考慮するポリシーによって（サーバ２３０に相当する）サーバ１を選択し、パケットをサーバ１へと転送し、選択されたサーバへの接続のアロケーションを「第１のテーブル」に記憶することができる。テーブルのエントリは、送信元ＩＰアドレスおよび送信元ポート、選択されたサーバ、ならびに場合によって、さらなる情報、たとえば、宛先ＩＰアドレスおよび宛先ポートもまた含むことができる。それに返して、サーバ２３０は、応答データパケット３１０とも呼ばれる割り当てメッセージ３１０を提供する。したがって、装置１００は、現在のネットワーク宛先エンティティ２３０から応答データパケット３１０を受信するように構成された手段１４０を含み、応答データパケット３１０は、データパケット関連付けについての情報を含み、データパケット関連付けは、データ送信元２００とデータ宛先２３０との間のデータセッションに属する複数の異なるデータパケット間の関連付けである。選択するように構成された手段１２０は、関連付けについての情報を記憶するためにさらに構成されている。言い換えれば、負荷分散装置２２０は、トークンを検出し、トークンのサーバへのアロケーションを「第２のテーブル」に記憶することができる。テーブルのエントリは、トークンおよび動作サーバ（サーバ１）、ならびに場合により、マルチパスセッションを記述するさらなる情報もまた含むことができる。
【００４２】
実施形態において、負荷分散装置２２０は、したがって、結合された接続に対処することができる。実施形態は、負荷分散装置が結合された接続のために実行することができる、異なるステップを利用することができる。そのような拡張された負荷分散装置２２０は、接続セットアップ中に交換されるトークン情報を決定し、記憶し、セッションの結合された接続を同じサーバ２３０に送り出すために、この情報を使用することができる。結合された接続が、サーバファーム２３０−２３８でホストされるサービスにアクセスするために使用される場合、端末２００とサーバ２３０との通信は、「第４層」ゲートウェイとして働く負荷分散装置２２０を通過することができる。この事例は、既に図３を使用して説明された。
【００４３】
実施形態は、透過的な「第４層」ゲートウェイとして働く負荷分散装置２２０を提供することができ、負荷分散装置２２０は、１つ（またはいくつかの）公に見えるＩＰアドレスを有し、アドレスの書き換えなどの別の転送メカニズムによって、パケットをサーバ２３０−２３８へと転送する。クライアントまたは端末２００の観点からは、すべての結合された接続が、負荷分散装置２２０において終端してよい。負荷分散装置２２０は、結合された接続をサポートするホストにおいて必要とされる機能と同様の機能を実施することができる。
【００４４】
続いて、場合により、データ転送３１５が第１の接続で実行されてよい。上の説明および図５によれば、端末２００側から新しい接続がセットアップされるとき、負荷分散装置２２０は、最初に、パケットが（マルチパスＴＣＰなどの）結合された接続を使用するプロトコルのためのセットアップパケットであるかどうかを検査し、次いで、その場合に、以下のステップを実行することができる。いくつかの実施形態において、負荷分散装置２２０は、接続セットアップパケット３０５、すなわち現在のデータパケットまたはＴＣＰ  ＳＹＮが、「参加」メッセージ３２０を含むかどうかを検査することができる。「参加」メッセージ３２０が見つからない場合、負荷分散装置２２０は、サーバ選択メカニズム、たとえばハッシュを、送信元ＩＰアドレスおよび送信元ポート番号、またはいくつかの他の負荷分散基準に適用して、サーバ２３０を選択することができる。次いで、パケットの送信元ＩＰ／送信元ポートとサーバ２３０との組み合わせ、ならびに場合によって他の情報が、「第１のルックアップテーブル」に加えられてよく、パケットは、選択されたサーバ２３０へと転送されてよい。「第１のルックアップテーブル」は、フローをサーバ２３０にマップすることができ、それはまた単一の接続のために利用されてもよい。以下において、用語「第１のルックアップテーブル」および「第１のテーブル」は、同義語として使用されることになり、これは用語「第２のルックアップテーブル」および「第２のテーブル」にも当てはまる。
【００４５】
セッションの第１の接続の場合には、サーバ２３０、すなわち現在の宛先ネットワークエンティティが、接続セットアップパケット３０５（ＴＣＰ  ＳＹＮ）、すなわち現在のデータパケットに、肯定応答パケット（ＴＣＰ  ＳＹＮ／ＡＣＫ）３１０、すなわち応答データパケットで応答することができ、応答データパケットは、「割り当て」メッセージを含み、「割り当て」メッセージは、トークン、すなわち、たとえば新しく結合された接続のためにサーバ２３０から選択されたデータパケット関連付けについての情報を含む。「割り当て」メッセージ３１０が検出されると、負荷分散装置２２０は、発信するサーバ２３０を判定し、トークンとサーバ２３０との組み合わせを「第２のルックアップテーブル」に記憶することができる。次いで、パケットの処理は続けられ、パケットは、インターネットへと転送される。言い換えれば、選択するように構成された手段１２０は、データパケット関連付けについての情報と共に、現在の宛先ネットワークエンティティについての情報を記憶するためにさらに構成されていてよい。
【００４６】
実施形態において、受信するように構成された手段１１０は、別の送信元ネットワークエンティティ２０７から関連付けられたデータパケット３２０を受信するためにさらに構成されていてよく、関連付けられたデータパケット３２０は、応答データパケット３１０の後に受信され、関連付けられたデータパケット３２０は、データセッションに属し、かつデータパケット関連付けについての情報（トークン）を含む。選択するように構成された手段１２０は、データパケット関連付けについての情報に基づいて、現在の宛先ネットワークエンティティ２３０を選択するためにさらに構成されていてよく、転送するように構成された手段１３０は、関連付けられたデータパケット３２０を、現在の宛先ネットワークエンティティ２３０へと転送するためにさらに構成されていてよい。言い換えれば、「参加」メッセージ３２０が、インターネット２１０から生じる接続セットアップパケット（すなわち、ＴＣＰ  ＳＹＮ）において見つかると、既に存在する結合された接続の一部としての追加の接続が要求されてよい。この場合、負荷分散装置２２０は、「参加」メッセージ３２０から情報（トークン）を取得することができ、それを「第２のルックアップテーブル」における入力として使用して、第１の接続の場合と同じサーバ２３０を見つけ、選択することができる。負荷分散装置２２０は、トークンを検出し、トークンアロケーションリスト（「第２のテーブル」）からサーバ１を選択し、パケットをサーバ１へと転送し、たとえば、アロケーション（送信元ＩＰおよびポート、サーバ１）を記憶することによって、選択されたサーバへの接続のマッピングを「第１のテーブル」に記憶することができる。さらに、第１のパケットの送信元ＩＰ／送信元ポートならびにサーバ２３０などの、結合された接続に関する情報は、「第１のルックアップテーブル」に加えられてよく、パケット３２０は、サーバへと転送される。実施形態において、このセッションのすべての他の着信データパケットについて、負荷分散装置２２０は、たとえば、パケットの送信元ＩＰ／送信元ポートを入力として使用して、「第１のルックアップテーブル」からサーバ２３０を選択し、パケットを割り当てられたサーバ２３０へと転送することができる。さらに、データパケット、すなわち、任意のサーバ２３０−２３８によって送信される、接続の第１のパケットではないすべてのパケットは、さらなる処理なしにインターネット２１０へと転送される。負荷分散装置２２０は、ＩＰアドレスおよびポートアロケーションリスト（「第１のテーブル」）からサーバ１を選択し、パケットをサーバ１へと転送することができる。
【００４７】
実施形態において、応答データパケット３１０に含まれる、データパケット関連付け、すなわち、セッションおよび／またはサブフローについての情報は、関連付けられたデータパケット３２０に含まれるデータパケット関連付けについての情報と同一であってよく、すなわち、いくつかの実施形態において、第１のサブフローのために使用されるトークンは、追加のサブフローのために使用されるトークンと同一であってよい。データパケット関連付けについての情報は、マルチパスＴＣＰのトークンに、またはマルチパスＴＣＰの複数の異なるトークンからなるセットに相当することができる。他の実施形態において、応答データパケット３１０に含まれるデータパケット関連付けについての情報は、関連付けられたデータパケット３２０に含まれる情報と異なっていてよい。応答データパケット３１０に含まれるデータパケット関連付けについての情報は、マルチパスＴＣＰの複数の異なるトークンからなるセットに相当してよく、関連付けられたデータパケット３２０に含まれるデータパケット関連付けについての情報は、マルチパスＴＣＰの複数の異なるトークンからなるセットに含まれるマルチパスＴＣＰの１つの特定のトークンに相当してよい。選択するように構成された手段１２０は、データパケット関連付けについての情報（トークン）と共に、現在の宛先ネットワークエンティティ２３０についての情報を記憶するためにさらに構成されていてよい。
【００４８】
図６ａは、転送するための方法の実施形態を例示する流れ図を示す。上記に従って、方法は、現在のデータパケット３０５を、現在の送信元ネットワークエンティティ２０６から現在の宛先ネットワークエンティティ２３０へと転送するためのものであり、現在の宛先ネットワークエンティティ２３０は、複数の宛先ネットワークエンティティ２３０−２３８から選択される。方法は、現在のデータパケットを受信するステップ６００と、負荷分散基準に基づいて、現在の宛先ネットワークエンティティを選択するステップ６１０とを含む。さらに、方法は、現在のデータパケットを現在の宛先ネットワークエンティティ２３０へと転送するステップ６２０を含む。方法は、現在のネットワーク宛先エンティティから応答データパケットを受信するステップ６３０をさらに含み、応答データパケットは、データパケット関連付けについての情報を含み、データパケット関連付けは、データ送信元とデータ宛先との間のデータセッションに属する複数の異なるデータパケット間の関連付けである。方法は、関連付けについての情報を記憶するステップ６４０をさらに含む。
【００４９】
図６ｂは、提供するための方法の実施形態を例示する別の流れ図を示す。続いてさらに詳述されるように、方法は、データパケット関連付けについての情報を、ネットワークエンティティ２００、２２０、２３０−２３８に提供するためのものである。方法は、データパケット関連付けのための識別情報を生成するステップ６５０を含み、データパケット関連付けのための識別情報は、ある時間期間の間有効である。方法は、データパケット関連付けの識別情報についての情報を含むデータパケット関連付けについての情報を、異なるネットワークエンティティに提供するステップ６６０を含むことができる。方法は、複数の識別情報のそれぞれが、時間期間の間に生成されたときのデータパケット関連付けのための識別情報とは異なるように、データパケット関連付けのための複数の識別情報を生成するさらなるステップ６７０を含む。
【００５０】
図７ａは、現在のデータパケットを、現在の送信元ネットワークエンティティから現在の宛先ネットワークエンティティへと転送するための方法の実施形態を例示する流れ図を示し、現在の宛先ネットワークエンティティは、複数の宛先ネットワークエンティティから選択される。流れ図は、図３に示されたシナリオに一致して、データパケットがインターネットから受信されたときの方法を示す。現在のデータパケットを受信した後、第１のステップ７００で、パケットヘッダ、たとえば、ＩＰパケットヘッダまたはＴＣＰパケットヘッダが解析される。ステップ７０１で、方法は、前記パケットが接続のためのセットアップパケットであることを判定することができる。パケットがセットアップパケットに相当しない場合、続くステップ７０２で、方法は、ストレージから、たとえば、第１のルックアップテーブルから、対応するサーバアドレスをルックアップすることができる。サーバアドレスをルックアップした後、ステップ７０３で、パケットは次いでサーバに送り出されてよい。ステップ７０１で、パケットが接続のためのセットアップパケットに相当することが判定された場合、続いてステップ７０４で、パケットが、接続を結合するプロトコルのためのセットアップパケットに相当するかどうかがさらに判定されてよい。そのようなパケットが判定されない場合、ステップ７０６で、サーバ決定のための負荷分散メカニズムは、通常のＴＣＰ接続のためとして使用されてよい。言い換えれば、受信されたデータパケットが、関連付けられたパケットまたはセットアップメッセージでないとき、現在の宛先ネットワークエンティティは、負荷分散基準に基づいて、現在のデータパケットに類似したパケットのために選択される。ステップ７０７で、データパケットとサーバとのマッピングが、たとえば、第１のルックアップテーブルに記憶されてよい。
【００５１】
続いて、ステップ７０８で、データパケットは、選択されたサーバに送り出されてよい。ステップ７０４で、接続を結合するプロトコルのためのセットアップパケットが検出された場合、続いてステップ７１０で、パケットが、第１の接続割り当てを指しているかどうかが判定されてよい。言い換えれば、パケットが、セッションの第１の接続をセットアップするよう意図されている、すなわち、パケットが、上の現在のデータパケットに相当することが判定されてよい。そのようなパケットが判定されない場合、ステップ７１２で、パケットに含まれるトークンが既に記憶されているかどうかが検査されてよく、実施形態においては、ルックアップテーブル、すなわち、トークンのための第２のルックアップテーブルが使用されてよい。言い換えれば、パケットが、関連付けられたデータパケットに相当するかどうかが検査される。ステップ７１４で、トークンが見つからない場合、ステップ７１６で、エラーが検出されてよく、たとえば、パケットはその場合、任意のサーバに送り出されてよい、またはエラーメッセージが送信されてよい。ステップ７１４で、それに応じたトークンが見つかった場合、続くステップ７２０で、ルックアップテーブル、すなわち、第２のルックアップテーブルが検査されてよく、サーバアドレスが第２のルックアップテーブルから決定されてよく、すなわち、関連付けられたデータパケットについて、現在の宛先ネットワークエンティティがストレージから決定されてよい。ステップ７１０で、第１の接続のためのセットアップパケットが判定された場合、続いてステップ７１８で、負荷分散ポリシーに従って、それに応じたサーバが決定されてよい。ステップ７１８に続いて、またさらにステップ７２０に続いて、ステップ７２２で、マッピングが第１のルックアップテーブルに記憶されてよい。加えて、実施形態はまた、たとえば、後のステップにおけるエントリの追加に備えるために、第２のルックアップテーブルに情報を記憶することができる。続いて、ステップ７２４で、パケットは、選択されたサーバに送り出されてよい。
【００５２】
図７ｂは、方法の実施形態を例示する別の流れ図を示し、図７ｂでは、データパケットがサーバから受信されたときの方法のステップが示される。第１のステップ７３０で、受信されたデータパケットのパケットヘッダが解析される。続くステップ７３２で、方法は、パケットが、接続を結合するプロトコルのためのセットアップパケットに相当するかどうかを判定する。言い換えれば、ステップ７３２で、パケットが、応答データパケットに相当することができるかどうかが検査される。データパケットが、応答データパケットに相当しないことが判定された場合、データパケットは続いて、ステップ７３４で、通常のやり方でインターネットに配信される。しかし、ステップ７３２で、受信されたデータパケットが接続を結合するプロトコルのためのセットアップパケットに相当することが判定された場合、続いてステップ７３６で、データパケットが、第１の接続割り当てに、すなわち、上で説明されたような応答データパケットに相当するかどうかがさらに検査される。これが当てはまらない場合、ステップ７３８で、パケットは、通常のやり方でインターネットに配信される。ステップ７３６で、パケットが、第１の接続割り当てに、すなわち、応答データパケットに相当することが判定された場合、ステップ７４０で、トークンの一意性についてのオプション検査が実行されてよい。ステップ７４４で、パケットがインターネットに配信される前に、ステップ７４２で、サーバとトークンとのマッピングが第２のルックアップテーブルに記憶されてよい。ステップ７４０についてのさらなる詳細、すなわち、トークンまたはデータパケット関連付けについての情報の一意性検査が、続いて詳述される。
【００５３】
図８は、負荷分散装置８００における実施形態の別のブロック図を示す。図８は、上で説明された装置１００を含む、負荷分散装置８００の実施形態を示す。図８は、サーバ８１０とインターネット８１５との間でデータパケットを転送するデータパス８０５を示す。インターネット８１５に向けて、ＩＰサービスが提供されてよく、サーバ８１０に向けて、たとえば、サーバアドレスのマッピングが使用されてよい。さらに、負荷分散装置８００は、サーバに対する制御接続８２０を有し、ブロック８２５に示されるサーバステータスをモニタすることができる。上の説明によれば、負荷分散装置８００は、どの送信元からデータパケットがどのサーバへと転送されたかを記憶するための第１のルックアップテーブル８３５と共に、サーバ選択アルゴリズム８５５を利用することができる。構成および管理エンティティ８３０が、これらのコンポーネントを制御することができる。さらに、負荷分散装置８００は、装置１００がその中で実装されてよい、結合接続対処エンティティ８５０を含むことができる。記憶目的のために、結合接続対処エンティティ８５０は、データパケット関連付けについての情報、トークン、およびサーバアドレスをそれぞれ記憶するように、第２のルックアップテーブル８４０に接続されてよい。図８では、負荷分散装置８００の主なコンポーネントが示されている。結合された接続に対処するための機能は、結合接続対処ボックス８５０およびオプションの第２のルックアップテーブル８４０によって表される。２つのテーブル、「第１のテーブル」８３５および「第２のテーブル」８４０は、異なる情報を概念的に記憶することができる。別の実施形態では、情報を１つのテーブルに統合することができる。
【００５４】
上で説明された実施形態によれば、装置１００は、結合された接続またはデータパケット関連付けの対処を、負荷分散装置８００において可能にすることができる。さらなる実施形態において、選択するように構成された手段１２０は、データパケット関連付けについての情報を含むデータパケットを受信することなく所定の時間が経過した後に、または、接続および／またはセッションを閉じるシグナリング情報を受信した後に、ストレージからデータパケット関連付けについての情報を取り除くためにさらに構成されていてよい。ルックアップテーブルのサイズが過度に大きくなるのを避けるために、実施形態は、セッションの最後を検出し、テーブルの中の関連付けられたエントリを取り除くことができる。言い換えれば、手段１４０および／または手段１２０は、セッションの最後のパケットを受信するように構成されていてよく、そのようなパケットの受信時に、それぞれのデータパケット関連付けについての情報をストレージから取り除くことができる。あるいは、古くなり、もはや使用されないテーブルのエントリをエージングアウトするよく知られたメカニズムが、実施形態に適用されてもよい。さらに、実施形態において、装置１００は、データ関連付けについての情報を取り除くこと、または変更することについて、別のネットワーク宛先エンティティに通知するように構成された手段を含むことができる。
【００５５】
実施形態は、トークンまたはデータパケット関連付けについての情報の一意性に対処するためのメカニズムをさらに含むことができる。エラーを避けるために、負荷分散装置の背後にある２つのサーバは、同じトークンを使用することができない、すなわち、トークンは、負荷分散装置に対して一意であるべきであり、または少なくともパブリックＩＰアドレスごとに一意であるべきである。実施形態において、サーバによるトークンの使用は、負荷分散装置の背後にあるすべてのサーバの間でトークンの一意性が保証されるように、上で説明された装置１５０によって調整されてよい。したがって、実施形態において、サーバは、データパケット関連付けについての情報またはトークンを、別のエンティティから、たとえば、装置１５０の実施形態から受信するように構成されていてよい。装置１００の他の実施形態において、受信するように構成された手段１４０は、別のネットワーク宛先エンティティからさらなる応答データパケットを受信するようにさらに構成されていてよく、さらなる応答データパケットは、データパケット関連付けについての情報を含み、装置は、さらなる応答データパケットからデータ関連付けについての情報を取り除くために、または、データ関連付けについての情報を、さらなる応答データパケットにおけるデータ関連付けについての異なる情報に変更するように構成された手段を含む。言い換えれば、同じデータパケット関連付けについての同じ情報を含む、すなわち、同じトークンを使用する２つの応答データパケットが受信された場合、実施形態は、データパケット関連付けについての２つ目の情報を取り除く、または変更することができる。負荷分散装置との調整または相互作用なしに、トークンがサーバによって選択されるシナリオにおいては、そのような実施形態は、衝突を防ぐことができる。
【００５６】
負荷分散装置の実施形態は、トークンが既に使用中ではないことをトークンごとに検証することができる。重複または衝突の場合、負荷分散装置は、たとえば、対応するＴＣＰオプションを、マルチパスＴＣＰのためのＳＹＮ／ＡＣＫパケットから取り除くことによって、マルチパストランスポートの使用を防ぐことができる。他の実施形態において、負荷分散装置は、セッションのすべての結合された接続について、トークンを別の値に透過的に置き換えることができる。さらなる実施形態において、サーバファームの前にあるいくつかの負荷分散装置が使用されてよい。その場合、負荷分散装置は、たとえば、シグナリング方法によって、上で説明された方法を実行するように調整することができる。言い換えれば、そのような実施形態において、装置１００は、データ関連付けパケットをネットワークエンティティから受信するように構成されたさらなる手段を含むことができ、データ関連付けパケットは、複数の異なるデータパケット関連付けについての情報を含む。すなわち、そのような実施形態において、たとえば、データ関連付けパケットを使用して、データパケット関連付けについての情報を互いの間で調整する多数の装置が実現されてよい。
【００５７】
図９は、ＭＰＴＣＰによる実施形態を示す。図９は、ＭＰＴＣＰサポートを備えた移動端末９００が、インターネット９１５に接続するために、３Ｇ（第３世代セルラネットワークの省略形）９０５無線インターフェース上で結合された接続を使用し、Ｗｉ−Ｆｉ９１０上で第２の結合された接続を使用するシナリオにおける実施形態を示す。両方の接続が、共にＭＰＴＣＰセッション９２０を形成する。移動端末９００は、ウェブサーバにデータを要求し、図９に示されるシナリオにおいて、ウェブサーバファーム９３０は、上で説明された装置１００の実施形態を含むＭＰＴＣＰ認識負荷分散装置９２５の背後にある。マルチパスＴＣＰ（ＭＰＴＣＰ）は、ＩＥＴＦによって現在規格化されているＴＣＰ拡張である。現在のプロトコル設計は、ＩＥＴＦドラフトに記載されており、Ａ．Ｆｏｒｄ、Ｃ．Ｒａｉｃｕｉ、Ｍ．Ｈａｎｄｌｅｙ、「ＴＣＰ  Ｅｘｔｅｎｓｉｏｎｓ  ｆｏｒ  Ｍｕｌｔｉｐａｔｈ  Ｏｐｅｒａｔｉｏｎ  ｗｉｔｈ  Ｍｕｌｔｉｐｌｅ  Ａｄｄｒｅｓｓｅｓ」、ＩＥＴＦ  Ｉｎｔｅｒｎｅｔ  Ｄｒａｆｔ、ｗｏｒｋ  ｉｎ  ｐｒｏｇｒｅｓｓ、２０１０年７月、ｄｒａｆｔ−ｉｅｔｆ−ｍｐｔｃｐ−ｍｕｌｔｉａｄｄｒｅｓｓｅｄ−０１を参照されたい。現在のプロトコル仕様によれば、ＭＰＴＣＰは、ＴＣＰヘッダのＴＣＰオプションによって、「割り当て」および「参加」メッセージを実装する。両方のメッセージは、ＳＹＮフラグを有するパケットにおいてのみ現れることになり、これにより、負荷分散装置９２５にとっては、メッセージを検出し、解析することが容易になる。両方の事例で、トークン情報は、ＴＣＰオプションの内部で符号化される。図９に示された実施形態において、移動端末９００は、マルチホームの端末、すなわち、２つ以上のアクティブなネットワークインターフェースを有する端末であることが想定される。この事例において、ＭＰＴＣＰは、ＴＣＰ接続のための両方のインターフェースの並列使用を許可する。図９の実施形態において、移動端末９００は、３Ｇ（第３世代の省略形）９０５およびＷｉｆｉ（ＷｉＦｉアライアンスの省略形）９１０のインターフェース上で、ウェブサイトにアクセスする。ウェブサイトは、ウェブサーバファーム９３０においてホストされ、負荷分散装置９２５は、トラフィックをｎ個のウェブサーバ９３０に分散させる。端末９００は、一番上に示された第１のウェブサーバと通信すると想定される。サーバファーム９３０の前にある負荷分散装置９２５は、ＭＰＴＣＰセッションを形成する２つの結合された接続が実際に同じウェブサーバに割り当てられるのを保証するために、実施形態を使用する。
【００５８】
さらに、実施形態は、コンピュータプログラムを提供することができ、コンピュータプログラムは、コンピュータまたはプロセッサ上で実行されるときに、上で説明された方法のうちの１つを実施するためのプログラムコードを有する。当業者は、上で説明されたさまざまな方法のステップが、プログラムされたコンピュータによって実施され得ることを直ちに認めるであろう。本明細書において、いくつかの実施形態はまた、プログラムストレージデバイス、たとえば、デジタルデータストレージ媒体を含むよう意図され、これらは、マシン可読またはコンピュータ可読であって、命令のマシン実行可能な、またはコンピュータ実行可能なプログラムを符号化し、前記命令は、前記上で説明された方法のステップのいくつか、またはすべてを実施する。プログラムストレージデバイスは、たとえば、デジタルメモリ、磁気ディスク、磁気テープ、およびハードドライブなどの磁気ストレージ媒体、または光学的に可読なデジタルデータストレージ媒体であってよい。実施形態はまた、上で説明された方法の前記ステップを実施するようにプログラムされたコンピュータを含むよう意図される。
【００５９】
説明および図面は、本発明の原理を例示するにすぎない。したがって、本明細書に明示的に説明されず、または示されなくても、本発明の原理を具体化し、その趣旨および範囲内に含まれるさまざまな構成を、当業者が考案できることが認識されるであろう。さらに、本明細書に挙げられたすべての例は、主に、本発明の原理、および当技術分野を促進するために発明者により貢献された概念を読者が理解するのを支援するための教育的な目的にすぎないことが明確に意図され、そのように具体的に挙げられた実施例および条件に限定しないものとして解釈されるべきである。さらに、本発明の原理、態様、および実施形態を本明細書において列挙するすべての記述、ならびにその具体的な実施例は、その均等物を包含するように意図される。
【００６０】
「手段」、「受信するように構成された手段」、「選択するように構成された手段」、「転送するように構成された手段」、「取り除くように構成された手段」、「変更するように構成された手段」、「通知するように構成された手段」、「生成するように構成された手段」、または「提供するように構成された手段」としてラベル付けされた任意の機能性ブロックを含む、図面に示されたさまざまな要素の機能は、たとえば、受信機、セレクタ、転送装置、除去装置、変更装置、通知装置、生成装置、提供装置、プロセッサ、コントローラ、トランシーバのような、専用ハードウェア、ならびに適切なソフトウェアと関連してソフトウェアを実行することができるハードウェアの使用を通して提供されてよい。プロセッサにより提供されるとき、機能は、単一の専用プロセッサにより、単一の共有プロセッサにより、または、そのうちのいくつかが共有され得る複数の個々のプロセッサにより提供されてもよい。さらに、用語「プロセッサ」または「コントローラ」の明示的な使用は、ソフトウェアを実行することができるハードウェアを排他的に指すよう解釈されるべきでなく、限定はせずに、デジタル信号プロセッサ（ＤＳＰ）ハードウェア、ネットワークプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ソフトウェアを記憶するための読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、および不揮発性ストレージを暗黙的に含むことができる。従来の、および／またはカスタムの他のハードウェアもまた含まれてよい。
【００６１】
本明細書におけるあらゆるブロック図は、本発明の原理を具体化する例示的な回路の概念的ビューを表現することが、当業者によって認識されるべきである。同様に、あらゆる流れ図、流れ略図、状態遷移図、擬似コードなどは、さまざまな処理を表現しており、これらの処理は、コンピュータ可読媒体おいて実質的に表現され、したがって、コンピュータまたはプロセッサが明示的に示されていてもいなくても、そのようなコンピュータまたはプロセッサによって実行され得ることが認識されるであろう。
【図１ａ】
0005726336.tif 000002
【図１ｂ】
0005726336.tif 000003
【図２】
0005726336.tif 000004
【図３】
0005726336.tif 000005
【図４】
0005726336.tif 000006
【図５】
0005726336.tif 000007
【図６ａ】
0005726336.tif 000008
【図６ｂ】
0005726336.tif 000009
【図７ａ】
0005726336.tif 000010
【図７ｂ】
0005726336.tif 000011
【図８】
0005726336.tif 000012
【図９】
0005726336.tif 000013