2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

28
06/19/22 1 Multicast on the Internet CSE 6590 Fall 2009

description

3 IPv4 Address Formats

Transcript of 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Page 1: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

05/06/23 1

Multicast on the Internet

CSE 6590Fall 2009

Page 2: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

2

Addressing• Class D address• Ethernet broadcast address (all 1’s)• IP multicast using

– Link-layer (Ethernet) broadcast– Link-layer (Ethernet) multicastBoth cases need filtering at IP layer.

• Source: unicast IP address SReceivers: multicast group ID G

• Each group is identified by (S, G)

Page 3: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

3

IPv4 Address Formats

Page 4: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

4

Mapping from Class D IP adress to Ethernet multicast adress

Page 5: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Reverse Path Forwarding

if (multicast datagram received on incoming link on shortest path back to center)

then flood datagram onto all outgoing links else ignore datagram

rely on router’s knowledge of unicast shortest path from it to sender

each router has simple forwarding behavior:

Page 6: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

6

Reverse Path Forwarding (2)

• Building a loop-free broadcast tree• No knowledge of group membership

Page 7: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

7

A

B

G

DE

c

F

Reverse Path Forwarding

Page 8: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

8

A

B

G

DE

c

F

A

B

G

DE

c

F

(a) Broadcast initiated at A (b) Broadcast initiated at D

Spanning-Tree Broadcast

Page 9: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

9

Internet Multicast Service Model

Multicast group concept: use of indirection• a host “sends” IP datagrams to multicast group• routers forward multicast datagrams to hosts that have

“joined” that multicast group

128.119.40.186

128.59.16.12

128.34.108.63

128.34.108.60

multicast group

226.17.30.197

Page 10: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

10

Multicast groups Class D Internet addresses reserved for multicast:

Host group semantics:o anyone can “join” (receive from) multicast groupo anyone can send to multicast groupo no network-layer identification to hosts of members

Needed: infrastructure to deliver multicast-addressed datagrams to all hosts that have joined that multicast group

Page 11: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Multicast Protocols

Transport layer• UDP• Real-time Transport Protocol (RTP): for

multimedia content• ReSerVation Protocol (RSVP): for bandwidth

reservation in a multicast distribution

11

Page 12: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Multicast Protocols (2)

Routing, delivery• On a local network:

– Internet Group Management Protocol (IGMP)– Multicast Listener Discovery (MLD): similar to IGMP

but for IPv6• Intra-domain:

– MOSPF, PIM, DVMRP• Inter-domain:

– Multicast Border Gateway Protocol (MBGP)

12

Page 13: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

13

Joining a multicast group: 2-step process

• Local: host informs local multicast router of desire to join group: IGMP (Internet Group Management Protocol)

• Wide area: local router interacts with other routers to receive multicast datagram flow– many protocols (e.g., DVMRP, MOSPF, PIM)

IGMPIGMP

IGMP

wide-areamulticast

routing

Page 14: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

14

IGMP: Internet Group Management Protocol

• Host: sends IGMP report when application joins multicast group– IP_ADD_MEMBERSHIP socket option– hosts need not explicitly “unjoin” group when leaving

• Router: sends IGMP query at regular intervals– hosts belonging to a multicast group must reply to

query

query report

Page 15: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

15

IGMP• Router: Host

Membership Query message broadcast on LAN to all hosts.

• Host: Host Membership Report message to indicate group membership– randomized delay

before responding– implicit leave via no

reply to Query

• Group-specific Query• Leave Group message

– Last host replying to Query can send explicit Leave Group message

– Router performs group-specific query to see if any hosts left in group

– Introduced in RFC 2236

IGMP v3: current version

Page 16: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

16

IGMP: Summary

• For membership management.• Between a host on a subnet (Ethernet) and the router for

the subnet.• The router periodically broadcast an IGMP host-

membership query message on its subnet.• A host subscribes to a group replies by multicasting a

host-membership report message.– Note: feedback implosion uses a random timer.

• The report is sent 3 times (for reliability).• IGMP-1: hosts send no report leaving the group

