NETS 3303 Networked Systems

30
Björn Landfeldt School of Information Technologies NETS 3303 Networked Systems Multicast

description

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) - PowerPoint PPT Presentation

Transcript of NETS 3303 Networked Systems

Page 1: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

NETS 3303Networked Systems

Multicast

Page 2: NETS 3303 Networked Systems

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

Page 3: NETS 3303 Networked Systems

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

Page 4: NETS 3303 Networked Systems

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

Page 5: NETS 3303 Networked Systems

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

Page 6: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Unicast

Page 7: NETS 3303 Networked Systems

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)

Page 8: NETS 3303 Networked Systems

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

Page 9: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Multicast

mrouter

mrouter

mrouter

Page 10: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Some broadcasting sites today are

limited to a maximum number of users, why

do you think?

Page 11: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Multicast

• Because they use unicast. Multicast is not yet widely implemented in the Internet

Page 12: NETS 3303 Networked Systems

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

Page 13: NETS 3303 Networked Systems

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)

Page 14: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

LAN

• IGMP not needed for LAN, why?

Page 15: NETS 3303 Networked Systems

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.

Page 16: NETS 3303 Networked Systems

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

Page 17: NETS 3303 Networked Systems

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)

Page 18: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Flood and Prune

Page 19: NETS 3303 Networked Systems

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

Page 20: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Is there anything wrong with these

approaches?

Page 21: NETS 3303 Networked Systems

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.

Page 22: NETS 3303 Networked Systems

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

Page 23: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

BGMP

Domain ADomain A

Domain DDomain D

Domain CRoot

Domain CRoot

Domain BDomain B

BGMP JoinMOSPF enabled Routing

Page 24: NETS 3303 Networked Systems

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

Page 25: NETS 3303 Networked Systems

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

Page 26: NETS 3303 Networked Systems

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?

Page 27: NETS 3303 Networked Systems

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?

Page 28: NETS 3303 Networked Systems

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

Page 29: NETS 3303 Networked Systems

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)

Page 30: NETS 3303 Networked Systems

Björn LandfeldtSchool of Information Technologies

Reading

• IETF RFCs 1075, 1112, 1584, 2357