CS558 Sylabus

# Extending the Link State method for multicasting

In the Link State method, every node will possess the same topology information on the network and independently computes the routing table.

• The link state routing technique can be extended to handle multicast routing by including multicast membership information in the Link State (broadcast) messages.

Each router will then know which subnet contain members of multicast groups and can easily construct per source multicast routing tables.

• Consider the following network topology:

(Routing table can be found using the Dijkstra's Algorithm)

• Suppose there are multicast members residing on networks served by routers B and F.

The nodes B and F will include this fact in their link state broadcast messages:

• Thus, all nodes in the network will know that routers B and F serves multicast members of group G:

• Multicast Forwarding Table Construction:

• Fact 1: Each node receive the same distance matrix.

The distance matrix of the above figure is:

 ``` | A | B | C | D | E | F ----+---+---+---+---+---+--- A | - | * | 6 | 2 | 4 | * ----+---+---+---+---+---+--- B | * | - | 1 | 4 | 1 | * ----+---+---+---+---+---+--- C | 6 | 1 | - | * | * | 7 ----+---+---+---+---+---+--- D | 2 | 4 | * | - | * | 4 ----+---+---+---+---+---+--- E | 4 | 1 | * | * | - | 1 ----+---+---+---+---+---+--- F | * | * | 7 | 4 | 1 | - ----+---+---+---+---+---+--- ```

• Fact 2: Each node knows the set of destination routers containing multicast receivers.

• Therefore, each node can construct - on its own - the multicast forwarding table for a multicast group G rooted at any node

• Example: constructing multicast forwarding table for source A

• Each node can determine (onw its own) that the shortest paths from A to all other nodes in the network are the following:

• By removing all links that do not lead to the multicast destinations, each node can - on its own - construct the multicast tree rooted at A:

• Each router - on its own - can determine its own multicast routing entry: enter your own children in the multicast routing table.

• E.g., node D: is not part of the multicast tree and has no children nodes, so its multicast table entry for (A,G) is empty

• E.g., node E: is an "internal" node with children B and F, so its multicast table entry for (A,G) is (B,F).