SPONSORED

TCP CUBIC(てぃーしーぴー きゅーびっく)

最終更新:2026/4/28

TCP CUBICは、TCP輻輳制御アルゴリズムの一つであり、ネットワークの帯域幅を効率的に利用するために設計された。

別名・同義語 キュービックTCP 輻輳制御

ポイント

CUBICは、ウィンドウサイズの増加を立方関数的に行うことで、ネットワークの利用可能な帯域幅を迅速に探索し、高いスループットを実現する。

TCP CUBICとは

TCP CUBICは、2006年に発表されたTCP輻輳制御アルゴリズムです。従来のTCP RenoやTCP NewRenoといったアルゴリズムと比較して、高帯域幅・高遅延ネットワーク環境において、より高いスループットと公平性を実現するように設計されています。

CUBICの動作原理

CUBICの基本的な考え方は、輻輳ウィンドウ(cwnd)の増加量を、ネットワークの利用可能な帯域幅に応じて調整することです。具体的には、cwndの増加量を立方関数的に変化させます。cwndが小さい間は急激に増加させ、cwndが大きくなるにつれて増加量を抑制することで、ネットワークに過剰な負荷をかけずに、効率的に帯域幅を探索します。

CUBICは、以下の3つのフェーズで動作します。

  1. プロビングフェーズ: cwndが小さい場合に、cwndを急激に増加させ、ネットワークの利用可能な帯域幅を探索します。
  2. 成長フェーズ: cwndがある程度大きくなると、cwndの増加量を徐々に抑制し、ネットワークの負荷を調整します。
  3. バックオフフェーズ: 輻輳が発生した場合、cwndを減少させ、輻輳を回避します。

CUBICの利点

  • 高いスループット: 高帯域幅・高遅延のネットワーク環境において、高いスループットを実現できます。
  • 高い公平性: 複数のTCP接続が共存する場合でも、公平に帯域幅を分配できます。
  • 実装の容易さ: 比較的シンプルなアルゴリズムであり、実装が容易です。

CUBICの欠点

  • 初期遅延: ネットワークの開始時に、cwndが小さい間はスループットが低い場合があります。
  • 輻輳回避の遅延: 輻輳が発生した場合、cwndの減少に時間がかかる場合があります。

CUBICの利用状況

現在、多くのオペレーティングシステムやネットワーク器で、デフォルトのTCP輻輳制御アルゴリズムとしてCUBICが採用されています。Linuxカーネルでは、2.6.19以降のバージョンでCUBICがデフォルトとなっています。

SPONSORED