CUBIC是一個為具有高頻寬和高延遲的長胖網路(LFN)最佳化的TCP擁塞控制實現。[1]

它相比BIC TCP英語BIC TCP更加平緩和具有數學上的意義,其中的窗口大小是一個自上次擁塞事件以來的時間的三次函式拐點被設定為擁塞事件發生時的窗口大小。因為它是一個三次函式,所以它有兩個階段進行窗口增加。第一部分是一個凹函式,將窗口大小快速提升至最後擁塞事件發生時的大小。第二個部分為一個凸函式,CUBIC探針以較緩和的速度尋求更大的頻寬。CUBIC會在凹凸增長區域花費大量時間,以允許網路在CUBIC開始尋求更多頻寬前達到穩定。

CUBIC與標準的TCP流的另一個主要區別是,它不依賴於ACK的接收來增加窗口大小,CUBIC的窗口大小隻依賴於最後的擁塞事件。在標準的TCP中,極短的RTT將更快的收到ACK,它們的擁塞窗口將比其他較長RTT的流更快增長。CUBIC使資料流之間更加公平,因為窗口的增長與RTT(往返時延)無關。

CUBIC TCP在Linux核心2.6.19及更高版本中被實現並預設使用。

參見

參考資料

  1. ^ [1]頁面存檔備份,存於網際網路檔案館) S. Ha, I. Rhee, & L. Xu, "CUBIC: A New TCP-Friendly High-Speed TCP Variant", PDF copy of journal article

外部連結