首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

P4加入ONF和Linux基金会,推动P4的创新和采用

P4语言联盟(P4.org)是P4编程语言的创建者,上周五宣布将成为开放网络基金会(ONF)旗下的一个项目,并且成为Linux基金会投资组合的一部分,P4联盟自2013年以来一直致力于可编程语言P4的非盈利组织...Linux基金会执行总裁Jim Zemlin表示:“Linux基金会很高兴P4的加入,网络是Linux基金会的主要关注点,而P4社区的蓬勃发展以及Linux基础网络项目将推动网络创新技术向更高水平迈进。...斯坦福大学计算机科学教授兼P4董事会成员Nick McKeown表示:“P4.org是一个免费的会员组织。作为ONF和Linux基金会的一部分,P4将保持开放和免费原则。...P4目前已经发展成为一个如此庞大的社区,成熟度逐渐为业界认可,需要得到ONF和Linux基金会的帮助。” P4可以同时用于可编程和固定功能设备。...P4也可以用来编写程序来描述全新的数据包转发行为。例如,P4广泛用于数据中心、企业和服务提供商网络的遥测和测量。

79140
您找到你想要的搜索结果了吗?
是的
没有找到

P4入门教程(2):P4程序的编译、运行验证与分析

在前面《P4入门教程:搭建开发和实验环境》一文中,梳理了P4实验的大致流程。P4程序只需要经过一次编译过程,生成数据平面的JSON格式描述文件,最后在启动软件交换机时将JSON描述文件导入即可。...本文重点讲述编译P4程序、启动P4交换机的方法,并以这样一个小功能为例展示P4程序的运行: 交换机只处理IPv4包,把收到的包打上三层MPLS标签,再从入端口把包发回去。...P4交换机使用Thrift库来实现RPC服务。控制面通过RPC向服务器下发配置、更改转发表、修改寄存器中的值等。...简单的操作可以在RuntimeCmd敲入命令完成,我们也可以将多条命令写入一个文本文件,每条命令占一行,然后通过Linux输入重定向的方式,一次性将多条命令导入Runtime执行。...到此,P4程序的编译、运行和验证就顺利结束了,希望能给朋友们一点启发。下一篇“P4入门教程”系列连载文章中,我们将利用本次演示中的P4程序,进行P4程序结构的简析,敬请期待!

3.6K50

P4语言规范》parser详解

前言 为深入研究P4语言相关规范及运行操作使用,本系列文章根据P4.org网站给出的《The P4 Language Specification v1.0.2》[1]内容,并通过我们的运行使用的具体实例和分析汇总...,希望能为大家研究P4提供一点参考。...本系列文章分为三个部分,系列一翻译和阐述 P4.org网站给出的《The P4 Language Specification v1.0.2》的第二部分首部及字段;系列二是翻译和阐述《The P4 Language...一、解析器介绍 p4解析器是基于有限状态机的思想来设计的。...虽然P4支持这种图表的形式,但是没有规定必须这样做。 实际上,P4的解析状态节点可以分为两种: ☘ 一种是进行状态转移的选择节点,这个节点不要求进行对首部实例的识别操作。

1.8K90

P4语言编程详解

在文章《P4:开创数据平面可编程时代》中介绍了P4的架构特性、交换机结构以及P4程序的工作原理,本篇为大家介绍P4语言编码及规范,从编码角度去理解P4程序的工作流程。...P4程序首先经过p4c-bm模块编译成JSON格式的配置文件,然后将配置文件载入到bmv2,转化成能实现交换机功能的数据结构。...(3)p4c-bm behavioral modal的后端编译器,建立在p4-hilr的顶部,该模块以P4程序作为输入,输出一个可以载入到behavioral model的JSON配置文件。...2.P4语言标准 当前P4语言标准的最新版本为《The P4 Language Specification Version1.1》(以下简称V1.1),目前版本的P4语言编译器已经基本实现了P4语言标准中的绝大部分特性...表8中展示了P4中定义的基本动作。 ? ? 这些动作高度抽象且与协议无关,以实现P4语言处理数据的协议无关性。

6.7K54

P4虚拟化数据平面

