0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

P4和P4运行时:SDN可编程性的新视野

星星科技指导员 来源:volansys 作者:Komal Shah 2022-12-08 16:36 次阅读

在软件化时代,SDN正在展开其边界,各行各业正专注于将网络控制置于金字塔顶端 - 从复杂的硬件到软件应用程序。P4已经通过提供低至ASIC的网络可编程性来控制金字塔的底部(转发平面)。近年来,一些概念和协议也开始统治金字塔的顶端(控制平面),但有了 P4,历史似乎要改变!

网络设备控制平面

控制平面是网络设备的大脑。它具有各种应用程序,可以学习和填充数据平面定义的表。在传统的网络设备中,用于配置数据包控制移动的控制平面或软件位于同一设备上。因此,对于任何更改,网络管理员必须通过单独连接到每个设备来配置交换机。为了增加复杂性,每个芯片供应商都提供了自己的专有接口/API来控制数据平面。为了使网络管理员的生活变得轻松,目标是将网络设备的控制平面和数据平面分开。这催生了SDN(软件定义网络)技术。SDN使用软件应用程序通过集中式控制器对交换机进行编程,从而解耦控制平面和数据平面。这使得通过集中式控制器配置网络变得容易。但是,由于来自不同供应商的不同接口,不可能使用单个控制平面API来控制来自不同芯片供应商的交换机ASIC。在解决这个问题的一段时间内,引入了不同的协议/标准化来使API开源。

开放流: OpenFlow是ONF(开放网络基金会)在控制平面和数据平面之间的第一个标准开源通信协议,旨在促进SDN的采用。OpenFlow是SDN网络的解决方案,它在流量方面为控制器和交换机之间提供了标准接口。流包含以表格形式组织的匹配字段、优先级和操作。提供的API是通用的,不依赖于目标,因此适用于任何与OpenFlow兼容的控制平面软件。

SAI(交换机抽象接口): SAI提供开源标准C API对OCP(开放计算项目)正式接受的网络芯片数据平面进行编程。SAI抽象了底层芯片,因此允许任何相同的控制平面软件插入任何设备,使SAI目标独立。

为什么选择 P4 运行时?

OpenFlow和SAI存在各种限制。两者都考虑到了固定交换机的设计,这使得它在未来无法扩展到新的协议。它们与目标无关,但依赖于协议。添加新协议需要大量的时间和精力以及社区参与。SAI 专为控制平面位于交换机内的交换机而设计。两者都不能使用可编程数据平面进行自我扩展。使用P4可编程数据平面时,控制平面接口没有标准。很少有供应商开发自己的专有工具来自动生成API,这些API可以从P4程序或JSON填充表。但是,对于如何定义这些 API 没有标准。因此,p4.org 决定成立API工作组,创建独立于硅的API,用于控制交换机的转发平面。P4运行时架构使其独立于协议以及底层转发交换机。同一 API 可用于控制支持不同协议的不同交换机。P4 运行时有助于控制任何转发平面,无论是固定的、半可编程的还是完全可编程的。P4 运行时可用于任何交换机,无论是本地还是远程控制平面。它足够灵活,可以同时支持 OpenFlow API 和 SAI API。

P4运行时的功能

P4 运行时 API 支持两个主要功能:

管理匹配操作表:通过添加、删除、修改、显示匹配操作表中的条目来管理数据平面的行为

更新转发平面逻辑:使用新的 P4 代码更新 P4 可编程交换机的转发行为

SDN网络中P4运行时的架构

pYYBAGORohSAcWM5AAF3CzCdnAI237.png

图 1:不同设备的 SDN 网络中的 P4 运行时流

P4 Runtime 的架构使其足够灵活,适用于本地或远程控制平面基础设施,以及固定和可编程网络设备。

