12.07.2015 Views

The ns Manual (formerly ns Notes and Documentation)1 - NM Lab at ...

The ns Manual (formerly ns Notes and Documentation)1 - NM Lab at ...

The ns Manual (formerly ns Notes and Documentation)1 - NM Lab at ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 30Multicast RoutingThis section describes the usage <strong>and</strong> the internals of multicast routing implement<strong>at</strong>ion in <strong>ns</strong>. We first describe the userinterface to enable multicast routing (Section 30.1), specify the multicast routing protocol to be used <strong>and</strong> the various methods<strong>and</strong> configur<strong>at</strong>ion parameters specific to the protocols currently supported in <strong>ns</strong>. We then describe in detail the internals <strong>and</strong>the architecture of the multicast routing implement<strong>at</strong>ion in <strong>ns</strong> (Section 30.2).<strong>The</strong> procedures <strong>and</strong> functio<strong>ns</strong> described in this chapter can be found in various files in the directories ~<strong>ns</strong>/tcl/mcast, ~<strong>ns</strong>/tcl/ctrmcast;additional support routines are in ~<strong>ns</strong>/mcast_ctrl.{cc,h}, ~<strong>ns</strong>/tcl/lib/<strong>ns</strong>-lib.tcl, <strong>and</strong> ~<strong>ns</strong>/tcl/lib/<strong>ns</strong>-node.tcl.30.1 Multicast APIMulticast forwarding requires enhancements to the nodes <strong>and</strong> links in the topology. <strong>The</strong>refore, the user must specify multicastrequirements to the Simul<strong>at</strong>or class before cre<strong>at</strong>ing the topology. This is done in one of two ways:orset <strong>ns</strong> [new Simul<strong>at</strong>or -multicast on]set <strong>ns</strong> [new Simul<strong>at</strong>or]$<strong>ns</strong> multicastWhen multicast exte<strong>ns</strong>io<strong>ns</strong> are thus enabled, nodes will be cre<strong>at</strong>ed with additional classifiers <strong>and</strong> replic<strong>at</strong>ors for multicastforwarding, <strong>and</strong> links will contain elements to assign incoming interface labels to all packets entering a node.A multicast routing str<strong>at</strong>egy is the mechanism by which the multicast distribution tree is computed in the simul<strong>at</strong>ion. <strong>ns</strong>supports three multiast route comput<strong>at</strong>ion str<strong>at</strong>egies: centralised, de<strong>ns</strong>e mode(DM) or shared tree mode(ST).<strong>The</strong> method mrtproto{} in the Class Simul<strong>at</strong>or specifies either the route comput<strong>at</strong>ion str<strong>at</strong>egy, for centralised multicastrouting, or the specific detailed multicast routing protocol th<strong>at</strong> should be used.<strong>The</strong> following are examples of valid invoc<strong>at</strong>io<strong>ns</strong> of multicast routing in <strong>ns</strong>:set cmc [$<strong>ns</strong> mrtproto CtrMcast]$<strong>ns</strong> mrtproto DM;# specify centralized multicast for all nodes;# cmc is the h<strong>and</strong>le for multicast protocol object;# specify de<strong>ns</strong>e mode multicast for all nodes261

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!