Beyond softnet

Jamal Hadi Salim, Robert Olsson, A. L. Kuznetsov · 2001

The current 2.4 Linux network stack is based on a solid multi-processor-threaded implementation, known as softnet, which has been validated over the last 2 years. Linux is also used extensively Internet packet forwarding services such as firewalls and routers etc. Linux has a very modular packet processing framework based on the (ingress and egress) Traffic Control Framework as well as the Netfilter IP firewalling architecture. While the Linux framework for plugging in packet services is very flexible, and very much proven the real world, for Linux to be considered a strong Network Operating System, robustness under all conditions (including severe overload) is a key requirement that must be met. Our work is to further improve Linux to have the following attributes: • Robustness at any input rate and any number of input devices. • Controlled and low Latency. • cure packet reordering that is inherent with SMP support. • Provide fairness greedy network when supporting many interfaces under overload. We discuss the problems, solutions and provide experimental results our attempts to deal with these issues. While the focus is on using a PC as a router, the solutions provided are applicable to Linux use all aspects as a network device (such as a server).

Read the paper · More papers on PaperTik