NETS 3303 Networked Systems
description
Transcript of NETS 3303 Networked Systems
Björn LandfeldtSchool of Information Technologies
NETS 3303Networked Systems
Multicast
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
Applications
• One-to-many or many-to-many– Distributed games– TV broadcast– Video conferences– Group telephone call
• IPv4 not built for this
Björn LandfeldtSchool of Information Technologies
Unicast
Björn LandfeldtSchool of Information Technologies
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)
Björn LandfeldtSchool of Information Technologies
Multicast
• Instead of many unicast flows– Let routers build hierarchy– Tree structure
• Multicast group:– Everyone interconnected– Everything “broadcasted” within group
Björn LandfeldtSchool of Information Technologies
Multicast
mrouter
mrouter
mrouter
Björn LandfeldtSchool of Information Technologies
Some broadcasting sites today are
limited to a maximum number of users, why
do you think?
Björn LandfeldtSchool of Information Technologies
Multicast
• Because they use unicast. Multicast is not yet widely implemented in the Internet
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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)
Björn LandfeldtSchool of Information Technologies
LAN
• IGMP not needed for LAN, why?
Björn LandfeldtSchool of Information Technologies
LAN
• On a LAN, the Multicast address can simply be converted into a corresponding link layer address and be broadcasted.
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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)
Björn LandfeldtSchool of Information Technologies
Flood and Prune
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
Is there anything wrong with these
approaches?
Björn LandfeldtSchool of Information Technologies
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.
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
BGMP
Domain ADomain A
Domain DDomain D
Domain CRoot
Domain CRoot
Domain BDomain B
BGMP JoinMOSPF enabled Routing
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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?
Björn LandfeldtSchool of Information Technologies
Unwanted traffic
• What negative effects can someone sending high volume traffic to a multicast group have?
• What can prevent this?
Björn LandfeldtSchool of Information Technologies
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
Björn LandfeldtSchool of Information Technologies
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)
Björn LandfeldtSchool of Information Technologies
Reading
• IETF RFCs 1075, 1112, 1584, 2357