Multicasting Transmitting a Packet to a Group of




























- Slides: 28
Multicasting: Transmitting a Packet to a Group of Receivers unicasting multicasting CS 118/2 -10 -2000 1 Lixia Zhang/UCLA
Why Multicast? (1) when sending the same data to multiple receivers, multicasting minimizes: – link bandwidth consumption – sender and router processing – delivery delay compared to multiple unicasts: CS 118/2 -10 -2000 2 Lixia Zhang/UCLA
Why Multicast? (cont. ) (2) when sending to receivers whose individual addresses are unknown or changeable, for example: – locating or advertising services – reporting to a changing set of monitoring stations – tracking migrating processes …multicasting is simpler and more robust than the alternatives u – directory servers, configuration files, exhaustive search CS 118/2 -10 -2000 3 Lixia Zhang/UCLA
Components of the IP Multicast Architecture hosts service model host-to-router protocol (IGMP) routers multicast routing protocols (various) CS 118/2 -10 -2000 4 Lixia Zhang/UCLA
IP Multicast Service Model ueach group identified by an IP address – groups may be of any size – sender sends a multicast packet in the same way as sending a unicast packet umembers of groups may be located anywhere in the Internet umembers can join and leave at will usenders need not be members analogy: each multicast address is like a radio frequency, on which anyone can transmit, and to which anyone can tune-in. CS 118/2 -10 -2000 5 Lixia Zhang/UCLA
IP Multicast Addresses Class D IP addresses: 1 110 group ID in “dotted decimal” notation: 224. 0. 0. 0 — 239. 255 two administrative categories: – “well-known” multicast addresses, assigned by IANA (Internet Address and Number Authority) – “transient” multicast addresses, assigned and reclaimed dynamically CS 118/2 -10 -2000 6 Lixia Zhang/UCLA
Mapping IP Multicast Addresses to Link-Layer Multicast Addresses ufor Ethernet and other LANs using 802 addresses: IP multicast address 1110 28 bits group bit 000000010000010111100 23 bits LAN multicast address ufor point-to-point links: no mapping needed CS 118/2 -10 -2000 7 Lixia Zhang/UCLA
Components of the IP Multicast Architecture hosts service model host-to-router protocol (IGMP) routers multicast routing protocols (various) CS 118/2 -10 -2000 8 Lixia Zhang/UCLA
Internet Group Management Protocol (IGMP) uthe protocol by which hosts report their multicast group memberships to neighboring routers uoperates over broadcast LANs and pointto-point links uoccupies similar position and role as ICMP in the TCP/IP protocol stack CS 118/2 -10 -2000 9 Lixia Zhang/UCLA
How IGMP Works u one router is elected the “querier” on each link u querier periodically sends Membership Query message to the all-systems group (224. 0. 0. 1), with TTL = 1 u on receipt, hosts start random timers [0, 10 sec] for each multicast group to which they belong routers: Q hosts: CS 118/2 -10 -2000 10 Lixia Zhang/UCLA
How IGMP Works (cont. ) Q G G u when a host’s timer for group G expires, it sends a Membership Report to group G, with TTL = 1 u other members of G hear the report, stop their timers u routers hear all reports CS 118/2 -10 -2000 11 Lixia Zhang/UCLA
How IGMP Works (cont. ) uin normal case, only one report message per group is sent in response to a query – (routers need not know who all the members are, only that members exist) uquery interval is typically 60— 90 seconds uwhen a host first joins a group, it sends one or two immediate reports, instead of waiting for a query CS 118/2 -10 -2000 12 Lixia Zhang/UCLA
Leaving a multicast group uwhen a host leaves a group: sends a Leave Group message if it was the most recent host to report membership in that group uupon receiving Leave Group message, query router sends a couple of groupspecific queries, specifying a small maxresponse-time uif no report heard, assume the group is no longer present on the link CS 118/2 -10 -2000 13 Lixia Zhang/UCLA
Components of the IP Multicast Architecture hosts service model host-to-router protocol (IGMP) routers multicast routing protocols (various) CS 118/2 -10 -2000 14 Lixia Zhang/UCLA
Link-State Multicast u. Router on a LAN learns whether any local host wants mcast data through IGMP u. Augment update message (LSP) to include set of groups that have members on a particular LAN. u. Each router uses Dijkstra's algorithm to compute shortest-path spanning tree for each source-group pair. u. Each router caches tree for currently active source-group pairs. CS 118/2 -10 -2000 15 Lixia Zhang/UCLA
Link state: each router floods link-state advertisement Multicast: add membership information to “link state” msg: "I have a member for group G" Each router then has a complete map of the topology, including which links have members of which multicast groups S 1 Z X R 1 Y R 2
Z has network map, including membership at X and Y Z computes shortest path tree from S 1 to X and Y Z builds multicast entry with one outgoing interface W, Q, R, each build multicast entries S 1 Z W X Q R R 1 Y R 2
Link state advertisement with new membership (R 3) may require incremental computation and addition of interface to outgoing interface list (Z) (Similarly, disappearance of a membership may cause deletion an interface from an outgoing interface list) S 1 Z R 3 W T Q X R R 1 Y R 2
Distance-Vector Multicast Routing Protocol DVMRP consists of 2 major components: (1) a conventional distance-vector routing protocol (like RIP) which builds, in each router, a routing table like this: destination subnet a b c … shortest distance 1 5 3 … via interface i 1 i 2 … (2) a protocol for determining how to forward multicast packets, based on the routing table and routing messages of (1) CS 118/2 -10 -2000 19 Lixia Zhang/UCLA
Distance-Vector Multicast Reverse Path Broadcast (RPB) u. Each router already knows that shortest path to host S goes through router N. u. When receive multicast packet from S, forward on all outgoing links (except the one the packet arrived), iff packet arrived from N. u. Eliminate duplicate broadcast packets by only letting “parent” for LAN (relative to S) forward CS 118/2 -10 -2000 20 Lixia Zhang/UCLA
Example Topology g g s Routers that learned members for group g existing on local network CS 118/2 -10 -2000 21 g Lixia Zhang/UCLA
Phase 1: Truncated Broadcast g g s g CS 118/2 -10 -2000 22 Lixia Zhang/UCLA
Phase 2: Pruning g g prune (s, g) s prune (s, g) g CS 118/2 -10 -2000 24 Lixia Zhang/UCLA
Steady State g g g s g CS 118/2 -10 -2000 25 Lixia Zhang/UCLA
Grafting on New Receivers g g g report (g) source graft (s, g) s graft (s, g) Mcast group g CS 118/2 -10 -2000 26 Lixia Zhang/UCLA
Steady State after Grafting g s g CS 118/2 -10 -2000 27 Lixia Zhang/UCLA
The MBone u. MBone = Multicast Backbone uan “interconnected” set of multicastcapable routers, providing the IP multicast service in the Internet ucan be thought of as a virtual network, overlaid on the Internet CS 118/2 -10 -2000 29 Lixia Zhang/UCLA
Components of the MBone IP tunnel for multicast delivery: IP multicast packet is encapsulat in a unicast packet addressed to far end of tunnel data IP header, dest=mcast dest=ucast R R data IP header, dest=mcast H R H CS 118/2 -10 -2000 R square/circle: thick square/circle: solid line: dashed line: thick line: 30 host/router MBone host/router physical link tunnel part of MBone Lixia Zhang/UCLA