MAD project implemented two protocols designed for reliable content
delivery.  File Delivery over Unidirectional Transport (FLUTE) is a
protocol for the unidirectional delivery of files over the Internet,
which is particularly suited to multicast networks.  FLUTE builds on
Asyncronous Layered Coding (ALC), the base protocol designed for
massively scalable multicast distribution.  Asynchronous Layered
Coding combines the Layered Coding Transport (LCT) building block, a
multiple rate congestion control building block and the Forward Error
Correction (FEC) building block to provide congestion controlled
reliable asynchronous delivery of content to an unlimited number of
concurrent receivers from a single sender.

MAD-ALCLIB library is an implementation of the ALC/LCT protocol, along
with the RLC congestion control protocol and Compact No-Code, Simple
XOR and Reed-Solomon FEC schemes.  Session Description Protocol (SDP)
can be used to describe FLUTE sessions.  MAD-SDPLIB library is an
implementation of "SDP Descriptors for FLUTE" Internet-Draft.
MAD-FLUTELIB is an implementation of the FLUTE protocol, and it builds
on MAD-ALCLIB and MAD-SDPLIB libraries.  MAD-FLUTE is a multicast file
transfer tool build on the above mentioned libraries.