那么,是不是可以有一种使用纯P4语言实现的通用虚拟化框架呢?如何使用一个用户级别的程序来实现虚拟化?是否可以使用一个特殊设计的具有模拟其他P4程序的能力的P4程序?...HyPer4使用软件的方式拓展了P4语言,使得支持P4语言的设备可以具有如下功能: 可以在逻辑上存储多个P4程序并且同时运行它们(作为网络切片)或者热切换的快照 在每一个程序之间可以形成一个虚拟网络(...和P4-to-EBPF可以将其转换为Linux网络平面使用的EBPF程序。...上图左边部分描述了P4设备开始配置的过程。首先,用户会编译P4的代码,然后将二进制代码(或者其等价形式)装载进P4兼容的设备中。...为了模拟其他的P4程序,HyPer4需要根据被仿真的目的程序改变HyPer4的状态,进而将其被转换成对于表的操作。 通过将P4程序表示成状态,HyPer4可以支持P4程序的实时更新。

1.3K60

linux全局和个人配置文件说明

1.bash配置文件:1)、全局(bash的配置文件)有 /etc/profile /etc/profile.d/* 与 /etc/bashrc其实都是bash这个程序启动的时候会读取配置信息的....无论现在什么样的应用程序,大多数都需要用配置文件来保存用户可以进行的设定的2)、用户个人:~/.bash_profile 和 ~/.bashrc 我们对bash所做的任何设定,都可以将这些修改写入到这些文件中...,但是这些文件还略有不同,并不是每一次bash的执行都会读取每一个bash配置文件的,这要取决于用户启动bash的启动方式(用户登陆,执行脚本)2. bash启动运行模式:(交互和非交互模式)1.)...,所以其设定结果也是不一样的.对于非交互的bash读取配置文件(执行脚本)~/.bashrc --> /etc/bashrc --> /etc/profile.d/*(最后一个不读...)其他文件将不再读取.配置文件有的是profile类文件,有些是bashrc类文件.profile类1.

4.2K10

如何在 Linux 中编辑配置文件

注:本文假设您已在 Linux 系统上安装并配置好了适当的环境。在 Linux 系统中,配置文件是用于设置和自定义应用程序和系统行为的重要组成部分。为了进行配置更改或修改,您需要编辑相应的配置文件。...本文将详细介绍如何在 Linux 中编辑配置文件的常见方法。图片步骤 1:选择编辑器在开始编辑配置文件之前,您需要选择一个适合的文本编辑器。...步骤 3:使用命令行编辑器编辑配置文件以下是在 Linux 中使用命令行编辑器编辑配置文件的基本步骤:1. 打开终端打开终端窗口,以便在命令行界面执行编辑器命令。2....步骤 4:使用图形界面编辑器编辑配置文件如果您更喜欢使用图形界面编辑器来编辑配置文件Linux 提供了许多可选工具,如:Gedit:Gedit 是 GNOME 桌面环境中的默认文本编辑器,具有直观的界面和基本编辑功能...结论在 Linux 中编辑配置文件是定制和调整系统行为的重要步骤。通过选择适当的文本编辑器,确定配置文件位置,并使用命令行或图形界面编辑器,您可以轻松编辑和修改配置文件

77510

为何P4“落户”智能网卡?

DSC卡从物理规格看就是插入标准服务器的适配卡,鼎鼎大名的业内大拿们为何选择了PCIe卡作为突破口,并且选择P4语言作为主要的开发工具,本文基于公开资料介绍如何实现一款支持P4语言的接口卡以及P4语言发挥的关键作用...图1: 分布式服务卡DSC 网络边缘的价值 网络交换机曾经是P4编程的最初重点,但把P4理念应用到网络外围的终端节点时,它可以呈现出更大的潜力,此时终端节点可以在scale-out模型中实现网络、安全和存储服务...为了充分利用流水线中设计的专用处理器并与卡的其他组件紧密集成,系统编程依赖于对P4语言的扩展。 报文缓存作为片上的主数据包交换器,将数据报文从网络接口传送到P4可编程报文处理数据平面,反之亦然。...在P4报文处理数据平面提供快速路径处理功能的同时,一组ARM内核还能进行更复杂的数据平面处理。此外,运行于ARM处理器上的Linux环境为控制和管理平面功能提供计算能力。...为了实现这些目标,Pensando于今年2月份加入P4社区,致力于围绕便携式网卡架构(PNA)的规范积极推动架构工作组的工作,并可能在语言设计工作组内提出P4语言的扩展,以实现网卡和主机之间通过PCI总线的交互

1.5K20
领券