IGMP-2: hosts send explicit host-membership leave messages to reduce leave latency.

Page 17: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

17

Truncated Broadcasting• Extension of Reverse Path Forwarding• No members of a group on a subnet leaf router will not

forward packets of this group to the subnet (pruning).• But does not reduce traffic in the core network• More efficient multicast routing is needed!!!

Page 18: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

18

Multicast Routing Approaches

• Minimum cost trees– Minimum Steiner trees

• Shortest path trees– Source-based trees– Core-based trees

…we first look at basic approaches, then specific protocols adopting these approaches

Page 19: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Minimum Steiner Trees

• Steiner Tree: minimum cost tree connecting all routers with attached group members.

• Problem is NP-complete.• Excellent heuristics exist.• Not used in practice:

– computational complexity.– information about entire network needed.– monolithic: rerun whenever a router needs to

join/leave.

Page 20: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Shortest Path Tree• Multicast cast forwarding tree: tree of shortest path

routes from source to all receivers.– Dijkstra’s algorithm.

R1

R2

R3

R4

R5

R6 R7

21

6

3 45

i

router with attachedgroup member

router with no attachedgroup memberlink used for forwarding,i indicates order linkadded by algorithm

LEGENDS: source

Page 21: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

Internet Multicasting Routing: DVMRP

• DVMRP: distance vector multicast routing protocol, RFC1075.

• Flood and prune: reverse path forwarding, source-based tree.– initial datagram to multicast group flooded

everywhere via RPF– routers not wanting the multicast data: send

prune messages to upstream neighbors

Page 22: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

DVMRP Example

R1

R2

R3

R4

R5

R6 R7

21

6

3 45

i

router with attachedgroup member

router with no attachedgroup memberlink used for forwarding,i indicates order linkadded by algorithm

LEGENDS: source

Page 23: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

DVMRP (2)• Soft state: DVMRP router periodically (1 min.) “forgets”

that branches are pruned: – mcast data again flows down unpruned branches– downstream routers: reprune or else continue to

receive data• Routers can quickly regraft to tree

– following IGMP join at leaf• Odds and ends

– commonly implemented in commercial routers– Mbone routing done using DVMRP

• Works well in small autonomous domains

Page 24: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

24

DVMRP: Summary• Distance Vector Multicast Routing Protocol• Leaf router sends a prune message to neighbouring

routers when there is no group member on the subnet.• Intermediate routers perform pruning whenever possible.• Flooding and pruning are repeated periodically, when the

current state times out.• Between flooding rounds, a host can re-join a group by

sending a graft message.• Intermediate routers propagates the graft message

upstream until the path is re-connected.

Page 25: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

25

MOSPF• Extends OSPF for multicasting.• Every router has the complete topology of its autonomous

system.• A receiver joins a multicast group by exchanging IGMP

messages with its end-router.• The end-router broadcasts the presence of this

destination (group membership) to the whole network.• Each router maintains a group membership table [S,G,

<d1, d2, …>]• A sender simply sends data packets as they are available.• Each router uses the network topology, the group

membership table, and the multicast group ID in the data packets to compute the route(s) to the destination(s).

Page 26: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

26

Core-Based Trees• For many-to-many multicast• CBT, PIM-SM, PIM-DM• Purpose: to reduce the amount of routing info stored at

routers when a multicast group has a large number of members and multiple senders.

• A multicast group requires a core (rendez-vous point).• Receivers “join” the (shortest-path) tree rooted at the

core only one tree per multicast group (used for multiple senders).

• Sources send multicast data to the core, which then multicasts the data to the tree.

Page 27: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

27

MBone• Multicast backbone of the Internet• Was a long-running experimental approach to enabling

multicast between sites through the use of tunnels• No longer operational• Not all routers support multicast routing protocols and

IGMP.• Connecting multicast-capable routers using (virtual) IP

tunnels

Page 28: 2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.

28

References• Multicasting on the Internet and Its Applications, Sanjoy

Paul, Kluwer Academic Publishers, 1998.