Transcript Week10

NETS 3303
Networked Systems
Multicast
Björn Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School of Information Technologies
Unicast
Björn Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School of Information Technologies
Multicast
mrouter
mrouter
mrouter
Björn Landfeldt
School of Information Technologies
Some broadcasting sites today
are limited to a maximum
number of users, why do you
think?
Björn Landfeldt
School of Information Technologies
Multicast
• Because they use unicast. Multicast is not
yet widely implemented in the Internet
Björn Landfeldt
School 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 Landfeldt
School of Information Technologies
• Tree structure
IGMP
– 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 Landfeldt
School of Information Technologies
LAN
• IGMP not needed for LAN, why?
Björn Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School of Information Technologies
Flood and Prune
Björn Landfeldt
School 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 Landfeldt
School of Information Technologies
Is there anything wrong with
these approaches?
Björn Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School of Information Technologies
BGMP
Domain C
Root
Domain B
Domain D
Domain A
BGMP Join
MOSPF enabled Routing
Björn Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School 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 Landfeldt
School of Information Technologies
Reading
• IETF RFCs 1075, 1112, 1584, 2357
Björn Landfeldt
School of Information Technologies