FPGA上数据包去解析器的设计原则
硬件体系结构
2021-03-16 v1 网络与互联网体系结构
摘要
P4语言极大地改变了网络领域,因为它允许快速描述和实现新的网络应用。尽管可以用P4语言描述各种各样的应用,当前的可编程交换架构对P4程序施加了显著约束。为弥补这一不足,FPGA已被探索作为P4应用的潜在目标。P4应用使用三种抽象描述:数据包解析器、匹配动作表和数据包去解析器,后者利用匹配动作表的结果重新组装输出数据包。虽然FPGA上数据包解析器和匹配动作表的实现已在文献中被广泛覆盖,但针对数据包去解析器尚未提出通用的设计原则。事实上,在FPGA上实现高速高效的去解析器仍是一个开放问题,因为它需要大量互连且架构必须针对特定P4程序定制。因此,在若干将P4应用实现于FPGA的工作中,去解析器消耗了芯片资源的很大比例。为此,本文通过提出FPGA上高效高速去解析器的设计原则来解决该问题。作为成果,我们引入了一个从P4程序生成高效、与厂商无关的去解析器架构的工具。我们的设计已通过基于cocotb的框架进行验证和仿真。所得架构在Xilinx Ultrascale+ FPGA上实现,支持超过200 Gbps的吞吐率,同时与其他方案相比将资源使用减少了近10倍。
引用
@article{arxiv.2103.07750,
title = {Design Principles for Packet Deparsers on FPGAs},
author = {Thomas Luinaud and Jeferson Santiago da Silva and J. M. Pierre Langlois and Yvon Savaria},
journal= {arXiv preprint arXiv:2103.07750},
year = {2021}
}
备注
Presented at ISFPGA'21, 2021 Source code available at : https://github.com/luinaudt/deparser/tree/FPGA_paper