microsoft/demikernel

Kernel-Bypass LibOS Architecture

Rust

1,239

4,502 commits

updated Jul 23, 2026

See the code

README

Demikernel

Join us on Slack! Catnip LibOS Catnap LibOS Catpowder LibOS

Demikernel is a library operating system (LibOS) architecture designed for use with kernel-bypass I/O devices. This architecture offers a uniform system call API across kernel-bypass technologies (e.g., RDMA, DPDK) and OS functionality (e.g., a user-level networking stack for DPDK).

To read more about the motivation behind the Demikernel, check out this blog post.

To get details about the system, read our paper in SOSP '21.

To read more about Demikernel check out https://aka.ms/demikernel.

Codename for LibOSes

  • catnap - Linux Sockets/Windows Winsock LibOS
  • catnip - DPDK LibOS
  • catpowder - Linux Raw Sockets/Windows XDP LibOS

Documentation

Usage Statement

This project is a prototype. As such, we provide no guarantees that it will work and you are assuming any risks with using the code. We welcome comments and feedback. Please send any questions or comments to one of the following maintainers of the project:

By sending feedback, you are consenting that it may be used in the further development of this project.

Trademark Notice

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.

dpdk
kernel-bypass
libos
linux
network
rdma
spdk

microsoft/demikernel

Kernel-Bypass LibOS Architecture

Rust

1,239

4,502 commits

updated Jul 23, 2026

See the code

README

Demikernel

Join us on Slack! Catnip LibOS Catnap LibOS Catpowder LibOS

Demikernel is a library operating system (LibOS) architecture designed for use with kernel-bypass I/O devices. This architecture offers a uniform system call API across kernel-bypass technologies (e.g., RDMA, DPDK) and OS functionality (e.g., a user-level networking stack for DPDK).

To read more about the motivation behind the Demikernel, check out this blog post.

To get details about the system, read our paper in SOSP '21.

To read more about Demikernel check out https://aka.ms/demikernel.

Codename for LibOSes

  • catnap - Linux Sockets/Windows Winsock LibOS
  • catnip - DPDK LibOS
  • catpowder - Linux Raw Sockets/Windows XDP LibOS

Documentation

Usage Statement

This project is a prototype. As such, we provide no guarantees that it will work and you are assuming any risks with using the code. We welcome comments and feedback. Please send any questions or comments to one of the following maintainers of the project:

By sending feedback, you are consenting that it may be used in the further development of this project.

Trademark Notice

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.

dpdk
kernel-bypass
libos
linux
network
rdma
spdk

Significant stargazers

(top 24 of 47)

fzyzcjy

2,135 followers · starred Nov 2024

Christopher S. Meiklejohn

726 followers · starred Oct 2019

Lucio Franco

1,157 followers · starred Oct 2020

Tyler Neely

2,540 followers · starred Jun 2020