TCP 与 CPU 架构发展史

周五下班前跟同事聊了几句,还是关于 TCP 协议的。

诞生于 1970s 的 TCP 协议,在 1981 年作为 TCP/IPv4 被标准化,其实质直到今天都没有发生改变,按序,可靠,其间有过一些涉及效率的修补。

另一方面,CPU 架构从 1970s 到今天不知迭代了多少代。这是一个有趣的类比。

把一个程序看作一条指令流是合适的,CPU 按序执行指令。CPU 架构的历史演进大家都知道,加入了超标量,流水线,多核。为了避免流水线停顿(HoL),引入了乱序执行,将指令分成不相干的部分,乱序执行,最后再 reorder。

日光之下无新事。TCP 按照 CPU 架构的历史走一遍就是了。

程序视角看起来还是按序执行的,可 CPU 确实乱序执行微指令,TCP 应用看起来还是按照到达的一条流,但网络却可以乱序传输。

同一条 TCP 流无法利用 ECMP,不过目前的 Multi-Path TCP 似乎有这个方向了,但粒度还是太粗。TCP 的停顿来自于保序引入的 HoL,学 CPU 乱序执行的样子引入乱序传输就行了。一旦支持乱序传输,包粒度 ECMP 即自然而然。

可直到今天,TCP over IP 依然是最短路径优先逐跳路由,同流同路径,这就好比古老的指令流跑在现代 CPU 上,造成资源大量闲置。无论是端资源,还是网络转发资源。

TCP over IP 按照 CPU 架构发展史的路线再来一遍,没有空闲资源,最小化等待,就是高尚的,当然,名字可以不叫 TCP。

浙江温州皮鞋湿,下雨进水不会胖。

原文链接: https://blog.csdn.net/dog250/article/details/127946909

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    TCP 与 CPU 架构发展史

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/405355

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年4月26日 上午9:09
下一篇 2023年4月26日 上午9:09

相关推荐