NSDI '08 – Abstract
Pp. 279–292 of the Proceedings
Swift: A Fast Dynamic Packet Filter
Zhenyu Wu, Mengjun Xie, and Haining Wang, The College of William and Mary
Abstract
This paper presents Swift, a packet filter for high performance packet
capture on commercial off-the-shelf hardware.
The key features of Swift include (1)
extremely low filter update latency
for dynamic packet filtering, and (2) Gbps high-speed packet processing.
Based on complex instruction set computer (CISC)
instruction set architecture (ISA),
Swift achieves the former with an instruction set design that avoids
the need for compilation and security checking,
and the latter by mainly utilizing SIMD (single
instruction, multiple data).
We implement Swift in the Linux 2.6 kernel for both i386 and x86_64
architectures.
The Swift userspace library supports two sets of application programming
interfaces (APIs): a BPF-friendly API for backward
compatibility and an object oriented API for simplifying filter coding.
We extensively evaluate the dynamic and static filtering performance of
Swift on multiple machines with different hardware setups.
We compare Swift with BPF (the BSD
packet filter)—the de facto standard for packet filtering in modern operating
systems—and hand-coded optimized C filters
that are used for demonstrating possible performance gains.
For dynamic filtering tasks, Swift is
at least three orders of magnitude faster than BPF
in terms of filter update latency.
For static filtering tasks, Swift outperforms BPF
up to three times
in terms of packet processing speed, and achieves much closer
performance to the optimized C filters.
- View the full text of this paper in HTML and PDF. Listen to the presentation in
MP3 format.
The Proceedings are published as a collective work, © 2008 by the USENIX Association. All Rights Reserved. Rights to individual papers remain with the author or the author's employer. Permission is granted for the noncommercial reproduction of the complete work for educational or research purposes. USENIX acknowledges all trademarks within this paper.
|