JP4703063B2 - ネットワーク輻輳を緩和する方法およびシステム - Google Patents

ネットワーク輻輳を緩和する方法およびシステム Download PDF

Info

Publication number
JP4703063B2
JP4703063B2 JP2001267573A JP2001267573A JP4703063B2 JP 4703063 B2 JP4703063 B2 JP 4703063B2 JP 2001267573 A JP2001267573 A JP 2001267573A JP 2001267573 A JP2001267573 A JP 2001267573A JP 4703063 B2 JP4703063 B2 JP 4703063B2
Authority
JP
Japan
Prior art keywords
network
state
congestion
feedback signal
computer
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.)
Expired - Fee Related
Application number
JP2001267573A
Other languages
English (en)
Other versions
JP2002124991A5 (ja
JP2002124991A (ja
Inventor
ビー.キー ピーター
マッソーリー ローレント
レーベンス ケンラード
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002124991A publication Critical patent/JP2002124991A/ja
Publication of JP2002124991A5 publication Critical patent/JP2002124991A5/ja
Application granted granted Critical
Publication of JP4703063B2 publication Critical patent/JP4703063B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/37Slow start

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワーク輻輳を緩和する方法およびシステムに関し、詳細には、パケットトラヒックの誘発するネットワーク振動に起因してインターネットに起こり得るネットワーク輻輳を緩和する方法およびシステムに関する。
【0002】
【従来の技術】
インターネットなどのネットワークを介してデータを転送するために利用可能な多くのプロトコルのなかで、TCP/IP(これは、伝送制御プロトコル/インターネットプロトコルを表す)が、最も広く受け入れられているものである。
TCPは、データを別々のパケットで伝送することによって、信頼できる転送を確実にする。より正確には、TCPは、データをセグメント化し、IPヘッダとともにTCPセグメントが、IPパケットを形成する。TCPセグメントのサイズは、最大セグメントサイズ(MSS)によって制限され、これは、接続に依存するものであり、536バイトのデフォルト値を有する。「スライディングウインドウ」プロトコルまたは「ハンドシェーク」プロトコルは、伝送を3つの分かれたフェーズに区分する。第1フェーズは、送る準備のできたデータを表す。第2フェーズは、伝送中であるか、または着信したが、まだ肯定応答されていないかのいずれかであるデータを表す。第3フェーズは、着信に成功し、肯定応答されたデータを表す。したがって、256Kbのファイルは、いくつかのパケットに分割され、そのそれぞれが、順次、3つのフェーズすべてを経過する。TCP/IPの説明を提供する優れたテキストは、Comerの「Internet working with TCP/IP, Volume I: Principles, Protocols, and Architecture Third Edition」である。
【0003】
予期されるとおり、ネットワークを介するデータトラヒックは、輻輳の影響を受けやすい可能性がある。輻輳は、1つまたは複数のスイッチングポイント(例えば、ルータ)におけるパケット(またはデータグラム)のオーバーロードによって引き起こされるひどい遅延の状態である。輻輳が起きたとき、遅延が増大して、ルータは、パケットを経路指定できるまで、キューに入れ始める。各ルータは、有限の記憶容量を有し、パケットまたはデータグラムは、その記憶領域のために競い合わなければならない(すなわち、データグラムベースのインターネットでは、個々のTCP接続に対するリソースの事前割当てが存在しない)。最悪の場合、輻輳の起きたルータに着信するパケットまたはデータグラムの総数は、そのルータの容量に達して、パケットを廃棄し始めるまで増える。
【0004】
通信接続のエンドポイントは、通常、どこで、またはなぜ輻輳が起きたのかの詳細を知らない。それらにとって、輻輳は、単に増大した遅延または失われたパケットを意味する。残念ながら、ほとんどのトランスポートプロトコルは、タイムアウトおよび再送を使用し、したがって、増大した遅延または損失に対し、パケットまたはデータグラムを再送によって対応する。再送は、輻輳を緩和するのではなく、それを悪化させる。それが抑制されない場合、増大したトラヒックは、増大した遅延をもたらすことになって、これが増大したトラヒックにつながり、ネットワークが役に立たなくなるまで続く。この状態は、「輻輳崩壊」として知られている。
【0005】
輻輳崩壊を回避するためには、TCPは、輻輳が発生したとき、伝送速度を抑えなければならない。ルータは、キュー長を監視し、ある技法を使用して、ホストに輻輳が発生したことを知らせるが、TCPのようなトランスポートプロトコルは、遅延が起きたときはいつでも自動的に伝送速度を抑えることによって輻輳を回避する。もちろん、輻輳を回避するアルゴリズムは、注意深く構成しなければならない。というのは、通常の動作条件の下でさえ、ネットワークは、往復遅延の幅広い変動を示し得るからである。
【0006】
輻輳を回避するため、TCP規格は、現在、2つの技法、スロースタート(slow-start)および乗法的縮小(multiplicative decrease)を使用することを推奨している。これらの技法は、関連しており、容易に実施することができる。各TCP接続ごとに、TCPは、受信側のウインドウのサイズを憶えていなければならない(すなわち、「ウインドウ」は、肯定応答で示されるバッファサイズとして定義される)。輻輳を制御するため、TCPは、「輻輳ウインドウ制限」または単に「輻輳ウインドウ」と呼ばれる第2制限を維持する。常時、TCPは、ウインドウサイズが、(1)受信側のウインドウと(2)輻輳ウインドウのうちの小さい方であるように動作する。
【0007】
輻輳のない接続での安定した状態では、輻輳ウインドウは、受信側のウインドウと同じサイズである。輻輳ウインドウのサイズを縮小することが、TCPがその接続に注入することになるトラヒックを抑える。輻輳ウインドウサイズを推定するため、TCPは、ほとんどのパケットまたはデータグラムの損失が、輻輳から来るものであると想定して、次の戦略を使用する。
【0008】
乗法的縮小輻輳回避:セグメントが損失すると、輻輳ウインドウを半分に(少なくとも1セグメントの最小限にまで)縮小する。許容されるウインドウ内に残ったセグメントに対して、再送タイマを指数的に後退させる。
【0009】
TCPは、各損失ごとに輻輳ウインドウを半分に縮小するので、損失が続く場合、そのウインドウを指数的に縮小する。言い換えれば、輻輳が続く場合、TCPは、トラヒックの量を指数的に減少させ、また再送の速度を指数的に低下させる。損失が続く場合、TCPは、最終的には、伝送を単一のパケットまたはデータグラムに制限して、再送の前にタイムアウト値を2倍にすることを続ける。その着想は、迅速で有意なトラヒック削減を提供して、ルータがすでにそのキューの中にあるパケットまたはデータグラムを解消するのに十分な時間を与えることである。
【0010】
輻輳から回復するためには、この処理を単に逆に行って、トラヒックが再び流れ始めたときに、輻輳ウインドウを2倍にすることを考えるかもしれない。しかし、そうすることは、トラヒックがない状態と輻輳の間で大きく振動する不安定なシステムをもたらす。代わりに、TCPは、スロースタートと呼ばれる技法を使用して、伝送をスケールアップする。
【0011】
スロースタート(加法的)回復:新しい接続上でトラヒックを開始する、あるいは輻輳の期間の後にトラヒックを増加するときはいつでも、輻輳ウインドウを単一セグメントのサイズで開始して、この輻輳ウインドウを肯定応答が着信するたびに毎回、1セグメントずつ増加する。
【0012】
スロースタートは、輻輳が解消された直後に、あるいは新しい接続が突然に開始したとき、追加のトラヒックでインターネットを溢れさせることを回避する。
【0013】
「スロースタート」という用語は、誤った名前であるかもしれない。というのは、理想的な条件下では、その開始は非常に遅くはないからである。TCPは、輻輳ウインドウを1に初期設定し、初期セグメントを送信して待つ。肯定応答が着信したとき、それは、輻輳ウインドウを2に増大し、2つのセグメントを送信して待つ。2つの肯定応答が着信したとき、それぞれ輻輳ウインドウを1だけ増大し、したがって、TCPは、4つのセグメントを送信することができる。それらに対する肯定応答は、輻輳ウインドウを8に増大することになる。4回の往復のなかで、TCPは、16のセグメントを送信することができ、これは、しばしば、受信側のウインドウの制限に達するのに十分である。極めて大きいウインドウの場合でさえ、TCPがN個のセグメントを送信できるまでには、logN回の往復しか要しない。
【0014】
ウインドウサイズをあまりにも急速に増大させて、さらなる輻輳を引き起こすことを回避するため、TCPは、もう1つの制約を追加する。輻輳ウインドウが輻輳以前の元のサイズの1/2に達すると、TCPは、輻輳回避フェーズに入って、増分のレートを低下させる。輻輳回避中、TCPは、ウインドウ内のすべてのセグメントが肯定応答された場合にのみ、輻輳ウインドウを1だけ増大させる。これは、線形増加フェーズとして知られている。
【0015】
輻輳回避のスロースタート増加、線形増加、および乗法的縮小の動作、ならびに指数的なタイマの戻しがまとまりとなって、プロトコルソフトウェアに有意な計算上のオーバーヘッドを全く加えることなく、パフォーマンスを向上させる。
【0016】
したがって、TCPトラヒックソースは、その動作に同期する傾向があり、これが、ネットワークのボトルネックリンクでのバッファ占有レベルの振動をもたらすことが認められている。こうした振動は、望ましくない。というのは、使用する帯域幅の与えられたレベルに対して、より大きなキュー遅延、またはより多くのパケット損失を含む可能性が高いからである。
【0017】
ランダム早期検出(「RED」)が、TCPソースを非同期化し、したがって、そうした振動の影響を抑えるために提案されている。REDは、FloydおよびJacobsonの「Random early detection gateways for congestion avoidance, IEEE/ACM Trans. On Networking, 1(4), 1993」に詳細に記載されている。REDは、輻輳の起きているバッファリソースによって送信されるバイナリフィードバック信号を平滑化することによって、振動の影響を抑えようとする。そうしたバイナリフィードバック信号は、パケット損失イベントまたは早期輻輳通知(ECN)マークの形態をとることができる。例えば、Floydの「TCP and explicit congestion notification, ACM Computer Communication Review, 24 pp.10〜23, 1994」を参照されたい。この初期提案の多くの変形形態が示唆されており、いくつかの最近の研究は、どのようにREDパラメータを調整して最大効率を得るかという微妙な問題に取り組んでいる。例えば、FiroiuおよびBordenの「A study of active queue management for congestion control, Infocom 2000」を参照されたい。補完的な提案は、ECNマークの使用を提案している。これは、アクティブなバッファ管理判断が行われる時点で、パケットをドロップするのではなく、それにマーク付けをして、不必要なパケット伝送を回避している間、ソースに控えているように伝える。
【0018】
【発明が解決しようとする課題】
REDおよびその変形形態の実施についての継続中の研究からは、実現されるバッファ占有での振動の抑制は、当初に期待されていたほど劇的なものではないように思われる。いつパケットにマーク付けするか、またはいつそれをドロップするかを判断するために提案された規則は、さらに改良できることを正当に主張し得る。
【0019】
したがって、本発明は、ネットワーク輻輳問題、詳細には、インターネットの環境内でのこの問題に対処するために使用される方法およびシステムを改良することに関連する関心から生まれた。
【0020】
【課題を解決するための手段】
ネットワークフィードバックから輻輳パターンを検出して、予測する方法およびシステムを説明する。本発明の実施形態では、バイナリフィードバックメッセージの形式においてネットワークフィードバックが受信される。このネットワークフィードバックは、任意の適切なフィードバックメッセージを含むことができ、図示して説明する実施形態では、そのいくつかだけを挙げれば、パケット損失イベントまたはECNマークを含む。本発明の実施形態は、ネットワークフィードバックを使用して、将来、いつ輻輳が起きる可能性が高いかを予測する。これらの予測に基づいて、システム内のエンドユーザの行動は、輻輳を抑えるように変更することができる。詳細には、エンドユーザによって送信されるデータパケットは、典型的に、予測される輻輳が緩和される時点まで遅延することができる。したがって、本発明のシステムおよび方法は、ネットワーク輻輳問題に対処するのに、反応的手法ではなく、予測的で予防的な手法をとる。
【0021】
【発明の実施の形態】
(概要)
ネットワークフィードバックから輻輳パターンを検出して予測する方法およびシステムを説明する。本発明の実施形態では、バイナリフィードバックメッセージの形式でのネットワークフィードバックが受信される。このネットワークフィードバックは、任意の適切なフィードバックメッセージを含むことが可能であり、図示して説明する実施形態では、そのいくつかだけを挙げれば、パケット損失イベントまたはECNマークを含む。フィードバックは、例えば、損失イベントまたはECNマークが使用される場合、TCPのリターンパスを利用することによって受信することができる。本発明の実施形態は、ネットワークフィードバックを使用して、将来、いつ輻輳が起きる可能性が高いかを予測する。これらの予測に基づいて、システム内のエンドユーザの行動は、輻輳を抑えるように変更することができる。詳細には、エンドユーザによって伝送されるデータパケットは、典型的に、予測される輻輳が緩和される時点まで遅延することができる。したがって、本発明のシステムおよび方法は、ネットワーク輻輳問題に対処するために、上記の「従来の技術」で述べたシステムによって代表される反応的手法ではなく、予測的で予防的な手法をとる。
【0022】
(例としての動作環境)
記載された実施形態が動作することのできる1つの例としての動作環境は、一般的な分散コンピュータ環境を含み、これには、一般的に、インターネットを介して他のクライアントおよび他のネットワークに接続された、ハブ、ルータ、ゲートウェイ、トンネルサーバ、アプリケーションサーバなどを有するローカルエリアネットワークが含まれ得る。典型的なインターネットネットワーク構成の要素のいくつかが図1に示され、あるインターネットサービスプロバイダ(ISP)接続108を介して、インターネット107に接続されたゲートウェイ/ハブ/トンネルサーバ/など106に接続された、いくつかのクライアントマシン105が含まれる。また、ISP接続104を介して、インターネット107に同様に接続された他の可能なクライアント101、103も示されている。これらのユニットは、様々な企業アプリケーションサーバ112、113、114に111で接続されたゲートウェイ/トンネルサーバ110に、ISP接続109を介して、場合によっては、ホームオフィスと通信する。これらのアプリケーションサーバは、別のハブ/ルータ115を介して、様々なローカルクライアント116、117、118に接続することができる。これは、本発明の実施形態を使用することができる1つの例としてのネットワークコンピュータ環境だけを示していることが理解されよう。
【0023】
(例としてのコンピュータ環境)
上記に示したネットワーク環境は、いくつかのコンピュータユニットで構成されている。個々のコンピュータユニットは、図2のコンピュータユニットによって説明することができる。
【0024】
図2は、そこで下記に説明する本発明の技法を実施することができる適切なコンピュータ環境220の例を示している。
【0025】
例としてのコンピュータ環境220は、単に、適切なコンピュータ環境の一例であり、記載する技法の使用または機能性の範囲に関するどのような制限を示唆することを意図するものではない。また、コンピュータ環境220も、例としてのコンピュータ環境220内で示される構成要素のどれか、またはそれらの組合せに関係するどのような依存性または要件も有するものと解釈すべきではない。
【0026】
記載する技法は、多数の他の汎用または特殊目的のコンピュータシステム環境または構成を使用して、動作することができる。記載する技法と共に使用するのに適切であり得るよく知られたコンピュータシステム環境および/または構成の例には、パーソナルコンピュータ、サーバコンピュータ、シンクライアント、シッククライアント、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、前記システムまたはデバイスいずれかを含む分散コンピュータ環境などが含まれるが、それらには限定されない。
【0027】
記載する技法は、コンピュータによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的文脈で説明することができる。一般的に、プログラムモジュールには、特定のタスクを実行するまたは特定の抽象的データタイプを実施する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などが含まれる。記載する技法は、また、タスクが通信ネットワークを介してリンクされた遠隔処理デバイスによって実行される分散コンピュータ環境で実行することも可能である。分散コンピュータ環境では、プログラムモジュールは、メモリ記憶装置を含むローカルおよび遠隔、両方のコンピュータ記憶媒体内に配置することができる。
【0028】
図2に示すとおり、コンピュータ環境220には、コンピュータ230の形態での汎用コンピュータ装置が含まれる。コンピュータ220の構成要素には、1つまたは複数のプロセッサまたは処理装置232、システムメモリ234、およびシステムメモリ234を含む様々なシステム構成要素をプロセッサ232に結合するバス236が含まれ得るが、それらには限定されない。
【0029】
バス236は、いくつかのタイプのバス構造のうちの任意の1つまたは複数のものを表し、これには、メモリバスまたはメモリコントローラ、周辺バス、加速グラフィックスポート、および様々なバスアーキテクチャのうちのいずれかを使用するプロセッサまたはローカルバスが含まれる。例として制限するものではなく、そうしたアーキテクチャには、Industry Standard Architecture(ISA)バス、Micro Channel Architecture(MCA)バス、Enhanced ISA(EISA)バス、Video Electronics Standards Association(VESA)ローカルバス、およびMezzanineバスとしても知られているPeripheral Component Interconnects(PCI)バスが含まれる。
【0030】
コンピュータ230は、典型的に、様々なコンピュータ可読媒体を含む。そうした媒体は、コンピュータ230によってアクセス可能な任意の入手できる媒体であり、これには、揮発性媒体と不揮発性媒体、取外し可能媒体と取外し不可能な媒体の両方が含まれる。
【0031】
図2では、システムメモリには、ランダムアクセスメモリ(RAM)240などの揮発性メモリ、および/または読取り専用メモリ(ROM)238などの不揮発性メモリの形態において、コンピュータ可読媒体が含まれる。始動中など、コンピュータ230内の要素間で情報を転送するのを助ける基本ルーチンを含んだ基本入力/出力システム(BIOS)242が、ROM238内に記憶されている。RAM240は、典型的には、プロセッサ232にとって直接にアクセス可能であり、かつ/またはそれによって現在、実行されているデータおよび/またはプログラムモジュールを含む。
【0032】
コンピュータ230は、さらに、他の取外し可能/取外し不可能な、揮発性/不揮発性のコンピュータ記憶媒体を含み得る。単に例として、図2は、取外し不可能な不揮発性の磁気媒体(図示しておらず、典型的に、「ハードドライブ」と呼ばれる)から読み取り、そこに書き込むためのハードディスクドライブ244と、取外し可能な不揮発性の磁気ディスク248(例えば、「フロッピー(登録商標)ディスク」)から読み取り、そこに書き込むための磁気ディスクドライブ246と、CD−ROM、DVD−ROM、または他の光媒体などの、取外し可能な不揮発性の光ディスク252から読み取り、そこに書き込むための光ディスクドライブ250とを示している。ハードディスクドライブ244、磁気ディスクドライブ246、および光ディスクドライブ250は、それぞれ、1つまたは複数のインターフェース254によってバス236に接続されている。
【0033】
これらのドライブおよびその関連するコンピュータ可読媒体は、コンピュータ230のための、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの不揮発性記憶領域を提供する。本明細書に記載する例としての環境は、ハードディスク、取外し可能な磁気ディスク248、および取外し可能な光ディスク252を使用するが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)などの、コンピュータによってアクセス可能な、データを記憶することができる他のタイプのコンピュータ可読媒体も、例としての動作環境で使用できることが、当分野の技術者によって理解されよう。
【0034】
いくつかのプログラムモジュールをハードディスク、磁気ディスク248、光ディスク252、ROM238、またはRAM240上に記憶することができ、これには、例として制限するものではなく、オペレーティングシステム58、1つまたは複数のアプリケーションプログラム260、他のプログラムモジュール262、およびプログラムデータ264が含まれる。
【0035】
ユーザは、キーボード266およびポインティングデバイス268(「マウス」などの)などの入力デバイスを介して、コマンドおよび情報をコンピュータ230に入力することができる。他の入力デバイス(図示せず)には、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、シリアルポート、スキャナ、またはそれらに類するものを含むことができる。これらの入力デバイスおよび他の入力デバイスは、バス236に結合されたユーザ入力インターフェース270を介して、処理装置232に接続されているが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースおよびバス構造によって接続することもできる。
【0036】
モニタ272または他のタイプの表示装置もまた、ビデオアダプタ274などのインターフェースを介して、バス236に接続されている。モニタに加えて、パーソナルコンピュータは、典型的に、スピーカやプリンタなどの他の周辺出力装置(図示せず)を含み、これらは、出力周辺インターフェース275を介して接続することができる。
【0037】
コンピュータ230は、遠隔コンピュータ282などの1つまたは複数の遠隔コンピュータに対する論理接続を使用するネットワーク化された環境で動作することができる。遠隔コンピュータ282は、コンピュータ230に関連して本明細書で記載した要素および機能の多くまたはすべてを含み得る。
【0038】
図2に示す論理接続は、ローカルエリアネットワーク(LAN)277および汎用ワイドエリアネットワーク(WAN)279である。そうしたネットワーク環境は、オフィス、企業ワイドのコンピュータネットワーク、イントラネット、およびインターネットでは一般的である。
【0039】
LANネットワーク環境で使用するとき、コンピュータ230は、LAN277のネットワークインターフェースまたはネットワークアダプタ286に接続される。WANネットワーク環境で使用するとき、コンピュータは、典型的に、WAN279を介する通信を確立するモデム278または他の手段を含む。内部または外部にあることが可能なモデム278は、ユーザ入力インターフェース270または他の適切な機構を介して、システムバス236に接続することができる。
【0040】
図2に描かれているのは、インターネットを介するWANの特定の実施態様である。インターネットを介して、コンピュータ230は、典型的に、インターネット280を介して通信を確立するモデム278または他の手段を含む。内部または外部にあることが可能なモデム278は、インターフェース270を介してバス236に接続されている。
【0041】
ネットワーク化された環境では、パーソナルコンピュータ230に関連して描いたプログラムモジュール、またはその部分は、遠隔メモリ記憶装置内に記憶することができる。例として制限するものではなく、図2は、遠隔アプリケーションプログラム289が、遠隔コンピュータ282のメモリデバイス上に常駐しているものとして示している。図示して説明するネットワーク接続は、例であり、コンピュータ間で通信リンクを確立する他の手段も使用できることが理解されよう。
【0042】
図2は、記載する技法をそこで実施することができる適切な動作環境220の例を示している。詳細には、記載する技法は、図2の任意のプログラム260〜262またはオペレーティングシステム258によって実施され得る。
【0043】
この動作環境は、単に、適切な動作環境の例であり、記載する技法の機能性の使用の範囲に関するどのような制限も示唆することを意図するものではない。記載する技法と共に使用するのに適切であり得る他のよく知られたコンピュータシステム、環境および/または構成には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電化製品、ワイヤレス通信装置、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記システムまたはデバイスいずれかを含む分散コンピュータ環境などが含まれるが、それらには限定されない。
【0044】
記載する技法の実施態様は、1つまたは複数のコンピュータまたは他のデバイスによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的文脈で説明することができる。一般的に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象的データタイプを実施する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などが含まれる。典型的には、プログラムモジュールの機能性は、様々な実施形態で所望に応じて、組み合わせ、または分散させることが可能である。
【0045】
記載する技法の実施態様は、何らかの形態のコンピュータ可読媒体上に記憶する、あるいはそれを介して伝送することができる。コンピュータ可読媒体は、コンピュータによってアクセスできる任意の入手可能な媒体であり得る。例として制限するものではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含み得る。
【0046】
コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実施される揮発性および不揮発性の、取外し可能および取外し不可能な媒体が含まれる。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタルバーサタイルディスク(DVD)または他の光ストーレッジ、磁気カセット、磁気テープ、磁気ディスクストーレッジまたは他の磁気記憶装置、あるいは所望の情報を記憶するのに使用でき、コンピュータによってアクセスすることができる任意の他の媒体が含まれるが、それらには限定されない。
【0047】
通信媒体は、典型的に、コンピュータ可読命令、データ構造、プログラムモジュール、あるいは搬送波または他のトランスポート機構などの変調されたデータ信号内の他のデータを具現化し、これには任意の情報送達媒体が含まれる。「変調されたデータ信号」という用語は、その特性セットのうちの1つまたは複数を有する信号、またはその信号内に情報を符号化するような方式で変更された信号を意味する。例として制限するものではなく、通信媒体には、ワイヤドネットワークまたは直接ワイヤ接続などのワイヤ媒体、および音響媒体、RF媒体、赤外線媒体、または他のワイヤレス媒体などのワイヤレス媒体が含まれる。上述した媒体のどの組合せも、また、コンピュータ可読媒体の範囲内に含まれる。
【0048】
(同期TCPソースおよび振動)
このセクションでの議論は、本発明の実施形態をそこで使用することができるネットワーク環境の振動する性質を例示するのを助けるシミュレーションに関する。説明するシミュレーションは、下記のことから構成される。毎秒4000パケットの容量(すなわち、1kBの名目のパケットサイズの場合、32Mb/秒)を有する単一のボトルネックリンクが、図3に示すとおり、いくらかのバックグラウンドの非反応的な(unreactive)トラヒックを搬送し、これが、全帯域幅のおよそ10%を使用する。加えて、50人の反応的な(reactive)ユーザが、残りの帯域幅を競い合っている。これらのユーザは、すべて、0.1秒に等しい往復伝搬遅延を有する。パケットは、ボトルネックキューからのその発信時に、その後ろに少なくとも10個のパケットがキューにある場合に、ボトルネックリソースでECNマークを受信する。キュー長は、損失が決して起きないように、十分に高く(例えば、500パケット)設定されている。
【0049】
50人すべてのユーザが、ECNを認識するTCPを実行するとき、キューサイズは、図4のように振る舞う。同期および振動の振舞いが、明らかに見られる。この効果をさらに例示するため、ミリ秒毎にサンプリングされ、ボトルネックによって生成されたマークの数が与えられたプロセスを考慮されたい(その場合、インターバル中に0個から4個のマークが存在し得る)。
【0050】
図5は、時間および周波数の分析をプロットしている。図5(A)は、自己相関関数(correlogram)であり、図5(B)は、そのデータの10秒間のスナップショットに対するピリオドグラム(periodogram:自己相関関数の変換)である。図5(C)は、そのデータの生の高速フーリエ変換であり、図5(D)は、インターバル当りのマークの数が0または1であることを確実にするより細かい初期サンプリングに基づく、ハールウェーブレットを使用する離散ウェーブレット変換のエネルギーレベルである。
【0051】
これらの図のすべては、同じメッセージを伝えている、すなわち、「マーク」信号には、正と負の両方の相関を有する強い周期成分が存在し、また、このセットアップの振動の最も強い周期は、およそ0.5秒(数回の往復時間)である。より正確には、このピリオドグラムから、最も強い信号は、10秒間隔当り23サイクルの周波数にあり、したがって、その周期は、10/23=0.43秒である。このウェーブレット分解は、0.1ミリ秒のサンプルに基づいており、最も強いエネルギーは、0.4秒の周期に関係するスケール12(すなわち212)である。
【0052】
実際に、個々には、集合したマークではなく、自分のマークだけを見る。このサンプリングは、より雑音の多い信号をもたらし、図6が、図5よりは小さい振幅ではあるが、同様の周期を有する個々の信号の自己相関関数およびピリオドグラムを使用して、情報の低下を示している。言い換えれば、周期構造は残るが、個々のユーザに関して周期を推定することはより難しい。
【0053】
(スムースTCP)
輻輳回避モードでは、TCPは、ECNマークが受信されたとき、その輻輳ウインドウcwndを半分にして、マークのない肯定応答が受信されたとき、それを1/cwndだけ増大させる。同じ均衡点に達するようにこれらの規則を適合するが、それをよりスムースに行う多くの可能な方式が存在する。例示のシミュレーションで使用するものは、マークのないACKを受信したとき、1/(cwnd)だけcwndを増大させ(線形増加ではなく、対数増加)、マークを受信したとき、それを1/2に縮減してから(乗法的縮小ではなく、減算)、タイムアウトモードに入ることに相当する。単純な流動モデルが、実際に、TCPソースと同じ均衡点を求めるが、適合レートがcwndによって分割されることを示す。TCPおよびスムースTCPに関するcwndの展開を図7に示す。これは、マーク付けの確率が固定されたままにされる場合、同じスループットをもたらすが、マーク付けの振舞い自体が、その負荷によって影響を受け、スムースTCPの集合は、よりスムースな負荷を生成すると推測され、よりバースト性の低いマーク付けにつながり、したがって、所与のスループットに対してより低いマーク付けの比率につながる。
【0054】
上述の同じシミュレーションを考慮されたい。50人のユーザの各々に対する公平なシェアは、毎秒、およそ72パケットである。表1(図8)は、TCPがスムースTCPによって次第に置き換えられるにつれて、送信されマーク付けされるパケットを提示している。これは、どのようにスムースTCPがフローを平滑化し、一般に、より少ないマークの利用を増大させ、典型的には、各TCPフローより、より少ないマークと、およそ8%多いスループットとを有することを示している。
【0055】
スループットは確率的であり、図9は50のフローに関し、49が通常のTCPフロー(図9(A))であり、1つだけが通常のTCPフロー(図9(B))である場合での、個々の送信レートおよびマークレートを示している。個々の値の変動にもかかわらず、TCPソースをスムースTCPソースで置き換えることによって実現される改善は明らかである。
【0056】
(予測TCP)
このセクションは、エンドユーザが、自らのフィードバック履歴から、現行のネットワーク状況を推測することを可能にする予測スキームを提供する本発明の実施形態を説明する。以下に与えられた説明を考える1つの考え方は、次のとおりである。上述したとおり、ネットワーク輻輳は、典型的に、周期的な性質を有する。つまり、ネットワーク環境のダイナミックスのため、輻輳周期は、相当に規則的で反復可能な周期を有する傾向がある。1を輻輳であると見なし、また0を非輻輳と見なして、1と0の間で振動する規則的な方形波の類似を考慮されたい。下記の本発明の手法は、ネットワーク輻輳の周期性を見て、次に、この周期性に基づいて将来のある時点でのネットワークの状態を予測する。したがって、本発明の手法は、適当な程度の確実性をもって、どこで方形波1および0が起きる可能性が高いかを確かめることができる。
【0057】
図10は、開示された実施形態による処理ステップを一般的に説明する流れ図である。この方法は、適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せで実施することができる。さらに、この方法は、ネットワークコンピュータ環境内の適切なロケーションでも、例えば、パーソナルコンピュータ装置、サーバなどの上でも実行することができる。
【0058】
ステップ1000は、ネットワーク輻輳に関する、または何らかの形でそれを示すネットワーク動作条件を監視する。これらの動作条件は、現在、利用されている、または将来、利用される可能性のある任意の適切な条件であり得る。これらの動作条件は、本例では、ネットワークフィードバックの形態で実現され、これには、示している例では、制限するものではなく、パケット損失イベントまたはパケット損失通知、あるいはECNマークなどのバイナリフィードバックメッセージが含まれる。これらの条件を監視することによって、ネットワーク輻輳の周期および非輻輳周期を確かめることができる。ステップ1002は、監視された動作条件に基づいて、将来のある時点でのネットワーク輻輳を推定する。つまり、動作条件によって明らかにされる輻輳および非輻輳の周期を観察することによって、本発明の方法は、将来の輻輳の周期を予測することができる。ステップ1004は、推定されたネットワーク輻輳の信頼度を計算する。任意の適切な信頼度でも使用することができる。信頼度判定の特定の統計的一例を下記に示す。ステップ1006は、推定されたネットワーク輻輳(および、それが適切な場合、その推定の信頼性)に鑑みて、パケットがネットワーク輻輳に遭遇する可能性が高いかどうかを確かめる。パケットがネットワーク輻輳に遭遇する可能性が低いことをステップ1002によって提供される推定が示す場合には、ステップ1008は、そのパケットを送信または伝送する。そうではなく、パケットが遅延する可能性が高いことをその推定が示す場合には、ステップ1010は、そのパケットの伝送を遅延させる。パケットは、任意の適切な期間、あるいはパケットが輻輳に遭遇する可能性が低いことをネットワーク輻輳の推定が示していると思われるまで遅延させることができる。この方法は、好都合に、ネットワークの動作条件を継続的に監視して、輻輳推定が適時であるようにする。
【0059】
(特定の実施態様)
下記の議論は、ネットワーク輻輳に関する予測的推定をそこで行い、パケット伝送動作を変更するのに使用することができるフィードバックシステムを実行するために、1つの特定の詳細な方法だけを提示する。これは、単に一例だけを成すことが認められ、理解されよう。したがって、請求する主題の趣旨および範囲を逸脱することなく、他の手法も利用することができる。
【0060】
将来でのネットワーク輻輳を予測するタスクは、一般的かつ数学的には、次のように説明することができる。1セットの時刻t1<...<tn、および{0,1}の値をとる対応する信号Y(t1)...Y(tn)を所与として、ある後の時刻t>tnで受信されるフィードバックY(t)の値をどのように推測するか。所望の戦略がオンラインで実行され、したがって、最も単純なパターンを観察されるデータに当てはめることを試みなければならない。すなわち、データに下記のタイプの周期プロフィールをマッチさせることを試みる。
【0061】
【数10】
Figure 0004703063
【0062】
将来の時刻tでのフィードバック値を予測するため、過去の観察から計算されるべき次の4つの変数だけを利用する。Ω,Ωは、それぞれ、0(非輻輳)状態および1(輻輳)状態での滞在時間の推定である。last_tは、フィードバックプロセスが、1つの状態から別の状態に変化した(すなわち、0から1に、または1から0にジャンプした)最後の時刻の推定である。そして最後に、last_stateは、時刻last_tでフィードバックプロセスが入ったはずの状態である。これらの4つの変数に基づいて、次の推定が戻される。
【0063】
【数11】
Figure 0004703063
【0064】
新しい観察から、すなわち、フィードバックY(tn+1)が与えられたある時点tn+1で、変数Ω,Ω,last_t,last_stateを更新するために、下記の規則を利用する。新しく観察されたフィードバックY(tn+1)と前のフィードバックY(t)が一致するときには、何も変更が行われない。状態変化が起きているときには、下記の更新が行われる。
【0065】
【数12】
Figure 0004703063
【0066】
これらの方程式の背後にある動機付けは、次のとおりである。2つの観察、例えば、tnおよびtn 1での0および1を所与として、これらの2つの時刻間に、フィードバックで1回だけ状態変化が起きたと想定し、また、さらに、それが正確に中間点である(tn tn 1)/2で起きたと想定する。このことから、正確に(tn tn 1)/2 last_tという状態0での滞在時間が観察されたと想定する。Ωに関する更新規則は、状態0で想定される「真の」滞在時間について、従来の指数的に加重された移動平均(EWMA)の推定である。パラメータHは、原則として、0と1の間のどの値でもとることが可能である。それを1に等しくすることが、常に、現行の推定で最後のサンプルに使用される。これは、ほとんどのサンプルが同一の値をとるように同期されている多くの状況において適切である。
【0067】
したがって、上述した処理は、将来のある時点でネットワーク輻輳が経験されることになる可能性の予測を可能にする。本発明の手法は、観察可能なネットワーク輻輳に関連するプロフィールをそれに関連する様々なパラメータの点から特徴付ける。この特徴付けに基づいて、その輻輳のプロフィールが、将来に数学的に投射される。下記に見るとおり、輻輳プロフィールのこの投射は、次に、ユーザの行動、例えば、パケット伝送の基準としての役割をすることが可能である。
【0068】
(信頼度)
上述の技法を補完するため、
【0069】
【外3】
Figure 0004703063
【0070】
を予測することに加えて、この予測または推定に対して有する信頼の程度を提供することが役に立つと判明している。そうするためには、状態0および1での滞在時間の変動の推定を更新しなければならない。更新は、状態の変化が観察された時点で行われ、また、EWMA方程式によって行われる。この方程式は、当分野の技術者には、理解され、その価値が認められよう。
【0071】
【数13】
Figure 0004703063
【0072】
パラメータHχは、前のパラメータHとは異なり得ることに留意されたい。実際、この文書で報告するすべての実験で、Hχ1/2である。次に、前記方程式によって与えられる推定の
【0073】
【外4】
Figure 0004703063
【0074】
を有する信頼を推定する。そうする上で、次の統計的仮定が行われる。連続するマーク付け周期は、iidであり、平均値Ωおよび分散Vを有し、やはりiidであり、平均値Ωおよび分散Vを有する後続の非マーク付け周期とは独立している。さらに、状態の変化は、正確にlast_tで起きると想定する。推定の
【0075】
【外5】
Figure 0004703063
【0076】
は、last_tからtまでの交互するマーク付けおよび非マーク付け周期が、正確にその予期される持続時間、持続する場合には、完全に信頼できるものとなる。例えば、図11に図示する状況を考慮されたい。ここで、推定の
【0077】
【数14】
Figure 0004703063
【0078】
が戻される。tが非マーク付け周期に対応する間隔[t-,t+)内にあると想定されるためである。しかしながら、その確率分布が正の分散を有するとき、マーク付け間隔および非マーク付け間隔は、その予期される値とは異なることになる。この場合も、図11の例から、[t-,t+)と一致すると想定される非マーク付け周期は、わずかに異なるエンドポイントを有する、すなわち、それは、[t - +Δt - , t + +Δt + ]から成る。この場合、行った統計的仮定の下で、ランダム変数Δt - ,Δt + は、それぞれの分散V - =2(V 0 +V 1 )およびV + =2(V 0 +V 1 )+V 0 を有する。予測
【0079】
【数15】
Figure 0004703063
【0080】
は、下記の条件が成立するとすれば、確実に正しいことになる。
Δt - <t-t - , and Δt + >t-t +
【0081】
チェビチェフの不等式を使用することによって、これらのイベントが起きない確率は、下記によって上限が定められる。
【0082】
【数16】
Figure 0004703063
【0083】
Δt変数の分布がゼロのまわりで対称的であるとさらに想定すると、上限は、2によってさらに割ることができる。また、考慮する2つのイベントは互いに排他的であり、したがって、それらの結合の確率は、それらの確率の合計に等しいことにも留意されたい。
【0084】
要約すると、次の推定が得られる。
【0085】
【数17】
Figure 0004703063
【0086】
パラメータ ± および ± に関する方程式は、容易に導出することができ、したがって、この限界は、実際に計算することができる。結果の限界は、チェビチェフの不等式を利用すると、極めて緩いものであり得る。より明瞭な限界は、マーク付け持続時間および非マーク付け持続時間が、固定確率分布によって分布していると想定することによって得られる。例えば、これらの持続時間がガウス分布であると想定すると、より締まった限界を標準正規分布の分位数から計算することができる。推定の
【0087】
【外8】
Figure 0004703063
【0088】
とともにそれが正しいことの確率に関する下限(細い線)、これはチェビチェフ不等式またはガウス分布のいずれかの結果である推定の
【0089】
【外9】
Figure 0004703063
【0090】
に対する信頼の程度を、図12にプロットする。
【0091】
(例としての輻輳制御アプリケーション)
上述の方法は、パフォーマンスに有利に影響を与えることが可能なエンドユーザ制御システムに関連して実行することができる。下記に見るとおり、本発明の方法は、いわゆる「振動を認識」するユーザに関してだけでなく、「振動を認識」していないユーザに関しても、そのパフォーマンスに影響を与えることができる。
【0092】
(受動的予測器(Passive Predictor))
50のソースすべてが、標準ECNを認識するTCPを使用し、1つのソースに予測器モジュールを追加して、これが上述した手法により計算されたΩ,Ω,last_t,last_state,VおよびVの値を記憶する場合を考慮する。ただし、このソースは、予測器モジュールからの影響なしに、そのTCPモジュールにより、いつパケットを送信するかを判断する。
【0093】
図13および14は、それぞれ、Ω,Ωの連続する推定を示し、これらは、それぞれ、幅
【0094】
【外10】
Figure 0004703063
【0095】
の誤差バーを有している。観察されたマーク付け持続時間および非マーク付け持続時間が、ほとんどの場合、固定値と一致することが明らかに見られ、これは、マーク付け周期が予測可能なはずである。例えば、マーク付け持続時間は、典型的に0.1秒の間であり、これは、50ソースすべての往復伝搬遅延である。
【0096】
図15は、タグ付きソースによって送信されるパケットの予測される状態および実際の状態を提示し、図16は、それに関連する信頼を示している。
【0097】
(能動的予測器)
次に、さらなる議論で「予測TCP(Pred TCP)」ソースと呼ぶいくつかのソースが、次の方式で変更される。これらのソースは、TCPを実行するが、パケットが時刻tで通常に送信されるとき、このパケットがマーク付けされる可能性が高いかをTCPが予測器に尋ねる。予測値
【0098】
【外11】
Figure 0004703063
【0099】
が1に等しく、かつ予測器がこれについて確信を有する場合、すなわち、上述のとおり計算される量p - およびp + が、ある信頼レベルσに関して、p - +p + を検証する場合、TCPは、そのパケットを送信する資格がなく、マークが付けられることを予測器がもはや確信していない次の時刻を待たなければならない。
【0100】
図17は、TCPソースを予測TCPソースによって置き換えることの影響を示す表である。
【0101】
図18は、様々な数の予測TCPソースに関するグローバルレートのグラフである。TCPソースを予測TCPソースで置き換えることは、全体の利用をわずかに低減させるが、マークを受けないパケットがそこで送信されるレートを増加させることに留意されたい。
【0102】
図19は、様々な数の予測TCPソースの個々のレートのグラフである。このグラフは、TCPソースを予測TCPソースによって置き換えることによって、TCPソースと予測TCPソースの両方が、その送信レートを増加することに留意されたい。最後に、図20は、TCPソースを予測TCPソースによって置き換えることのマーク付けレートに対する影響を示している。詳細には、予測TCPソースは、TCPソースよりもわずかに小さいマーク付けレートを得るが、その導入は、TCPソースによって実現されるマーク付けレートを低下させる。したがって、実験結果は、より小さなマーク付けレートを得ることによって、TCPに対する改善を実現するのが可能であることを示し、これは、TCPソースに改善が共有されることで、「TCPフレンドリ」なままである。また、スムースTCPの場合と同様に、反応性が犠牲にされていないことにも留意されたい。興味深いことに、図20は、バックグラウンドトラヒックが、典型的に、最小のマーク付けレートを受けることを示している。したがって、反応性の欠如は、スムースTCPの場合と同様に、この場合も割に合うように思われる。
【0103】
図21は、例としての予測システム内にある様々な構成要素の概念上の階層化を記述するプロトコル階層化スキーム2100を示している。パケット分類器2102は、インターネットなどのネットワークを介して送信するためにパケットをスケジュールするパケットスケジューラ2104を含む。TCP2106は、この階層化スキーム内で、IP2108の上に常駐して、パケットスケジューラ2104によってスケジュールされたIPパケットをネットワークインターフェース上で生成する。予測アルゴリズム構成要素2110は、TCP2106の上に常駐して、上述したとおり、ネットワークから受信された情報に関連して動作する。予測器モジュール2112は、パケットスケジューラ2104とリンクされて、予測器によって展開された情報が、パケットスケジューラ2104によって使用され、予測された輻輳状況に応じて、パケットを遅延またはスケジュールを行う。これは、TCPが、通常どおりに動作することを可能にする、つまり、TCPは単に伝送のためにパケットを作成し、次に、パケットスケジューラ2104によって管理される。パケットスケジューラ2104は、次に、予測器2112によって提供された情報に反応する。
【0104】
上述のシステムは、必ずしもTCPだけでなく、他のプロトコル、例えば、ECNストリーミングプロトコルなどに関連して利用できることを理解されたい。
【0105】
上述した実施形態は、したがって、インターネットなどの遠隔通信ネットワーク内での輻輳周期の予測を可能にして、データがネットワークに送り込まれるレートを変更できるようにする。エンドシステムまたはエンドユーザにとっての1つの利益は、向上した「グッドプット(goodput)」(有効スループット)であり、またネットワークにとっての利益は、向上した効率/利用および過負荷防止である。ユーザに対し、何らかの形式の輻輳価格付けを介して輻輳が調停されるような場合には、ユーザにとっての利益は、所与のスループットに対するより低い価格でもあることになる。
【0106】
前述した実施形態は、いくつかの方式で実施することができる。例えば、アプリケーションをコンピュータ上で提供して、これは、損失パケットという形で、または特定の実施態様で、輻輳情報に反応する。ここで、ECNマークと、輻輳間隔を予測して、輻輳が予測されるときに低いレートで、また輻輳の可能性が低いときに、高いレートでパケットを送信することによってなされる。別法では、プログラムされたデバイスが、コンピュータ(または複数のコンピュータ、LANなど)とネットワークとの間に提供され、輻輳周期を推定し、コンピュータ(または複数のコンピュータ、LANなど)の送信レートを中断することが可能である。特定の実施態様では、これは、トランスポート層でパケットの肯定応答(ACK)を遅延させることによって実現することが可能である。これは、単一のチャネルまたはチャネルの集合に適用することができる。
【0107】
(結論)
記載した実施形態は、いくつかのソースの輻輳回避の振舞いを変更することによって、ネットワークリソースの利用において振動を抑えるのに適用することができる。変更されたソースを導入することによって、すべてのソースにより、つまり、まだ標準TCP実施態様を使用しているソースによってさえも、利益が享受される。
【0108】
本発明は、構造的特徴および/または方法ステップに固有の言語で説明してきたが、添付する請求項で定義される本発明は、必ずしも記載した特定の特徴またはステップに限定されないことを理解されたい。むしろ、特定の特徴および特定のステップは、請求する発明を実施する好ましい形態として開示している。
【図面の簡単な説明】
【図1】本発明の実施形態をそこで使用することができる例としてのネットワークを示すブロック図である。
【図2】記載する実施形態を実施する際に使用するのに適したコンピュータシステムを示すブロック図である。
【図3】バックグラウンドトラヒックの着信レートを表すグラフである。
【図4】キューサイズの振動を表すグラフである。
【図5】集合マークに関するデータ分析を表す4つのグラフを含む図である。
【図6】個々のマークのデータ分析を表す2つのグラフを含む図である。
【図7】(a)ECN認識TCPおよび(b)スムースTCPでの輻輳ウインドウ展開を表す2つのグラフを含む図である。
【図8】様々な数のTCPストリームおよびスムースTCPストリームに関する送信レートおよびマーク付きパケットの比率を表す表である。
【図9】(a)49のTCPと1つのスムースTCP、(b)1つのTCPと49のスムースTCPにおける、送信レートおよびマーク付けレートを表す2つのグラフを含む図である。
【図10】記載する実施形態にかかる方法のステップを表す流れ図である。
【図11】記載する実施形態にかかる予測値対実際値を示すグラフである。
【図12】チェビチェフ不等式およびガウス分布に基づいて予測値およびそれに関連する信頼を示すグラフである。
【図13】受動的予測器によって収集されたΩに関する信頼間隔および推定を示すグラフである。
【図14】受動的予測器によって収集されたΩに関する信頼間隔および推定を示すグラフである。
【図15】受動的予測器によって収集された実際の状態および予測される状態を示すグラフである。
【図16】受動予測器によって行われた予測の信頼を示すグラフである。
【図17】様々な数のTCPストリームおよび予測TCPストリームに関する送信レートおよびマーク付きパケットの比率を表す表である。
【図18】様々な数の予測TCPソースに関するグローバルレートを表すグラフである。
【図19】様々な数の予測TCPソースに関する個々のレートを表すグラフである。
【図20】様々な数の予測TCPソースに関するマーク付けレートを表すグラフである。
【図21】記載する実施形態にかかるプロトコル階層化スキームを示す図である。
【符号の説明】
101、103 クライアント
104、108、109 インターネットサービスプロバイダ接続
105 クライアントマシン
106、110 ゲートウェイ/トンネルサーバ
107 インターネット
111 接続
112、113、114 企業アプリケーションサーバ
115 ハブ/ルータ
116、117、118 ローカルクライアント
220 コンピュータ環境
230 パーソナルコンピュータ
232 処理装置
234 システムメモリ
236 バス
238 読取り専用メモリ
240 ランダムアクセスメモリ
242 入力/出力システム
244 ハードディスクドライブ
246 磁気ディスクドライブ
248 不揮発性磁気ディスク
250 光ディスクドライブ
252 不揮発性光ディスク
254 データ媒体インターフェース
258 オペレーティングシステム
260 アプリケーションプログラム
262 他のプログラム
264 プログラムデータ
266 キーボード
268 ポインティングデバイス
270 ユーザ入力インターフェース
272 モニタ
274 ビデオアダプタ
275 出力周辺インターフェース
277 ローカルエリアネットワーク
278 モデム
279 ワイドエリアネットワーク
280 インターネット
282 遠隔コンピュータ
286 ネットワークアダプタ
289 遠隔アプリケーション

Claims (13)

  1. データパケットを処理する方法であって、
    送信したパケットに対するフィードバック信号を観察すること、
    観察されたフィードバック信号からネットワークの輻輳の周期プロフィールを生成することであって、前記周期プロフィールは、過去に観察されたフィードバック信号が前記ネットワークの輻輳状態を示す時間間隔および過去に観察されたフィードバック信号が前記ネットワークの非輻輳状態を示す時間間隔の少なくとも1つを反映すること、
    前記観察されたフィードバック信号に基づくネットワークの状態を前記周期プロフィールにマッチさせること、
    前記周期プロフィールに基づいて前記ネットワークの将来の状態を推定すること、および
    前記ネットワークが、将来の輻輳した状態を有すると推定される場合、1または複数のデータパケットの送信を遅延させるこ
    備えたことを特徴とするデータパケットを処理する方法。
  2. 前記推定し、遅延させることは、エンドユーザのコンピュータで実行されることを特徴とする請求項1に記載の方法。
  3. 前記推定することは、前記フィードバック信号から求められる複数の変数を、0(非輻輳)状態および1(輻輳)状態におけるそれぞれの滞在時間の推定であるΩ 、Ω と、1つの状態が別の状態に変化した最後の時刻の推定であるlast_tと、時刻last_tにおいて入ったと考えられる状態であるlast_stateとしたとき、
    Figure 0004703063
    に従って行い、ここで、
    Figure 0004703063
    は、ネットワークの将来の状態の推定を備えることを特徴とする請求項1に記載の方法。
  4. 前記ネットワークの状態が変化したときに前記変数のうちの1または複数を更新することであって、前記更新することは、
    Figure 0004703063
    に従って行い、ここで、Hは0と1の間をとることができ、t1,t2,...はパケットが送信された連続する時刻であり、Y(t1),Y(t2),...は対応するフィードバックであり、Y(tn+1)は入手可能な最新フィードバックであることをさらに備えたことを特徴とする請求項1に記載の方法。
  5. 前記推定に関連する信頼度を計算することをさらに備え、前記計算することは、前記輻輳状態および前記非輻輳状態での滞在時間の分散を、
    Figure 0004703063
    に従って行い、ここで、H χ は0と1の間をとることができることを特徴とする請求項1に記載の方法。
  6. 1または複数のエンドユーザのコンピュータによって実行されたとき、前記エンドユーザのコンピュータに、
    送信したパケットに対するフィードバック信号を観察すること、
    観察されたフィードバック信号からネットワークの輻輳の周期プロフィールを生成することであって、前記周期プロフィールは、過去に観察されたフィードバック信号が前記ネットワークの輻輳状態を示す時間間隔および過去に観察されたフィードバック信号が前記ネットワークの非輻輳状態を示す時間間隔の少なくとも1つを反映すること、
    前記観察されたフィードバック信号に基づくネットワークの状態を前記周期プロフィールにマッチさせること、
    前記周期プロフィールに基づいて前記ネットワークの将来の状態を推定すること、および
    前記ネットワークが、将来の輻輳した状態を有すると推定される場合、1または複数のデータパケットの送信を遅延させるこ
    実行させるコンピュータ実行可能命令を有するコンピュータ読み取り可能記憶媒体。
  7. 前記推定することは、前記フィードバック信号から求められる複数の変数を、0(非輻輳)状態および1(輻輳)状態におけるそれぞれの滞在時間の推定であるΩ 、Ω と、1つの状態が別の状態に変化した最後の時刻の推定であるlast_tと、時刻last_tにおいて入ったと考えられる状態であるlast_stateとしたとき、
    Figure 0004703063
    に従って行い、ここで、
    Figure 0004703063
    は、ネットワークの将来の状態の推定を備えることを特徴とする請求項に記載のコンピュータ読み取り可能記憶媒体。
  8. 前記ネットワークの状態が変化したときに前記変数のうちの1または複数を更新することであって、前記更新することは、
    Figure 0004703063
    に従って行い、ここで、Hは0と1の間をとることができ、t1,t2,...はパケットが送信された連続する時刻であり、Y(t1),Y(t2),...は対応するフィードバックであり、Y(tn+1)は入手可能な最新フィードバックであることをさらに実行させるコンピュータ実行可能命令を有する請求項に記載のコンピュータ読み取り可能記憶媒体。
  9. 前記エンドユーザのコンピュータに、前記推定に関連する信頼度を計算することをさらに実行させ、前記計算することは、前記輻輳状態および前記非輻輳状態での滞在時間の分散を、
    Figure 0004703063
    に従って行い、ここで、Hχは0と1の間をとることができることを特徴とする請求項に記載のコンピュータ読み取り可能記憶媒体。
  10. データパケットを処理する装置であって、
    ネットワークを介して送られるデータパケットを生成する1または複数のプロトコルモジュールと、
    前記ネットワークを介した送信のため前記プロトコルモジュールによって生成されたデータパケットをスケジューリングするパケットスケジューラと、
    送信したデータパケットに対するフィードバック信号を観察して、前記ネットワークの輻輳を推定するように構成された予測器モジュールであって、
    観察されたフィードバック信号からネットワークの輻輳の周期プロフィールを生成することであって、前記周期プロフィールは、過去に観察されたフィードバック信号が前記ネットワークの輻輳状態を示す時間間隔および過去に観察されたフィードバック信号が前記ネットワークの非輻輳状態を示す時間間隔の少なくとも1つを反映し、
    前記観察されたフィードバック信号に基づくネットワークの状態を前記周期プロフィールにマッチさせ、
    前記周期プロフィールに基づいて前記ネットワークの将来の状態を推定し、
    さらに、前記パケットスケジューラが使用することができ、前記将来の時点でネットワークの輻輳が起こりそうな場合、パケットの送信を遅延させるための情報を、前記パケットスケジューラに提供する予測器モジュールと
    を備えことを特徴とする装置。
  11. エンドユーザのコンピュータ上で実現されることを特徴とする請求項10に記載の装置。
  12. 前記1または複数のプロトコルモジュールは、TCPモジュールを備えることを特徴とする請求項10に記載の装置。
  13. 前記ネットワークは、インターネットであることを特徴とする請求項10に記載の装置。
JP2001267573A 2000-09-05 2001-09-04 ネットワーク輻輳を緩和する方法およびシステム Expired - Fee Related JP4703063B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/654737 2000-09-05
US09/654,737 US6842424B1 (en) 2000-09-05 2000-09-05 Methods and systems for alleviating network congestion

Publications (3)

Publication Number Publication Date
JP2002124991A JP2002124991A (ja) 2002-04-26
JP2002124991A5 JP2002124991A5 (ja) 2008-10-23
JP4703063B2 true JP4703063B2 (ja) 2011-06-15

Family

ID=24626057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001267573A Expired - Fee Related JP4703063B2 (ja) 2000-09-05 2001-09-04 ネットワーク輻輳を緩和する方法およびシステム

Country Status (3)

Country Link
US (2) US6842424B1 (ja)
EP (1) EP1187401A3 (ja)
JP (1) JP4703063B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220045969A1 (en) * 2019-06-25 2022-02-10 Hewlett Packard Enterprise Development Lp Mapping nvme-over-fabric packets using virtual output queues

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013346B1 (en) * 2000-10-06 2006-03-14 Apple Computer, Inc. Connectionless protocol
US20020129157A1 (en) * 2000-11-08 2002-09-12 Shlomo Varsano Method and apparatus for automated service level agreements
US7149187B1 (en) * 2000-12-28 2006-12-12 Cisco Technology, Inc. Random early detection policer using randomization of packet drops
US7304948B1 (en) * 2000-12-29 2007-12-04 Nortel Networks Limited Congestion control for signalling transport protocols
US7143157B2 (en) * 2002-03-25 2006-11-28 Hewlett-Packard Development Company, L.P. Managing the network impact of a digital transmitter
US8660427B2 (en) * 2002-09-13 2014-02-25 Intel Corporation Method and apparatus of the architecture and operation of control processing unit in wavelenght-division-multiplexed photonic burst-switched networks
US7428595B2 (en) * 2002-09-30 2008-09-23 Sharp Laboratories Of America, Inc. System and method for streaming TCP messages in an enterprise network
US7539136B2 (en) * 2002-11-21 2009-05-26 Ipr Licensing, Inc. Random early detection over wireless links
US7152958B2 (en) * 2002-11-23 2006-12-26 Silverbrook Research Pty Ltd Thermal ink jet with chemical vapor deposited nozzle plate
US7848649B2 (en) * 2003-02-28 2010-12-07 Intel Corporation Method and system to frame and format optical control and data bursts in WDM-based photonic burst switched networks
US7428383B2 (en) 2003-02-28 2008-09-23 Intel Corporation Architecture, method and system of WDM-based photonic burst switched networks
US6999759B2 (en) * 2003-03-14 2006-02-14 Motorola, Inc. Method and apparatus for providing deferrable data services in a cellular communication system
US7298973B2 (en) * 2003-04-16 2007-11-20 Intel Corporation Architecture, method and system of multiple high-speed servers to network in WDM based photonic burst-switched networks
US7266295B2 (en) * 2003-04-17 2007-09-04 Intel Corporation Modular reconfigurable multi-server system and method for high-speed networking within photonic burst-switched network
US7424546B1 (en) * 2003-04-30 2008-09-09 Nortel Networks Limited Rate-based proportional-integral control scheme for active queue management
US7526202B2 (en) * 2003-05-19 2009-04-28 Intel Corporation Architecture and method for framing optical control and data bursts within optical transport unit structures in photonic burst-switched networks
US7266296B2 (en) * 2003-06-11 2007-09-04 Intel Corporation Architecture and method for framing control and data bursts over 10 Gbit Ethernet with and without WAN interface sublayer support
US7310480B2 (en) * 2003-06-18 2007-12-18 Intel Corporation Adaptive framework for closed-loop protocols over photonic burst switched networks
US7272310B2 (en) * 2003-06-24 2007-09-18 Intel Corporation Generic multi-protocol label switching (GMPLS)-based label space architecture for optical switched networks
US20050030951A1 (en) * 2003-08-06 2005-02-10 Christian Maciocco Reservation protocol signaling extensions for optical switched networks
US20050068968A1 (en) * 2003-09-30 2005-03-31 Shlomo Ovadia Optical-switched (OS) network to OS network routing using extended border gateway protocol
US7920476B2 (en) * 2003-10-08 2011-04-05 Hewlett-Packard Development Company, L.P. Network congestion control
US7315693B2 (en) * 2003-10-22 2008-01-01 Intel Corporation Dynamic route discovery for optical switched networks
US7340169B2 (en) * 2003-11-13 2008-03-04 Intel Corporation Dynamic route discovery for optical switched networks using peer routing
US7734176B2 (en) * 2003-12-22 2010-06-08 Intel Corporation Hybrid optical burst switching with fixed time slot architecture
US20050177749A1 (en) * 2004-02-09 2005-08-11 Shlomo Ovadia Method and architecture for security key generation and distribution within optical switched networks
US20050175183A1 (en) * 2004-02-09 2005-08-11 Shlomo Ovadia Method and architecture for secure transmission of data within optical switched networks
GB0407144D0 (en) 2004-03-30 2004-05-05 British Telecomm Networks
US7719967B2 (en) * 2005-09-28 2010-05-18 Netapp, Inc. Cumulative TCP congestion control
JP5018776B2 (ja) * 2006-06-29 2012-09-05 日本電気株式会社 通信装置および方法
US8885632B2 (en) * 2006-08-02 2014-11-11 Silver Peak Systems, Inc. Communications scheduler
GB0705327D0 (en) * 2007-03-20 2007-04-25 Skype Ltd Method of transmitting data in a commumication system
WO2008142736A1 (ja) * 2007-05-21 2008-11-27 Fujitsu Limited 中継装置、及び中継方法
JP5034998B2 (ja) * 2008-02-08 2012-09-26 日本電気株式会社 通信装置、通信システム、通信方法及び通信プログラム
US7808903B2 (en) * 2008-03-25 2010-10-05 Verizon Patent And Licensing Inc. System and method of forecasting usage of network links
US10805840B2 (en) 2008-07-03 2020-10-13 Silver Peak Systems, Inc. Data transmission via a virtual wide area network overlay
US10164861B2 (en) 2015-12-28 2018-12-25 Silver Peak Systems, Inc. Dynamic monitoring and visualization for network health characteristics
US9717021B2 (en) 2008-07-03 2017-07-25 Silver Peak Systems, Inc. Virtual network overlay
JP5191826B2 (ja) * 2008-07-04 2013-05-08 パナソニック株式会社 ストリーム通信装置、ストリーム通信方法及びストリーム通信システム
US8995356B2 (en) * 2009-10-14 2015-03-31 Qualcomm Incorporated Coding methods and apparatus for broadcast channels
US8817709B2 (en) 2009-10-14 2014-08-26 Qualcomm Incorporated Methods and apparatus for controlling channel utilization
US9167470B2 (en) * 2010-08-05 2015-10-20 Htc Corporation Handling signaling congestion and related communication device
CN102421140B (zh) * 2010-09-28 2015-07-08 华为技术有限公司 网关数据传输方法、装置和系统
KR101719188B1 (ko) 2010-09-28 2017-03-24 삼성전자주식회사 멀티 라디오를 이용한 통신 방법 및 통신 장치
WO2012121635A1 (en) * 2011-03-10 2012-09-13 Telefonaktiebolaget L M Ericsson (Publ) Hybrid congestion control
US20130051257A1 (en) * 2011-08-31 2013-02-28 International Business Machines Corporation Scheduling of Packets at Cellular Base Stations
US9130991B2 (en) 2011-10-14 2015-09-08 Silver Peak Systems, Inc. Processing data packets in performance enhancing proxy (PEP) environment
US8843175B2 (en) * 2012-03-19 2014-09-23 Apple Inc. Apparatus and methods for mitigating protocol-induced back-offs in a communication network
US9642066B2 (en) * 2012-03-30 2017-05-02 Sony Corporation Network-controlled adaptive terminal behavior managing high-network-load scenarios
US20130275108A1 (en) * 2012-04-13 2013-10-17 Jiri Sofka Performance simulation of services
US20140281018A1 (en) * 2013-03-13 2014-09-18 Futurewei Technologies, Inc. Dynamic Optimization of TCP Connections
US9148814B2 (en) 2013-10-28 2015-09-29 At&T Intellectual Property I, L.P. Probe mechanism for discovering explicit congestion notification data
CN106688218B (zh) 2014-04-15 2020-07-28 飞利浦灯具控股公司 用于控制分组传输网络中的握手的方法和装置
US10554560B2 (en) * 2014-07-21 2020-02-04 Cisco Technology, Inc. Predictive time allocation scheduling for computer networks
US9948496B1 (en) 2014-07-30 2018-04-17 Silver Peak Systems, Inc. Determining a transit appliance for data traffic to a software service
US9875344B1 (en) * 2014-09-05 2018-01-23 Silver Peak Systems, Inc. Dynamic monitoring and authorization of an optimization device
US10200213B1 (en) * 2015-09-30 2019-02-05 The Directv Group, Inc. Method and system for allocating resources in a gateway device
US10419968B2 (en) 2016-03-30 2019-09-17 International Business Machines Corporation Dynamic selection of TCP congestion control for improved performances
US10432484B2 (en) 2016-06-13 2019-10-01 Silver Peak Systems, Inc. Aggregating select network traffic statistics
US10153980B2 (en) 2016-07-19 2018-12-11 Coco Communications Corp Systems and methods for managing network congestion
WO2018034604A1 (en) * 2016-08-18 2018-02-22 Telefonaktiebolaget Lm Ericsson (Publ) Method and wireless device for handling transmission of data
US9967056B1 (en) 2016-08-19 2018-05-08 Silver Peak Systems, Inc. Forward packet recovery with constrained overhead
US10771394B2 (en) 2017-02-06 2020-09-08 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows on a first packet from DNS data
US10892978B2 (en) 2017-02-06 2021-01-12 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows from first packet data
US10257082B2 (en) 2017-02-06 2019-04-09 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows
US11044202B2 (en) 2017-02-06 2021-06-22 Silver Peak Systems, Inc. Multi-level learning for predicting and classifying traffic flows from first packet data
US11212210B2 (en) 2017-09-21 2021-12-28 Silver Peak Systems, Inc. Selective route exporting using source type
US10637721B2 (en) 2018-03-12 2020-04-28 Silver Peak Systems, Inc. Detecting path break conditions while minimizing network overhead
CN110391956B (zh) * 2019-07-23 2021-08-13 中国工商银行股份有限公司 网络服务进程状态的识别监控方法及装置
EP4020892A4 (en) * 2019-09-12 2022-10-19 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR NETWORK PARAMETER CONFIGURATION
CN114615199B (zh) * 2022-04-25 2023-10-13 曲阜师范大学 一种tcp网络拥塞控制方法、装置、终端及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013391A (ja) * 1998-06-24 2000-01-14 Toshiba Corp フロー制御方法及びフロー制御装置
JP2000134279A (ja) * 1998-10-22 2000-05-12 Chokosoku Network Computer Gijutsu Kenkyusho:Kk フロー制御方法
WO2000030385A1 (en) * 1998-11-13 2000-05-25 Telefonaktiebolaget Lm Ericsson (Publ) Determining subscriber demands on a communications system

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69330661T2 (de) 1992-04-27 2002-06-27 Nippon Telegraph & Telephone Paketnetzwerk und Verfahren zur Vermeidung von Überlastung eines solchen Netzwerks
EP0784895B1 (en) * 1994-09-17 1998-12-09 International Business Machines Corporation Flow control method and apparatus for cell-based communication networks
US5936940A (en) * 1996-08-22 1999-08-10 International Business Machines Corporation Adaptive rate-based congestion control in packet networks
US5831971A (en) * 1996-08-22 1998-11-03 Lucent Technologies, Inc. Method for leaky bucket traffic shaping using fair queueing collision arbitration
US6252851B1 (en) * 1997-03-27 2001-06-26 Massachusetts Institute Of Technology Method for regulating TCP flow over heterogeneous networks
US6219704B1 (en) * 1997-11-20 2001-04-17 International Business Machines Corporation Method and apparatus for delivering multimedia content based on network connections
US6477143B1 (en) * 1998-01-25 2002-11-05 Dror Ginossar Method and apparatus for packet network congestion avoidance and control
JP2000216811A (ja) * 1999-01-22 2000-08-04 Chokosoku Network Computer Gijutsu Kenkyusho:Kk フロ―制御方法
US6512743B1 (en) * 1999-04-15 2003-01-28 Cisco Technology, Inc. Bandwidth allocation for ATM available bit rate service
ATE307441T1 (de) * 1999-11-17 2005-11-15 Beschleunigungsabhängige kanalumschaltung in mobilen telekommunikationsnetzen
US6594241B1 (en) * 1999-12-08 2003-07-15 Telefonaktiebolaget Lm Ericsson (Publ) Channel-type switching control
EP1240753A1 (en) * 1999-12-13 2002-09-18 Nokia Corporation Congestion control method for a packet-switched network
GB0120033D0 (en) * 2001-08-16 2001-10-10 Fujitsu Ltd Cell selection
US7480304B2 (en) * 2004-12-29 2009-01-20 Alcatel Lucent Predictive congestion management in a data communications switch using traffic and system statistics
US7301907B2 (en) * 2005-01-06 2007-11-27 Telefonktiebolaget Lm Ericsson (Publ) Method of controlling packet flow

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000013391A (ja) * 1998-06-24 2000-01-14 Toshiba Corp フロー制御方法及びフロー制御装置
JP2000134279A (ja) * 1998-10-22 2000-05-12 Chokosoku Network Computer Gijutsu Kenkyusho:Kk フロー制御方法
WO2000030385A1 (en) * 1998-11-13 2000-05-25 Telefonaktiebolaget Lm Ericsson (Publ) Determining subscriber demands on a communications system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220045969A1 (en) * 2019-06-25 2022-02-10 Hewlett Packard Enterprise Development Lp Mapping nvme-over-fabric packets using virtual output queues
US11997024B2 (en) * 2019-06-25 2024-05-28 Hewlett Packard Enterprise Development Lp Mapping NVMe-over-fabric packets using virtual output queues

Also Published As

Publication number Publication date
EP1187401A3 (en) 2004-05-12
EP1187401A2 (en) 2002-03-13
US6842424B1 (en) 2005-01-11
JP2002124991A (ja) 2002-04-26
US20090161546A1 (en) 2009-06-25
US7843828B2 (en) 2010-11-30

Similar Documents

Publication Publication Date Title
JP4703063B2 (ja) ネットワーク輻輳を緩和する方法およびシステム
Al-Saadi et al. A survey of delay-based and hybrid TCP congestion control algorithms
US11876714B2 (en) Method and apparatus for network congestion control based on transmission rate gradients
CN114145001B (zh) 速率优化的拥塞管理
US6560243B1 (en) System and method for receiver based allocation of network bandwidth
Floyd TCP and explicit congestion notification
US6894974B1 (en) Method, apparatus, media, and signals for controlling packet transmission rate from a packet source
EP2537301B1 (en) Control of packet transfer through a multipath session comprising a single congestion window
US7636310B2 (en) Communication control system and communication control method
Ros et al. Less-than-best-effort service: A survey of end-to-end approaches
US20130170342A1 (en) Data communication systems and methods
CN113242183A (zh) 一种数据流发送控制方法、装置、智能终端及存储介质
Andreadis et al. A cross-layer jitter-based TCP for wireless networks
US20240098155A1 (en) Systems and methods for push-based data communications
Aweya et al. An optimization-oriented view of random early detection
US20070019550A1 (en) Shaper control method, data communication system, network interface apparatus, and network delay apparatus
JP4061643B2 (ja) 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
JP2007097144A (ja) 通信システム、通信端末、中継ノード及びそれに用いる通信方法並びにそのプログラム
Khan et al. Sizing buffers of iot edge routers
Wallace Concurrent multipath transfer: Scheduling, modelling, and congestion window management
Li TCP FlexiS: A New Approach to Incipient Congestion Detection and Control
Xiao et al. Performance Evaluation of Transmission Protocols Based on Satellite Networks
Govindaswamy et al. Receiver-window modified random early detection (red-RWM) active queue management scheme: modeling and analysis
CN117692392A (zh) 重传超时时长确定方法、装置、电子设备及存储介质
Radovanovic et al. Improving TCP performance over last-hop wireless networks for live video delivery

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080904

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080904

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101015

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110308

R150 Certificate of patent or registration of utility model

Ref document number: 4703063

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees