Skip to main content
QUICK REVIEW

[论文解读] Open Packet Processor: a programmable architecture for wire speed platform-independent stateful in-network processing

Giuseppe Bianchi, Marco Bonola|arXiv (Cornell University)|May 6, 2016
Software-Defined Networks and 5G参考文献 39被引用 37
一句话总结

本文提出开放数据包处理器(OPP),一种基于扩展有限状态机(XFSM)作为底层编程抽象的平台无关、线速状态化网络内数据包处理架构。在通用硬件上实现的OPP支持流级状态跟踪和确定性、有界周期处理,证明了其在无需依赖外部控制器的情况下,实现实时可编程网络功能的可行性。

ABSTRACT

This paper aims at contributing to the ongoing debate on how to bring programmability of stateful packet processing tasks inside the network switches, while retaining platform independency. Our proposed approach, named "Open Packet Processor" (OPP), shows the viability (via an hardware prototype relying on commodity HW technologies and operating in a strictly bounded number of clock cycles) of eXtended Finite State Machines (XFSM) as low-level data plane programming abstraction. With the help of examples, including a token bucket and a C4.5 traffic classifier based on a binary tree, we show the ability of OPP to support stateful operation and flow-level feature tracking. Platform independence is accomplished by decoupling the implementation of hardware primitives (registries, conditions, update instructions, forwarding actions, matching facilities) from their usage by an application formally described via an abstract XFSM. We finally discuss limitations and extensions.

研究动机与目标

  • 解决OpenFlow静态匹配/动作模型之外,对灵活、实时、状态化数据包处理在网络交换机中的需求。
  • 实现复杂网络功能(如流量分类与速率控制)的平台无关、线速实现。
  • 通过抽象的XFSM模型将硬件原语实现与应用逻辑解耦,确保在不同交换机架构间的可移植性。
  • 通过将状态化处理直接嵌入数据平面,克服基于控制器的状态管理在延迟与可扩展性方面的局限性。
  • 为未来可扩展的数据平面编程框架提供一个实用、已硬件原型化的基础。

提出的方法

  • 基于扩展有限状态机(XFSM)设计硬件架构,支持由数据包到达触发的状态转换。
  • 实现专用硬件模块用于匹配、条件评估、更新逻辑和转发操作,抽象低级原语。
  • 使用TCAM-based流表编码XFSM状态转换,实现快速、并行的查找与更新操作。
  • 通过编程技术将查找与更新功能解耦,支持跨流状态处理,并通过异步事件支持实现。
  • 在更新逻辑模块中集成ALU以支持复杂状态更新,未来可扩展至条件评估。
  • 在通用FPGA硬件上原型化设计,以验证线速性能与有界周期延迟。

实验结果

研究问题

  • RQ1平台无关、线速的数据平面架构能否在不依赖外部控制器的情况下支持复杂的状态化数据包处理?
  • RQ2扩展有限状态机(XFSM)如何有效映射到硬件架构,以实现具有有界延迟的网络内处理?
  • RQ3在保持性能与确定性的同时,状态化处理在多大程度上可与特定硬件平台解耦?
  • RQ4时钟触发、基于数据包到达的状态转换模型在实时网络功能中存在哪些实际限制?
  • RQ5XFSM抽象如何扩展以支持高级功能,如定时器、流水线操作与多阶段处理?

主要发现

  • OPP架构成功在通用FPGA硬件上实现了线速、平台无关的状态化数据包处理,实现确定性、有界周期操作。
  • 原型验证了使用XFSM作为复杂网络功能(如令牌漏桶速率控制与基于C4.5的流量分类)底层编程抽象的可行性。
  • 通过解耦的查找与更新功能,支持跨流状态处理,实现在主流水线中无需为每一流存储状态即可实现跨流协调。
  • 更新逻辑模块中支持可编程ALU,允许复杂状态更新,但当前条件评估仍局限于更新阶段。
  • 缺乏原生定时器支持,且由于并行执行导致流水线更新受限,被识别为需未来扩展的关键限制。
  • OPP为可编程数据平面提供了一条切实可行的渐进式路径,可与P4和OpenFlow等现有工作互补,并可作为高级语言的潜在编译目标。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

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