Department of Electrical Engineering and Computer Sciences University of California Berkeley Chats Video Conferencing Audio Conferencing Caches and Proxies Webcasts Radio TV Push IE Channels Membership access control S G data Net djoaitnas G R0 G R1 G data G s R1 R 0 jo in RG n 1da jotina sG Rn 1 open group anyone can join closed group restrictions on joining Sender access control anyone can send to group anyone in group can send to group only one host can send to group Packet delivery is best effort Multicast can be implemented at different layers data link layer e g Ethernet multicast network layer e g IP multicast application layer e g as an overlay network like Kazaa Which layer is best How are multicast packets addressed How is join implemented How is send implemented How does multicast traffic get routed This is easy at the link layer and hardest at the network layer How much state is kept and who keeps it Reserve some Ethernet MAC addresses for multicast To join group G network interface card NIC normally only listens for packets sent to unicast address A and broadcast address B to join group G NIC also listens for packets sent to multicast address G NIC limits number of groups joined implemented in hardware so efficient To send to group G packet is flooded on all LAN segments like broadcast can waste bandwidth but LANs should not be very large Only host NICs keep state about who has joined scalable to large number of receivers groups Single LAN limited to small number of hosts limited to low diameter latency essentially all the limitations of LANs compared to internetworks Broadcast doesn t cut it in larger networks 0 Interconnected LANs LANs support link level multicast Map globally unique multicast address to LANbased multicast address LAN specific algorithm IP Group addresses are class D addresses 1110 28 or 224 0 0 0 to 239 255 255 255 1 Operates between Router and local Hosts typically attached via a LAN e g Ethernet Query response architecture 1 Router periodically queries the local Hosts for group membership information Can be specific or general 2 3 4 Hosts receiving query set a random timer before responding First host to respond sends membership reports All the other hosts observe the query and suppress their own repots To Join send a group send an unsolicited Join Start a group by joining it To leave don t have to do anything Report Query to 224 0 0 1 Suppresses Report Soft state 2 1 3 4 0 5 ata d R 0 R1 data R0 data S R1 data Rn 1 data Net R n 1 dat a R0 R1 Rn 1 Broadcast Center Backbone ISP 6 7 Broadcast Center Backbone ISP 0 Kinds of Trees Shared Tree Source Specific Trees Tree Computation Methods Intradomain Update methods Build on unicast Link State MOSPF Build on unicast Distance Vector DVMRP Protocol Independent PIM Interdomain routing BGMP This is still evolving 7 8 1 8 Scales poorly with number of groups A router must maintain state for every group that traverses it many groups traverse core routers Supporting higher level functionality is difficult NLM best effort multi point delivery service Reliability and congestion control for NLM complicated Deployment is difficult and slow Difficult to debug problems given the service model 1 7 Assume reliability through retransmission Sender can not keep state about each receiver e g what receivers have received number of receivers unknown and possibly very large Sender can not retransmit every lost packet even if only one receiver misses packet sender must retransmit lowering throughput N ACK implosion described next 91 Positive acknowledgements ack every n received packets what happens for multicast Negative acknowledgements only ack when data is lost assume packet 2 is lost R1 R1 SS 3 2 1 R2 R2 R3 R3 1 When a packet is lost all receivers in the subtree originated at the link where the packet is lost send NACKs 3 R1 R1 2 SS 3 2 R2 R2 2 3 R3 R3 1 Every node estimates distance in time from every other node Information is carried in session reports 5 of bandwidth Nodes use randomized function of distance to decide when to Send a request repair Reply to a request repair 7 7 Broadcast Center Remember what interdomain protocols optimize for 8 Backbone ISP They make more money without multicast 2 Provide multicast functionality above the IP unicast Gateway nodes could be the hosts or multicast gateways in the network Advantages No multicast dial tone needed Performance can be optimized to application Loss priorities etc More control over the topology of the tree Easier to monitor and control groups Disadvantages Scale Performance if just implemented on the hosts not gateways Large amount of work on multicast routing Major problems preventing flooding minimizing state in routers denial of service attacks deployment Multicast can be implemented at different layers lower layers optimize performance higher layers provide more functionality IP Multicast still not widely deployed Ethernet multicast is deployed application layer multicast systems are promising
View Full Document