Skip to main content
Go to the home page of the European Commission (opens in new window)
English English
CORDIS - EU research results
CORDIS

Safe Networks using P4 Programs

Project description

Safe networks through bug-free P4 programmes

Programmable hardware data planes enable unprecedented network flexibility, promising an ever-evolving set of network functionalities at hardware speeds. P4 is a specialised programming language that can configure programmable data planes. Developed in the context of an EU-funded project, af4 is a verification tool that finds all bugs and automatically fixes P4 programmes without needing any programmer input. It automatically generates predicates to filter out buggy table entries. The EU-funded SafeNet project will now conduct a market study to identify potential new customers. The ultimate aim is to help get the product to market quickly as af4 promises to significantly reduce bugs and increase network safety.

Objective

Programmable hardware dataplanes such as the Barefoot Tofino enable unprecedented network flexibility, promising an ever-evolving set of network functionalities at hardware speeds, and are being rolled out in production. However, programming such dataplanes is very difficult as numerous bugs have been found even in trivial programs: accesses to uninitialized header fields, header stack underflows or overflows and processing of dropped packets. Verifying P4 programs before deployment is a great solution to make P4 programs safe. Recent research in this direction has shown that many bugs can be caught if (1) we know the concrete table entries at verification time (Vera, our work in Sigcomm 2018), or (2) if programmers express which rules are likely to appear in practice (p4v in Sigcomm 2018). Both approaches impose a high burden on the programmer, which reduces their applicability. In the CORNET ERC Stg project we have developed af4, a verification tool that finds all bugs and automatically fixes P4 programs without needing programmer input. The key insight behind our work is that verification need not consider all table entries because certain table entries will always result in faulty behavior for all matching packets and thus cannot appear in a correct deployment. af4 automatically generates predicates that filter out buggy table entries. If bugs are still reachable after predicate inference, af4 automatically adds a minimal number of keys to the existing tables and generates predicates that remove all bugs in the programs we tested. In this project we will explore the feasibility of commercial exploitation of af4: a) we will conduct a market study to understand potential customers; b) we will study possible approaches to commercialise af4 including open-source + consulting, cloud-based, or closed-source, and c) take steps towards commercialisation including the development of alfa-testing tools to be given to prospective customers.

Keywords

Project’s keywords as indicated by the project coordinator. Not to be confused with the EuroSciVoc taxonomy (Fields of science)

Programme(s)

Multi-annual funding programmes that define the EU’s priorities for research and innovation.

Topic(s)

Calls for proposals are divided into topics. A topic defines a specific subject or area for which applicants can submit proposals. The description of a topic comprises its specific scope and the expected impact of the funded project.

Funding Scheme

Funding scheme (or “Type of Action”) inside a programme with common features. It specifies: the scope of what is funded; the reimbursement rate; specific evaluation criteria to qualify for funding; and the use of simplified forms of costs like lump sums.

ERC-POC - Proof of Concept Grant

See all projects funded under this funding scheme

Call for proposal

Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.

(opens in new window) ERC-2019-PoC

See all projects funded under this call

Host institution

CORRECT NETWORKS SRL
Net EU contribution

Net EU financial contribution. The sum of money that the participant receives, deducted by the EU contribution to its linked third party. It considers the distribution of the EU financial contribution between direct beneficiaries of the project and other types of participants, like third-party participants.

€ 150 000,00
Address
INTRAREA EZARENI NR. 10, CAMERA 1, AP. 2
010258 Bucuresti Sector 1
Romania

See on map

SME

The organization defined itself as SME (small and medium-sized enterprise) at the time the Grant Agreement was signed.

Yes
Region
Macroregiunea Trei Bucureşti-Ilfov Bucureşti
Activity type
Private for-profit entities (excluding Higher or Secondary Education Establishments)
Links
Total cost

The total costs incurred by this organisation to participate in the project, including direct and indirect costs. This amount is a subset of the overall project budget.

No data

Beneficiaries (1)

My booklet 0 0