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

P4-16 for Tofino

https://zhuanlan.zhihu.com/p/501207018

一 Tofino 架构简介

二 Tofino2 架构简介

三 P4与Barefoot Tofino芯片

四 Tofino 管道结构

流水线包处理过程

五 v1model 架构

六 PSA (Portable Switch Architecture)架构

七 TNA(Tofino Native Architecture)架构

组件视图

八 TNA的P4_16编程模板

九 Parser模型

parser输入:

类型数据包,是由目标设备提供的类型数据。

: 用户自定义元数据;

:**设备产生提供的元数据。

parser输出:

:用户定义的数据报头;

: 用户自定义元数据;

:设备产生提供的元数据。

以Barefoot厂商提供的元数据为例说明:

其中pkt 为tonifo 提供的packet_in类型数据包

hdr 为用户自定义元数据

输出:

hdr 用户定义的数据报头

ig_md为用户自定义元数据

ig_intr_md为tonifo产生提供的元数据

1 packet_in

: 从数据报文指针开始位置,抽取类型数据大小的报头,存储在中**,并将数据报文指针前移。可能触发错误,类型的数据的大小必须为固定值。

:读取数据报头到可变大小的报头变量中,必须包含一个及以上字段。数据报指针前移。

:读取类型数据大小的报头,但不前移数据报指针。

:前移数据报头指针。

:返回数据报的字节数。

2 packet_out

将hdr写入输出包,T可以是header stack, header_union, 或者是包含此类型的结构体

十 Intrinsic Metadata

其中 ingress_port为入方向的物理口ID

十一 Controls

十二 自定义哈希

十三 simple_lpr

十四 数据包生成器

十五 核心组件

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230524A0A4Q300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券