22
1 Comnet 2006 Communication Networks Communication Networks Recitation 13 Recitation 13 Multicast Routing Multicast Routing

Communication Networks

Embed Size (px)

DESCRIPTION

Communication Networks. Recitation 13 Multicast Routing. The Problem. Traditional unicast model does not scale Millions of clients Server and network meltdown. Solution: IP Multicast. Source sends single stream Routers split stream towards all clients Guarantee only one copy in each link. - PowerPoint PPT Presentation

Citation preview

Page 1: Communication Networks

1Comnet 2006

Communication NetworksCommunication Networks

Recitation 13Recitation 13

Multicast RoutingMulticast Routing

Page 2: Communication Networks

2Comnet 2006

The ProblemThe ProblemTraditional unicast model does not scaleTraditional unicast model does not scale

– Millions of clientsMillions of clients– Server and network meltdownServer and network meltdown

Page 3: Communication Networks

3Comnet 2006

Solution: IP MulticastSolution: IP Multicast• Source sends single streamSource sends single stream• Routers split stream towards all clientsRouters split stream towards all clients• Guarantee only one copy in each linkGuarantee only one copy in each link

Page 4: Communication Networks

4Comnet 2006

Multicast Routing TreeMulticast Routing Tree

On tree relay router

Router with directly attached group membersIGMP

Multicast Routing Protocol

Page 5: Communication Networks

5Comnet 2006

Internet Group Management Internet Group Management Protocol (IGMP)Protocol (IGMP)

• Used by routers to learn about Multicast Used by routers to learn about Multicast Group Memberships on their directly Group Memberships on their directly attached subnetsattached subnets

• Implemented over IPImplemented over IP• Designated RouterDesignated Router

– Each network has one QuerierEach network has one Querier– All routers begin as QueriersAll routers begin as Queriers– Router with the lowest IP address chosenRouter with the lowest IP address chosen

Page 6: Communication Networks

6Comnet 2006

How IGMP WorksHow IGMP Works

one router is elected the “querier”one router is elected the “querier”querier periodically sends a Membership Query messagequerier periodically sends a Membership Query message

to the all-systems group (224.0.0.1), with TTL = 1to the all-systems group (224.0.0.1), with TTL = 1on receipt, hosts start random timers (between 0 and 10 on receipt, hosts start random timers (between 0 and 10

seconds) for each multicast group to which they belong seconds) for each multicast group to which they belong

Qrouters:

hosts:

Page 7: Communication Networks

7Comnet 2006

How IGMP Works (cont.)How IGMP Works (cont.)

when a host’s timer for group G expires, it sends a when a host’s timer for group G expires, it sends a Membership Report Membership Report to group Gto group G, with TTL = 1, with TTL = 1

other members of G hear the report and stop their timersother members of G hear the report and stop their timersrouters hear routers hear allall reports, and time out non-responding groups reports, and time out non-responding groups

Q

G G G G

Page 8: Communication Networks

8Comnet 2006

Shortest Path Tree (SPT)Shortest Path Tree (SPT)

• Source Based Tree:Source Based Tree: Rooted at the source, Rooted at the source, composed of the shortest paths between composed of the shortest paths between the source and each of the receivers in the the source and each of the receivers in the multicast group.multicast group.

• If the routing metric used is the latency If the routing metric used is the latency between neighbors, the resulted tree will between neighbors, the resulted tree will minimize delay over the multicast group.minimize delay over the multicast group.

• Example: DVMRP. Example: DVMRP.

Page 9: Communication Networks

9Comnet 2006

Distance-Vector Multicast Distance-Vector Multicast Routing Protocol (DMVRP)Routing Protocol (DMVRP)

DVMRP consists of two major components:DVMRP consists of two major components:(1) a conventional distance-vector routing (1) a conventional distance-vector routing

protocol (like RIP)protocol (like RIP)

(2) a protocol for determining how to forward (2) a protocol for determining how to forward multicast packets, based on the routing table multicast packets, based on the routing table and routing messages of (1)and routing messages of (1)

