300 likes | 374 Views
NETS 3303 Networked Systems. Multicast. Today!. We will learn what multicast is why it is used and how it works. We will tie it to QoS and see why it is a corner stone of Multimedia delivery. Outcomes. Understand why multicast is important (necessary)
E N D
NETS 3303 Networked Systems Multicast
Today! • We will learn what multicast is why it is used and how it works. • We will tie it to QoS and see why it is a corner stone of Multimedia delivery
Outcomes • Understand why multicast is important (necessary) • Understand how transport layer mechanisms fit into MCAST • Knowing about some of the protocols and their features • Knowing limitations and remedies
Cast? • Unicast – flow from one host to another host • Broadcast – flow from one host to all local hosts • Directed Broadcast – flow from one host to all hosts on a foreign network • Multicast – flow between hosts in a group
Applications • One-to-many or many-to-many • Distributed games • TV broadcast • Video conferences • Group telephone call • IPv4 not built for this
Unicast • Assume 100.000.000 people watch cricket on broadcast TV • If every connection each have copy of match – unicast • Each connection 1.5 Mbps => Total BW 150.000.000.000.000 bps for the match • Does this scale to HDTV O(N2)
Multicast • Instead of many unicast flows • Let routers build hierarchy • Tree structure • Multicast group: • Everyone interconnected • Everything “broadcasted” within group
Multicast mrouter mrouter mrouter
Some broadcasting sites today are limited to a maximum number of users, why do you think?
Multicast • Because they use unicast. Multicast is not yet widely implemented in the Internet
Grouping • Multicast IP address range • 224.0.0.0 – 239.255.255.255 • Addresses not unique like unicast • One address shared by group • Some addresses reserved e.g. 224.0.0.1 (all hosts) • Applicable to • LAN • WAN • Special routing needed
IGMP • Tree structure • Leaf – Host, intermediate – routers • Leaf initiated join and leave • Leaf can send to group without joining • Inter network communication • Special multicast routers • Controlled by IGMP • Simple, 2 message types • IGMPQUERY (from router) • IGMPREPORT (from leaf)
LAN • IGMP not needed for LAN, why?
LAN • On a LAN, the Multicast address can simply be converted into a corresponding link layer address and be broadcasted.
LAN • Need for address translation IP-MAC • IANA reserved space • 00:00:5e:00:00:00 - 00:00:5e:ff:ff:ff (lower half for multicast) • Ethernet: multicast -> set first byte 01 so • Multicast MAC range = • 01:00:5e:00:00:00 - 01:00:5e:7f:ff:ff • Set last 23 bits equal to IP address • Not 1-1 mapping, IP address filtering needed
Multicast Routing • Flood and prune protocols • Sender floods network • Router rejects all incoming packets except link towards source • Router floods all links except link towards source • If traffic not desired, return prune message • Example, Distance Vector Multicast Routing Protocol (DVMRP)
Multicast Routing • Distance Vector Protocols • Example, MOSPF and extended OSPF • Distribute table of distances to all routers • From received tables, derive own table • Table decides on forwarding path
Multicast Routing • They do not scale • Every router that has no participating host has to keep state of group to prune • Deploying this on a global scale is insane.
BGMP • Do not keep state of hosts • Build shared tree of domains • Use other routing protocol within domain • Multicast Address-Set Claim (MASC) • Allocate group addresses to domains • Distribute knowledge to other domains using BGMP
BGMP Domain C Root Domain B Domain D Domain A BGMP Join MOSPF enabled Routing
Scoping • Multicast addresses scarce • Scoping allows reuse • Method 1, set TTL field in IP header • Simple • crude • Method 2, administrative scoping • Set rules in routing tables • More refined • Difficult, more knowledge required
MBONE • No multicast backbone routers • Overlaid experimental network • Software typically runs on SPARCs • Most common mrouted • IP Tunnelling between mcast islands • Normal routing protocols useless • TTL scoping
Reliable multicast • Problems • Fate sharing • If one unicast host fails the session fails. What if there are three multicast hosts and one fails? • Performance • Reservations made on lowest or average connection? • Centralised – Distributed retransmissions? • If one host needs few and another needs many retransmissions are they still the same session?
Unwanted traffic • What negative effects can someone sending high volume traffic to a multicast group have? • What can prevent this?
Unwanted Traffic • Low-bandwidth links can get saturated. This can cause: • Packet loss or extensive delays • High costs (expensive links) • The answer is QoS management
QoS Routing • Reliable Transport protocols • Retransmissions do not scale • Alternative, FEC • Resource reservations for multicast • Dynamic memberships • Scale across AS domains • Allow for heterogeneity (links, hosts) • Allow for different levels (differentiated cost)
Reading • IETF RFCs 1075, 1112, 1584, 2357