The P4 Programming Language: Connecting, Configuring, and Running the First Test Application

Introduction

The P4 programming language is gaining popularity in the networking industry. It is considered the next step in the evolution of SDN networking.

Programming Protocol-independent Packet Processors (P4) is an open-source, high-level programming language for network devices. It defines how data plane devices (switches, routers, network cards, etc.) process packets.

Before the P4 version, vendors had total control over the functionality supported on the network. Silicon vendors controlled the rollout of new features, and it took a long time (sometimes even years) to bring them to market… This is because a chip redesign is usually required.

What happened after the implementation of P4? You'll learn about that later in this article.

Why Are More And More People Turning To P4?

P4 proved to be a complete game-changer and turned the traditional model around 180 degrees. Changes made by application developers and network engineers, instead of taking years, can be made in just minutes!

P4 allows you to have a real impact on what the network does and how it does it. Properly used, P4 will increase the efficiency of network resources to better handle service workloads.

Getting Started with P4 Capable Network Switch

If you're thinking about switching to P4 but have no idea how to connect and configure it, you're in the perfect place!

We have designed 3 programs to help you take your first steps with a P4 capable network switch, which are appropriately suited to your skill level and current needs. Each has a separate goal and targets different audiences. All this to save a lot of your time and nerves.

SwitchON P4 Service

If you are a Systems or Application Engineer who has received your switch, and you need help or want to make sure someone is watching over your shoulder as you get your new system is up and running with the first "Hello World" scenario, then this is the solution for you.

The SwitchON P4 service will help you get started with a P4 capable network switch. The aim of this training session is to guide you through the initial set-up and operation of your switch.

We will guide you from unpacking the switch to running your first test application, while demonstrating the major features of their first exposure to a P4 development platform.

The entire course takes about 3 hours, which, in our experience, is a comfortable pace at which to achieve the course goals.

The session content is designed to cover all the steps from unboxing to running a first viable test application. Of course, depending on how experienced the Engineer is, we can skip the early stages and move straight to the connection and set-up phase.

For more information click here.

SwitchON+ P4 Service

Similar to the case above - if you are a Systems or Application Engineer who has received your switch, and you want to be guided or assisted whilst you get your new system up and running with your first real-world P4 application, then this SwitchON+ P4 Service is for you.

Hands-on is always the best learning scenario, but this is not always possible. When a system is not available to the Engineer, then we can use one of our test systems to run through the same processes.

SwitchON+ adds more in-depth coverage of some important development and production topics. Such as:

  • building the SDE with different P4 selection profiles,
  • interfacing with your application (gRPC),
  • Network Operating System options
  • P4 application exposure.
You do not need to have any experience with this environment. We will guide you through the entire process, all the way to running the real-world P4 application! In this case, the course takes about 6 hours.

For more information click here.

Switch WorkShop P4 Service

Switch WorkShop P4 Service is ideally suited to the Systems or Applications Engineer (individual or teams not greater than six participants) who are about to embark on the development of a P4-based system or application.

While participants should ideally have some P4 exposure, it is not strictly necessary as the focus of the workshop will be on design.

The goal of the workshop session is to fast-track your design strategy and explore the critical aspects of your development together.

Remember: P4 is just a language for implementing a design. One of our several value-adds is to bridge the real-world gap between what is theoretically possible in P4 and what is actually possible on Tofino-based platforms.

In this case, we will agree with the participants on the structure of the workshop. In the absence of specific requests, the 3-day workshop will be divided into several focused sessions. According to the table below:

Session Plan

1-day

  • Introduction and planning for the workshop.
  • Deep dive into system/application concept and high-level requirements.
  • Presentation and analysis of first-glance strategies and mechanisms of the P4 platform that may address high-level requirements.
  • Arbitrated discussion focusing on the suitability of the platform for design and on any circumvention or alternate strategies where relevant.
  • Planning for the next two days includes design aspects that require special focus and the deliverables that should come out of the workshop.

2-day

  • Develop design of primary strategies and mechanisms carefully allotting time segments to a high-priority set and avoid getting sucked into implementation.

3-day

  • Develop design of primary strategies and mechanisms carefully allotting time segments to a high-priority set and avoid getting sucked into implementation.
  • Drill down on unfinished top priority requirements.
  • Consolidate the work done and the design decisions – plan next steps.

Want to Learn More About it?

Get in touch with us and we will answer all of your questions.Contact Us

Comments

X