PIM-PROTOCOL INDEPENDENT
MULTICAST
Protocol-independent
multicast, or PIM, was developed in response to the scaling problems of earlier
multicast routing protocols. In particular, it was recognized that the existing
protocols did not scale well in environments where a relatively small
proportion of routers want to receive traffic for a certain group.
For
example, broadcasting traffic to all routers until they explicitly ask to be
removed from the distribution is not a good design choice if most routers don’t
want to receive the traffic in the
first
place.
This
situation is sufficiently common that PIM divides the problem space into sparse
mode and dense mode, where sparse and dense refer to the proportion of routers
that will want the multicast. PIM dense mode (PIM-DM) uses a flood-and-prune
algorithm like DVMRP, and suffers from the same scalability problem.
PIM sparse mode (PIM-SM) has become the dominant multicast
routing protocol. The “protocol-independent”
aspect of PIM, by the way, refers to the fact that, unlike earlier protocols
such as DVMRP, PIM does not depend on any particular sort of unicast routing—it
can be used with any unicast routing protocol. In PIM-SM, routers explicitly
join the multicast distribution
tree
using PIM protocol messages known as Join messages.
The
contrast to DVMRP’s approach of creating a broadcast tree first and then
pruning the uninterested routers. The question that arises is where to send
those Join messages because, after all, any host (and any number of hosts) could
send to the multicast group. To address this, PIM-SM assigns to each group a
special router known as the rendezvous
point (RP).
In
general, a number of routers in a domain are configured to be candidate RPs,
and PIM-SM defines a set of procedures by which all the routers in a domain can
agree on the router to use as the RP for a given group. These procedures are
rather complex, as they must deal with a wide variety of scenarios, such as the
failure of a candidate RP and the partitioning of a domain into two separate
networks due to a number of link or node failures. All routers in a domain know
the uncast IP address of the RP for a given group. A multicast forwarding tree
is built as a result of routers sending Join messages to the RP. PIM-SM allows
two types of tree to be constructed: a shared
tree, which may be used by all senders, and a source-specific tree, which may be used only by a specific sending host.
The
normal mode of operation creates the shared tree first, followed by one or more
source-specific trees if there is enough traffic to warrant it. Because
building trees installs state in the routers along the tree, it is important
that the default is to have only one tree for a group, not one for every sender
to a group.All of its mechanisms for building and maintaining trees take
advantage of unicast routing without depending on any particular unicast
routing protocol. The formation of trees is entirely determined by the paths
that Join messages follow, which is
determined
by the choice of shortest paths made by unicast routing. Thus, to be precise,
PIM is “unicast routing protocol independent,” as compared to DVMRP. Note that
PIM is very much
bound up
with the Internet Protocol—it is not protocol independent in terms of
network-layer protocols.
The
design of PIM-SM again illustrates the challenges in building scalable
networks, and how scalability is sometimes pitted against some sort of
optimality. The shared tree is certainly more scalable than a source-specific
tree, in the sense that it reduces the total state in routers to be on the
order of the number of groups rather than the number of senders times the
number of groups. However, the source-specific tree is likely to be necessary
to achieve efficient routing and effective use of link bandwidth
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.