点击上方蓝字
关注我们吧
作者:
Wang, Xiao;Yan, Zhirun(按姓氏首字母排列)
简介
VXLAN是网络虚拟化场景中广泛部署的隧道协议,OVS-DPDK中已经支持VXLAN类型的VTEP (virtual tunnel end point)。VXLAN隧道在数据面引入了报文封装/解封装的操作,且在ingress方向由于VXLAN报文携带两层L2-L4 header,OVS数据面需要通过recirculation机制对报文一层一层解析处理,给整体的转发流程带来了很大的overhead。Intel®E810 网络适配器具有非常灵活的报文解析、exact match、wildcard match模块, 可以广泛地支持多种网络协议,包括隧道协议例如VXLAN、GRE等。E810的可编程packet pipeline可以用于全面匹配VXLAN报文外层和内层中的各个协议字段,卸载OVS-DPDK数据面中大量的包头解析、流表查找操作,显著降低网络隧道所引入的overhead。结合E810硬件加速技术和一系列的软件优化手段,OVS-DPDK在VXLAN场景下的性能得到大幅提升。
一
E810 programmable pipeline overview
E810 pipeline的各个包处理阶段都是可以灵活配置的,parser可以通过parse graph解析出数据包的packet type, 为每个packet生成context metadata, 其对报文的解析深度可达512B,足够覆盖典型的隧道协议报文和各种复杂协议报文。DDP (dynamic device personalization) 可以针对特定应用场景进一步扩展E810 parser支持的协议。基于parser的结果,相应的profile会从报文中提取各个关键字段作为field vector用于后续Switch, ACL和Classification Filer的lookup key。E810 ACL基于TCAM (ternary content addressable memory) 可支持任意bit通配查找,flow director模块提供16K的规则容量,其匹配域可以覆盖隧道报文内外双层