JP2022533970A - 速度最適化された輻輳管理 - Google Patents

速度最適化された輻輳管理 Download PDF

Info

Publication number
JP2022533970A
JP2022533970A JP2021568610A JP2021568610A JP2022533970A JP 2022533970 A JP2022533970 A JP 2022533970A JP 2021568610 A JP2021568610 A JP 2021568610A JP 2021568610 A JP2021568610 A JP 2021568610A JP 2022533970 A JP2022533970 A JP 2022533970A
Authority
JP
Japan
Prior art keywords
rate
computer
latency
initial
sender
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
Application number
JP2021568610A
Other languages
English (en)
Other versions
JPWO2020236599A5 (ja
Inventor
パン,ロン
ニューマン,ピーター
Original Assignee
ペンサンド システムズ インク.
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 ペンサンド システムズ インク. filed Critical ペンサンド システムズ インク.
Publication of JP2022533970A publication Critical patent/JP2022533970A/ja
Publication of JPWO2020236599A5 publication Critical patent/JPWO2020236599A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2643Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using time-division multiple access [TDMA]
    • H04B7/2659Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using time-division multiple access [TDMA] for data rate control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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/11Identifying congestion
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • 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/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • 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
    • H04L47/263Rate modification at the source after receiving feedback
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/22Negotiating communication rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/04TPC
    • H04W52/18TPC being performed according to specific parameters
    • H04W52/26TPC being performed according to specific parameters using transmission rate or quality of service QoS [Quality of Service]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/70Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes
    • H04B5/72Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes for local intradevice communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2628Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA]
    • H04B7/264Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA] for data rate control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2626Arrangements specific to the transmitter only
    • H04L27/2646Arrangements specific to the transmitter only using feedback from receiver for adjusting OFDM transmission parameters, e.g. transmission timing or guard interval length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/021Terminal devices adapted for Wireless Local Loop operation

Landscapes

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

Abstract

【解決手段】RoCEv2ネットワーク中の輻輳を低下させるための方法およびシステムが、提供される。方法は、送信者ノードから受信者ノードへ流れるデータ転送量上で、データセンターの大きな規模で作動するように、構成される。記載される方法は、高速開始段階、移行段階、および調整段階の、3つの段階を有する。高速開始段階では、送信者は、高速の初速度で受信者にデータを送信する。これは、受信者が輻輳イベントを観察するまで継続してもよい。これが起こると、方法が移行段階に入るため、送信者は、データ転送速度を低下させる。低下速度から、方法は調整段階に入り、ここで、速度は、フィードバック制御ループと加法増加乗法減少(AIMD)アルゴリズムとの組み合わせ使用して、増加される。【選択図】図4

Description

