File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ PIM-DM (Dense Mode) Example
2+ ===========================
3+
4+ This example demonstrates the flood-and-prune behavior of PIM-DM
5+ (Protocol Independent Multicast - Dense Mode, RFC 3973).
6+
7+ Three multicast routers R1, R2 and R3 run PIM-DM, connecting two sources
8+ (Source1, Source2) and a receiver host (Host2). Source1 sends to group
9+ 226.1.1.1, which Host2 joins; Source2 sends to group 226.2.2.2, which
10+ nobody joins.
11+
12+ Dense mode initially floods each stream to every router (broadcast), then
13+ prunes the branches that have no downstream listeners: 226.2.2.2 is pruned
14+ everywhere (it has no receiver), while 226.1.1.1 is delivered along the
15+ branch toward Host2 and pruned on the other branches.
16+
17+ To run the example:
18+
19+ inet -u Cmdenv -c General
Original file line number Diff line number Diff line change 11[General]
22sim-time-limit = 300s
3- description = " PIM Final Test "
3+ description = " PIM-DM flood-and-prune (dense mode) "
44network = pimDMFinal
55
66**.hasPim = true
Original file line number Diff line number Diff line change @@ -17,6 +17,11 @@ import inet.node.inet.MulticastRouter;
1717import inet.node.inet.StandardHost;
1818
1919
20+ //
21+ // Demonstrates PIM-DM (Dense Mode) flood-and-prune across three multicast
22+ // routers (R1/R2/R3): Source1 feeds the group Host2 joins, Source2 feeds a group
23+ // with no listeners (pruned everywhere). See omnetpp.ini for the scenario.
24+ //
2025network pimDMFinal
2126{
2227 submodules :
Original file line number Diff line number Diff line change @@ -14,7 +14,9 @@ import inet.node.inet.StandardHost;
1414
1515
1616//
17- // A generated network with grid topology.
17+ // A 4x4 mesh of PIM multicast routers (R00..R33) with a server and a client,
18+ // used to distribute an IPTV-style multicast stream. OSPF provides the unicast
19+ // underlay for PIM's RPF. The omnetpp.ini runs it under both PIM-SM and PIM-DM.
1820//
1921network Network
2022{
Original file line number Diff line number Diff line change 1+ PIM IPTV Example
2+ ================
3+
4+ This example models IPTV-style multicast distribution over a 4x4 mesh of
5+ PIM routers (R00..R33). OSPF runs as the unicast underlay, so that PIM's
6+ RPF (Reverse Path Forwarding) checks use dynamically learned routes rather
7+ than static ones.
8+
9+ A 'server' streams to multicast group 239.0.0.11 and a 'client' joins it;
10+ the multicast tree is built across the mesh toward the client.
11+
12+ The [General] section is abstract; the same scenario runs under two PIM
13+ modes:
14+
15+
16+ 1. PIM_SM
17+ ---------
18+
19+ Sparse mode, with the Rendezvous Point located at R10 (192.168.13.1).
20+
21+
22+ 2. PIM_DM
23+ ---------
24+
25+ Dense mode (flood-and-prune).
26+
27+
28+ To run, e.g.:
29+
30+ inet -u Cmdenv -c PIM_SM
Original file line number Diff line number Diff line change @@ -17,6 +17,12 @@ import inet.node.inet.MulticastRouter;
1717import inet.node.inet.StandardHost;
1818
1919
20+ //
21+ // PIM-SM (Sparse Mode) topology with a static Rendezvous Point: receiver-side
22+ // designated routers (DR_R1/DR_R2), the RP, and source-side designated routers
23+ // (DR_S1/DR_S2) connecting two sources and two receivers. The omnetpp.ini
24+ // scenarios exercise the RP shared tree, Register, and SPT switchover.
25+ //
2026network PIM_SM_Network
2127{
2228 submodules :
Original file line number Diff line number Diff line change 1+ PIM-SM (Sparse Mode) Examples
2+ =============================
3+
4+ These examples demonstrate PIM-SM (Protocol Independent Multicast - Sparse
5+ Mode, RFC 7761) with a statically configured Rendezvous Point (RP).
6+
7+ Topology: receiver-side designated routers DR_R1/DR_R2, the RP (10.2.2.2),
8+ and source-side designated routers DR_S1/DR_S2, connecting two sources and
9+ two receivers. Sources register their traffic to the RP, which forwards it
10+ down the shared (*,G) tree to the receivers; last-hop routers then switch
11+ over to the (S,G) shortest-path tree.
12+
13+ The [General] section is abstract; run one of the scenarios below. They
14+ differ in the order and timing of joins versus sends.
15+
16+
17+ 1. Scenario1
18+ ------------
19+
20+ Receivers join the group before the source starts sending.
21+
22+
23+ 2. Scenario2
24+ ------------
25+
26+ The source starts sending before the receivers join, and the receivers
27+ come and go during the simulation.
28+
29+
30+ 3. Scenario3
31+ ------------
32+
33+ Long send and keepalive intervals exercise the PIM-SM timers.
34+
35+
36+ 4. Scenario4
37+ ------------
38+
39+ Two sources send to two different groups (239.0.0.11 and 239.0.0.22) at the
40+ same time, with two receivers each joining one of the groups.
41+
42+
43+ To run a scenario, e.g.:
44+
45+ inet -u Cmdenv -c Scenario1
You can’t perform that action at this time.
0 commit comments