TCP 与 CPU 架构发展史

Posted dog250

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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。

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

以上是关于TCP 与 CPU 架构发展史的主要内容,如果未能解决你的问题,请参考以下文章

Intel CPU 微架构的演进与发展

Intel CPU 微架构的演进与发展

Intel CPU 微架构的演进与发展

Intel CPU 微架构的演进与发展

CPU处理器架构之争系列(一):英特尔经典x86架构

手机CPU知识扫盲:谈谈手机CPU架构与原理 (全