BSDCan2018 - 1.54

BSDCan 2018
The Technical BSD Conference

Speakers
Sean Chittenden
Schedule
Day Talks #1 - 8 June - 2018-06-08
Room DMS 1120
Start time 12:30
Duration 00:45
Info
ID 970
Event type Lecture
Track BOF

Introducing FreeBSD VPC

Virtualized Networking for Cloud Computing in FreeBSD

FreeBSD’s use in virtualization workloads has been hampered by its lack of Virtual Private Cloud (“VPC”) functionality. While the bhyve(4) hypervisor has proven to be robust and performant Hardware Virtual Machine (“HVM”), it has lacked the necessary companion networking stack in order to be used as a first-class hypervisor for cloud computing workloads. The FreeBSD vpc(4) subsystem was designed to augment the capabilities of bhyve(4) in order to support the demands of cloud workloads.

FreeBSD’s use in virtualization workloads has been hampered by its lack of Virtual Private Cloud (“VPC”) functionality. While the bhyve(4) hypervisor has proven to be robust and performant Hardware Virtual Machine (“HVM”), it has lacked the necessary companion networking stack in order to be used as a first-class hypervisor for cloud computing workloads. The FreeBSD vpc(4) subsystem was designed to augment the capabilities of bhyve(4) in order to support the demands of cloud workloads. After experimentation and extending with the existing network interfaces (e.g. bridge(4), tap(4), ptnetmap(9)), it became clear that it would be necessary to implement a new networking subsystem custom built for virtualization workloadschange course. We settled on implementing vpc(4) by extending the iflib(9) framework, a generalized NIC interface in the FreeBSD kernel. Using iflib(9) we created a suite of network services that allow FreeBSD to be used as a performant and flexible hypervisor for cloud workloads. Depending on the configuration and policies, it is also possible to use vpc(4) for desktop applications, too. We outline the intial performance achieved, both with ptnetmap(9) and iflib(9), the list of services in vpc(4), and how to deploy a cloud environment.