barefoot   Frontpage - Barefoot - Download - Usage - Status - Support - Modules - Docs - Links - Survey - GDPR

Barefoot -- Development survey

To get a better overview of how the software is used, and how it can be improved, we appreciate feedback from potential and existing users. Filling out the survey on this page is the simplest way to influence future development.

A more direct way to have new features added is to sponsor development. Should this be desired, please contact for more information.

General comments or requests for discussion regarding individual points in this survey can be directed to the mailing list.

For information on how we process and store information submitted via this form, please see our privacy policy for web based survey forms.

Current usage

First, please give us some information about your current use of Barefoot.

Which version are you currently using?
How long have you been using the software?
Which platform are you running the software on?


Below is a list of some possible additions. If you use or are planning to use the software, we would appreciate if you could take the time to indicate what you would like see be given a high priority. Check the box next to the options you would like implemented, and press send at the bottom when you are finished.

Note that choosing all options will not help prioritization; choosing one or two options is more likely to influence future development.

Transparent proxy support

Some platforms have networking functionality that allows TCP connections to be redirected to a local server, along with having an API to obtain the original destination address of the connection (OpenBSD PF is one such example). Supporting this would allow Barefoot to be used transparently, without clients having to connect directly the IP/port bound by Barefoot.

Log analysis

The server log files contain much usage information, including duration of sessions, amount of data transfered, protocols used, time of day, etc. A log analysis program could analyze the log files and provide a detailed visual overview of usage patterns.

Administrative GUI

A graphical interface to administer the server. This could involve including operations such as starting and stopping the server, adding rules, etc.

Network statistics

The server is a very suitable point for gathering statistics about network usage (SNMP, Netflow, etc.). A module with access to the data passing through the server could be used to generate statistics, for example with an SNMP interface.

Protocol decoding

Compared to router or wire-level analysis, the server has direct access to all the data passing through it without having to perform packet reassembly or similar operations. This makes it a suitable point for doing data analysis. Having a set of application level protocol decoders and an interface for accessing or manipulating the data passing through the server would make it possible for users to write specialized modules that could perform tasks such as logging Internet usage (URLs) or interfacing the server to other services such as virus killers or spam filters.

Load balancing/failover support

Given a list of addresses to bounce the data to, the server could choose the address to use based on parameters such as throughput, latency, or availability.

Data storage handling

The server is able to store the data contents of the packets and connections that pass through it. Currently data logging is done to the standard log file, but a specialized mechanism could be added to handle storage of large amounts of data in a scalable way. An SQL-like syntax could be used to query and access the stored data.

OS optimization (specify operating system)

On most platforms a probably substantial improvement could be achieved by the addition of an interface similar to splice(), which allows the connection of a pair of descriptors in the kernel, removing the need for the data in the connection to pass through the user address space.

New ports (specify unsupported platform)

There are still several platforms which are not supported. Note that reporting problems to is the best way to get support for a new platform.

Usage and comments

How do you make use of of the server?
If you have any other comments, please provide them in the text field below.

If you wish, you can provide us with your email address, if you want us to contact you, should we have any comments or questions regarding your suggestions.

Copyright © 1998-2024 Inferno Nettverk A/S