英特尔康海涛:帮助编程网络的P4和IPDK

5月24日,由江苏省未来网络创新研究院主办、SDNLAB社区承办的2022网络开源技术生态峰会(网上)隆重开幕。在P4技术与应用论坛上,英特尔科技部技术总监康海涛分享了P4和IPDK帮助编程网络的主题演讲。

康海涛首先介绍了英特尔在互联网领域的愿景。在未来的数据中心,网络将发挥越来越重要的作用,主要是连接计算能力和存储,包括CPU、GPU、面向人工智能的特殊处理器,以及基于FPGA和FPGAASIC的加速器。在服务器上,有各种标准的网卡,包括英特尔刚刚推出的IPU(面向基础设施的处理单元)。在此之前,英特尔已经推出了基于FPGA的IPU,以及基于ASIC支持P4的IPUmoutevans,由谷歌联合设计。

图片

基于P4可编程的英特尔Tofino交换芯片系列也在不断更新,Tofino1的处理能力从1.8T到6.4T,Tofino2的处理能力为12.8T,Tofino3的处理能力最大可达25.6T。与现有的传统交换芯片相比,Tofino交换芯片引入了额外的P4,可以在不损失功耗性能和成本的情况下为最终用户带来可编程性。英特尔还投资了10多年的硅光技术,主要面向100g、400g、硅光模块和高带宽的硅光引擎。上图是英特尔面向网络的产品线示意图。

此外,英特尔还在优化端到端的网络可视化、端到端的拥塞控制、流量控制和面向下一代的可靠传输协议等各种网络产品。

P4

P4(ProgpentocelPacketProcesors)是一种语言,用户可以基于P4代码实现现有的网络协议,或者对现有的网络协议进行一些增强和扩展,甚至可以根据用户自身的需要实现一个全新的网络协议。包处理器不仅包括基于Tofino的以太网络可编程芯片,还包括各种智能网卡、IPU、DPU和在应用层上运行的虚拟交换解决方案(如OVS、DPDK、EB)。下图是P4代码片段。

图片

P4是一个真正开放和开源的生态系统,用户可以使用P4来实现基于自身业务需求的数据表面的转发。用户可以使用P4进行快速和简单的迭代开发,以实现他们的业务逻辑,并保留一些与他们的业务逻辑相关的差异。

接下来,康海涛介绍了英特尔基于P4的一些创新。PINS是一个集成的P4网络协议堆栈。主要目标是将SDN和基于P4的可编程带到SONIC网络操作系统。SONIC是一个开放的操作系统,但是如果你想在SONI框架上引入一些新功能,用户必须定义整个管理模型,包括数据链的实现和SAI的配置模型,这个过程将是漫长的。

引入P4后,用户可以快速引入一些新功能。PINS可以让每个人从现有的传统操作系统顺利转移到SDN领域。用户的第一步是使用SONIC作为本地控制平面进行部署,然后在业务网络演练过程中通过P4进行部分功能SDN。最后,如果用户需要,他们可以将整个网络扩展到SDN路径。

图片

上图是一个典型的PINS介绍。在SONI的基础上,PINS使用引入的OPEnConfig作为固定功能配置。更重要的是,它引入了P4和P4Runtime。它可以使用P4来描述SONI。SAI已经定义了一条流水线。P4定义后,P4Runtime可以用来管理现有SAI定义的表格和对象。PINS可以灵活地引入一些新的功能,以支持用户的差异化。此外,由于P4具有非常好的协议无关性,即使一个设备已经在线部署,软件升级和扩展仍然可以快速不间断地实现业务。

下图显示了PINS的整体结构。PINS将P4Runtime模块引入到SONic中,以处理从远端控制器发送的P4Runtime的各种对象和源数据。英特尔在Applicationdb中添加了P4Runtime,以管理各种P4对应对象。Applicatiationdb和Asicdb之间的桥梁可以通过Asicd配置到Asicdb中,然后通过标准SDK接口将其发送到相应的底层平台。同时,P4Orch也可以管理一些状态通知。

图片

自推出以来,PINS一直得到了整个行业的认可。现在有许多项目正在并行开发中。路由器多协议平台可以基于PINS进行访问,包括面向固体网络的BNG和面向5g访问网络的UPF功能。基于PINS架构的SONIC也可以很好地支持虚拟网络。

IPDK

IPDK是一个开源的驱动程序和API框架,与制造商无关。它可以管理由CPU、IPU、DPU或交换机构构建的基础设施。IPDK可以使用包括DPDK、SPDK、P4、SONIC和PINS在内的一些现有工具和平台来满足不同基础设施的需要。这些基础设施的应用包括K8S对应的网络虚拟化、存储虚拟化和容器网络。IPDK还可以支持各种工作负载的卸载和加速,包括防火墙、入侵检测系统、5g、边缘计算和网络可视化加速。基于IPDK框架,基础设施应用程序的用户可以根据不同的功能和性能要求,在不同能力的平台之间进行无缝切换。

图片

IPDK是一个基于用例驱动的框架。基于对业务逻辑和框架的不同需求,IPDK的开发和管理遵循开源开放的标准,可以简化框架的定义,优化IPDK框架和底层不同的转发平台。此外,它还提供了一些用户可以直接运行来评估IPDK的预编容器。

IPDK包括两个主要的开放接口,一个是Infrastructicationinterface(基础设施应用接口),另一个是targeabstraceinterface(TAI)(目标设备抽象接口)。基础设施应用接口是IPDK的北向接口,代表P4Runtime、OpenConfig和RPC面向SPDK协议的支持不同的RPC接口。目标设备的抽象接口为南向接口,基础设施应用程序可通过此接口管理调度设备资源。

可编程网络平台超融合。

超级集成可编程网络平台将Server和Switch集成在一起,包括一个完整的可编程架构,它可以运行IPDK或PINS/SONIC,从服务器级到强CPU,Tofino的交换芯片,以及可选的FPGA或IPU。整个平台具有很好的灵活性,可用于计算网络、云网络集成、边缘计算等场景。

从这个角度来看,我们呢!

最后,康海涛希望英特尔能够为用户带来更多的业务价值,提供网络产品线和各种开放平台。

© 版权声明
THE END
喜欢就支持以下吧
点赞12
分享
相关推荐
  • 暂无相关文章
  • 评论 抢沙发
    源码客的头像-源码客

    昵称

    取消
    昵称表情图片