...
Requirement
|
Overview
P4 is a language for programming the data plane of network devices. From p4.org web site:
«P4 is a domain-specific programming language for specifying the behaviour of the dataplanes of network-forwarding elements. »
Article objective
This 1st article exposes:
...
Info | ||
---|---|---|
| ||
This article is preliminary a pure introduction to P4lang P4. It does not correspond in any way to an extensive programming language description nor a P4 compilation guide |
Diagram: P4 development workflow
[ #001 ] - Cookbook: P4 development workflow
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
Based on what we mentioned, what "P4 Domain specific language" brings to you ? Concretely:
|
Router for Academia Research & Education (RARE) & P4
Expand | |||||
---|---|---|---|---|---|
| |||||
RARE project objective is to provide a networking solution to Research & Education institution use cases. While we witnessed the birth of several control plane such as GNU Zebra, Bird, exaBGP, etc. The common point of these softwares is that they don't have the capability (yet) to be coupled easily with a hardware dataplane. Simply put, these software control plane cannot be used without specific/important development in order to run on an equipment able to forward nx100GE links at a high Mpps rate. There have been attempts with DPDK and other kernel bypass mechanism, that enabled higher throughput processing capability, but this is not comparable to commercial/vendor equipment's packet processing power. P4:
|
...
Expand | ||
---|---|---|
| ||
This is the use cases enabled by the combination of P4 and RARE software:
You can build a robust packet switching fabric at the scale of Telecom Service Provider able to switch packet at nx100GE
You can build an edge router an Interconnect the core router above. These router will terminate your backbone network service like L2/L3 plain IP or VPN services (IPv4 - IPv6)
With the WEDBE100BF32X you can have 2x100GE uplinks toward 2 distinct "leave leaf switches", it leaves you 30x100GE servers connections.
The WEDGE100BF32X is also a good candidate router in DC as a core/leave switch. You can create a fabric able to switch 6.4 Tbps trafic rates
In this case, the WEDGE100BF32X is 100GE peer aggregator or simply integrated into the IXP distributed core fabric.
The STORDIS BF2556X-1T presents flexible connectivities is a good candidate for regional network implementation. It has 8x100GE ports, 2 of them can be used as uplinks toward their main transit provider, 2 other can be used to provide EAST/WEST connection via 2 different fire routes, this leave 4x100 ports in case you need to increase capacity. The STORDIS also has 16x[1/10/25] GbE ports, 32x[10/25] GbE ports which gives the possibility to interconnects users via various access port bandwidth. |
Conclusion
In this article you:
- had a brief introduction of P4Lang P4 language
- had been presented a 10 thousand feet view of P4 development workflow
- had been exposed a list of P4 targets and the use cases enabled by these targets
...