Two INRIA teams are contributing to group distribution, that is to
say sending data to a large number of addressees at the same time.
In certain cases, it is necessary to send the same set of data to
millions of addressees over the Internet. It is possible to do this
very economically with a single operation on the part of the sender
by using what is called multicast distribution. This process is of
interest to software publishers to inform their numerous clients that
an update is available, or to inform subscribers that such and such
new service can now be accessed. Similarly, when several persons wish
to participate in a videoconference, the same set of audio or video
data must be sent to a large number of addressees.
In order to cut distribution costs down to a minimum, the network
itself must be capable of duplicating the information and relaying
it to the addressees. The parts of the networks and machines that are
not concerned by the distribution must not be congested by traffic
that is of no interest to them. In addition, the data must arrive without
corruption, which is what specialists call transmission reliability.
In the case of one addressee, reliability is ensured by a two-way exchange:
the addressee sends back control messages to the source until complete
reception of the data.
Similarly, for the time being, most reliable multicast Internet protocols
work bidirectionally. However, on a large scale and for a large number
of addressees, this solution is not satisfactory. It entails the management
of considerable quantity of back messages that flood the source and
network. In this case, the solution consists in establishing a unidirectional
link, without back route, and to define specific transmission control
mechanisms to ensure reliability.
The solution to reliable transfer of large files
A work group called RMT (Reliable Multicast Transport) was created
at the IETF (Internet Engineering Task Force), the Internet protocol
standardization body, in order to deal with the problem. Members
of project
PLANETE have been participating in RMT since 2002.
This work group develops a reliable unidirectional protocol for large
scale data distribution called ALC (Asynchronous Layered Coding) that
makes it possible to avoid data loss problems. The data is sent redundantly
until the user terminates the reception once all the data is received.
INRIA researchers participated in the development of an ALC-based solution
adapted to the specific problem of file transfers. This solution is
called FLUTE (File delivery over unidirectional transport). It explains
how to best make use of ALC in order to provide a file distribution
service, in particular for “large” files. FLUTE defines
the mechanisms necessary to transmit files, transport metadata (information
pertaining to the data, such as the name, size, encoding, etc.) and
set up filters on the receiving end.
FLUTE was tested and validated in December 2003 with Nokia and the
University of Tempere in Finland. It was then standardized by the IETF
(RFC 3926, Request For Comments) in October 2004. FLUTE is already
a key element in the distribution of multimedia data over radio networks,
in the process of being standardized at the 3GPP (3rd Generation Partnership
Project). The 3GPP is the organization that proposes standards for
GSM, GPRS and UMTS devices, as well as for Internet distribution on
telephones and other portable terminals, in the framework of the DVB-H
(Digital Video Broadcasting, Handheld) standardization. The DVB-H is
an industrial consortium dedicated to standards for digital television
on small mobile screens.
Routing protocols adapted to multicast distribution
Multi-cast routing treeMulticast distribution poses specific problems
from the point of view of routing, either to ensure data transmission
quality, or to optimize the transmission. The
ARMOR team
in Rennes has proposed three multicast protocols
at the IETF since 2001. These protocols are compatible with the IPv4
and IPv6 data transmission Internet protocols. The first protocol
makes it possible to force distributed packets to go through a specific
path in the network, thus avoiding congestion points (something similar
to "alternate routes” to go around traffic jams on the
road). The second protocol accelerates the distribution of data packets
to the addressees by diminishing the load of network equipment. The
network equipment located on the path but not in charge of duplicating
packets does not have to process these packets. Lastly, the third
protocol is specifically intended for small groups. This is typical
of the case of networked games where the number of players for each
game may be small, but the number of simultaneous games may be very
large.