The Web10G Project: Developer Information

Home 5 Research 5 Networking 5 The Web10G Project 5 Web10G Developer Information

The goal of Web10G was to develop a standard TCP instrumentation which will be included in the main-line Linux kernel, so that it  propagates to all versions of Linux and all Linux users.


Differences from Web100

Under Web100, the TCP instrumentation and /proc ABI were combined into a single kernel patch. This caused unsustainable overhead and limited the host to under 30,000 TCP connection.

Web10G will separate the TCP instrumentation and the /proc ABI.   The new ABI will be implemented as a dynamically loadable kernel module (dlkm). This has a number of advantages, all of which stem from the ability to support multiple ABIs and switch between them at will. The legacy /proc ABI will be maintained for backwards compatibility. However, the use of a dklm allows users to disable the instrumentation and to develop nonstandard ABIs, and provides flexibility to the core ABI developers.


Code archives

Current and archived versions of the Web10G work are available on GitHub.

The Web10G team will update the Web100 userland tools and libraries to Web10G. Along with the userland we will also port Web100 based tools, such as NDT and NPAD, to make full use of Web10G.

The userland API is also available on GitHub.



Build and installation instructions are bundled with the Web10G code base and are also available on GitHub. These instructions are generic but will work for many distributions.

You may also find more help on our web10g-user mailing list archive.