関連出願の相互参照
本出願は、2019年5月17日に出願され、「RATE-OPTIMIZED CONGESTION MANAGEMENT」と題される、米国特許出願第16/415,609号の利益を主張し、その内容は、全ての目的のために、参照によって本明細書に組み込まれる。
データセンターアプリケーションは、ホストのネットワークスタックを含むネットワークに、高スループットと超低の待ち時間を要求する。標準TCP/IPの高CPUオーバーヘッドにより、イーサネット(RoCEv2)にわたるリモート・ダイレクト・メモリ・アクセス(RDMA)が、代替技術として、現代のデータセンターに展開されて、低待ち時間と高性能とを達成する。高い負荷がかかった場合に、データセンターネットワークで輻輳が発生して、パケットドロップを引き起こす可能性がある。その結果、RDMAの性能は大幅に低下し、RoCEv2は優先度ベースのフロー制御(Priority-based Flow Control)(PFC)に依存して、ドロップフリーネットワークを達成する。PFCは輻輳の広がりを引き起こすかもしれず、ここで、ネットワークの1つのエリアにおけるデータ転送量の減速は、ネットワークの他のエリアにおけるデータ転送量を減速させる。従って、輻輳管理は、輻輳の広がりを回避するのに必要である。データセンター量子化輻輳通知(DCQCN)などの、RoCEv2ネットワーク中の輻輳管理の既存の方法は、大規模での作動が不十分であり、数千のポーズフレームを生成し、ネットワーク使用率と平均スループットとを低下させ、輻輳フローの終了を非常に遅くさせる可能性がある。
データセンターネットワークにおける、大きな規模で有効な、輻輳管理が必要とされている。そのような方法は、高リンク利用率、趙低の待ち時間、およびネットワークフェアネスを達成するだろう。開示される方法は、輻輳イベントに対応して、データ速度をダイナミックに変更することによって、および、フィードバック制御アルゴリズムを加法増加乗法減少(AIMD)アルゴリズムと組み合わせることによって、これらのゴールを達成する。
一態様では、ネットワークプロトコル中の輻輳を管理するコンピュータ実装された方法が、開示される。方法は、ネットワーク中の輻輳イベントを検出する工程を含む。方法は、次に、データ転送速度を初速度から最小速度に減速させる工程を含む。方法は、次に、データ転送速度を初速度の半分に増加させる工程を含む。方法は、次に、ネットワークの一方向の待ち時間を周期的にモニタリングする工程を含む。最終的に、ネットワークは、フィードバック制御アルゴリズムと加法増加乗法減少(AIMD)アルゴリズムとを使用して、データ転送速度を調節する工程を含む。いくつかの実施形態では、初期データ転送速度を設定することは、帯域遅延積と等しい初期ウィンドウを設定すること、かつ、初期ウィンドウを設定することの後に輻輳が検出されない場合に、ウィンドウサイズを上昇させることを、さらに含む。いくつかの実施形態では、初期データ転送速度は、ネットワークのライン速度と等しい。いくつかの実施形態では、閾値待ち時間は、データパケットの送信のためのラウンドトリップタイムに基づく。いくつかの実施形態では、最小データ転送速度は、初期データ転送速度の少なくとも1パーセント未満である。いくつかの実施形態では、フィードバック制御ループは、比例-積分コントローラを含む。いくつかの実施形態では、データを最小データ転送速度で送信者から受信者に転送する工程は、輻輳通知パケットを受信者から送信者に送ること、および、送信者が輻輳通知パケットを受信した際に、速度を更新することを含む。いくつかの実施形態では、一方向の待ち時間を継続的にモニタリングすることは、受信パケットのバイトの合計数のトラッキングを維持することを含む。いくつかの実施形態では、管理された転送速度は、最小転送速度での1期間と初速度の半分での1期間の後に計算される。いくつかの実施形態では、期間は、送信パケットのラウンドトリップタイムに基づく。いくつかの実施形態では、初期転送速度は、送信者と受信者との間のライン速度に基づく。いくつかの実施形態では、初期転送速度は、送信者のリンク速度と受信者のリンク速度との間の最小速度である。いくつかの実施形態では、AIMDアルゴリズムは、管理速度が閾値を下回る場合に、管理速度に対して加法を実施し、管理速度が閾値を上回る場合に、管理速度に対して乗法を実施することを含む。いくつかの実施形態では、加法は、正の数によるものである、いくつかの実施形態では、乗法は、0と1との間の数によるものである。いくつかの実施形態では、コンピュータ実装された方法は、期間の閾値数にわたり、データ転送速度を調節する工程から、少なくとも初速度を取得する工程と、輻輳イベントに関してネットワークをモニタリングする工程と、をさらに含む。
別の態様では、ネットワーク中のネットワーク輻輳を管理するためのシステムが開示される。システムは、複数の演算ノードを含む。演算ノードは、1以上の以前に取得された待ち時間値および命令のセットを格納するためのメモリと、1以上のプロセッサに加えてインストラクションのセットと、を含む。プロセッサは、物理層リンク中の輻輳イベントを検出するために、命令のセットを実行し、データ転送速度を初速度から最小速度に減速させ、データ転送速度を初速度の半分に増加させ、ネットワークの一方向の待ち時間を周期的にモニタリングし、そして、フィードバック制御アルゴリズムと加法増加乗法減少(AIMD)アルゴリズムとを使用して、データ転送速度を調節する、ように構成されている。いくつかの実施形態では、ネットワークは、少なくとも1つのイーサネットリンクを有する。いくつかの実施形態では、複数の演算ノードは、送信者ノードと受信者ノードとを含む。いくつかの実施形態では、初期データ転送速度を設定することは、帯域遅延積と等しい初期ウィンドウを設定すること、かつ、初期ウィンドウを設定することの後輻輳が検出されない場合に、ウィンドウサイズを上昇させる、をさらに含む。いくつかの実施形態では、初期データ転送速度は、イーサネットリンクのライン速度と等しい。いくつかの実施形態では、閾値待ち時間は、データパケットの送信のためのラウンドトリップタイムに基づく。いくつかの実施形態では、最小データ転送速度は、初期データ転送速度の少なくとも1パーセント未満である。いくつかの実施形態では、フィードバック制御ループは、比例-積分コントローラを含む。いくつかの実施形態では、データを最小データ転送速度で送信者から受信者に転送することは、輻輳通知パケットを受信者から送信者に送ること、および、送信者が輻輳通知パケットを受信した際に、速度を更新することを含む。いくつかの実施形態では、一方向の待ち時間を継続的にモニタリングすることは、受信パケットのバイトの合計数のトラッキングを維持することを含む。いくつかの実施形態では、管理された転送速度は、最小転送速度での1期間と初速度の半分での1期間の後に計算される。いくつかの実施形態では、期間は、送信パケットのラウンドトリップタイムに基づく。いくつかの実施形態では、初期転送速度は、送信者と受信者との間のライン速度に基づく。いくつかの実施形態では、初期転送速度は、送信者と受信者との間の最小ライン速度である。いくつかの実施形態では、AIMDアルゴリズムは、管理速度が閾値を下回る場合に、管理速度に対して加法を実施し、管理速度が閾値を上回る場合に、管理速度に対して乗法を実施することを含む。いくつかの実施形態では、加法は、正の数によるものである、いくつかの実施形態では、乗法は、0と1との間の数によるものである。
さらに別の態様では、ネットワークプロトコル中の輻輳を管理するコンピュータ実装された方法が、開示される。方法は、データ速度を初期速度に設定すること、および、送信者と受信者との間で、受信者が輻輳イベントを検出するまでデータ転送を実施することを含む、高速開始段階を含む。方法はまた、ある期間にわたり、データ速度を最小データ速度に低下させること、およびその後に、ある期間にわたり、データ速度を初速度の半分に増加させることを含む、移行段階を含む。方法はまた、フィードバック制御ループと加法減少乗法増加アルゴリズムとの組み合わせを使用して、データ速度を修正することを含む、調整段階を含む。いくつかの実施形態では、コンピュータ実装された方法は、高速開始段階の前に、送信者と受信者との間でクロック速度とライン速度とを共有することを含む、初期設定フェーズを、さらに含む。いくつかの実施形態では、コンピュータ実装された方法は、高速開始段階の前に、データパケットを送信するために、ウィンドウサイズを初期ウィンドウサイズに設定する工程を、さらに含む。いくつかの実施形態では、コンピュータ実装された方法は、輻輳イベントがネットワーク内で検出されないない間は、ウィンドウサイズを増加させる工程を、さらに含む。いくつかの実施形態では、ウィンドウサイズは指数関数的に増加される。移行段階は輻輳イベントの検出後に始まる。いくつかの実施形態では、フィードバック制御アルゴリズムは比例積分アルゴリズムである。いくつかの実施形態では、フィードバック制御ループは、現在速度、比例項、および積分項の間の差異として説明されてもよい。いくつかの実施形態では、比例項は、現在待ち時間と閾値待ち時間との間の差異を説明し、他方、積分項は、現在待ち時間と以前の待ち時間との間の差異を説明する。いくつかの実施形態では、乗法増加は、確率イベントに対応して実施される。いくつかの実施形態では、乗法増加は、フィードバック制御ループより低い周波数で実施される。
さらに別の態様では、ネットワーク中のネットワーク輻輳を管理するためのシステムが開示される。システムは、複数の演算ノードを含む。演算ノードは、1以上の以前に取得された待ち時間値および命令のセットを格納するためのメモリを含む。演算ノードはまた、1以上のプロセッサであって、命令のセットが、データ速度を初期速度に設定すること、および、送信者と受信者との間で、受信者が輻輳イベントを検出するまでデータ転送を実施することを含む、高速開始段階と、ある期間にわたり、データ速度を最小データ速度に低下させること、およびその後に、ある期間にわたり、データ速度を初速度の半分に増加させることを含む、移行段階と、フィードバック制御ループと加法減少乗法増加アルゴリズムとの組み合わせを使用して、データ速度を修正することを含む、調整段階と、を実装するように当該命令のセットを実行するように、構成される、1以上のプロセッサ、を含む。いくつかの実施形態では、システムは、高速開始段階の前に、送信者と受信者との間でクロック速度とライン速度とを共有することを含む、初期設定フェーズを、さらに含む。いくつかの実施形態では、システムは、高速開始段階の前に、データパケットを送信するために、ウィンドウサイズを初期ウィンドウサイズに設定することを、さらに含む。いくつかの実施形態では、システムは、輻輳イベントがネットワーク内で検出されていない間は、ウィンドウサイズを増加させることを、さらに含む。いくつかの実施形態では、ウィンドウサイズは指数関数的に増加される。いくつかの実施形態では、移行段階は輻輳イベントの検出後に始まる。いくつかの実施形態では、フィードバック制御アルゴリズムは、比例積分アルゴリズムである。いくつかの実施形態では、フィードバック制御ループは、現在速度、比例項、および積分項の間の差異として説明されてもよい。いくつかの実施形態では、比例項は、現在待ち時間と閾値待ち時間との間の差異を説明し、他方、積分項は、現在待ち時間と以前の待ち時間との間の差異を説明する。いくつかの実施形態では、乗法増加は、確率イベントに対応して実施される。いくつかの実施形態では、乗法増加は、フィードバック制御ループより低い周波数で実施される。
本主題の新規の特徴は、添付の特許請求の範囲において、具体的に説明されている。本主題の特徴と利点についてのよい良い理解が、本主題の原理が利用される、例示的実施形態を説明する以下の詳細な説明と、添付の図面(以下図(「Figure」および「FIG.」))とを参照することによって、得られるであろう。
リンクを通じての通信を示す例示的なブロック図である。 本明細書に記載される実施形態に係る、輻輳管理システム中で測定される、複数の変数を概略的に示す。 物理層リンク中の輻輳管理の方法のためのフロー図を示す。 通信のための最適作動点を示す; 開示される方法の待ち時間の、DCQCNとの比較を、両方法で実施された実験からのデータを使用して示す。 図5の実験からのネットワーク中の、データフローの図を示す。 図5の実験からのネットワーク中の、データフローの図を示す。 開示される方法とDCQCNとの間のキュー占有率の比較を示す。 開示される方法とDCQCNとの間のキュー占有率の比較を示す。
開示される方法は、例えば、イーサネットネットワーク中のリンク層における、RoCEv2ネットワーク中の輻輳を効果的に管理する。方法は、送信者ノードと受信者ノードとの間の通信に実装されてもよく、それらは、1以上のネットワークリンクによって接続されてもよい。送信者と受信者は、多数のユーザーからのデータフローを管理してもよく、また、リンクを通じてデータを送信する多数のユーザー間の送信データの効率性とフェアネスを維持しなければならないかもしれない。
開示されたる方法は、3つの主要な段階、高速開始段階、移行段階、および調整段階、を有する。高速開始段階では、送信者と受信者は、受信者が輻輳イベントを記録するまで、データを初速度で互いに送信してもよい。輻輳イベントは、受信者の観点で測定された待ち時間中のスパイクとして、検出されてもよい。輻輳イベント後に、移行段階が始まる。移行段階では、輻輳を管理するために、送信者は、最初に、データ速度を期間の最小速度に低下させ、次に、データ速度を初速度の半分に増加させる。移行段階後に、調整段階が、フィードバック制御と加法増加乗法減少(AIMD)アルゴリズムとの組み合わせを使用して、低待ち時間、効率性、およびフェアネスを維持しながら、速度を増加させる。
フィードバック制御ループは、調整段階で主要速度計算を誘導し、そこで、速度の増減が、例えば比例-積分アルゴリズムを使用して、精密にチューニングされる。AIMDアルゴリズムは、フローが長期間にわたってリバランスする、小さな動揺を加える。これは、データパケットの輻輳キューに対する合計到達速度に、混乱を多く与えすぎることなく、行われる。
調整段階の後、送信者と受信者は、最終的に、初速度でのデータ送信を再開してもよい。方法は、次の輻輳イベントが検出された時に、再開してもよい。
一態様では、本開示の方法とシステムは、待ち時間のばらつきの測定に基づいて、ネットワーク輻輳状態を判定するために提供される。待ち時間測定は、ラウンドトリップタイム(RTT)遅延などの、フォワードパス待ち時間、またはラウンドトリップタイム待ち時間であってもよい。待ち時間のばらつきまたは変化は、輻輳シグナルとして使用されてもよく、このように、送信者は、輻輳の範囲について、折よく通知されてもよい。
図1は本明細書に記載される主題の実施形態に係る、リンク(103)を通じての通信を示す例示的なブロック図である。送信者(101)と受信者(105)は、リンク(103)を通じて通信している。本明細書に記載される例では、システムは、特定の送受信タスクを、送信者と受信者に委任する。しかし、パケットは、送信者から受信者に、または受信者から送信者に、送信することができる。通信は、輻輳を制御するために、輻輳管理メカニズムを使用してもよい。場合によっては、リンクに沿ったネットワーク輻輳の状態が判定されてもよい。送信者と受信者はまた、それぞれ、起点および宛先と呼ばれてもよい。他の場合では、ラウンドトリップ(送信者から受信者、そして送信者に戻る)のためのネットワーク輻輳が判定されてもよい。
送信者(101)と受信者(105)は、パソコン、タブレットコンピュータ、スマートフォン、セットトップボックス(set top box)、デスクトップコンピュータ、ラップトップ、ゲーム用システム、サーバ、データセンター、および様々な他のデバイスまたはシステムなどの、様々なタイプのコンピューティングデバイスであり得る。複数の他のデバイスまたはコンポーネントは、ネットワークを通じて接続を確立することができる。1以上の送信者は、1以上の受信者に接続することができる。送信者と受信者は、有線接続および/または無線接続で、ネットワークに接続することができる。送信者または受信者は、ネットワーク中の起点ノードと宛先ノードと呼ばれてもよい。ノードは、通信能力を備えた任意のデバイスであってもよい。通信は、有線通信あってもよく、無線通信であってもよい。
送信者と受信者は、それぞれ、メモリ(120)とCPU(130)とを有する。受信者は、RDMAを使用して、送信者のオペレーティングシステムを迂回する一方で、送信者のメモリに格納されたアイテムにアクセスしてもよい。
リンク(103)は、無線ネットワーク、有線ネットワーク、またはその両方の組み合わせであり得る。例えば、ネットワークは、ISP、セルラー、ブロードバンドのケーブルプロバイダ等を通じての、インターネット、イントラネット、セルラーネットワーク、ホームネットワーク、パーソン・エリア・ネットワーク(person area network)などの1以上を含んでもよい。リンク(103)は、1以上のネットワークコンポーネント、データサーバ、接続ノード、スイッチなどの、インターネット・プロトコル・インターフェースと関連付けることができる。別の態様では、送信者(101)と受信者(105)は、リンク(103)の一部と見なすことができる。
送信者(101)と受信者(105)の両方は、ネットワークインターフェイス(140)を含んでおり、それは、ネットワークインターフェースカード(NIC)であってもよい。ネットワークインターフェースは、送信者ノードと受信者ノードがリンク(103)に連結することを可能にする。ネットワークインターフェース(140)は、スマート機能を有して、それらがネットワーク中のノードへのデータ送信速度を制御するためのアルゴリズムを実装することを可能にしてもよい。
起点ノード(例えば送信者)から宛先ノード(例えば受信者)に送信されたデータパケット(111)は、リンクに沿って、遅延に陥るかもしれず、または陥らないかもしれない。いくつかの実施形態では、待ち時間のばらつきまたは変化の測定は、輻輳の範囲についての即時のシグナルを提供してもよい。待ち時間は、データパケット(111)の到着時間からデータパケット(111)の送信時間を減算することによって、計算されてもよい。いくつかの実施形態では、データパケットの送信時間は、送信者のクロック(107)によって提供され、そして、データパケットの到着/受信時間は、受信者のクロック(109)によって提供される。
送信者クロック(107)と受信者クロック(109)とを同期する必要はない。場合によっては、送信者クロック(107)および/または受信者クロック(109)は、同期されていない自走クロックであってもよい。場合によっては、送信者クロック(107)と受信者クロック(109)は、同じ速度または周波数で作動している。代替的に、送信者クロック(107)と受信者クロック(109)は、異なる速度または周波数で動作してもよい。場合によっては、共通の速度または周波数は、接続確立時間において設定されてもよい。例えば、共通の速度または周波数は、データパケットの送信の前に接続プロトコルによって設定された、既定の周波数である。場合によっては、送信者と受信者に関連付けられた速度または周波数は、それぞれ、接続確立時に交換されてもよい。場合によっては、受信者は、送信者の速度または周波数によって通知を受けてもよい。代替的な場合では、送信者と受信者は、互いに未確認の異なる周波数で動作してもよい。例えば、送信者と受信者の両方が、ハンドシェーク要求(例えば、あるハンドシェークタイプの制御パケット)を接続設定時に送信し、ここで、ハンドシェークパケットは、送信者と受信者の両方がそれを使用して通信すると合意した共通周波数、または、送信者と受信者のそれぞれに関連付けられた周波数を、含んでもよい。クロック周波数または速度は、接続確立時間においてのみならず、いつでも送信することができることに留意されたい。例えば、クロックの周波数を含むハンドシェークパケットは、通知メッセージが生成される時、またはタイムアウトタイマーが時間切れになる時に、1間隔に1度で、送信することができる。クロックは、NICハードウェア時間、またはホストデバイス(例えばCPU)クロックなどの、任意のタイプのローカルのハードウェアまたはデバイスのクロックを含んでもよい。送信者クロックと受信者クロックは、同じタイプでもよく、同じタイプでなくてもよい。いくつかの状況では、適合またはマッピングスキームが、ホストタイムスタンプへのマップNICタイムスタンプに対して使用されてもよい。いくつかの状況では、クロック周波数ドリフトが、送信者クロックと受信者クロックとの間で生じてもよく、その結果、待ち時間の変化に傾向をもたらす。周波数ドリフトの検出と更新は、本明細書で後に議論される。
データパケット(111)が送信される時の現在時間を表わすタイムスタンプは、データパケット(111)に含まれていてもよい。タイムスタンプは、送信者クロックによって生成されてもよい。タイムスタンプは、データパケットの任意のフィールドに埋め込むことができる。タイムスタンプは、マルチビットであってもよい。タイムスタンプは、32-ビットまたは64-ビットなどの、任意のビット数を含んでもよい。タイムスタンプは、ピコ秒、ミリ秒、またはマイクロ秒の尺度で、時間分解能を提供してもよい。
いくつかの実施形態では、各データパケット(111)に、タイムスタンプが押される。代替的に、データパケットのいくつかに、タイムスタンプが押される。例えば、送信時間を表わすタイムスタンプは、Xの数のパケットを全て含んでもよく、ここで、Xは、任意の整数であるかもしれない。
タイムスタンプを含むデータパケットを受信する際、待ち時間は、受信者によって計算されてもよい。待ち時間は、受信者におけるローカルクロックの現在値からデータパケット中のタイムスタンプ値を(またはその逆を)減算することによって、判定されてもよい。受信者におけるローカルクロックの現在値は、送信者クロックと同期していないかもしれないので、差異は絶対待ち時間を表わさないかもしれない。したがって、時間差異は、擬似待ち時間と呼ばれてもよい。本開示では、「擬似待ち時間」および「待ち時間」という用語は等価であり、そして、「待ち時間」は、絶対待ち時間を表わすと解釈されるべきでない。
待ち時間の差異または変化は、輻輳の範囲を予測するために使用されてもよい。待ち時間値の変化の差異は、遅延キューの変化を示してもよい。例えば、待ち時間値の増加による待ち時間の正の変化は、キューの上昇を示してもよく、その一方で、待ち時間の負の変化は、キューの減退を示してもよい。正の変化が検出される状況では、行列キュー(standing queue)が形成するのを待つことなく遅延に対応し、従って、低待ち時間に関する方法を達成するのに有利である。負の変化が検出される状況では、送信速度を調節して、帯域幅を完全に利用するのに有利である。場合によっては、待ち時間の変化を待ち時間差異閾値と比較することによってなどで、待ち時間の変化が特定の範囲を超過していると判定された時には、通知メッセージが生成されてもよい。通知メッセージは、変化の増加または変化の減少が既定の待ち時間差異閾値を超過している時に、生成されてもよい。輻輳状態は、閾値を超える待ち時間の変化の検出を含んでもよい。輻輳状態は、待ち時間の測定された変化を含んでもよい。輻輳状態は、本明細書で後に議論されるような、待ち時間に関係する任意の他の変数をさらに含んでもよい。いくつかの実施形態では、輻輳状態の判定に際して、通知メッセージは、受信者によって生成されてもよい。通知メッセージは、待ち時間に関係する複数の変数を含んでもよい。
図2は、本明細書に記載される主題の実施形態に係る、輻輳管理システム中で測定される複数の変数を、概略的に示す。送信者(201)と受信者(203)は、図1に説明されるように、ローカルクロック(205)、(207)にそれぞれ関連付けられていてもよい。送信者と受信者は、データパケット、制御パケット、通知パケットなどのメッセージを送受信するように構成されてもよい。図2に示されるように、1以上のデータパケット(211)、(217)、(219)は、送信者(201)から受信者(203)に送信されてもよい。場合によっては、1以上のデータパケットに、送信者のローカルクロック(205)によって、タイムスタンプが押されてもよい、送信者と受信者が通信システム中に描写されているが、任意の他のコンポーネントがシステム中に含まれ得ることに留意されたい。
データパケットは、送信者または受信者から第1の時間で送信されてもよく、そして、送信者または受信者の他方によって第2の時間に受信されてもよい。第1の時間(例えばT1)と第2の時間(例えばT2)は、ローカルクロック(205)、(207)によって、それぞれ判定されてもよい。T4とT5またはT6とT7などの様々な時間時点が、同時におよび/または様々な順序で、生じる可能性がある。各通信が、1以上のパケットを含むことができる;しかし、読み易さを目的として、通信が、1つのコンポーネントから他のコンポーネントに送信された単一のパケットとして記載されていることに留意されたい。読み易さを目的として、通信が、オーバーラップしないものとして、そして様々なタイミングで描写されていることに、さらに留意されたい。さらに、内容に別段の示唆がない限り、いずれの通信もオーバーラップする可能性があり、異なる順序になる可能性があり、様々なネットワークコンポーネント(例えば中間ノード、スイッチなど)へと進められる可能性がある。送信者と受信者との間で、任意の異なる量のメッセージを送受信することができ;同様に、送信者と受信者は、図に示されていない様々な他のコンポーネントに/コンポーネントから、メッセージを送受信することができる。
上述の様に、待ち時間の範囲は、待ち時間の変化に基づいて判定されてもよい。いくつかの実施形態では、待ち時間の変化が待ち時間差異閾値を超過したと判定された時に、通知メッセージ(215)、(216)が生成されてもよい。場合によっては、新しい間隔(227)が、通知メッセージの生成時に始まってもよい。場合によっては、新しい間隔(227)が、輻輳状態の検出時に始まってもよい。いくつかの場合には、新しい間隔が、以前の間隔からの最後のデータパケット(211)の受信時間または到着時間(例えばT2)で始ってもよい。間隔は、マイクロ秒、ミリ秒、秒などの、任意の長さの時間を有することができる。
図に示されるように、間隔における第1のデータパケットの待ち時間(221)が計算されてもよい。受信者(203)による第1のデータパケットの受信時に、受信者は、受信者におけるローカルクロックの現在値T4から、データパケット中のタイムスタンプ値T3を減算してもよい。待ち時間値が、送信者から受信者に送信される、1以上のメッセージまたはデータパケット(217)について計算されてもよい。待ち時間の差異または変化が、2以上のデータパケット間で計算されてもよい。
場合によっては、待ち時間の変化は、現在待ち時間値と以前の待ち時間値との間の再差として計算されてもよい。以前の待ち時間値は、単一のパケットまたは多数の以前に取得されたパケットの平均の待ち時間値であってもよい。場合によっては、以前の待ち時間値は、間隔(227)の第1のパケット(213)の待ち時間値(221)であってもよい。場合によっては、以前の待ち時間値は、最小待ち時間値であってもよい。場合によっては、以前の待ち時間値は、第1の多数のパケットなどの多数の以前に取得された待ち時間値の平均であってもよく、または多数のパケットの移動平均であってもよい。場合によっては、以前の待ち時間値は、以前の間隔からのデータに基づいて生成されてもよい。以前の待ち時間値は、固定されていてもよく、または間隔(227)中に変動してもよい。例えば、受信者(203)によってトラッキングされた最小待ち時間値が以前の待ち時間値として得られる場合、以前の待ち時間値は、最小値が更新される時に、変動してもよい。例えば、データパケット(217)は、その後のデータパケットに対してその間隔中の最小待ち時間値(223)を有していてもよく、待ち時間の変化は、それぞれの待ち時間値と最小待ち時間値との間の差として計算されてもよい。同様に、第1のパケットの待ち時間値(221)が、間隔中のその後のデータパケットの全てに対して、以前の待ち時間値として得られる場合、待ち時間の変化は、それぞれの待ち時間値と第1のパケットの待ち時間値との間の差異として計算されてもよい。
場合によっては、待ち時間の変化は、現在待ち時間値と以前の待ち時間値との間の差異として判定される。現在待ち時間値は、単一のパケットの待ち時間値であり得る。現在待ち時間値は、多数のパケットの移動平均であり得る。このことは、待ち時間測定中の瞬時スパイクを回避するという利点を提供してもよい。様々な他の方法またはアルゴリズムは、スパイクをフィルタリングするために使用することができる。場合によっては、待ち時間の変化は、現在待ち時間値と以前の待ち時間値とから導出された値であり得る。例えば、待ち時間の変化は無次元であるかもしれず、それは、以前の待ち時間値で除算された現在待ち時間値と(現在待ち時間値)によって除算された以前の待ち時間値との間の差である。
場合によっては、間隔(219)中の最後のパケットは、待ち時間差異閾値を超える待ち時間の変化を有するパケットである。最後のパケットの現在待ち時間は、移動平均であってもよく、移動平均でなくてもよい。変化は、現在待ち時間値と以前の待ち時間値との間の差異の絶対値であってもよい。差異は、正であってもよく、負であってもよい。待ち時間差異閾値が充足される時に、通知メッセージ(216)が生成されてもよい。
いくつかの実施形態では、待ち時間の変化は、受信者によって判定されてもよい。代替的に、待ち時間の変化は、送信者によって判定されてもよい。いくつかの実施形態では、ネットワーク輻輳の状態は、受信者によって判定されてもよい。代替的に、ネットワーク輻輳の状態は、送信者によって判定されてもよい。
いくつかの実施形態では、通知メッセージは、受信者によって生成されてもよい。通知メッセージは、受信者から送信者に送信されてもよい。待ち時間の変化が待ち時間差異閾値を越えていると判定された時、通知メッセージが直ちに送信されてもよい(例えばT2で送信されたメッセージ(215))。通知メッセージは、間隔の終点よりも後の時点で送信されてもよい(例えばT9で送信されたメッセージ(216))。通知メッセージは、遅延キューの輻輳状態の増減を示す複数の変数を含んでもよい。いくつかの実施形態では、通知メッセージに含まれる情報の少なくともいくらかは、さらなる輻輳管理のために、送信者によって使用される。
図3は、イーサネットリンクなどのデータリンク中の輻輳管理の方法のためのフロー図を示す。フロー図は、初期設定フェーズ、高速開始フェーズ、移行フェーズ、および調整フェーズを含む。方法は、送信者(101)と受信者(105)との間のデータ送信と共に、図1の環境で実装されてもよい。
初期設定フェーズ(310)では、送信者と受信者は、互いのクロック速度とライン速度に関する情報を共有してもよい。この情報は、送信者と受信者が許容可能な待ち時間を判定することを可能にし、従って、変則的に大きな待ち時間値(例えば、特定の送信者と受信者との間のデータフローに対する特定の閾値を上回る値)を登録することによって、輻輳イベントを検出することができるようにする。
高速開始フェーズ(320)では、送信者は、データを初速度で受信者に送信する。高速開始フェーズ(320)は、ウィンドウ成長フェーズに先行してもよく、ここで、送信者は、データパケットを送信するための初期ウィンドウサイズを設定してもよく、そしてネットワーク内に輻輳が検知されない限り、ウィンドウのサイズを増加させてもよい。初期ウィンドウサイズは、例えば、ライン速度にネットワーク内の最小伝播遅延時間を積算した、帯域遅延積に設定されてもよい。ウィンドウサイズが増加するにつれて、受信者は、輻輳を検知していないことを、周期的に、例えば受信データ50キロバイトごとに、送信者にパケットを送信することによって、通知してもよい。ウィンドウが成長し得る最大サイズは、そのリンク速度にネットワーク内の伝播遅延の最大値を積算することによって、判定されてもよい。受信者は、送信者から受信するデータパケットに対して、一方向の待ち時間中のスパイクを観察することによって、輻輳イベントを検出してもよい。一方向の待ち時間中のスパイクは、パケットのラウンドトリップタイムより大きな遅延に相当してもよい。例えば、15~25マイクロ秒の遅延によって、受信者が輻輳イベントを登録してもよい。いくつかの実施形態では、受信者は、輻輳イベントを登録するために、最小待ち時間に対する待ち時間を測定してもよい。これらの実施形態では、受信者は、閾値待ち時間を構成してもよく、それを超えると、検出された待ち時間を輻輳イベントとして登録してもよい。
送信者は、ウィンドウサイズを指数関数的に増加させてもよい。送信者はまた、一次の線形的に、対数的に、または階段的に、サイズを増加させてもよい。ウィンドウサイズは、閾値サイズが達成されるまで増加されてもよい。パケットは、ビットを使用してウィンドウサイズを増加するように、送信者にシグナルを送ってもよい。
高速開始フェーズ(320)内のウィンドウ成長後に、送信者は初速度を設定する。初速度は、25GBit/sまたは100GBit/sなどのライン速度であってもよい。初速度は、送信者と受信者とを接続する物理的ネットワークのタイプ、送信者と受信者との間の物理的距離、および送信者と受信者の動作構成などの要因によって、影響を受けるかもしれない。送信者は、ウィンドウがオーバーロード状態でない限り、フルスピードでデータ転送量(traffic)を送信してもよい。受信者は、CNPパケットを使用して、送信者と通信してもよい。例えば、受信者は、CNP-Wパケットを送って、受信者がライン速度でパケットを送信し続けることを通知してもよく、あるいは、輻輳イベントが検出される時に、CNP-Rパケットを送信してもよい。
受信者が輻輳イベントを検出する時、システムは、移行フェーズ(330)に入る。受信者は、送信者がデータ送信の速度を最小速度に引き下げるべきであることを示すビットを伴うパケットを、送信者に送信してもよい。最小速度は、初速度よりも著しく小さくてもよい。例えば、最小速度は、初速度よりも2桁~4桁小さくてもよい。システムは、1以上の期間にわたって移行状態にとどまっていてもよい。期間は、パケットのラウンドトリップタイム(RTT)に基づいていてもよい。例えば、期間は、25マイクロ秒であってもよい。このことは、システム中の輻輳を低下させるために実施される。特定の数の期間にわたって最小速度にとどまった後、システムは、データ転送速度を、初期転送速度の2分の1に増加させてもよい。受信者はまた、送信者と受信者との間のスループットを測定してもよい。スループットが初速度の2分の1の割合未満である場合、受信者は、測定されたスループットの半分で送信するように送信者に通知するパケットを、送信者に送信してもよい。送信者は、当該パケットを受信すると、送信速度を落としてもよい。
システムは、2つの更新期間のための移行段階にとどまった後、調整段階(340)に移る。調整フェーズは、フィードバック制御アルゴリズムと加法増加乗法減少(AIMD)とを使用して、データ転送速度を修正してもよい。
フィードバック制御アルゴリズムは、比例積分(PI)アルゴリズムであってもよい。フィードバック制御アルゴリズムはまた、比例アルゴリズムまたは比例-積分-微分(PID)アルゴリズムを使用して、実装されてもよい。PIアルゴリズムは、効率と低待ち時間とを確実化してもよい。データ転送速度の計算は、現在待ち時間が閾値値(例えば最小待ち時間値)からどれほど離れているか、および、待ち時間キューが現在上方傾向なのか、または下方傾向なのかに基づいて、周期的に更新されてもよい。アルゴリズムの「比例」アスペクト(”proportional” aspect)は、待ち時間が高い場合に、アルゴリズムがデータ送信速度を低下させる可能性を高め、他方、アルゴリズムの「積分」アスペクト(”integral” aspect)は、待ち時間キューが上方傾向にある場合に、データ送信速度を低下させる可能性を高めるように機能する。
フィードバック制御ループは、次の式を使用して説明されてもよい。
R(n+1)=R(n)-α(Δ(n)-θ)-β(Δ(n)―Δ(n-1))
この式では、更新された速度R(n+1)は、現在速度R(n)から比例項α(Δ(n)-θ)と積分項β(Δ(n)-Δ(n-1))を減算することによって計算される。比例項は、現在待ち時間Δ(n)と閾値待ち時間θとの間の差異に定数を積算して説明される。積分項は、現在待ち時間Δ(n)と以前の待ち時間Δ(n-1)との間の差異に異なる定数を積算して説明され、式に、待ち時間の上方傾向または下方傾向を組み込む。
AIMDアルゴリズムは、フィードバック制御アルゴリズムと共に作動して、システム中のフェアネスを確実化する。AIMDアルゴリズムは、待ち時間が減少する場合に、データ転送速度に対して加法増加を実施してもよく、そして、待ち時間が増加する場合に、乗法減少を実施してもよい。この処理はデータフロー中のリンクにフェアネスを加え、また、待ち時間を制御するのに必要とされる尺度よりも長い尺度にわたって実施されてもよい。例えば、システムは、輻輳イベントが受信者によって検出されるまで、異なるデータフローの速度に対して加法増加を実施してもよい。その点で、システムは、輻輳を止めるために、乗法減少をデータ速度上で実施してもよい。この処理は、フローが等しいデータ速度を有するようになるまで、繰り返されてもよい。
いくつかの実施形態では、加法増加は、システムが調整段階にある間、絶えず実施されてもよい。このことが生じている間、受信者は、CNP-Rパケットなどのパケットを送信者に送信して、速度に対して加法増加を行ってもよい。乗法減少は、周期的に実施されてもよい。いくつかの実施形態では、システムは、特定回数の調整サイクル後に、乗法減少を実施してもよい。他の実施形態では、乗法増加は、「コイントス」などの確率イベントに応じて実施されてもよい。システムは、乗法減少の確率を「コイン」に割り当てて、パケット到着のたびに「コインを投げ」て、そのサイクル中に、速度に対して乗法減少を実施するか否かを判定してもよい。例えば、乗法減少の確率が30%である場合、10回のパケット送信中3回において、乗法減少が実施されるであろうことが期待されてもよい。
システムは、フィードバック制御ループとAIMDループとを共同実施してもよい。AIMD処理は、フェアネスが長時間尺度にわって達成され得るため、フィードバック制御ループより低い周波数で実施されてもよい。AIMDを周期的に、制御ループを実施するよりも低い頻度で実施することで、データフローがリバランスし、キューに到着するパケットの混乱を低下させることができるようになる。
調整段階(340)は、データ送信が初期データ速度に戻るまで継続してもよい。システムが多数の期間にわたって初速度に戻る場合、システムは、高速開始処理(320)を再び始めてもよい。
図4は、通信の効率性グラフ(400)を示す。図は、リンク層のパケット負荷が増加するにつれて、グッドプット(単位時間あたりに送達された有用情報ビットの数)と輻輳バッファサイズ(420)がどのように増加するかを示す。図は、データ負荷がゼロから増加するにつれて、グッドプット(410)も一次の線形状に増加することを示す。パケット負荷(450)が増加して、容量(440)を超えると、曲線が一次の線形状から平坦状(flat)に移行し、膝様屈折部(knee)を形成する。これは、最大のグッドプットと無視できる程度のキューを伴う、システムの最適作動点(430)である。下のグラフは、パケット負荷が増加して膝様屈折部を超える際のキューの積み上がりを示し、その理由は、この点の後は、全てのパケットがシステムによって送信される得るわけではないためである。グラフは、キューが積み上がるにつれて、大負荷であってすらなお、グッドプット(410)が高いままであることを示す。システムは、小さな行列キューで、最適に操作され得る。キューは、負荷が増加するにつれて指数関数的にサイズ増加するかもしれず、その理由は、待機状態のパケットは、新しいパケットがキューに追加される前には送信されないかもしれないからである。特定の負荷では、システムがそのような大きなキューの維持に対応することができないかもしれないため、パケットがドロップされてもよい。グラフは、開示される方法では、システムが膝様屈折部の近くで作動することを示す。
図5は、開示される方法の待ち時間の、DCQCNとの比較(500)を、両方法で実施された実験からのデータを使用して示す。図5の実験では、DCQCNと開示される方法の両方について、20,000のデータフローが、ポアソン過程として受信者に到着する。フローは、16の異なるポートから様々なラウンドトリップタイム(RTT)で入信し、全て宛先は受信者である。受信者へのパケットの到着速度は、実験を実施するために制御され、ここで、送信者と受信者との間のリンクは、20%、40%、60%、および80%の負荷がかかる。DCQCNと当該方法の両方におけるこれらの16のポートについて、イーサネットフレームの最小ポーズ時間、平均ポーズ時間、および最大ポーズ時間が測定される。グラフから確認できるように、高負荷では、DCQCNは、開示される方法と比較して性能が落ちる。実際、DCQCNのポーズ時間は、高負荷で指数関数的に悪化する。高負荷で比較すると、開示される方法では、高負荷であってもポーズフレームは生成されない。
図6Aと図6Bは、図5の実験からのネットワークにおける、データフローの図を示す。図6Aの図(600)は、開示される方法からのスループットを示し、他方、図6Bの図(650)は、DCQCNからのスループットを示す。図(650)は、顕著な犠牲フロー(victim flow)を示す。犠牲フロー、または低下スループットのフローは、データセンターネットワークにわたる輻輳の広がりを示す。従って、図6Aと図6Bは、DCQCNが使用される時には顕著な輻輳の広がりを示すが、開示される方法が使用される時には無視できる程度の輻輳を示す。
図7Aと図7Bは、開示される方法(700)とDCQCN(750)との間のキュー占有率の比較を示す。グラフは、システムで、DCQCNを使うよりも、キュー状態のデータが少ないことを示す。図7Aと図7Bのチャートは、実験の結果を反映する。実験では、3段のデータセンターネットワークに640のノードが存在している。各ノードは、1対のトップオブラック(top-of-rack)(ToR)スイッチに接続された、2つの25Gbpsリンクを有する。ノード間のラウンドトリップ伝播遅延は、12マイクロ秒である。PFCは有効化されている。640のノードは、1対のToRスイッチの下、データパケットを32のノードの1グループに継続的に送信する。32のノードの各々はまた、データパケットを他の639のノードに送信する。実験は、シミュレーションの途中で、32のノードの1つに向かう1つのリンクを除去し、そしてそのリンクの除去が他のサーバにどのように影響するかを観察する。図7Aと図7Bは、この実験からの輻輳リンクのキュー占有率を、開示される方法下とDCQCN下とで比較し、そして、開示される方法は、キュー占有率を、DCQCN下でのもののわずか10分の1に低下させることを示す。

