Post on 13-Nov-2014
description
IP Multicasting
Agenda
What is Multicast ? Why Multicast ? Applications of Multicast Multicast Addresses How Multicast Works ? IGMP overview How IGMP Works ? IGMP v1,v2 and v3 Multicast distribution trees (Source and Shared) PIM-SM,PIM-DM,PIM-SSM Challenges to Multicast Summary
Definition
IP Multicast is a bandwidth-conserving technology that reduces traffic by simultaneously delivering a single stream of information to thousands of corporate recipients and homes.
One to Many communication
MulticastMultiple Unicast
Why Multicast
Multicast is... a need. Well, at least in some scenarios. If you have information (a lot of information, usually) that should be transmitted to various (but usually not all) hosts over an internet, then Multicast is the answer.
One common situation in which it is used is when distributing real time audio and video to the set of hosts which have joined a distributed conference.
When sending to multiple receivers:
Better bandwidth utilization Fast processing Lower router cycles required
Multicast applications Any Applications with multiple receivers
1-to-many or many-to-many
Live Video distribution
Periodic Data Delivery - "Push" technology stock quotes, sports scores, magazines, newspapers Advertisements
Server/Web-site replication
Reducing Network/Resource Overhead more efficient to establish multicast tree rather then multiple point-to-point links
Distributed Interactive Simulation (DIS) wargames virtual reality
IP Multicast addresses Class D addresses:
224.0.0.0 - 239.255.255.255
Can only be used to specify a “Group”, Source addresses are always unicast ip addresses.
224.0.0.0 to 224.0.0.255 – reserved to be used by network protocols locally, it means they are only locally significant and packets destined to these addresses will never get forwarded by router.
239.0.0.0/8 is currently an administratively scoped address space.
The 232.0.0.0/8 block is reserved for use by Source-specific multicast (SSM).
Addresses Description
224.0.0.1 All hosts in this subnet
224.0.0.2 All routers in this subnet
224.0.0.5 OSPF
224.0.0.6 OSPF DR
224.0.0.12 DHCP server/Relay agent
GLOP addresses
GLOP addresses Provides globally available private Class D space 233.x.x.y/24 per AS number RFC2770
How? AS number = 16 bits
Insert the 16 ASN into the middle two octets of 233/8
How Multicast works
Internet Group Management Protocol (IGMP)
Used by the hosts to indicate that they want to join a particular group and used by the routers to discover if there is any intended receiver in the subnet.
Flavors of IGMP:
IGMP v1 , v2 and v3 { v = version }
How IGMP works
Multicast Router
IGMP Report
1. Interested receivers send Membership-Report to nearest multicast router
2. Upon receiving Membership-Report Multicast Router starts sending traffic to that subnet
3. Router periodically send Membership - Query to check if there is any intended receiver in the subnet. If three consecutive queries fails then router stops sending traffic to that subnet. Multicast Traffic
Hosts
IGMP Query
IGMP version-1
IGMP version 1 has 2 types of messages:
1. Membership Query: Used by Router to check whether there is any interested receiver for a particular group.
2. Membership Report: Used by the hosts to send their willingness to join a particular group.
IGMP version-2
IGMP version 2 has 4 types of messages :
1. Membership Query – Same as v12. V-1 Membership report – v1 report3. V-2 Membership report – v2 report4. Leave group – Used by the hosts to show
their intention to leave the group.
IGMP version-3
IGMP v3 is used for “source filtering” ,it means the host will tell the router which group it wants to receive traffic from and also which source it is looking for. It enables routers to send traffic only from the sources for which traffic has been requested by the receivers.
IGMP v3 has 2 options in it :
Include: Which source it wants to receive traffic from.
Exclude: Which source it doesn’t want to receive traffic from.
Multicast distribution trees
Multicast distribution trees are the
mechanisms, which allows a control over
“how multicast traffic will flow towards the
receivers”
There are two types of distribution trees:
1. Source distribution tree
2. Shared distribution tree
Source distribution tree In source tree the root is at the source.
Always most promising path is selected. Hence known as Shortest Path Tree.
E
BA D F
Source
C
S
R R
Notation:
(S,G) S comma G
S : SourceG : Group
S
R
Source
Receiver
Multicast traffic flow
Characteristic of Source tree
Each router has to contain (S,G) entry for all the sources hence memory requirement is high.
Surety of best possible path from source to receiver.
Best suitable for the topology where receivers are densely segregated throughout the network and senders are less in numbers ( Eg. Radio Broadcast).
Shared distribution tree
E
BA D F
Source
C
S1
R R
RP S2
Notation:
(*,G) Star comma G
* : Any SourceG : Group
In Shared trees there is one focal point (known as Rendezvous point , RP) in the middle of network and sources forward traffic towards this and intern the RP forwards that traffic downward to all intended receivers.
Characteristic of Shared tree Uses less resources.
There is a possibility of sub-optimal paths from source to receiver hence RP should be planned carefully.
RP itself and its location may affect the performance.
Best suitable for many to many applications
Reverse Path Forwarding
What is RPF?
A router forwards a multicast datagram only if received on the up stream interface to the source (i.e. it follows the distribution tree).
The RPF Check
The source IP address of incoming multicast packets are checked against a unicast routing table.
If the datagram arrived on the interface specified in therouting table for the source address; then the RPF checksucceeds.
Otherwise, the RPF Check fails.
RPF ChecksRPF Check Fails
RPF Check Succeeds
Protocol Independent Multicast
PIM is the Multicast routing protocol which is completely independent of underlying IP protocol. Though PIM is multicast protocol but it takes help of existing unicast routing protocol to make RPF check and to perform multicast routing/forwarding function and it doesn’t send or receive multicast routing updates like other routing protocols.
PIM Types :
1. PIM-Dense Mode2. PIM-Sparse Mode3. PIM-Source Specific Multicast
PIM-DM
PIM-DM uses “Push” model to send multicast data down to receivers. PIM-DM floods multicast data to all the corners of the network and the routers which do not have any downstream receiver prune back the unwanted traffic. This process repeats every 3 minutes.
“Flood and prune” is used by the routers to gather multicast information.
PIM-DM only supports source trees and can not be used for shared trees.
Example: Company-wide announcement
PIM-DM Contd…
Receiver
IGMPv2 host report
SourceReceiver
Traffic is being forwarded to every corner of theNetwork.
Pruned interface
Source tree
PIM-SM
PIM-SM uses “Pull” model to send multicast data down to receivers. Traffic will be forwarded to those receivers who explicitly request for a particular group. PIM-SM uses shared trees to forward multicast data. Initially only shared tree will be created and depending upon the configuration options, traffic can remain in shared tree or can switch to optimal source tree. PIM-SM uses the concept of RP.
Example: Space shuttle launch
PIM-SM join
Receiver
RP
(*, G) Join(*, G) State created from the RP to the receiver.
Receiver announces desireReceiver announces desire
to join group G with igmpv2to join group G with igmpv2
host report – (*,G).host report – (*,G).
IGMPv2 host report
Source
Shared tree
PIM-SM sender registration
Receiver
RP
(S, G) State created onlyalong the Source Tree.Shared Tree
Source Tree
Traffic Flow(S, G) Register (unicast)
(S, G) Join
Source
PIM-SM traffic flow
Receiver
RP
Source traffic flows nativelyalong SPT to RP.
From RP, traffic flows downthe Shared Tree to Receivers.
Source
Source Tree
Shared Tree
Traffic Flow
PIM-SSM
No shared trees
No register packets
No RP mapping required (no RP required!)
No RP-to-RP source discovery (MSDP)
Requires IGMP include-source list – IGMPv3
User-definable rangeIANA specifies 232/8 for global SSM
PIM-SSM join
Receiver
RP
Receiver announces desireReceiver announces desire
to join group G AND sourceto join group G AND source
S with an IGMPv3 include-list.S with an IGMPv3 include-list.
(S, G) JoinLast-hop router joins the Source Tree.
Source
Source Tree
Traffic Flow(S,G) state is built between the source and the receiver.
PIM-SSM traffic flow
Receiver
RP
Data flows down the source treeData flows down the source tree
to the receiver.to the receiver.
Source
Source Tree
Traffic Flow
Key challenges in Multicast
How can a sender restrict who can receive?need authentication, authorizationencryption of datakey distributionstill an active area of research
The Soup
IGMP : Internet Group Management Protocol is used by hosts and routers to tell each other about group membership.
PIM-SM : Protocol Independent Multicast-Sparse Mode is used to propagate forwarding state between routers.
SSM : Source Specific Multicast utilizes a subset of PIM’s functionality to guaranty source-only trees in the 232/8 range.
RP : An RP acts as the meeting place for sources and receivers of multicast data. In a PIM-SM network, sources must send their traffic to the RP. This traffic is then forwarded to receivers down a shared distribution tree