Session

Pushing OpenVPN down the stack: Data Channel Offload (DCO)

Speakers

Antonio Quartulli

Label

Nuts and Bolts

Session Type

Talk

Contents

Description

OpenVPN is a userspace software responsible for creating an encrypted tunnel between two peers (peer-to-peer mode) or a central server and multiple clients (peer-to-multipeer mode). Until now both the control and the data planes were implemented in userspace, leading to notable performance penalty. The technique described in this paper, known as data channel offloading, consists in moving the data plane (i.e. user pay-load processing) to kernel space in order to reduce context-switching and thus improve the measurable tunnel throughput.