对于本地控制平面,从 P4 编译器生成的 P4 运行时 API 可以直接用于控制 ASIC,包括基于 ASIC 类型(固定或可编程)的条目编程和表创建和删除。同样,对于远程控制平面,P4 编译器生成的 P4 运行时 API 可用于通过控制平面控制交换机。P4 编译器将根据控制平面的需要生成架构。

对于固定功能开关,可以首先使用 P4 语言来模拟开关的行为,然后可以使用 P4 运行时 API 来控制固定功能开关。运行时 API 可用于在由 P4 语言定义的表中插入/删除条目,这与实际硬件类似。

如果开关是可编程的,则可以将其扩展到控制所有可编程实体,例如添加新表、插入条目、删除条目以使用编译器生成的 P4 运行时 API 在运行时更新转发平面。

图 1 显示了独立于转发平面的 SDN(远程控制平面)网络中的通用 P4 运行时架构。

P4 和 P4 运行时 – SDN 可编程性的新视野

对于可编程网络设备,P4 运行时通过使用 P4 从上到下编程直到 ASIC 数据平面,开启了真正的 SDN 可编程性。P4 语言可用于描述转发管道,P4 运行时可用于控制转发和从远程更新转发逻辑运行时。借助 P4,SDN 控制器能够重新定义表、条目、解析器、匹配操作和数据包处理逻辑。从而完全控制网络。

P4 运行时提供了一种使用可编程和固定功能交换机组合构建网络的无缝方法。P4 编译器自动生成填充表所需的 API。P4 运行时使大型网络编程变得更加容易。VOLANSYS为您的网络设备提供端到端的解决方案,包括编译器开发,P4运行时与NOS的集成,添加对新功能/协议的支持以及完整的测试。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    113

    文章

    16498

    浏览量

    179866
  • asic
    +关注

    关注

    34

    文章

    1206

    浏览量

    120877
  • 交换机
    +关注

    关注

    21

    文章

    2662

    浏览量

    100267
