P4 Shield: Secure Execution of Users' P4 Programs with In-VM Information Inside Clouds

View at publisher
Authors: Masaki Iwai, Kenichi Kourai
Cited by: 0
References: 6

Abstract

Recently emerging programmable network switches can control packet forwarding by software, e.g., using the P4 language. For virtual machines (VMs), virtual P4 switches have been developed to execute P4 programs inside virtual switches. If users could load their own P4 programs into virtual P4 switches, it would enable custom packet forwarding using information inside their VMs. In clouds, however, users cannot fully trust virtual P4 switches, nor can virtual P4 switches trust users' P4 programs. To address these issues, this paper proposes P4 Shield for enabling the secure execution of each user's P4 programs outside clouds' virtual switches by using P4 VMs prepared per user. P4 Shield protects P4 programs from clouds by running P4 VMs as confidential VMs, whose states are protected by processors. It also protects clouds' virtual switches from users' P4 programs by confining them in uBPF sandboxes created in P4 VMs. To allow P4 programs to use information inside users' VMs, P4 Shield provides P4 external functions for accessing information in the shared memory between a P4 VM and a user's VM. We have implemented P4 Shield using Open vSwitch and confirmed its effectiveness.

Fields of Study & Subjects

Security and Verification in Computing Software-Defined Networks and 5G Cloud Computing and Resource Management

Publication details

Journal / source
IEEE Annual Computing and Communication Workshop and Conference (CCWC)
Pages
1092–1099
Publication date
5 January 2026
Language
EN