支撑着几乎整个互联网和大部分云计算的 TCP 协议,可能并不适合新兴的 AI 工作负载——这是斯坦福大学荣休教授 John Ousterhout 的观点。他的解决方案,是力推一个叫 Homa 的新协议。

TCP 做了那么多了不起的事,但它并不适合数据中心。Ousterhout 在最近的 AI Engineer World’s Fair 演讲中这样直言。抛弃 TCP 听起来是个艰巨任务,毕竟全球都依赖它;但 Ousterhout 告诉 The Register,把 Homa 加进网络其实相当简单:从 GitHub 源码编译,把模块装进客户端和服务器的 Linux 内核,无需重启。
Homa 与 TCP 并行工作,所以你可以逐步把应用从 TCP 迁移到 Homa,而且运行 Homa 甚至能让剩下的 TCP 应用也跑得更快。Homa 是对网络拥塞管理方式的一次全新重想。协议的工作始于 2019 年发表的博士论文,作者 Behnam Montazeri 现在是谷歌员工工程师;Ousterhout 退休后把推广 Homa 当成了自己的人生使命。
Homa 与 TCP 最大的区别,在于它是基于消息而非流的:和远程过程调用(RPC)类似,Homa 的消息长度是显式定义的。与 TCP 不同,Homa 让接收方来管理拥塞控制——接收方收到第一个数据包时,就知道有多少数据要来,可以显式调度数据包的发送时机,并用最短剩余处理时间(SRPT)算法优先处理短消息。
这套机制把短消息的延迟降低了一个数量级:在 100Gbps 网络 80% 利用率下,短消息的 p99 延迟 Homa 只有 92 微秒,比 TCP 的 1.2 毫秒快了 13 倍;即使是最长的消息,Homa 也快两倍。目前 Ousterhout 正在起草 IETF 标准化文档,并推进把 Homa 合入 Linux 内核;今年 3 月,协议已经反向移植到红帽企业 Linux 8 和 9.5。他还在帮大公司评估适用性,目前正与一家大型金融服务公司做原型。
当然,不是所有人都赞成为一点延迟问题就抛弃 TCP。知名网络架构师 Ivan Pepelnjak 2023 年写过一篇尖锐的立场文章,质疑 Ousterhout 对 TCP 性能的描述,批评 Homa 是在为一个不存在的问题找答案。不过,被 TCP 惹恼的不只是 AI 社区——在高性能数据库领域,人们已经用 DPDK 绕过内核协议栈来提速。








苏公网安备32021302001419号