Community Research and Development Information Service - CORDIS

Infrastructure software: Additional features

A variety of code was required to enable the inter-operability of various components of the TORRENT architecture. It is intended to submit this code to appropriate interest groups.
-- Kernel -extensions

-- Added missing %s and %c functionality to the kernel sscanf function (simplified coding of our /proc modules)

-- Provided a user-space mechanism to read the netfilter mark on the next packet in a socket's input queue (permits user-space code to be netfilter-mark aware)

-- Apache mod-proxy extensions

-- Features to bind outgoing IP-addresses

-- Features based on the netfilter-mark on request packets

-- Features applying netfilter-marks to outgoing packets

-- Iproute2 IPv6 extensions (surprisingly many IPv4features are not available in IPv6)

-- Source-base routing (limited functionality, meeting TORRENT's needs)

-- Netfilter-mark based routing and queuing

The /proc virtual file system provides a safe and efficient mechanism for communicating between kernel-space code and user-space code. Typically these /proc files are coded as kernel modules.

TORRENT uses several files in the /proc file system. These not only provide communication paths between TORRENT components, but also permit issues such as concurrency, locking and latency to be handled.

The majority of the data in these virtual files is described in the TORRENT data model.

The configuration of a TORRENT system is quite complex, and potentially error-prone, so an automatic configuration system was developed. This takes a declarative definition of the required configuration, and generates a set of script-files, which are then used to establish the appropriate configuration.

More information on the Torrent project can be found at:

Reported by

Queen Mary University of London
Mile End Road
E1 4NS London
United Kingdom
See on map
Follow us on: RSS Facebook Twitter YouTube Managed by the EU Publications Office Top