擁塞控制演算法的評價標準

Soonyang Zhang發表於2019-06-12

 看到一篇文章覺得很有趣。在這裡做些紹介。
 擁塞控制的研究歷史悠久,部落格[11]給出了一些經典TCP擁塞控制的模擬結果,Reno,Cubic, DCTCP,BBR。[12]中是一些較老的擁塞控制演算法的模擬測試。
 但是也歷久彌新。最近幾年,學術界提出了一系列的擁塞控制演算法(評審人插言,please mention which recent proposed works)。算了,我只是寫部落格,最近確實有不少的擁塞控制演算法,PCC,COPA,DCTCP,Verus,BBR,BBRv2,C2TCP。
 於是,就有一個問題,怎麼評價一個演算法比另一個演算法優秀呢?這就是作者在[17]中要思考的問題。
 其中常用的標準就公平性:經過瓶頸鍊路中的資料流能夠平分頻寬資源。例如下圖的示意。
在這裡插入圖片描述
 目前有好幾篇文章,都給出了類似的圖例,列出reference[1-5]供參考。
 正如[10]所述,在發文章的時候,Every emerging algorithm claims to be the “state-of-the-art”。是騾是馬,拉出來測試一把,有些演算法就不甚理想。
在這裡插入圖片描述
 尋找一個絕對公平的演算法是一件很困難的事情。因為擁塞控制本身是個病態問題,並不存在一個完美的演算法。
 最近,我就在ns3平臺上測試了一些演算法。這裡給出一些結果。
 BBR
在這裡插入圖片描述
 BBRPlus
在這裡插入圖片描述
 bbrplus是一個博主的改進版本[16]。
 c2tcp
在這裡插入圖片描述
 copa
在這裡插入圖片描述
 Copa在頻寬分配公平性方面,頻寬曲線結果簡直完美。
 cubic
在這裡插入圖片描述
 elastic
在這裡插入圖片描述
 Reno
在這裡插入圖片描述
 PCC Vivace
在這裡插入圖片描述

 另外一個標準就是TCP的友好性。這句話說得太模糊了。具體點就是,新提出的擁塞控制演算法要對TCP Reno演算法友好。新演算法的資料流能和Reno流很好地分享瓶頸鍊路頻寬。BBR 演進到2.0,似乎就有這樣的目標。正如[17]所述,這個目標限制了擁塞控制的發展。用我的話就是,既然保證對Reno的友好,乾脆直接採用Reno演算法,還演進什麼呢?學術界玩的就是概念。
 所以,[17] 提出了新的評價標準:Harm。Charlie對Alice造成了一萬點傷害。

We imagine a TCP connection where Alice is video conferencing with her friend Bob. When running alone, the connection achieves 15Mbps of throughput, packets arrive with 40ms
latency, and jitter is 10ms. When Alice’s roommate Charlie starts a large file transfer, Alice’s video conference connection drops to 10Mbps of throughput, latency increases to 50ms,
and jitter increases to 15ms. Since all of these performance metrics became worse due to to Charlie’s connection, we say that Charlie’s connection caused harm to Alice’s connection

Reference:
[1] Data Center TCP
[2] MDTCP: Towards a Practical Multipath Transport Protocol for Telco Cloud Datacenters
[3] PCC: Performance-oriented Congestion Control
[4] PCC Vivace: Online-Learning Congestion Control
[5] statistical learning based congestion control for real-time video communication
[6] tcp擁塞控制vegas的數學分析
[7]Congestion Control IV: Reinforcement Learning
[8] Pantheon: the training ground for Internet congestion-control research
[9] Indigo: Empirically learned congestion control
[10] Pantheon ppt
[11] TCP擁塞控制
[12] Performance Evaluation of TCP Congestion Control Algorithms in Data Center Networks
[13] HYBRID WINDOW AND RATE BASED CONGESTION CONTROL FOR DELAY SENSITIVE APPLICATIONS
[14] Comparing Congestion Control Regimes in a Large, Fast Network
[15] 讓人們久等了的TCP BBR v2.0快要出爐了
[16] bbrplus
[17] Beyond Jain’s Fairness Index: Setting the Bar For The Deployment of Congestion Control Algorithms

相關文章