From 0 to Bhyve on FreeBSD 13.1

FreeBSD has its own high-performance hypervisor called “bhyve”. Much like the Linux kernel’s KVM hypervisor, bhyve enables the creation and maintenance of virtual machines—aka “guests”—which run at near-native speed alongside the host operating system. Although bhyve got a later start than Linux KVM, in most ways it has caught up with its primary rival—and in some ways surpassed it.

Using Netgraph for FreeBSD’s Bhyve Networking

networking virtualization

FreeBSD 13 adds new support for a netgraph backend for virtual network devices under bhyve. Netgraph is a modular networking framework that allows for arbitrary stacking of protocols and transports, along with filtering, tunneling, redirection, inspection, injection and more—fast and feature-rich, netgraph is to networking what the geom layer is to disks and storage. This article provides a basic recipe to demonstrate some common netgraph syntax and use-cases.Why might you want to run CURRENT? If you have a large modified code base, or are building a product based on FreeBSD, CURRENT gives you a look into the future of FreeBSD. Running CURRENT will help you understand changes that are happening in the FreeBSD Operating System and it gives you an opportunity to see how your stack performs with new features.
In this article we will show how to build a CURRENT system with the debugging features disabled, and perform some benchmarks to test the impact debugging features have on performance.

bhyve: The FreeBSD Hypervisor

Virtualization at a glance

You know about VMware vSphere or VirtualBox, but do you know about FreeBSD’s bhyve? FreeBSD has had varying degrees of support as a hypervisor host throughout its history. But none of them was consistent up to 2011, when bhyve was added to FreeBSD and it has seen continuous development ever since. Dive into the early days of bhyve, recent commitments and what’s next for our hypervisor.