JP2005520401A - マルチパス通信用の方法及びシステム - Google Patents
マルチパス通信用の方法及びシステム Download PDFInfo
- Publication number
- JP2005520401A JP2005520401A JP2003575582A JP2003575582A JP2005520401A JP 2005520401 A JP2005520401 A JP 2005520401A JP 2003575582 A JP2003575582 A JP 2003575582A JP 2003575582 A JP2003575582 A JP 2003575582A JP 2005520401 A JP2005520401 A JP 2005520401A
- Authority
- JP
- Japan
- Prior art keywords
- combining
- connection
- internet
- client device
- traffic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/168—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/567—Integrating service provisioning from a plurality of service providers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本発明は、ネットワーク輻輳に対処する方法及びシステム(1000)に関する。第1インターネットワーキング装置(100)は、ネットワーク(AN1;AN2)を介して第2装置(400)にアクセスするために利用可能な幾らかの経路(110;120)を持つことができる。前記第1装置は、例えば、常に動作可能な低帯域幅接続及び/又は前記装置がドッキングステーション内にある場合のみに動作可能な高帯域幅接続を持っていてもよい。本発明の基本概念は、スプリッタ/マージャ装置(130)において実施され、スプリッタ/マージャ装置(130)は、TCP接続のような接続(1)をプロキシし、接続(1)を利用可能である複数の別々の接続(2,3)に分割し、パケット(140)を外部のスプリッタ/マージャ構成要素(200)に対してこれらの複数の接続上で経路指定する。スプリッタ/マージャ装置(130;134;142;144;152)は、前記パケットをこれらの接続(2,3)のそれぞれに沿った移送の進行に依存して前記利用可能な接続上で分離する。スプリッタ/マージャ構成要素(130;200)の機能は、もし入ってくるトラフィック(620;140,600)及び出て行くトラフィック(140;500,620)の両方が存在するならば、対称であり、酷似している。
Description
本発明は、ネットワーク内の第1位置におけるクライアント装置と第2位置におけるサーバ装置との間のTCP接続のようなネットワーク間接続上のリレー動作を高速化する方法に関し、当該ネットワークは、前記クライアント装置と前記サーバ装置との間に複数のアクセスノード又は通信経路を有し、当該方法は、制御構成要素をホストとするコマンドプロトコルの使用を有する。本発明は、前記方法を実施するのに適したシステムにも関する。
データがネットワーク内の様々なノード上を移動する際に遅いリンクにより作られる時間遅延は、繰り返し発生する問題である。これは、待ち時間として既知である。長い待ち時間に対処するために、先行技術において既知である幾つかの解決法が存在する。1つの解決法は、TCP/IP伝達を待ち時間の長いシステムの問題に影響されないスクリプト伝達に封入する分割プロキシシステムを用いる。この解決法の不利点は、適切なスクリプト伝達の増加されたロバスト性が、低帯域幅通信経路の制限されたスループットの影響を受けることである。
他の既知の解決法は、アプリケーション層サーバが、分割TCP接続のクライアント−プロキシ・セクションとプロキシ−サーバ・セクションとの間でデータを交換することをやめさせ、前記分割接続の一端に到着するバイトストリームを直接、前記分割接続の他端のシーケンス番号スペースにマッピングすることを必要とする。この解決法も、低帯域幅通信経路の制限されたスループットの影響を受ける。
更に他の既知の解決法は、より大きなTCPパケットを回復する代わりに、例えば無線通信におけるエアリンクタイムフレーム(air link time frame)のようなパケットの実際に失われた部分のみを回復することによりTCPスループットの不必要な劣化を防ぐ。この解決法は、長い切断が検出される場合にTCPソースウィンドウのクエンチングを引き起こすという不利点を持つ。
本発明の目的は、パケット切り替えシステムにおいて通信経路の輻輳に対処することである。
本発明の他の目的は、通信プロトコルにおけるフロー制御機構と輻輳制御機構との間の適切なバランスを達成することを伴う方法を提供することである。更に他の目的は、このような方法を実施するのに適したシステムを提供することである。
本発明の1つの態様によると、記載された目的の1つ以上は、請求項1による、TCP接続のようなネットワーク間接続上のリレー動作を高速化する方法により達成される。
基本的な新規の及び発明的な概念は、単一の接続に対して複数のアクセスネットワークの帯域幅を使用し、装置が異なるアクセスネットワーク間で切り替わる際に前記単一の接続の適切な転送を用いることである。関連した技術的な利点は、これが、複数のアクセスノード又は通信経路を有するネットワーク内の装置に対する全ての利用可能なハードウェア帯域幅の使用を可能にすることである。また、装置が異なるアクセスネットワーク間で切り替わる際に、接続は切断又は切られ、且つこの後に再構成されなければならない。これは、動作の信頼性をも向上させる。
本発明による前記方法の実施例は、例えば、無線ネットワークカード及び有線接続の両方を持つラップトップコンピュータが、インターネット上でオーディオ/ビデオファイルをストリーミングするために両方のネットワークの帯域幅を組み合わせることができることを可能にする。また、もし前記ラップトップコンピュータが、有線接続上に例えばTCP接続を持つならば、前記TCP接続は、前記接続を切ることなく無線アクセスネットワークに転送されることもできる。
本発明による前記方法の好ましい実施例において、これは、インターネット上の結合/分割構成要素に対する前記クライアント装置が利用することができる複数のアクセスネットワーク上の帯域幅を監視するステップを有する。更に好ましくは、前記方法は、利用可能な帯域幅を最大限使用するために前記クライアント端の接続を切り替える制御命令を生成することにより前記利用可能な帯域幅の変化に応答するステップをも有する。これは、正確なアルゴリズムの使用並びに効率的な送信、再送信及び切り替えステップを可能にする点で有利である。
更に他の実施例において、インターネット上の前記結合/分割構成要素において複数のIPアドレスを通る前記サーバ装置から生じたパケットのストリームを結合する複数のステップと、逆方向のトラフィックを分割する複数のステップとが存在する。これも、高速トラフィックの利点を提供する。
本発明は、前記ネットワーク間接続上のリレー動作を高速化する方法と共に使用するのに適した分割/結合装置、及び前記分割/結合装置を動作する命令を有するコンピュータプログラムにも関する。更に、本発明は、第1位置におけるサーバ装置内の分割/結合装置と、インターネット上の分割/結合装置とを有する請求項7によるシステムにも関し、当該システムは、本発明による前記方法を実施するのに適している。
本発明のこれら及び他の態様は、以下に記述される実施例を参照して明らかにされ、説明されるだろう。
図1は、複数のアクセスネットワークに接続するクライアント装置100を示す。図3は、図1の構成を更に詳細に示す。クライアント装置100は、コマンドプロトコル104のホストとなる構成要素102により制御される。この方式には2つのネットワーク、即ちアクセスネットワーク1(AN1)及びアクセスネットワーク2(AN2)が存在し、ネットワークの数は、Nに一般化されることができる。両方のアクセスネットワークは、装置100にグローバルインターネットへのアクセスを提供する。クライアント装置100は、アクセスネットワークAN1上にIPアドレスIP1、及びアクセスネットワークAN2上にIPアドレスIP2を持つ。
クライアント装置100は、2つの構成要素と相互作用する。第一に、スプリッタ/マージャ構成要素130が存在する。この(ソフトウェア)構成要素130は、利用可能なアクセスネットワーク上で、例えばWindows(登録商標)下のWinsock API、Java(登録商標)のjava.netパッケージ、又はUNIX(登録商標)のBerkeleyソケットにアクセスすることにより、例えばTCPを使用するアプリケーション106から来るメッセージ138を分割する。同様に、この構成要素130は、前記アクセスネットワークから入ってくるメッセージ620を単一のストリームに結合する。アプリケーション106をクライアント装置100上で実行する目的のために、これは、プロキシする手段108の使用により、単一のTCP接続が存在するかのようである。第二に、前記第1位置に対して外側であり、インターネット300に接続されたスプリッタ/マージャ構成要素200が存在する。この構成要素200は、以前に分割されたストリーム(140)を結合し、これ(500)を前記接続の前記第2位置のサーバ端に送信するインターネットホスト(例えば特化したウェブサーバであるが、しかしながら、これはここに示されるものと同様な構成要素であることができる(ピア・ツー・ピア・ネットワーキング))である。同様に、前記第2位置における装置400に向かう情報(500)は、ここで利用可能な前記アクセスネットワーク上に分割されることができる。インターネット・スプリッタ/マージャ200は、単一のIPアドレスIP3を持つ。他の可能な実施があり、これによりインターネット・スプリッタ/マージャ200は、例えばロード・バランシング及び/又は信頼性の目的のために、二重化又は多重化される。単一の装置は、複数のインターネット・スプリッタ/マージャを使用することができるが、しかしながら単一の接続に対して、前記単一の装置は、IP3を持つ前記インターネット・スプリッタ/マージャ装置から例えばIP4を持つ通常のウェブサイトまでの通常の接続が両方の端点において単一のIPアドレスを要するので、単一のインターネット・スプリッタ/マージャしか使用することができない。
前記方法は、従って、クライアント装置100とインターネット上のサーバ装置400との間に接続1を開始するステップと、インターネット上の結合/分割構成要素200への複数の利用可能なアクセスネットワークAN1、AN2上の特別な接続2、3を作るステップと、インターネット上の結合/分割構成要素200と前記第2位置におけるサーバ装置400との間に接続4を作るステップと、前記第1位置におけるクライアント装置100自体で動作するアプリケーション106からのトラフィック138を分割するステップと、クライアント装置100から生じた分割されたデータパケット140を複数のIPアドレスIP1、IP2を介してインターネット上に送信するステップと、適切な場合に応答の無いパケットを再送信するステップ、又はもし適切であればアクセスネットワーク毎に再送信プロトコルを切り替えるステップと、複数のIPアドレスを通るクライアント装置100から生じたパケットのストリーム140をインターネット上の結合/分割構成要素200において結合するステップと、結合されたストリーム500を前記第2位置におけるサーバ装置400に転送するステップとを伴う。サーバ装置400からクライアント装置100へのトラフィック600は、上記のステップを逆の機能的な順序で進む。
スプリッタ/マージャ装置130は、前記接続のクライアント端においてのみ図示されている。このような装置が、前記接続のサーバ端にも設けられることができることは明らかであるべきである。
スプリッタ/マージャ装置130は、利用可能な接続2、3上の出て行くトラフィック140をこれらの接続のそれぞれの上での移送の進行に依存して分割する。クライアント装置100は、別々の通信経路110、120上の帯域幅を監視する手段148(図3を参照)と、利用可能な前記帯域幅の変化に応答する手段150(図3を参照)とを有する。後者の手段150は、利用可能な前記帯域幅を最大限使用するために前記クライアント端で前記接続を切り替える手段144(図3を参照)による使用のための制御命令152(図3を参照)を生成する。スプリッタ/マージャ装置130及び結合/分割構成要素200の機能は、入ってくるトラフィックと出て行くトラフィックとの両方が存在する場合には、対称であり酷似している。もしスプリッタ/マージャ装置130が、例えばファイアウォール又はポートフォワーディングを実施するゲートウェイにおいて構成されるならば、本発明の実施例は、ユーザに見えないように実施されることができる。インターネットウェブサイトは、マージャとして機能することができ、これにより前記第2位置における前記サーバ装置は、前記第1位置におけるスプリッタ/マージャ装置130の動作を認識しないままである。スプリッタ/マージャ装置130及び結合/分割構成要素200は、それぞれ単方向トラフィック又は双方向トラフィックを扱うように構成されることができる。
図2は、図1に示されるハードウェア及びソフトウェア構成要素上にオーバーレイされた複数の接続の設定を示す。この状況において、外部の分割/結合装置200(IPアドレスIP3を持つ)におけるアプリケーションは、クライアント装置100とインターネットホスト400(IPアドレスIP4を持つ)との間の接続を開始する。これは、接続1として示される。接続1は、以下のように確立される。内部のスプリッタ/マージャ装置130は、インターネット結合/分割構成要素200(IPアドレスIP3を持つ)への全ての利用可能なアクセスネットワーク(110、120)上に特別な接続を作る。これは、結果として接続2及び3を生じる。前記接続は、以下の態様で通常の接続とは異なるので、前記接続は特別である。第一に、初めにヘッダは、少なくとも目的のIPアドレス(IP4)を有するインターネット・マージャ/スプリッタ200(IP3を持つ)に転送される。第二に、前記再送信プロトコルは、アクセスネットワーク1(AN1)上で失われたパケットのアクセスネットワーク2(AN2)上の再送信を可能にするように変更される。これは、IPレベルで使用されるルーティング・プロトコルと同様である。単純な解決法は、通常の接続を使用することであり、このビットのストリーム内で、以下のサブストラクチャ、即ち<パケットID、ペイロード><パケットID、ペイロード>...を定めることである。
図3は、図1による前記ハードウェア及びソフトウェア構成要素を更に詳細に示す。スプリッタ/マージャ装置130は、接続1と相互運用する手段132と、アクセスネットワークAN1及びAN2上に特別な接続2、3を作る手段134と、クライアント装置100上で動作するアプリケーション106から装置130が受信するトラフィック138を分割されたデータパケット140に分割する手段136と、データパケット140をIP1及びIP2を介して結合/分割構成要素200に送信する手段142と、AN1とAN2との間のサービスにおいて前記再送信プロトコルを切り替える手段144とを有する。結合/分割構成要素200は、受信したデータパケット140をストリーム500に結合する手段210と、結合されたストリーム500をサーバ装置400に転送する手段220とを有する。双方向トラフィックの目的のために、構成要素200は、オプションとして、サーバ装置400からデータストリーム600を受信する手段230と、ストリーム600を分割されたデータパケット620に分割する手段240と、パケット620をスプリッタ/マージャ装置130に送信する手段250と、AN1とAN2との間のサービスにおいて前記再送信プロトコルを切り替える手段260とを有していてもよい。構成要素200の送信及び受信手段が、代替的に、インターネット上にこれら自体を手段310及び320として、これらの組み合わせとしてでさえ構成されることができることは、明らかにされるべきである。双方向トラフィックの目的のために、スプリッタ/マージャ装置130は、結合/分割構成要素200により送信されたパケット(もし単一のストリームであれば500、もし分割されたストリームであれば620)を受信する手段146を有する。装置130は、受信しうる分割されたストリーム620を結合する手段154をも有する。
図4は、前記ハードウェア及びソフトウェア構成要素、並びに上述のように利用されるこれらの間の接続の全図を与える。
パケットは複数のアクセスネットワーク上に送信されるので、2番目以降の接続のパケットIDは、(第1ネットワーク上に送信された)パケットを読み飛ばすことができ、パケットIDは、(もしこれが後で再送信及び供給されるならば)2つのネットワーク上に到着することができる。代わりに、UDPパッケージは、必要とされうる特定のプロトコルを作るために使用されることができる。これは、既にTCP内に存在する機能の多くの再実施を必要とするだろう。
分割及び結合アルゴリズムに関する本発明の態様は、以下の例として図示される。
前記スプリッタ用の可能なアルゴリズムは、以下のとおりである。
1.TCPストリームのNビットを取り、パッケージ=<x、ペイロード>を作る
2.パッケージxをバッファリングに記憶する
3.パッケージxを(ネットワークn上のTCP接続が、現在、再送信されていない/又は壊れている/又は使用中である)アクセスネットワークnに送信する
4.1に進み、次のNビット及びパッケージID=x+1を取る
+アクセスネットワーク1...n上のTCP再送信プロトコルに対する変更、
→もしパッケージxからのデータが再送信されるか/供給されることができなければ、以下の手順を起動する
再送信する(パッケージx、アクセスネットワークn)
1.バッファからパッケージxを取り出し、異なるアクセスネットワークk上に再送信する
2.アクセスネットワークn上への再送信をキャンセルする
→もしパッケージxからのデータが、成功して送信されるならば(TCPにおいて承認される)
受信される(パッケージx)
1.パッケージxのバッファを開放する。
1.TCPストリームのNビットを取り、パッケージ=<x、ペイロード>を作る
2.パッケージxをバッファリングに記憶する
3.パッケージxを(ネットワークn上のTCP接続が、現在、再送信されていない/又は壊れている/又は使用中である)アクセスネットワークnに送信する
4.1に進み、次のNビット及びパッケージID=x+1を取る
+アクセスネットワーク1...n上のTCP再送信プロトコルに対する変更、
→もしパッケージxからのデータが再送信されるか/供給されることができなければ、以下の手順を起動する
再送信する(パッケージx、アクセスネットワークn)
1.バッファからパッケージxを取り出し、異なるアクセスネットワークk上に再送信する
2.アクセスネットワークn上への再送信をキャンセルする
→もしパッケージxからのデータが、成功して送信されるならば(TCPにおいて承認される)
受信される(パッケージx)
1.パッケージxのバッファを開放する。
前記マージャ用の可能なアルゴリズムは、以下のとおりである。
1.TCPストリームからNビットを受信し、パッケージ=<x、ペイロード>を再構築し、
2.もし(より小さいxを持つパッケージが供給されなければ)パッケージをバッファリングし、
3.そうでなければ
3.1ペイロードを次の段階に移し、供給された数xを増加し、
3.2バッファリングされたパッケージx+1を確認する(もし見つかれば3.1に戻り、そうでなければ終了)。
1.TCPストリームからNビットを受信し、パッケージ=<x、ペイロード>を再構築し、
2.もし(より小さいxを持つパッケージが供給されなければ)パッケージをバッファリングし、
3.そうでなければ
3.1ペイロードを次の段階に移し、供給された数xを増加し、
3.2バッファリングされたパッケージx+1を確認する(もし見つかれば3.1に戻り、そうでなければ終了)。
必要とされるスプリッタ/マージャ・バッファリング・アルゴリズムは、TCP自体の通常のバッファリング機構と類似している。主な違いは、前記パケットが異なるIPアドレスから受信されることである。
以下のステップは、インターネット・マージャに対してIP4を持つ装置400とIP3を持つ構成要素200との間のTCP接続と、構成要素200内の前記マージャに対するTCPを使用するアプリケーションとに関する。適切なアルゴリズムは、当業者に既知であると考えられる。
一度、インターネット・マージャ/スプリッタ200が、前記装置内のアプリケーション106により送信されたビットストリーム(の先頭)を再構築すると、これは、(通常のTCP接続である)TCP接続4を作り、この後に、前記ビットストリームをIP4を持つ装置400(本例においてはウェブサイト)に送信する。ウェブサイト400は、前記ビットストリームを受信し、これをIPアドレスIP3を持つインターネットホストから来た通常のTCP接続として扱うだろう。ウェブサイト400は、これ自体のビットストリームに応答し、前記これ自体のビットストリームをインターネット・マージャ/スプリッタ200に送信する。インターネット・マージャ/スプリッタ200は、このビットストリームをパッケージに分離し(上述のスプリッタ機能性を参照)、前記パッケージを適切な利用可能なアクセスネットワークに送信するだろう。
これらのステップは、従って、前記第2位置における装置400から外部のインターネット・マージャ/スプリッタ200への通信において、酷似している。
最後に、前記第1位置における装置100は、前記第2位置における装置400から生じた前記入ってくるパッケージを結合し、結果として生じたビットストリームをアプリケーション106に移す。アプリケーション106は、これをIP4への通常のTCP接続として扱うだろう。オプションとして、スプリッタ認識アプリケーションは、TCP接続が前記スプリッタ(上記を参照)を使用するか否か、又はTCP接続が単一のネットワークを使用するかどうかを制御することができるように、インターフェースが加えられることができる。
使用されたIPアドレス上の前記スプリッタの効果が、NAT変換に類似しており、前記第2位置におけるウェブサイト400は、IP3と通信するかのように動作し、前記第1位置におけるアプリケーション106自体は、IP1又はIP2を使用して通信するかのように動作するだろうと当業者に明らかである。オプションとして、通常はTCP APIに存在する“ローカルIPアドレスを取得する”方法は、ウェブサイト400及びアプリケーション106の両方が、IP3とIP4との間で通信するかのように動作するように、IP3を前記アプリケーションに返すことができる。他のオプションは、IP1、IP2及びIP3をアプリケーション106に返すことである。もしアプリケーション106がIP1/IP2を選択するならば、これは、これら特定のアクセスネットワークを使用し、もしIP3を選択するならば、これは、スプリッタ200を使用する(且つNATを必要としない)。前記アプリケーションが、前記IPアドレスの仕様、例えば何れのタイプのネットワークが手元にあるかを問い合わせることを可能にする特別なインターフェースがありうる。
メッセージ・シーケンスの実施例は、以下を有する。
1.<内部>アプリケーションは、IP1からIP4までTCP接続を命令する
2.装置スプリッタは、インターネット・マージャへのAN1、AN2上のTCP+接続を開く
3.インターネット・マージャは、IP4に対してTCP接続を開く
(省かれたTCPプロトコルの肯定応答)
4.<内部>アプリケーションは、NビットをTCP接続上に送信する
5.<内部>スプリッタは、Nビットをバッファリングする
6.装置スプリッタは、パッケージ<1、0...N/2ビット>をAN1上に送信する
(ここで、AN1は、前記パッケージを失い、長いタイムアウトの後に再送信すると仮定する)
7.装置スプリッタは、パッケージ<2、N/2...Nビット>をAN2上に送信する
(AN1は、スプリッタがパッケージ2を送信している場合には、パッケージ1を承認しない。
パッケージ2が到着し且つ承認されると仮定する)
8.インターネット・スプリッタは、パッケージ2を受信し、これをバッファリングする
9.装置スプリッタは、パッケージ<1、0...N/2ビット>をAN2上に送信する
10.インターネット・スプリッタは、パッケージ1を受信し、ビット0...NをIP4に対してTCP接続上に送信する。
1.<内部>アプリケーションは、IP1からIP4までTCP接続を命令する
2.装置スプリッタは、インターネット・マージャへのAN1、AN2上のTCP+接続を開く
3.インターネット・マージャは、IP4に対してTCP接続を開く
(省かれたTCPプロトコルの肯定応答)
4.<内部>アプリケーションは、NビットをTCP接続上に送信する
5.<内部>スプリッタは、Nビットをバッファリングする
6.装置スプリッタは、パッケージ<1、0...N/2ビット>をAN1上に送信する
(ここで、AN1は、前記パッケージを失い、長いタイムアウトの後に再送信すると仮定する)
7.装置スプリッタは、パッケージ<2、N/2...Nビット>をAN2上に送信する
(AN1は、スプリッタがパッケージ2を送信している場合には、パッケージ1を承認しない。
パッケージ2が到着し且つ承認されると仮定する)
8.インターネット・スプリッタは、パッケージ2を受信し、これをバッファリングする
9.装置スプリッタは、パッケージ<1、0...N/2ビット>をAN2上に送信する
10.インターネット・スプリッタは、パッケージ1を受信し、ビット0...NをIP4に対してTCP接続上に送信する。
もしこの後にアクセスネットワーク2(AN2)が故障するか又は遅く、且つアクセスネットワーク1が利用可能であれば、同様なメッセージ・シーケンスが生じ、前記メッセージは、単一の接続が存在するかのように再び到着する。
最後に、本発明は、本発明を実行するコンピュータプログラム、特に担体上又は内のコンピュータプログラムにも拡張する。プログラム160は、ソースコード、オブジェクトコード、部分的にコンパイルされた形式のようなオブジェクトコード及びコード中間ソース(code intermediate source)の形式、又は本発明によるプロセスの実施において使用するのに適したその他の形式であってもよい。前記担体は、前記プログラムを運ぶことができる何れのエンティティ又は装置であってもよい。例えば、前記担体は、記憶媒体を有することができ、又は電気若しくは光ケーブルを介して、無線により又は他の手段により伝達されることができる電気若しくは光信号のような送信可能な担体であってもよい。前記プログラムが、ケーブル又は他の装置若しくは手段により直接運ばれることができる信号で実施される場合、前記担体は、このようなケーブル又は他の装置手段により構成されうる。代わりに、前記担体は、前記プログラムが埋め込まれた集積回路であってもよく、前記集積回路は、関連したプロセスのステップを実行する、又は前記プログラム内で使用するように構成される。
上で述べられた一般的な新規及び発明的な概念は、輻輳した通信経路を避ける際に複数のネットワークの使用を可能にする。関連する利点は、インターネット上の前記結合/分割構成要素と初めに相互作用する必要がないので、前記ネットワークの待ち時間が小さくなり、帯域幅が増加されることであり、ペイロード内にこれ自体のIPアドレスを持つプロトコルが壊れないことである。
Claims (8)
- ネットワーク内の第1位置におけるクライアント装置と第2位置におけるサーバ装置との間のTCP接続のようなネットワーク間接続上のリレー動作を高速化する方法であり、前記ネットワークが、前記クライアント装置と前記サーバ装置との間に複数のアクセスノード又は通信経路を有し、前記方法が、制御構成要素をホストとするコマンドプロトコルの使用を有し、前記方法が、
−前記クライアント装置とインターネット上の前記サーバ装置との間の接続を開始するステップと、
−複数の利用可能なアクセスネットワーク上に前記インターネット上の結合/分割構成要素に対する特別な接続を作るステップと、
−前記インターネット上の前記結合/分割構成要素と前記第2位置における前記サーバ装置との間に接続を作るステップと、
−前記第1位置における前記クライアント装置自体で動作するアプリケーションからのトラフィックを分割するステップと、
−前記クライアント装置から生じた分割されたデータパケットを複数のIPアドレスを介して前記インターネットで送信するステップと、
−適切な場合に応答の無いパケットを再送信するステップ、又はもし適切であれば前記アクセスネットワーク毎に再送信プロトコルを切り替えるステップと、
−複数のIPアドレスを通る前記クライアント装置から生じた前記パケットのストリームを前記インターネット上の前記結合/分割構成要素において結合するステップと、
−結合された前記ストリームを前記第2位置における前記サーバ装置に転送するステップと、
を有する方法であって、
前記サーバ装置から前記クライアント装置へのトラフィックは、上記のステップを逆の機能的順序で進む、
方法。 - 前記方法が、更に、前記インターネット上の前記結合/分割構成要素に関して前記クライアント装置が利用することができる複数のアクセスネットワーク上の帯域幅を監視し、利用可能な前記帯域幅を最大限使用するために前記接続をクライアント端で切り替える制御命令を生成することにより利用可能な前記帯域幅の変化に応答するステップを有する、請求項1に記載のネットワーク間接続上のリレー動作を高速化する方法。
- 複数のIPアドレスを通る前記サーバ装置から生じた前記パケットのストリームを、前記インターネット上の結合/分割構成要素において結合し、逆方向のトラフィックを分割する複数のステップが存在する、請求項1に記載のネットワーク間接続上のリレー動作を高速化する方法。
- 請求項1に記載のリレー動作を高速化する方法において第1位置におけるクライアント装置と共に又は第2位置におけるサーバ装置と共に使用するのに適した分割/結合装置であって、
−前記クライアント装置とインターネット上の前記サーバ装置との間の接続と相互運用する手段と、
−前記分割/結合装置自体と前記インターネット上の結合/分割構成要素との間の複数の利用可能なアクセスネットワーク上に特別な接続を作る手段と、
−前記第1位置における前記クライアント装置上で動作するアプリケーションからのトラフィックを分割されたデータパケットに分割する手段と、
−前記分割されたデータパケットを前記インターネット上に複数のIPアドレスを介して前記インターネット上の前記結合/分割構成要素に送信する手段と、
−アクセスネットワーク毎に再送信プロトコルを切り替える手段と、
−前記結合/分割構成要素において受信された前記分割されたデータパケットを結合されたストリームに結合する手段と、
−前記結合されたストリームを前記第2位置における前記サーバ装置に転送する手段と、
−オプションとして、前記第2位置における前記サーバ装置からデータストリームを受信する手段と、
−オプションとして、前記データストリームを分割されたデータパケットに分割する手段と、
−オプションとして、前記分割されたデータパケットを前記インターネットで複数のIPアドレスを介して前記分割/結合装置に送信する手段と、
−オプションとして、アクセスネットワーク毎に再送信プロトコルを切り替える手段と、
−前記結合/分割構成要素により前記インターネットで前記分割/結合装置に送信された前記パケットを受信する手段と、
−前記結合/分割構成要素により前記分割/結合装置に送信されたパケットの分割されたストリームを結合する手段と、
を有する分割/結合装置。 - 前記装置が、更に、前記インターネット上の前記結合/分割構成要素に関して前記クライアント装置が利用することができる複数のアクセスネットワーク上の帯域幅を監視する手段と、利用可能な前記帯域幅を最大限使用するために、前記接続をクライアント端で切り替える制御命令を生成することにより利用可能な前記帯域幅の変化に応答する手段とを有する、請求項4に記載の分割/結合装置。
- 命令を有するコンピュータプログラムであって、前記命令は、送信ハードウェアを持つ又は送信ハードウェアに接続されたプログラム可能な処理装置を請求項1に記載の接続を切り替える方法の前記分割/結合するステップ及び切り替えるステップを実行することができるようにするために、前記第1位置における前記クライアント装置自体で動作するアプリケーションからのトラフィックの分割と、インターネット上の前記結合/分割構成要素に関して前記クライアント装置が利用することができる全てのアクセスネットワーク上の帯域幅の監視に関して実行されるべき処理又は機能を定めるコードを少なくとも含む、コンピュータプログラム。
- ネットワーク内の第1位置におけるクライアント装置と第2位置におけるサーバ装置との間にTCP接続のようなネットワーク間接続上のリレー動作を高速化するシステムであり、前記ネットワークは、前記クライアント装置と前記サーバ装置との間に複数のアクセスノード又はチャネルを有し、前記システムは、
クライアント端において、
−前記クライアント装置と前記サーバ装置との間の接続をプロキシする手段と、
−異なる通信経路に対する複数の別々の接続の中にプロキシされた前記接続を作る手段と、
−前記異なる通信経路上でこれら別々の接続を経路指定する手段と、
を有し、
中間又はサーバ端において、
−それぞれ、複数の前記異なる通信経路上のトラフィックを受信する及び/又は前記異なる通信経路上のトラフィックを送信する手段と、
−それぞれ、前記トラフィックを結合されたストリームに結合し、単一の接続を介して転送する、及び/又はトラフィックを異なるストリームに分割する手段と、
−結合されたトラフィックを前記サーバ装置に転送し、前記サーバ装置から受信されたトラフィックを適切であればそれぞれ前記異なる通信経路上のトラフィックに分割された単一のストリームとして前記サーバ装置により前記トラフィックが転送されるべき前記手段に転送する手段と、
を有するシステム。 - 前記システムが更に、
−前記別々の通信経路上で利用可能な帯域幅を監視する手段と、
−利用可能な前記帯域幅の変化に応答する手段であって、利用可能な前記帯域幅を最大限使用するために前記クライアント端において前記TCP接続を切り替える手段により使用するための制御命令を生成する手段と、
を有する、請求項7に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02076032 | 2002-03-14 | ||
PCT/IB2003/000570 WO2003077501A1 (en) | 2002-03-14 | 2003-02-12 | Method of and system for multi-path communication |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005520401A true JP2005520401A (ja) | 2005-07-07 |
Family
ID=27798875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003575582A Pending JP2005520401A (ja) | 2002-03-14 | 2003-02-12 | マルチパス通信用の方法及びシステム |
Country Status (7)
Country | Link |
---|---|
US (1) | US20050120140A1 (ja) |
EP (1) | EP1488593A1 (ja) |
JP (1) | JP2005520401A (ja) |
KR (1) | KR20040091731A (ja) |
CN (1) | CN1643870A (ja) |
AU (1) | AU2003205999A1 (ja) |
WO (1) | WO2003077501A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014049940A (ja) * | 2012-08-31 | 2014-03-17 | Sii Network Systems Kk | 中継装置、回線切替方法、及びプログラム |
KR101492541B1 (ko) | 2011-08-31 | 2015-02-11 | 에스케이텔레콤 주식회사 | 이기종 네트워크 기반 데이터 동시 전송 서비스 방법 및 이에 적용되는 장치 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7502936B2 (en) * | 2001-02-14 | 2009-03-10 | Jsm Technologies, L.L.C. | System and method providing secure access to a computer system |
DE10331111A1 (de) * | 2003-07-04 | 2005-01-27 | Teles Ag Informationstechnologien | Verfahren und Telekommunikationsanordnung zur Übertragung von Daten auf unterschiedlichen Übertragungswegen in einem Kommunikations-Vorgang sowie Transmissions-Server zur Durchführung des Verfahrens |
DE60329790D1 (de) * | 2003-12-01 | 2009-12-03 | Ericsson Telefon Ab L M | Verkehrsregelverfahren |
JP4472535B2 (ja) * | 2005-01-12 | 2010-06-02 | 株式会社日立製作所 | 情報伝送システム、鉄道車両用情報伝送システム及び車両用情報伝送端末装置 |
WO2007090325A1 (fr) * | 2006-02-08 | 2007-08-16 | Huawei Technologies Co., Ltd. | Procédé et dispositif de transmission de données |
CN101051924B (zh) * | 2006-04-06 | 2011-05-18 | 华为技术有限公司 | 用户网络的设备管理方法及用户网络管理实体 |
US7924793B2 (en) * | 2006-11-20 | 2011-04-12 | At&T Intellectual Property I, L.P. | Methods and apparatus to manage bandwidth in a wireless network |
GB2445400A (en) * | 2006-11-30 | 2008-07-09 | Sharp Kk | Method of connecting a device to a predetermined one of a plurality of available networks. |
US7983164B2 (en) * | 2006-12-01 | 2011-07-19 | Electronics And Telecommunications Research Institute | Apparatus and method for merging internet traffic mirrored from multiple links |
CN101309285B (zh) * | 2007-05-15 | 2012-09-05 | 华为技术有限公司 | 一种第二层控制的方法、装置及其系统 |
US8447860B2 (en) * | 2007-06-25 | 2013-05-21 | Dell Products L.P. | Storage area network with target side recognition and routing table upload |
CN101340267B (zh) * | 2007-07-03 | 2015-05-13 | 财团法人工业技术研究院 | 通讯系统的传输控制方法与装置 |
CN101674286B (zh) * | 2008-09-08 | 2012-12-12 | 中国科学院声学研究所 | 一种在单网络接口主机间实现多路径通信的方法 |
US11227687B2 (en) | 2010-01-22 | 2022-01-18 | Deka Products Limited Partnership | System, method, and apparatus for communicating data |
US20120155468A1 (en) * | 2010-12-21 | 2012-06-21 | Microsoft Corporation | Multi-path communications in a data center environment |
US9350665B2 (en) * | 2012-08-31 | 2016-05-24 | Cisco Technology, Inc. | Congestion mitigation and avoidance |
MX353110B (es) * | 2012-12-21 | 2017-12-19 | Deka Products Lp | Sistema, método y aparato para la comunicación de datos. |
CN103441937A (zh) * | 2013-08-21 | 2013-12-11 | 曙光信息产业(北京)有限公司 | 组播数据的发送方法和接收方法 |
CN103888367A (zh) * | 2014-03-10 | 2014-06-25 | 清华大学 | 基于分组传输时延的多路径tcp拥塞控制方法 |
EP3150019B1 (en) * | 2014-06-02 | 2020-07-22 | Nokia Solutions and Networks Oy | Multipath tcp with lte connections |
US11403106B2 (en) * | 2019-09-28 | 2022-08-02 | Tencent America LLC | Method and apparatus for stateless parallel processing of tasks and workflows |
KR20210137702A (ko) * | 2020-05-11 | 2021-11-18 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서 수신된 데이터 패킷을 처리하는 방법 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4703475A (en) * | 1985-12-04 | 1987-10-27 | American Telephone And Telegraph Company At&T Bell Laboratories | Data communication method and apparatus using multiple physical data links |
US5570356A (en) * | 1995-06-07 | 1996-10-29 | International Business Machines Corporation | High bandwidth communications system having multiple serial links |
US5996022A (en) * | 1996-06-03 | 1999-11-30 | Webtv Networks, Inc. | Transcoding data in a proxy computer prior to transmitting the audio data to a client |
US5913038A (en) * | 1996-12-13 | 1999-06-15 | Microsoft Corporation | System and method for processing multimedia data streams using filter graphs |
US6014694A (en) * | 1997-06-26 | 2000-01-11 | Citrix Systems, Inc. | System for adaptive video/audio transport over a network |
US6650660B1 (en) * | 1999-07-27 | 2003-11-18 | Pluris, Inc. | Apparatus and method for synchronization of multiple data paths and recovery from lost synchronization |
EP1224782B1 (en) * | 1999-10-15 | 2016-07-06 | BlackBerry Limited | Wireless parallel communications system and method therefor |
AU2016701A (en) * | 2000-06-19 | 2002-01-02 | Martin Gilbert | Secure communications method |
-
2003
- 2003-02-12 AU AU2003205999A patent/AU2003205999A1/en not_active Abandoned
- 2003-02-12 KR KR10-2004-7014360A patent/KR20040091731A/ko not_active Application Discontinuation
- 2003-02-12 CN CNA038059266A patent/CN1643870A/zh active Pending
- 2003-02-12 JP JP2003575582A patent/JP2005520401A/ja active Pending
- 2003-02-12 US US10/507,334 patent/US20050120140A1/en not_active Abandoned
- 2003-02-12 EP EP03702882A patent/EP1488593A1/en not_active Withdrawn
- 2003-02-12 WO PCT/IB2003/000570 patent/WO2003077501A1/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101492541B1 (ko) | 2011-08-31 | 2015-02-11 | 에스케이텔레콤 주식회사 | 이기종 네트워크 기반 데이터 동시 전송 서비스 방법 및 이에 적용되는 장치 |
JP2014049940A (ja) * | 2012-08-31 | 2014-03-17 | Sii Network Systems Kk | 中継装置、回線切替方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
AU2003205999A1 (en) | 2003-09-22 |
WO2003077501A1 (en) | 2003-09-18 |
US20050120140A1 (en) | 2005-06-02 |
CN1643870A (zh) | 2005-07-20 |
KR20040091731A (ko) | 2004-10-28 |
EP1488593A1 (en) | 2004-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005520401A (ja) | マルチパス通信用の方法及びシステム | |
US12069129B2 (en) | Optimizing data transmission between a first endpoint and a second endpoint in a computer network | |
US7318100B2 (en) | Cooperative proxy auto-discovery and connection interception | |
Stewart et al. | SCTP: new transport protocol for TCP/IP | |
US8250643B2 (en) | Communication device, communication system, communication method, and program | |
US8406240B2 (en) | Packet fragmentation prevention | |
US7769834B2 (en) | System for selecting a proxy pair based on configurations of autodiscovered proxies on a network | |
US20080320154A1 (en) | Cooperative proxy auto-discovery and connection interception | |
US9231784B2 (en) | Method for eliminating redundant connections | |
JP3478200B2 (ja) | サーバ・クライアント間双方向通信システム | |
CN114631297B (zh) | 用于多路径通信的方法和网络设备 | |
WO2002096022A2 (en) | Dual mode service platform within network communication system | |
EA018130B1 (ru) | Способ выборочного перехвата сеанса | |
Baldini et al. | Increasing performances of TCP data transfers through multiple parallel connections | |
JP3808882B2 (ja) | ゲートウェイ装置および無線端末装置 | |
Vanparia et al. | Comparing Study of Transport Layer Protocols SCTP with TCP and UDP | |
US12126680B2 (en) | Optimizing data transmission between a first endpoint and a second endpoint in a computer network | |
Brzozowski et al. | Bonded Wireless Networks: the Gateway to Real-Time Mobile Applications | |
JP4220530B2 (ja) | ゲートウェイ装置および無線端末装置 | |
Ito et al. | Enhancing Real-Time Streaming Quality through a Multipath Redundant Communication Framework | |
JP4212603B2 (ja) | ゲートウェイ制御方法 | |
Leng et al. | All-Weather Transport Essentials | |
Nawrin Ferdous et al. | Comparison Between Different Transport Layer Mobility Protocols |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080710 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081204 |