Home

snabb

Snabb is an open-source software toolkit designed for building high-performance packet-processing pipelines and virtual network functions. It presents a modular, pipeline-based architecture in which individual components, called apps, perform specialized tasks such as Ethernet I/O, protocol parsing, or packet modification, and are connected by in-memory pipes to form processing graphs.

The runtime operates primarily in user space on Linux and other POSIX systems. Configuration is expressed in

Key features include fast input/output paths, zero-copy packet buffers, and the ability to mix and match different

Name and etymology: the word “snabb” means fast in Swedish, chosen to reflect the project’s emphasis on

Usage and status: Snabb is primarily used as a research and educational platform, enabling users to experiment

Lua,
allowing
researchers
and
developers
to
compose
and
modify
pipelines
without
rebuilding
the
core
engine.
Core
performance
is
achieved
with
C
code
and
carefully
optimized
data
paths,
while
Lua
serves
as
a
flexible
orchestration
layer.
I/O
adapters
and
protocol
handlers
within
a
single
pipeline.
The
design
emphasizes
portability,
experimentation,
and
rapid
prototyping,
making
Snabb
a
popular
tool
in
academic
and
testbed
contexts
for
exploring
software-defined
networking
(SDN),
network
function
virtualization
(NFV),
and
other
packet-processing
ideas.
speed
and
efficiency.
The
software
has
been
developed
and
maintained
by
a
global
community
of
researchers
and
practitioners,
with
its
codebase
hosted
publicly
and
subject
to
open-source
licensing
and
collaboration.
with
custom
packet-processing
pipelines,
evaluate
performance
characteristics,
and
prototype
new
network
functions
before
committing
to
production-grade
solutions.