收藏 人收藏

    评论

    相关推荐

    利用P4与Vivado工具简化数据包处理设计

    AMD Vitis Networking P4 工具 ( VNP4 ) 是一种高级设计环境,针对 FPGA 和自适应 SoC 的包处理数据平面,可实现简化设计的效果。它能够将用 P4 编写的设计转换
    的头像 发表于 12-04 09:55 297次阅读
    利用<b class='flag-5'>P4</b>与Vivado工具简化数据包处理设计

    传统P4交换芯片停产后的技术支持与替代方案?

    星融元为您的网络可编程之路保驾护航
    的头像 发表于 11-15 14:19 457次阅读
    传统<b class='flag-5'>P4</b>交换芯片停产后的技术支持与替代方案?

    三星平泽P4一期产线调整:将同时生产DRAM和NAND Flash

    据韩国媒体报道,三星电子已决定调整其平泽园区P4产线第一期的产能分配,以应对市场需求的快速变化。这一决策标志着三星电子在半导体生产策略上的重要调整。
    的头像 发表于 11-13 14:19 381次阅读

    P4SDN中的重要

    在过去的十年中,SDN (软件定义网络) 极大地提高了网络的可编程SDN 理念的核心是将应用、控制和数据平面解耦,以提高网络的可编程
    的头像 发表于 11-06 10:10 658次阅读
    <b class='flag-5'>P4</b>在<b class='flag-5'>SDN</b>中的重要<b class='flag-5'>性</b>

    台积电高雄厂扩厂加速,P4P5启动环评

    台积电在高雄的先进制程扩厂计划正在加速推进。据高雄市长陈其迈透露,为应对全球AI芯片等产品需求的强劲增长,台积电高雄厂P1厂将于明年正式量产,P2厂预计明年完工,而P3厂也已于8月通过环评,预计10月动工。
    的头像 发表于 10-10 17:16 705次阅读

    混合动力系统构型P0到P4介绍

    在混合动力技术的不断演进中,不同的动力系统构型为汽车工业注入了新的活力。每一种构型都具备独特的技术特点和应用场景,从P0到P4,本文将深入探讨每种构型的优势与挑战,为读者提供全面而深入的了解。 1
    的头像 发表于 09-16 12:09 1166次阅读
    混合动力系统构型<b class='flag-5'>P</b>0到<b class='flag-5'>P4</b>介绍

    三星平泽P4/P5芯片工厂建设延期至2026年

    三星电子近日宣布,其位于韩国平泽的P4/P5芯片工厂建设计划将发生重大调整,原定于加速推进的项目现已决定推迟至2026年。这一变动旨在优先保障位于美国得克萨斯州泰勒市的晶圆厂建设,显示出三星在全球产能布局上的战略调整。
    的头像 发表于 09-04 17:00 766次阅读

    小区户外P4全彩高清LED广告屏性能特点和显示效果解析

    户外全彩LED显示屏的发展历史悠久,几年前的小区户外P10是户外广告传媒的“宠儿”,但随着生产工艺的进步,客户对清晰度的要求越来越高,户外P3、P4应运而生,接过P10/
    的头像 发表于 09-04 15:25 630次阅读

    鞍山163.18平米户外P4条栅屏安装完工

    近期,我公司在鞍山成功完成了一项特殊项目——163.18㎡户外P4条栅屏的安装,这一项目的圆满完成,不仅展示了我们的技术实力,更体现了我们对品质及细节的追求。鞍山P4户外LED条栅屏安装完工单条立式
    的头像 发表于 09-04 15:14 276次阅读
    鞍山163.18平米户外<b class='flag-5'>P4</b>条栅屏安装完工

    三星确认平泽P4工厂1c nm DRAM内存产线投资

    据韩国媒体最新报道,三星电子已正式确认在平泽P4工厂投资建设先进的1c nm DRAM内存产线,并预计该产线将于明年6月正式投入运营。这一举措标志着三星电子在半导体技术领域的又一次重要布局。
    的头像 发表于 08-13 14:29 595次阅读

    P4 Suite for FPGA面市 P4 Suite for FPGA主要功能解析

    ,并包含一个软件API,可在运行时控制P4生成的RTL。这一创新工具能让您利用P4架构的优势和FPGA的灵活性,彻底改变网络硬
    的头像 发表于 07-25 14:55 1101次阅读

    LM10011 6/4位VID可编程电流DAC数据表

    电子发烧友网站提供《LM10011 6/4位VID可编程电流DAC数据表.pdf》资料免费下载
    发表于 07-22 11:10 0次下载
    LM10011 6/<b class='flag-5'>4</b>位VID<b class='flag-5'>可编程</b>电流DAC数据表

    三星P4工厂战略调整:优先建设存储器产线

    在半导体产业风云变幻的当下,三星电子再次做出重大战略调整,宣布其平泽P4工厂的建设重心将发生转变。据韩媒最新报道,由于代工业务经营状况的持续恶化以及设计变更等复杂因素,三星电子决定暂停P4工厂第二期
    的头像 发表于 07-17 10:47 605次阅读

    三菱plc累计运行时间怎么编程

    具有重要意义。本文将详细介绍如何使用三菱PLC编程实现累计运行时间的统计功能。 一、概述 累计运行时间是指设备或系统在一定时间内的总运行时间。在工业生产中,对设备的累计
    的头像 发表于 06-20 11:31 2578次阅读

    ESP32-P4首秀|启明云端带你解读乐鑫P4多媒体开发板

    此前,乐鑫发布了新一代MCU芯片ESP32-P4的消息,今天ESP32-P4开发板终于登场亮相了,快来一睹真容吧。一、ESP32-P4开发板概述乐鑫
    的头像 发表于 02-19 12:30 4236次阅读
    ESP32-<b class='flag-5'>P4</b>首秀|启明云端带你解读乐鑫<b class='flag-5'>P4</b>多媒体开发板