Claims (55)

  1. ネットワークプロトコル中の輻輳を管理する、コンピュータ実装された方法であって、前記方法は、
    a)ネットワーク中の輻輳イベントを検出する工程と、
    b)データ転送速度を初速度から最小速度に減速させる工程と、
    c)データ転送速度を初速度の半分に増加させる工程と、
    d)ネットワークの一方向の待ち時間を周期的にモニタリングする工程と、
    e)フィードバック制御アルゴリズムと加法増加乗法減少(AIMD)アルゴリズムとを使用して、データ転送速度を調節する工程と、
    を含む、方法。
  2. 初期データ転送速度を設定することは、帯域遅延積と等しい初期ウィンドウを設定すること、かつ、初期ウィンドウを設定することの後に輻輳が検出されない場合に、ウィンドウサイズを上昇させることを、さらに含む、請求項1に記載のコンピュータ実装された方法。
  3. 前記初期データ転送速度はネットワークリンクのライン速度と等しい、請求項1に記載のコンピュータ実装された方法。
  4. 閾値待ち時間は、データパケットの送信のためのラウンドトリップタイムに基づく、請求項1に記載のコンピュータ実装された方法。
  5. 最小データ転送速度は、初期データ転送速度の少なくとも1パーセント未満である、請求項1に記載のコンピュータ実装された方法。
  6. フィードバック制御ループは、比例-積分コントローラを含む、請求項1に記載のコンピュータ実装された方法。
  7. データを最小データ転送速度で送信者から受信者に転送することは、輻輳通知パケットを受信者から送信者に送ること、および、送信者が前記輻輳通知パケットを受信した際に、速度を更新することを含む、請求項1に記載のコンピュータ実装された方法。
  8. 一方向の待ち時間を継続的にモニタリングすることは、受信パケットのバイトの合計数のトラッキングを維持することを含む、請求項1に記載のコンピュータ実装された方法。
  9. 管理された転送速度は、最小転送速度での1期間と初速度の半分での1期間の後に計算される、請求項1に記載のコンピュータ実装された方法。
  10. 期間は、送信パケットのラウンドトリップタイムに基づく、請求項9に記載のコンピュータ実装された方法。
  11. 前記初期転送速度は、送信者と受信者との間のライン速度に基づく、請求項1に記載のコンピュータ実装された方法。
  12. 前記初期転送速度は、前記送信者のリンク速度と前記受信者のリンク速度との間の最小速度である、請求項11に記載のコンピュータ実装された方法。
  13. 前記AIMDアルゴリズムは、管理速度が閾値を下回る場合に、前記管理速度に対して加法を実施し、前記管理速度が閾値を上回る場合に、前記管理速度に対して乗法を実施することを含む、請求項1に記載のコンピュータ実装された方法。
  14. 前記加法は、正の数によるものである、請求項13に記載のコンピュータ実装された方法。
  15. 前記乗法は、0と1との間の数によるものである、請求項13に記載のコンピュータ実装された方法。
  16. a)期間の閾値数にわたり、前記データ転送速度を調節する工程から、少なくとも前記初速度を取得する工程と、
    b)輻輳イベントに関してネットワークをモニタリングする工程と、
    をさらに含む、請求項1に記載のコンピュータ実装された方法。
  17. 複数の演算ノードを含む、ネットワーク中のネットワーク輻輳を管理するためのシステムであって、
    前記演算ノードは、
    a)1以上の以前に取得された待ち時間値および命令のセットを格納するためのメモリと、
    b)1以上のプロセッサであって、前記命令のセットに、
    i)前記ネットワーク中の輻輳イベントを検出する、
    ii)データ転送速度を初速度から最小速度に減速させる、
    iii)前記データ転送速度を前記初速度の半分に増加させる、
    iv)前記ネットワークの一方向の待ち時間を周期的にモニタリングする、
    v)フィードバック制御アルゴリズムと加法増加乗法減少(AIMD)アルゴリズムとを使用して、前記データ転送速度を調節する、
    ことを実行させるように、構成された、前記プロセッサと、を含む、システム。
  18. 前記ネットワークは、少なくとも1つのリンクを有する、請求項17に記載のシステム。
  19. 前記複数の演算ノードは、送信者ノードと受信者ノードとを含む、請求項17に記載のシステム。
  20. 初期データ転送速度を設定することは、帯域遅延積と等しい初期ウィンドウを設定すること、かつ、初期ウィンドウを設定することの後に輻輳が検出されない場合に、ウィンドウサイズを上昇させることを、さらに含む、請求項17に記載のシステム。
  21. 前記初期データ転送速度は、イーサネットリンクのライン速度と等しい、請求項17に記載のシステム。
  22. 閾値待ち時間は、データパケットの送信のためのラウンドトリップタイムに基づく、請求項17に記載のシステム。
  23. 最小データ転送速度は、初期データ転送速度の少なくとも1パーセント未満である、請求項17に記載のシステム。
  24. フィードバック制御ループは、比例-積分コントローラを含む、請求項17に記載のシステム。
  25. データを最小データ転送速度で送信者から受信者に転送することは、輻輳通知パケットを受信者から送信者に送ること、および、送信者が前記輻輳通知パケットを受信した際に、速度を更新することを含む、請求項17に記載のシステム。
  26. 一方向の待ち時間を継続的にモニタリングすることは、受信パケットのバイトの合計数のトラッキングを維持することを含む、請求項17に記載のシステム。
  27. 管理された転送速度は、最小転送速度での1期間と初速度の半分での1期間の後に計算される、請求項17に記載のシステム。
  28. 期間は、送信パケットのラウンドトリップタイムに基づく、請求項27に記載のシステム。
  29. 前記初期転送速度は、送信者と受信者との間のライン速度に基づく、請求項17に記載のシステム。
  30. 前記初期転送速度は、前記送信者と前記受信者との間の最小ライン速度である、請求項29に記載のシステム。
  31. 前記AIMDアルゴリズムは、管理速度が閾値を下回る場合に、前記管理速度に対して加法を実施し、前記管理速度が閾値を上回る場合に、前記管理速度に対して乗法を実施することを含む、請求項17に記載のシステム。
  32. 前記加法は、正の数によるものである、請求項31に記載のシステム。
  33. 前記乗法は、0と1との間の数によるものである、請求項31に記載のシステム。
  34. ネットワーク中のネットワーク輻輳を管理するための、コンピュータ実装された方法であって、前記コンピュータ実装された方法は、
    a)データ速度を初期速度に設定すること、および、送信者と受信者との間で、前記受信者が輻輳イベントを検出するまでデータ転送を実施することを含む、高速開始段階と、
    b)ある期間にわたり、前記データ速度を最小データ速度に低下させること、およびその後に、ある期間にわたり、前記データ速度を前記初速度の半分に増加させることを含む、移行段階と、
    c)フィードバック制御ループと加法減少乗法増加アルゴリズムとの組み合わせを使用して、前記データ速度を修正することを含む、調整段階と、
    を含む、コンピュータ実装された方法。
  35. 前記高速開始段階の前に、前記送信者と前記受信者との間でクロック速度とライン速度とを共有することを含む、初期設定フェーズを、さらに含む、請求項34に記載のコンピュータ実装された方法。
  36. 前記高速開始段階の前に、データパケットを送信するために、ウィンドウサイズを初期ウィンドウサイズに設定する工程を、さらに含む、請求項34に記載のコンピュータ実装された方法。
  37. 輻輳イベントが前記ネットワーク内で検出されていない間は、前記ウィンドウサイズを増加させる工程を、さらに含む、請求項36に記載のコンピュータ実装された方法。
  38. 前記ウィンドウサイズは指数関数的に増加される、請求項37に記載のコンピュータ実装された方法。
  39. 前記移行段階は、前記輻輳イベントの検出後に始まる、請求項34に記載のコンピュータ実装された方法。
  40. 前記フィードバック制御アルゴリズムは、比例積分アルゴリズムである、請求項34に記載のコンピュータ実装された方法。
  41. 前記フィードバック制御ループは、現在速度、比例項、および積分項の間の差異として説明され得る、請求項40に記載のコンピュータ実装された方法。
  42. 前記比例項は、現在待ち時間と閾値待ち時間との間の差異を説明し、他方、前記積分項は、現在待ち時間と以前の待ち時間との間の差異を説明する、請求項41に記載のコンピュータ実装された方法。
  43. 乗法増加は、確率イベントに対応して実施される、請求項34に記載のコンピュータに実施された方法。
  44. 乗法増加は、フィードバック制御ループより低い周波数で実施される、請求項34に記載のコンピュータ実装された方法。
  45. 複数の演算ノードを含む、ネットワーク中のネットワーク輻輳を管理するためのシステムであって、前記演算ノードは、
    a)1以上の以前に取得された待ち時間値および命令のセットを格納するためのメモリと、
    b)1以上のプロセッサであって、前記命令のセットが、
    i)データ速度を初期速度に設定すること、および、送信者と受信者との間で、前記受信者が輻輳イベントを検出するまでデータ転送を実施することを含む、高速開始段階と、
    ii)ある期間にわたり、前記データ速度を最小データ速度に低下させること、およびその後に、ある期間にわたり、前記データ速度を前記初速度の半分に増加させることを含む、移行段階と、
    iii)フィードバック制御ループと加法減少乗法増加アルゴリズムとの組み合わせを使用して、前記データ速度を修正することを含む、調整段階と、
    を実装するように前記命令のセットを実行するように、構成されている、前記プロセッサと、を含む、システム。
  46. 前記高速開始段階の前に、前記送信者と前記受信者との間でクロック速度とライン速度とを共有することを含む、初期設定フェーズ、をさらに含む、請求項45に記載のシステム。
  47. 前記高速開始段階の前に、データパケットを送信するために、ウィンドウサイズを初期ウィンドウサイズに設定することを、さらに含む、請求項45に記載のシステム。
  48. 輻輳イベントが前記ネットワーク内で検出されていない間は、前記ウィンドウサイズを増加させることを、さらに含む、請求項47に記載のシステム。
  49. 前記ウィンドウサイズは指数関数的に増加される、請求項48に記載のシステム。
  50. 前記移行段階は、前記輻輳イベントの検出後に始まる、請求項45に記載のシステム。
  51. 前記フィードバック制御アルゴリズムは、比例積分アルゴリズムである、請求項45に記載のシステム。
  52. 前記フィードバック制御ループは、現在速度、比例項、および積分項の間の差異として説明され得る、請求項51に記載のシステム。
  53. 前記比例項は、現在待ち時間と閾値待ち時間との間の差異を説明し、他方、前記積分項は、現在待ち時間と以前の待ち時間との間の差異を説明する、請求項52に記載のシステム。
  54. 前記乗法増加は、確率イベントに対応して実施される、請求項45に記載のシステム。
  55. 前記乗法増加は、フィードバック制御ループより低い周波数で実施される、請求項45に記載のシステム。
