Installing and Administering Internet Services

Chapter 9 305
Configuring mrouted
Overview of Multicasting
Overview of Multicasting
DVMRP
mrouted implements the Distance-Vector Multicast Routing Protocol
(DVMRP). DVMRP is an Interior Gateway Protocol (IGP) used for
routing multicast datagrams within an autonomous network. The
primary purpose of DVMRP is to maintain the shortest return paths to
the source of the multicast datagrams. This is accomplished by using
topological knowledge of the network to implement a multicast
forwarding algorithm called Truncated Reverse Path Broadcasting
(TRPB).
mrouted structures routing information in the form of a pruned
broadcast delivery tree, which contains only routing information to those
subnets which have identified themselves as having members of the
destination multicast group. In other words, each router determines
which of its virtual network interfaces are in the shortest path tree. In
this way, DVMRP can intelligently decide if an IP multicast datagram
needs to be forwarded. Without such a feature, the network bandwidth
can easily be saturated through the forwarding of unnecessary
datagrams.
Since DVMRP routes only multicast datagrams, routing of unicast or
broadcast datagrams must be handled using a separate routing process.
To support multicasting across subnets that do not support IP
multicasting, DVMRP provides a mechanism called tunnelling.
Tunnelling forms a point-to-point link between pairs of mrouted routers
by encapsulating the multicast IP datagram within a standard IP
unicast datagram using the IP-in-IP protocol (IP protocol number 4).
This unicast datagram, containing the multicast datagram, is then
routed through the intervening routers and subnets. When the unicast
datagram reaches the tunnel destination, which is another mrouted
router, the unicast datagram is stripped away and the mrouted daemon
forwards the multicast datagram to its destination(s).
The following figure shows a tunnel formed between a pair of mrouted
routers. In this figure, mrouted router R1 receives a multicast packet
from node M. Since R1 is configured as one end of a tunnel, R1
encapsulates the IP multicast packet in a standard unicast IP packet
addressed to mrouted router R2. The packet, now treated as a normal IP