Although not provided in commercial distributions as of this writing, there are drivers for cards supporting the Asynchronous Transfer Mode (ATM). ATM functions like a never ending train. When an empty “car” comes along, the data can jump into it. These cars or cells are fairly short (58 octets total, 48 data, 5 header).
The basic idea behind ATM is that mixed bandwidth systems (such as data and voice) can use the same cable without loss of efficiency. ATM is the layer directly above the physical hardware, with the ATM adaptation layer (AAL) serving as the interface to the higher-level protocols. The ATM layer is actually broken up into two sub-layers. The transmission control (TC) is responsible for building the cells and the physical medium (PM) layer is the interface to the physical hardware.
As of this writing, ATM is supported in Linux, but not available in any of the standard distributions. An experimental (read pre-beta) driver is available from lrcwww.epfl.ch.