BBR是Google开源的TCP拥塞控制算法,目前已经集成到Linux内核之中,TCPA是腾讯内部使用的单边拥塞算法,目前也已经开源。本文转发下腾讯开源TCPA前做的与Google BBR的测试对比报告,据测试,TCPA加速效果比BBR加速还好。
TCPA与BBR
TCPA与BBR都是TCP拥塞控制算法,前者是前几天腾讯刚开源的,后者是Google在2016年就已经开源的,并且已经提交到了Linux内核中。
什么是TCP拥塞控制算法呢?简单点说,就是想尽一切办法利用带宽让你的VPS网络速度变快。
TCPA与BBR对比
声明:此测试报告为转载的腾讯Linux团队发布的TCPA和BBR测试对比报告,之后老王有时间也会自己折腾下做一个TCPA与BBR比较测评。
测试方案
测试时,最新的内核是4.15,为了评估TCPA版本跟BBR的性能对比,我们使用了4.15版本的BBR和我们正式发布的TCPA来进行性能对比。本测试报告,主要是通过第三方的博睿来评估在不同文件大小下,TCPA和BBR之间的性能差异。
使用第三方博睿进行测试。一共进行了2轮的测试,第一个测试周期:12.9的0点~12.11的0点,共两天。第二个测试周期12.12的0点到12.14的0点。
TCPA安装包安装后使用默认配置进行测试。最新内核BBR和标准内核均采用默认内核的配置进行测试。
3台服务器属于同一个机房,配置全国的电信(服务器属于电信运营商)测试任务进行测试。
测试结果
测试结果如下表所示:
测试说明:
- 第一轮测试(详细数据见1)和第二轮测试(详细数据见5.2)的参数配置相同。因此取其平均值作为测试结果。
- “纵向性能对比”是指,BBR默认配置,TCPA启用后默认配置时,“2次测试平均值”中, TCPA相比TCP,TCPA相比BBR的测试结果。
测试结果:
- BBR算法相比标准的TCP的cubic算法,性能提升明显。小文件差异不大;大文件的下载性能明显,约35%左右。
- TCPA的启用,外加系统参数优化后, 大小文件均比标准的TCP提升40%以上。
- TCPA的启用,外加系统参数优化后,小文件比BBR能提升40%以上,大文件比BBR能提升5%~10%。
测试详细结果
静态下载测试(第一轮)
测试周期:12.9的0点~12.11的0点,共两天。
测试任务 | 下载速度(Kb/s) | 可用性(%) | 性能提升 | 备注 | |
640KB任务 | TCPA-电信 | 2047.401 | 99.72 | ||
TCP-电信 | 1450.636 | 99.66 | 41.14% | ||
BBR-电信 | 1448.155 | 99.71 | 41.38% | ||
8MB任务 | TCPA-电信 | 2570.422 | 99.46 | ||
TCP电信 | 1768.458 | 99.43 | 45.35% | ||
BBR-电信 | 2295.64 | 99.43 | 11.97% | ||
25MB任务 | TCPA-电信 | 2769.412 | 99.02 | ||
TCP电信 | 1876.674 | 99.03 | 47.57% | ||
BBR-电信 | 2585.8 | 99.09 | 7.10% |
对于小文件(小于640KB)而言,BBR基本跟标准的TCP性能相当;而TCPA相比BBR提升了至少40%。
对于大文件(大于8MB)而言,BBR相对应标准的TCP性能提升明显,幅度在30%左右。而TCPA提升的性能更高,比BBR还有高7%~11%。
静态下载测试(第二轮)
测试周期:12.12的0点~12.14的0点,共两天。
测试任务 | 下载速度(Kb/s) | 可用性(%) | 性能提升 | 备注 | |
640KB任务 | TCPA-电信 | 2183.034 | 99.92 | ||
TCP-电信 | 1383.674 | 99.85 | 57.77% | ||
BBR-电信 | 1536.517 | 99.91 | 42.08% | ||
8MB任务 | TCPA-电信 | 2552.981 | 99.66 | ||
TCP电信 | 1626.909 | 99.63 | 56.92% | ||
BBR-电信 | 2358.646 | 99.66 | 8.24% | ||
25MB任务 | TCPA-电信 | 2713.632 | 99.5 | ||
TCP电信 | 1915.549 | 99.28 | 41.66% | ||
BBR-电信 | 2590.205 | 99.41 | 4.77% |
对于小文件(小于640KB)而言,BBR略微比标准的TCP性能好些,约10%左右。而TCPA相比BBR提升了至少40%。
对于大文件(大于8MB)而言,BBR相对应标准的TCP性能提升明显,幅度在30%左右。而TCPA提升的性能更高,比BBR还有高4%~8%。
TCPA与BBR对比总结
据腾讯内核团队的测试,不管是大文件下载还是小文件下载,TCPA都比BBR好,既然敢发出来,应该不会有什么作假的情况,不过是不是TCPA一定比BBR好,在任何情况下TCPA都比BBR好呢?等老王有时间也会发一个测试对比!
附腾讯TCPA和Google BBR加速的安装方式:
参考文章: