中文

使用 P4 暂存数据包载荷

网络与互联网体系结构 2020-11-03 v2

摘要

网络功能 (NF) 部署存在链路良好吞吐量低的问题,因为防火墙等常用 NF 仅处理包头而接收和发送完整数据包。结果,不必要的包载荷无谓消耗链路带宽。我们提出 PayloadPark,通过将包载荷临时暂存在数据面可编程交换机的状态内存中来提高良好吞吐量。PayloadPark 仅将包头转发给 NF 服务器,从而节省交换机与 NF 服务器间带宽。PayloadPark 是一种透明的网内优化,补充了端主机上优化 NF 性能的现有方法。我们使用 P4 语言在 Barefoot Tofino ASIC 上原型实现了 PayloadPark。当部署在机架顶部交换机时,我们的原型可用少于 40% 的片上内存资源服务多达 8 台 NF 服务器。该原型为防火墙和 NAT NF 提升 10-36% 良好吞吐量,为防火墙 -> NAT NF 链提升 10-26%,且不损害延迟。由于交换机与 NF 服务器间数据传输减少,原型还将 NF 服务器上 PCIe 总线负载降低 2-58%。对于具有数据中心网络流量特征的工作负载,PayloadPark 在防火墙 -> NAT -> LB NF 链下提供 13% 良好吞吐量增益且无延迟惩罚。在相同设置下,我们使用包重循环可进一步提升良好吞吐量增益至 28%。

关键词

引用

@article{arxiv.2006.05182,
  title  = {Parking Packet Payload with P4},
  author = {Swati Goswami and Nodir Kodirov and Craig Mustard and Ivan Beschastnikh and Margo Seltzer},
  journal= {arXiv preprint arXiv:2006.05182},
  year   = {2020}
}