Skip to main content

P4RROT

Generating P4 Code for the Application Layer

Motivation

Throughput and latency-critical applications (e.g. processing sensor data, robot control, or monitoring stock market streams) can often benefit if computations are performed close to the client. Performing these computations in the data plane can help us take it to the next level.

P4 is excellent data plane programming language, and we all love it. However, it wasn't meant to implement application-layer tasks. Thus, offloading server-functionality can be challenging.

P4RROT is a code generator that helps programmers overcome certain limitations and write shorter and easier-to-read code.

Supported targets

P4RROT is a very young project. The current code base supports both the BMv2 and the Netronome NFP.

We plan to add Tofino specific elements as well.

Getting started

...

Metadata

Release files for p4rrot 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for p4rrot 0.0.1
File Size Uploaded
p4rrot-0.0.1.tar.gz 10.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for p4rrot 0.0.1
File Interpreter ABI Platform
p4rrot-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 23.4 kB

Release files / p4rrot-0.0.1.tar.gz

Download URL p4rrot-0.0.1.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b74278f1618543d6a509961cce54827f9b69c125d09505112abb83c3e9ac2e6b
BLAKE2b-256 checksum
How to use checksums
0f75fce29cec41e1c433be3d10e97403e895d839de7b21f24047399cfd45f69b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.63.1 importlib-metadata/4.8.1 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.9

Release files / p4rrot-0.0.1-py3-none-any.whl

Download URL p4rrot-0.0.1-py3-none-any.whl
Size 12.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1a3ade7b86d765bbf0aa786be28ce866f82e7ed6a0fc31f502f6d9ce53832863
BLAKE2b-256 checksum
How to use checksums
6ecd72fb47e41b2180226121ce286127cfa08aff5a0dbad0c33410d445bef22d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.63.1 importlib-metadata/4.8.1 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.9

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page