|
OSDI '04 Paper   
[OSDI '04 Technical Program]
FFPF: Fairly Fast Packet FiltersHerbert Bos, Willem de Bruijn, Mihai Cristea, Trung Nguyen, Georgios Portokalidis
Vrije Universiteit Amsterdam, The Netherlands
Abstract:
FFPF is a network monitoring framework designed for three things:
speed (handling high link rates), scalability (ability to handle
multiple applications) and flexibility. Multiple applications that
need to access overlapping sets of packets may share their packet
buffers, thus avoiding a packet copy to each individual application
that needs it. In addition, context switching and copies across the
kernel boundary are minimised by handling most processing in the
kernel or on the network card and by memory mapping all buffers to
userspace, respectively. For these reasons, FFPF has superior
performance compared to existing approaches such as BSD packet
filters, and especially shines when multiple monitoring applications
execute simultaneously. Flexibility is achieved by allowing
expressions written in different languages to be connected to form
complex processing graphs (not unlike UNIX processes can be connected
to create complex behaviour using pipes). Moreover, FFPF explicitly
supports extensibility by allowing new functionality to be loaded at
runtime. By also implementing the popular
pcap packet capture
library on FFPF, we have ensured backward compatibility with many
existing tools, while at the same time giving the applications a
signficant performance boost.
Next: Introduction Herbert Bos 2004-10-06 |
This paper was originally published in the
Proceedings of the 6th Symposium on Operating Systems Design and Implementation,
December 68, 2004, San Francisco, CA Last changed: 18 Nov. 2004 aw |
|