DPDK如何在十五年间重塑高速网络处理从内核旁路到用户态数据平面的技术博弈
2010年,Intel工程师Venky Venkatesan面对一个困扰网络设备厂商多年的问题:随着万兆以太网(10GbE)的普及,传统Linux内核网络栈的处理能力已经捉襟见肘。一颗CPU核心每秒只能处理不到两百万个最小尺寸的TCP包,而一张10G网卡理论上可以灌入14.88 Mpps(packets per second)的流量。这个吞吐量鸿沟并非来自硬件瓶颈,而是软件架构的历史包袱。 ...
2010年,Intel工程师Venky Venkatesan面对一个困扰网络设备厂商多年的问题:随着万兆以太网(10GbE)的普及,传统Linux内核网络栈的处理能力已经捉襟见肘。一颗CPU核心每秒只能处理不到两百万个最小尺寸的TCP包,而一张10G网卡理论上可以灌入14.88 Mpps(packets per second)的流量。这个吞吐量鸿沟并非来自硬件瓶颈,而是软件架构的历史包袱。 ...
1999年,当InfiniBand Trade Association成立时,很少有人预料到这项技术会在二十年后成为人工智能训练网络的核心基础设施。RDMA(Remote Direct Memory Access,远程直接内存访问)从一个旨在替代PCI总线的技术愿景,演变成了现代数据中心不可或缺的性能加速器。 ...
一个承载每秒百万级请求的消息队列系统,工程师在技术选型时毫不犹豫地选择了共享内存——因为大家都知道共享内存是最快的IPC机制。三个月后,生产环境出现诡异的数据竞争问题,调试了两周才发现是同步原语使用不当。最终不得不重构,改用消息队列,性能下降了30%,但系统终于稳定了。 ...
1995年,一名程序员在测试文件服务器时发现了一个令人困惑的现象:服务器CPU利用率高达80%,但实际的数据传输速度却远低于硬件理论带宽。追踪后发现,超过60%的CPU时间花在了同一个操作上——memcpy()。 ...