Skip to main content
QUICK REVIEW

[论文解读] Isolation mechanisms for high-speed packet-processing pipelines

Tao Wang, Xiangrui Yang|arXiv (Cornell University)|Jan 29, 2021
Software-Defined Networks and 5G参考文献 55被引用 12
一句话总结

本文提出Menshen,一种基于可重构匹配表(RMT)架构的轻量级隔离机制,适用于高速数据包处理流水线。通过结合空间分区与硬件重叠原语,Menshen使多个独立开发的数据包处理模块能够在同一设备上并行运行且互不干扰,支持动态重配置而不影响正在运行的模块。该系统已在FPGA平台上实现,并在1 GHz时钟频率下证明适用于ASIC,仅增加6%的面积开销。

ABSTRACT

Data-plane programmability is now mainstream. As we find more use cases, deployments need to be able to run multiple packet-processing modules in a single device. These are likely to be developed by independent teams, either within the same organization or from multiple organizations. Therefore, we need isolation mechanisms to ensure that modules on the same device do not interfere with each other. This paper presents Menshen, an extension of the Reconfigurable Match Tables (RMT) pipeline that enforces isolation between different packet-processing modules. Menshen is comprised of a set of lightweight hardware primitives and an extension to the open source P4-16 reference compiler that act in conjunction to meet this goal. We have prototyped Menshen on two FPGA platforms (NetFPGA and Corundum). We show that our design provides isolation, and allows new modules to be loaded without impacting the ones already running. Finally, we demonstrate that feasibility of implementing Menshen on ASICs by using the FreePDK45nm technology library and the Synopsys DC synthesis software, showing that our design meets timing at a 1GHz clock frequency and needs approximately 6% additional chip area. We have open sourced the code for Menshen's hardware and software at https://isolation.quest/.

研究动机与目标

  • 为解决高速可编程网络设备中运行多个独立开发的数据包处理模块时日益增长的隔离需求。
  • 实现多个模块在单一RMT流水线上共存,且在行为、吞吐量或延迟方面互不干扰。
  • 支持单个模块的动态重配置,而不会干扰其他正在运行的模块。
  • 设计轻量级、硬件高效的隔离机制,适用于FPGA和ASIC。
  • 扩展P4-16编译器,原生支持在RMT流水线上部署多模块。

提出的方法

  • 使用空间分区技术,为不同模块分配独立的流水线资源(如匹配-动作表)。
  • 引入小型配置重叠表,用于存储共享的、不可分区资源(如密钥提取单元)的模块特定设置。
  • 使用数据包的模块标识符作为索引,动态查询重叠表以在流水线处理过程中选择对应配置。
  • 在关键流水线阶段集成一组轻量级硬件原语,以在数据平面级别强制实施隔离。
  • 扩展开源P4-16编译器,生成支持多模块及其隔离原语的代码。
  • 在两个FPGA平台(NetFPGA和Corundum)上验证设计,并使用FreePDK45nm和Synopsys DC证明ASIC可行性。

实验结果

研究问题

  • RQ1是否可以在不依赖操作系统或虚拟机监控器的情况下,有效强制实施高速RMT流水线中的隔离?
  • RQ2如何安全地在多个模块之间共享共享的、不可分区的资源(如密钥提取单元)?
  • RQ3是否可以实现模块的动态更新,而不会干扰其他正在运行的模块?
  • RQ4在FPGA和ASIC平台上实现隔离机制的性能和面积开销是多少?
  • RQ5是否可行将P4-16编译器扩展以原生支持多模块部署及隔离?

主要发现

  • Menshen成功在RMT流水线上强制实施了共驻数据包处理模块之间的隔离,确保行为、吞吐量和延迟无相互干扰。
  • 该系统支持单个模块的动态重配置,而不会影响其他运行中的模块,实现无中断更新。
  • 该设计已在两个开源FPGA平台(NetFPGA和Corundum)上成功原型化。
  • 使用FreePDK45nm和Synopsys DC进行ASIC综合,确认设计在1 GHz时钟下满足时序要求,仅增加约6%的芯片面积。
  • P4-16编译器扩展实现了对多模块编译和隔离原语集成的原生支持。
  • Menshen的软硬件开源实现已发布,地址为 https://isolation.quest/。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。