JP2021568610A 2019-05-17 2020-05-15 速度最適化された輻輳管理 Pending JP2022533970A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/415,609 2019-05-17
US16/415,609 US11212227B2 (en) 2019-05-17 2019-05-17 Rate-optimized congestion management
PCT/US2020/033154 WO2020236599A1 (en) 2019-05-17 2020-05-15 Rate-optimized congestion management

Publications (2)

Publication Number Publication Date
JP2022533970A true JP2022533970A (ja) 2022-07-27
JPWO2020236599A5 JPWO2020236599A5 (ja) 2023-05-16

Family

ID=73228300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021568610A Pending JP2022533970A (ja) 2019-05-17 2020-05-15 速度最適化された輻輳管理

Country Status (8)

Country Link
US (2) US11212227B2 (ja)
EP (2) EP3970322B1 (ja)
JP (1) JP2022533970A (ja)
KR (1) KR102385762B1 (ja)
CN (2) CN114145001B (ja)
CA (1) CA3139533C (ja)
IL (1) IL288030B2 (ja)
WO (1) WO2020236599A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019046603A1 (en) 2017-08-31 2019-03-07 Pensando Systems Inc. METHODS AND SYSTEMS FOR MANAGING NETWORK DIMENSIONS
US11212227B2 (en) 2019-05-17 2021-12-28 Pensando Systems, Inc. Rate-optimized congestion management
US11502932B2 (en) 2019-05-17 2022-11-15 Keysight Technologies, Inc. Indirect testing using impairment rules
US11153221B2 (en) 2019-08-28 2021-10-19 Pensando Systems Inc. Methods, systems, and devices for classifying layer 4-level data from data queues
JP7173058B2 (ja) * 2020-01-14 2022-11-16 株式会社デンソー 通信装置、及び通信装置に用いられるプログラム及び方法
US11444831B2 (en) 2020-01-17 2022-09-13 Keysight Technologies, Inc. Methods, systems, and computer readable media for measuring schedule update time for a time aware shaper implementation
US11394700B2 (en) 2020-01-31 2022-07-19 Pensando Systems Inc. Proxy service through hardware acceleration using an IO device
US11431681B2 (en) 2020-04-07 2022-08-30 Pensando Systems Inc. Application aware TCP performance tuning on hardware accelerated TCP proxy services
US11621908B2 (en) 2020-07-13 2023-04-04 Keysight Technologies, Inc. Methods, systems and computer readable media for stateless service traffic generation
US11258719B1 (en) * 2020-08-24 2022-02-22 Keysight Technologies, Inc. Methods, systems and computer readable media for network congestion control tuning
CN113141315B (zh) * 2021-04-20 2022-12-27 上海卓易科技股份有限公司 一种拥塞控制方法及设备
US11582128B1 (en) * 2021-08-12 2023-02-14 Allot Ltd. System, device, and method of measuring directional latency and congestion in a communication network
US11683250B2 (en) * 2021-10-22 2023-06-20 Palo Alto Networks, Inc. Managing proxy throughput between paired transport layer connections
US20230300671A1 (en) * 2022-03-18 2023-09-21 Qualcomm Incorporated Downlink congestion control optimization
CN115174477B (zh) * 2022-06-29 2024-04-05 无锡芯光互连技术研究院有限公司 一种基于优先级流量控制的拥塞控制方法及系统
US11962434B2 (en) 2022-07-08 2024-04-16 Keysight Technologies, Inc. Methods, systems, and computer readable media for capturing dropped packets at a switching fabric emulator
CN116847360B (zh) * 2022-12-30 2024-04-02 曲阜师范大学 一种非实时数据传输方法、装置及存储介质
CN117560528B (zh) * 2024-01-11 2024-05-24 腾讯科技(深圳)有限公司 音视频数据发送方法、装置、计算机设备及可读存储介质
CN118524065B (zh) * 2024-07-24 2024-10-01 苏州元脑智能科技有限公司 拥塞控制方法及装置、存储介质及电子设备

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5264843A (en) * 1989-04-05 1993-11-23 Siemens Pacesetter, Inc. High speed reflected impedance telemetry system for implantable medical device
US7349994B2 (en) 2000-10-17 2008-03-25 Avaya Technology Corp. Method and apparatus for coordinating routing parameters via a back-channel communication medium
US7423972B2 (en) 2000-11-28 2008-09-09 Flash Networks Ltd. System and method for a transmission rate controller
US7782776B2 (en) 2002-03-15 2010-08-24 Broadcom Corporation Shared weighted fair queuing (WFQ) shaper
US7974195B2 (en) * 2003-06-12 2011-07-05 California Institute Of Technology Method and apparatus for network congestion control
US20080037420A1 (en) * 2003-10-08 2008-02-14 Bob Tang Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp (square waveform) TCP friendly san
WO2006023604A2 (en) 2004-08-17 2006-03-02 California Institute Of Technology Method and apparatus for network congestion control using queue control and one-way delay measurements
CN101023455A (zh) * 2004-08-17 2007-08-22 加州理工大学 使用排队控制和单向延迟测量实现网络拥塞控制的方法和设备
US7688968B1 (en) 2004-09-16 2010-03-30 Marvell International Ltd. Adaptive analog echo/next cancellation
AP2007004044A0 (en) * 2004-11-29 2007-06-30 Bob Tang Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp (square wave form) TCP friendly SAN
US7583664B2 (en) 2004-12-28 2009-09-01 Michael Ho Techniques for transmitting and receiving traffic over advanced switching compatible switch fabrics
US7957276B2 (en) 2005-04-28 2011-06-07 Telcordia Licensing Company, Llc Call admission control and preemption control over a secure tactical network
US9154395B2 (en) 2006-10-05 2015-10-06 Cisco Technology, Inc. Method and system for optimizing a jitter buffer
US7729387B2 (en) 2007-01-31 2010-06-01 Agere Systems Inc. Methods and apparatus for controlling latency variation in a packet transfer network
US7940677B2 (en) 2007-06-05 2011-05-10 At&T Intellectual Property I, Lp Architecture for optical metro ethernet service level agreement (SLA) management
CN101094047A (zh) * 2007-07-06 2007-12-26 中国人民解放军国防科学技术大学 基于网络状态测量的分阶段慢启动传输控制方法
CA2703719C (en) 2007-10-26 2014-07-08 Telcordia Technologies, Inc. Method and system for secure session establishment using identity-based encryption (vdtls)
US8370622B1 (en) 2007-12-31 2013-02-05 Rockstar Consortium Us Lp Method and apparatus for increasing the output of a cryptographic system
CN101902295B (zh) * 2009-05-26 2013-08-21 国际商业机器公司 控制应用服务器的负载接收速率的方法及装置
GB201003206D0 (en) 2010-02-25 2010-04-14 Skype Ltd Method of estimating congestion
US8553540B2 (en) * 2010-03-05 2013-10-08 Microsoft Corporation Congestion control for delay sensitive applications
CN101860895B (zh) * 2010-06-11 2012-12-19 上海海维工业控制有限公司 一种改进的aimd拥塞控制方法
EP2413542A1 (en) * 2010-07-30 2012-02-01 Institut National De Recherche En Informatique Et En Automatique Flow aware congestion avoidance method and system
WO2012121635A1 (en) * 2011-03-10 2012-09-13 Telefonaktiebolaget L M Ericsson (Publ) Hybrid congestion control
KR102016446B1 (ko) * 2011-12-28 2019-10-21 씨디에프 케 유안 지연이 큰 네트워크들에 대한 tcp 혼잡 제어
US20130195123A1 (en) 2012-01-31 2013-08-01 Alon Stern Clock recovery over protected packet networks
US9031094B2 (en) 2012-02-03 2015-05-12 Apple Inc. System and method for local flow control and advisory using a fairness-based queue management algorithm
US9591515B2 (en) 2012-05-08 2017-03-07 Telefonaktiebolaget Lm Ericsson (Publ) Feedback-based profiling for transport networks
US9473974B2 (en) 2012-05-30 2016-10-18 The University Of Hong Kong Enhancing AQM to combat wireless losses
US8813225B1 (en) 2012-06-15 2014-08-19 Amazon Technologies, Inc. Provider-arbitrated mandatory access control policies in cloud computing environments
US8804523B2 (en) 2012-06-21 2014-08-12 Microsoft Corporation Ensuring predictable and quantifiable networking performance
CN102882803B (zh) * 2012-10-11 2015-12-16 四川大学 一种基于丢包和时延的混合拥塞控制方法
US20140164641A1 (en) 2012-12-11 2014-06-12 The Hong Kong University Of Science And Technology Congestion control for data center traffic
US9294944B2 (en) 2012-12-21 2016-03-22 International Business Machines Corporation Method and apparatus to monitor and analyze end to end flow control in an Ethernet/enhanced Ethernet environment
US9509802B1 (en) 2013-03-15 2016-11-29 PME IP Pty Ltd Method and system FPOR transferring data to improve responsiveness when sending large data sets
US9436244B2 (en) * 2013-03-15 2016-09-06 Intel Corporation Adaptive control loop protection for fast and robust recovery from low-power states in high speed serial I/O applications
EP3000255A1 (en) * 2013-05-20 2016-03-30 Telefonaktiebolaget LM Ericsson (publ) Congestion control in a communications network
US20140348182A1 (en) 2013-05-22 2014-11-27 Iii Holdings 2, Llc Time synchronization between nodes of a switched interconnect fabric
US10708187B2 (en) 2014-05-22 2020-07-07 Intel Corporation Data center congestion management for non-TCP traffic
US9313270B2 (en) 2014-07-29 2016-04-12 Datadirect Networks, Inc. Adaptive asynchronous data replication in a data storage system
US9565167B2 (en) 2015-01-21 2017-02-07 Huawei Technologies Co., Ltd. Load balancing internet protocol security tunnels
KR102363534B1 (ko) * 2015-06-08 2022-02-17 삼성전자주식회사 통신 시스템에서 tcp 기반의 전송 제어 방법 및 장치
US10080231B2 (en) * 2015-06-16 2018-09-18 Avaya Inc. Channel bandwidth optimization for dynamic network conditions
US9980156B2 (en) * 2015-07-17 2018-05-22 Altiostar Networks, Inc. Optimization of downlink throughput
US10505984B2 (en) 2015-12-08 2019-12-10 A10 Networks, Inc. Exchange of control information between secure socket layer gateways
US9912774B2 (en) 2015-12-22 2018-03-06 Intel Corporation Accelerated network packet processing
AU2017314831C1 (en) * 2016-08-26 2023-01-05 Akili Interactive Labs, Inc. Cognitive platform coupled with a physiological component
JP6697990B2 (ja) * 2016-09-16 2020-05-27 ルネサスエレクトロニクス株式会社 半導体装置
WO2018109531A1 (en) 2016-12-15 2018-06-21 Nokia Technologies Oy Method and apparatus for tunnel endpoint ip address selection in a network environment
US20180212885A1 (en) 2017-01-20 2018-07-26 Google Inc. Device and method for scalable traffic shaping at a receiver with a time-indexed data structure
US11381509B2 (en) 2017-03-17 2022-07-05 Citrix Systems, Inc. Increased packet scheduling throughput and efficiency using úber batching
US10268464B2 (en) 2017-07-07 2019-04-23 Intel Corporation Technologies for network application programming with field-programmable gate arrays
WO2019046603A1 (en) 2017-08-31 2019-03-07 Pensando Systems Inc. METHODS AND SYSTEMS FOR MANAGING NETWORK DIMENSIONS
US10104039B1 (en) 2017-09-28 2018-10-16 Cloudflare, Inc. Establishing and using a tunnel from an origin server in a distributed edge compute and routing service
US12015722B2 (en) 2017-12-29 2024-06-18 Pensando Systems, Inc. Methods and systems for cryptographic identity based network microsegmentation
CN112866127B (zh) * 2018-02-14 2022-12-30 华为技术有限公司 一种分组网络中控制流量的方法及装置
CA3091265A1 (en) 2018-02-22 2019-08-29 Michael Brian Galles Programmable computer io device interface
US11108855B2 (en) * 2018-04-09 2021-08-31 Clostra, Inc. Newnode: decentralized content distribution network
WO2019209181A1 (en) 2018-04-24 2019-10-31 Skylab Networks Pte. Ltd. System and method for accelerating data delivery
US10880206B2 (en) 2018-06-13 2020-12-29 Futurewei Technologies, Inc. Multipath selection system and method for datacenter-centric metro networks
CN108965322B (zh) * 2018-08-14 2020-07-17 清华大学 空间网络传输控制协议
US11212227B2 (en) 2019-05-17 2021-12-28 Pensando Systems, Inc. Rate-optimized congestion management
US11153221B2 (en) 2019-08-28 2021-10-19 Pensando Systems Inc. Methods, systems, and devices for classifying layer 4-level data from data queues
US11838222B2 (en) 2019-12-21 2023-12-05 Western Digital Technologies, Inc. In-line data identification on network
US11394700B2 (en) 2020-01-31 2022-07-19 Pensando Systems Inc. Proxy service through hardware acceleration using an IO device
US11431681B2 (en) 2020-04-07 2022-08-30 Pensando Systems Inc. Application aware TCP performance tuning on hardware accelerated TCP proxy services
US11588734B2 (en) 2020-04-28 2023-02-21 Pensando Systems Inc. Systems for providing an LPM implementation for a programmable data plane through a distributed algorithm

