这方面可以参考论文"TAS: TCP Accleration as an OS Service" 。
4、TCP offload
内核消耗性能的地方主要有如下四个方面:
文章插图
目前TCP offload常用的功能是TCP/IP checksum offload和TCP segmentation offload,主要是解决上面第二个问题 。
其它问题需要更加强大的网卡支持,这方面可以参考"https://www.dell.com/downloads/global/power/1q04-her.pdf" 。
"TCP Offload Engines"论文中描述了网络应用内存拷贝的情况,具体参考下图 。
文章插图
不管是发送路径还是接收路径,系统存在大量内存拷贝,直接影响了TCP/IP协议栈性能,可以利用TCP offload功能,NIC直接拷贝到应用的buffer中去,减少拷贝次数,从而提升性能 。
TCP offload可能是未来的趋势,部署方便,代价小,是非常值得关注的一个方向 。
5、用户态TCP协议
用户态的协议栈在下列场合比较有用:
文章插图
是否要采用用户态TCP协议栈,可以参考"https://blog.cloudflare.com/why-we-use-the-linux-kernels-tcp-stack/".
6、总结
TCP加速是一个很大的领域,这方面应用得好,可以极大提升程序的性能,因此性能优化不要忽视这方面内容 。
推荐阅读
- 网络七层模型与TCP/UDP,再给你们普及一下
- Android网络编程-TCP/IP协议
- 练习太极拳益处多 加速血液循环
- TCP报文发送的那些事
- iPhone用户虽然多,但是知道这些功能的不多,全是干货很实用
- 两大优势助力环兴堂武夷岩茶加速扩张
- 最全的茶知识点纯干货建议收藏
- 开网店卖海鲜怎么样 做海鲜干货生意利润
- 泡脚之后心跳加速 泡完脚后心跳会加快吗
- 六大茶类洗茶常识(纯干货