Page 10: Communication Networks

10Comnet 2006

Example TopologyExample Topologyg g

s

g

Page 11: Communication Networks

11Comnet 2006

Phase 1: FloodingPhase 1: Floodingg g

s

g

Page 12: Communication Networks

12Comnet 2006

Phase 2: PruningPhase 2: Pruningg g

s

prune (s,g)

prune (s,g)

g

Page 13: Communication Networks

13Comnet 2006

Steady StateSteady State

g g

s

g

g

Page 14: Communication Networks

14Comnet 2006

graft (s,g)

graft (s,g)

Joining on New ReceiversJoining on New Receivers

g g

s

g

g

report (g)

Page 15: Communication Networks

15Comnet 2006

Steady State after JoiningSteady State after Joining

g g

s

g

g

Page 16: Communication Networks

16Comnet 2006

Steiner Minimal Tree (SMT)Steiner Minimal Tree (SMT)

• Shared Tree: All sources use the same Shared Tree: All sources use the same shared tree. shared tree.

• SMT is defined to be the minimal cost SMT is defined to be the minimal cost subgraph (tree) spanning a given subgraph (tree) spanning a given subset of nodes in a graphsubset of nodes in a graph

• Approximate SMT: KMBApproximate SMT: KMB

Page 17: Communication Networks

17Comnet 2006

A Steiner Tree ExampleA Steiner Tree Example

• Which is the Steiner tree for green and Which is the Steiner tree for green and red nodes?red nodes?

1010

10

2

11

4

2

53 3

Page 18: Communication Networks

18Comnet 2006

A Steiner Tree Example: A Steiner Tree Example: SolutionSolution

• Shortest Path treeShortest Path tree =/= =/= Steiner TreeSteiner Tree

• 14 + 13 =/= 16 14 + 13 =/= 16

1010

10

2

11

4

2

53 3

Page 19: Communication Networks

19Comnet 2006

• G=(V,E), terminals RG=(V,E), terminals R• Step 1Step 1: Construct a complete directed distance : Construct a complete directed distance

graph of R: Ggraph of R: G11=(V=(V11,E,E11,c,c11).).

• Step 2Step 2: Find the min spanning tree T: Find the min spanning tree T11 of G of G11. .

• Step3Step3: Construct a subgraph G: Construct a subgraph GSS of G by replacing of G by replacing

each edge in Teach edge in T11 by its corresponding shortest path in by its corresponding shortest path in

G. G.

• Step 4Step 4: Find the min spanning tree T: Find the min spanning tree TSS of G of GS.S.

• Step 5Step 5: Construct a Steiner tree T: Construct a Steiner tree THH from T from TSS by by

deleting leaves that are not in R.deleting leaves that are not in R.

KMB AlgorithmKMB Algorithm

Page 20: Communication Networks

20Comnet 2006

Due to [Kou, Markowsky and Berman 81’]Due to [Kou, Markowsky and Berman 81’]

Worst case Worst case time complexitytime complexity O(|S||V| O(|S||V|22).).

CostCost no more than 2(1 - 1/ no more than 2(1 - 1/ll) *optimal cost ) *optimal cost

where where ll = number of leaves in the steiner tree. = number of leaves in the steiner tree.

KMB Algorithm Cont.KMB Algorithm Cont.

Page 21: Communication Networks

21Comnet 2006

KMB ExampleKMB Example

A

B

C D

EF

G

HI

10

1

1

2

9

8

1 1

1/2

2

1/2

1

Destination Nodes

G

A

C

D4

4

444 4

B

G1

A

C

D4

4

4

B

T1

B

C D

EF

G

HI

1

1

2

1 1

1/2

2

1/2

1

A

Gs

Page 22: Communication Networks

22Comnet 2006

KMB Example Cont.KMB Example Cont.

B

C D

EF

G

HI

1

1

2

1 1

1/2

2

1/2

A

Ts

B

C D

EF

I

1

1

2

1 1

2

A

TH