Also Published As

Publication number Publication date
EP3970322A4 (en) 2022-09-14
KR20220007698A (ko) 2022-01-18
US11212227B2 (en) 2021-12-28
EP3970322A1 (en) 2022-03-23
CN115208828A (zh) 2022-10-18
IL288030A (en) 2022-01-01
CN114145001B (zh) 2022-08-09
US20220070097A1 (en) 2022-03-03
CA3139533C (en) 2023-08-01
CN114145001A (zh) 2022-03-04
EP3970322B1 (en) 2024-07-24
KR102385762B1 (ko) 2022-04-11
CA3139533A1 (en) 2020-11-26
WO2020236599A1 (en) 2020-11-26
US20200366608A1 (en) 2020-11-19
US11936561B2 (en) 2024-03-19
IL288030B (en) 2022-10-01
IL288030B2 (en) 2023-02-01
EP4415332A3 (en) 2024-10-23
EP4415332A2 (en) 2024-08-14

Similar Documents

Publication Publication Date Title
KR102385762B1 (ko) 속도 최적화된 정체 관리
Al-Saadi et al. A survey of delay-based and hybrid TCP congestion control algorithms
Devkota et al. Performance of quantized congestion notification in TCP incast scenarios of data centers
US20060050640A1 (en) Method and apparatus for network congestion control using queue control and one-way delay measurements
Zhang et al. Tuning the aggressive TCP behavior for highly concurrent HTTP connections in intra-datacenter
Zhang et al. Adaptive-acceleration data center TCP
Lu et al. FAMD: A Flow-Aware Marking and Delay-based TCP algorithm for datacenter networks
US9769695B2 (en) Adaptive quality of service for wide area network transport
Šošić et al. Resolving poor TCP performance on high-speed long distance links—Overview and comparison of BIC, CUBIC and Hybla
Chen et al. Fluid-flow Analysis of TCP Westwood with RED
Shan et al. Micro-burst in data centers: Observations, implications, and applications
Wu et al. Sync-tcp: A new approach to high speed congestion control
Lovewell et al. Packet-scale congestion control paradigm
Asmaa et al. EC-elastic an explicit congestion control mechanism for named data networking
Li TCP FlexiS: A New Approach to Incipient Congestion Detection and Control
Huang et al. Tuning the aggressive TCP behavior for highly concurrent HTTP connections in data center
Tahiliani et al. Tcp congestion control in data center networks
Jaiswal et al. A comparative performance analysis of TCP congestion control algorithm: elastic TCP vs. e-Elastic TCP
Das et al. A Dynamic Algorithm for Optimization of Network Traffic through Smart Network Switch Data Flow Management
Pawar et al. A survey on congestion notification algorithm in data centers
Misund Rapid acceleration in TCP Prague
Zhang et al. Fast fairness convergence through fair rate estimation in Variable-structure congestion Control Protocol
Dahiya et al. Queuing Delay Assessment (STUDY OF End to End Congestion Control-LEDBAT)
Pravinbahi et al. TCP M-Start: A New Slow Start Method of TCP to Transfer Data Over Long Fat Pipe Network.
Tekala et al. Throughput analysis of Scalable TCP congestion control

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230508

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230508

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20230510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240809

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240930