Вы находитесь на странице: 1из 74

Multicasting

AGENDA
Why multicasting
Multicast addressing
Multicast Group Membership Discovery protocols
Multicast Routing Protocols
PIM-DM
PIM-SM
Inter domain multicast routing
MSDP

Why multicasting
Unicast -






Application sends one copy of each packet to every group member unicast
address.
As a result, unicast transmission has significant scaling restrictions.
If the group is large, the same information must be carried multiple times,
even on shared links.
If the receivers are in different broadcast domain from the sender the routers
need to broadcast which is a worst scenario



Why Multicasting

Sending a message from a single source to selected multiple destinations
across layer3 network in one data stream.

Why Multicasting
Multicast provides a scalable and Manageable solution
A designated range of layer 3 addresses that can only be used by Multicast
applications.
A multicast address must be only used as a destination IP address and
specifically not as a source IP address.
A multicast application must be installed on all hosts using the same L3
multicast address used on the server. This is referred as launching a
application or Joining a group.
Standard method to calculate the l2 multicast address from the L3
multicast address.
There must be a mechanism by which hosts can join and leave groups
Multicast routing protocol to forward the multicast traffic from multicast
servers to hosts.
Multicast IP Addresses
Class D :
Range : 224.0.0.0 to 239.255.255.255
224.0.0.0-224.0.1.255 Permanent multicast groups
The range of address used for local purpose(not routed) is 224.0.0.0 through 224.0.0.255.
The range of address when packets to be routed is 224.0.1.0-224.0.1.255.
232.0.0.0-232.255.255.255 Source Specific Multicast (SSM)
The purpose of these applications is to allow a host to select a source for the multicast group.
SSM allows host to select a better-quality source, only IMPv3 capable host can use SSM feature.
233.0.0.0-233.255.255.255 GLOP addressing
It can be used by registered Autonomous system owners to create 256 global multicast address that can be
owned and used by that entity
239.0.0.0-239.255.255.255 Private Multicast Address
This administratively scoped address and should be configured in multicast routers to ensure the multicast
traffic does not leave the multicast domain boundaries.
Remaining range of addresses in this multicast address space are called as
Transient groups
1110 28-bit Group ID
Multicast IP Addressing
Address Groups
224.0.0.1 All systems on this subnet
224.0.0.2 All routers on this subnet
224.0.0.4 DVMRP ROUTERS
224.0.0.5 All OSPF routers
224.0.0.6 OSPF designated routers (DR)
224.0.0.9 RIP-2 routers
224.0.0.10 EIGRP routers
224.0.0.13 All PIM routers
224.0.0.15 CBT routers
224.0.0.18 VRRP
224.0.0.19-21 IS-IS
224.0.1.39 Cisco-RP-Announce
224.0.1.40 Cisco-RP-Discovery
224.0.0.1 Network Time Protocol
Well known Reserved Multicast address
Multicast IP Addresses
Mapping IP Multicast Address to MAC address


Convert the IP address to binary ,first 4bits are always 1110 for any multicast IP address.
IP:1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx


Replace the first 3 bytes (24bits) with 01-00-5E as multicast OUI, in total space of 48 bits
The host copies the last 23 bits of the multicast IP address into the last 23 bits of the MAC
address.
The multicast L2 addresses always begin with 01-00-5E(24bits),and the other half (24 bits) of
the address will be0 + 23 bits (copied from the IP address)
The 25
th
bit is set to 0

01-00-5E 0
OUI 23 bits
48bits
Multicast MAC: 00000001.00000000.01011110.0xxxxxxx.xxxxxxxx.xxxxxxxx
Multicast IP Addresses
Decimal:
235 147 18 23
Hex:
EB 93 12 17
Binary:
11101011 10010011 00010010 00010111
01 00 5E 00 00 00
00000001 00000000 01011110 00000000 00000000 00000000
Multicast MAC Address
00000001 00000000 01011110 00011011 00010010 00010111
01 00 5E 13 12 17
Multicast IP address
Base MAC Address
Mapping IP Multicast Address to MAC address

Multicast Scoping
Multicast scoping confines the forwarding of Multicast traffic to a group of routers for
administrative, security or policy reasons
TTL Scoping
TTL value defines scope and limits distribution
IP multicast packet must have TTL > interface TTL or it is discarded
values are: 0=host, 1=network, 32=same site, 64=same region,128=same continent,
255=unrestricted
No longer recommended as a reliable scoping mechanism.
Administrative scoping
The administrative scoped Multicast private address 239.0.0.0 to 239.255.255.255.
Used to set administrative limits to limit the forwarding of multicast traffic outside a domain
By configuring filters on routers interface the multicast address in not allowed to enter or exit
the interface
Not used for global Internet traffic
Same addresses may be in use at different locations for different multicast sessions
Examples
Site-local scope: 239.253.0.0/16
Organization-local scope: 239.192.0.0/14
Group Membership concepts
Joining and leaving a group
The process of installing and running a multicast application is reffered to as
launching an application or Joining a multicast group .
On joining the multicast group the hosts calcultes the Multicast MAC address
add its NIC listens to the MMAC address in addition to BIA.
IGMP
IGMP
IGMP messages are sent in IP datagram's with IP protocol number 2.
IGMP packets only pass over a LAN and not forwarded by routers, due to
their TTL values
To inform a local multicast router that host wishes to receive multicast
traffic for a specific group.
To inform local multicast routers that a host wishes to leave a multicast
traffic for a specific group.
The following list indicates the current versions of IGMP:
IGMP version 1 (IGMPv1) RFC 1112
IGMP version 2 (IGMPv2) RFC 2236
IGMP version 3 (IGMPv3) RFC 3376
IGMP version 3 lite (IGMPv3 lite)


IGMPv1
IGMPv1 Host Membership Query
Multicast routers use query message to determine any host connected to its LAN
interface is interested in Multicast traffic for any group .
Query Messages sent only by Multicast routers on LAN interfaces and are addressed to
the all-host group (224.0.0.1)
Multicast routers periodically send queries on its LAN interface by default every 60
seconds is called query interval
IGMPv1 queries also use a TTL value of 1 in preventing the packet being routed
IGMPv1 Host Membership report
Multicast hosts use IGmpv1 report messages to communicate to a local router for which
group they are interested to receive traffic.
IGMPv1 Leave Mechanism
IGMPv1 does not have an explicit leave mechanism to inform local routers they no
longer want to receive multicast traffic.
If a host leaves the group the outer does not now about it, still it will be forwarding the
traffic
The router send the host membership query message three times by default 60 seconds
apart and if it does not receive a report message,it stops forwarding the traffic this 3
minute timer is called Group Membership Interval

IGMPv1
IGMPv1 querier
When multiple routers connected to the same subnet for redundancy,
IGMPv1 depends on Layer3 IP of Multicast routing Protocol to elect a designated router
for the subnet, to send the query .
IGMP Queriers (routers) send queries every 60 seconds.
If a host does not respond with its membership information,
the router will timeout the hosts group membership
IGMPv1 Queriers are determined by a multicast routing protocol,
not IGMPv1.
The specific multicast routing protocol elects a designated router for
the subnet.
This router also becomes the IGMPv1 Querier.

IGMPv1
.
Host Membership Query and Report Functions
IGMPv1 Message Format
IGMPv1 message has five fields

Version 4 bit field always set to 1.
Type 4 bit field either set to type 1 or type 2
-Type 1, Host Membership Query Used only by routers
-Type 2, Host Membership Report Used only by Hosts
Group Address Set to 0.0.0.0 when a router sends a query, and set
to multicast group address when a host sends a membership report.

IGMPv1
IGMPv2
Leave group Messages- provides hosts with a method for notifying routers
that they wish to leave the group
Group specific query Messages- permit the router to send a query for a
specific group instead of all groups
-General query multicasts to the all-hosts 224.0.0.1
Group-specific query multicasts to the multicast group address.

Maximum Response Time Field- allows the router to specify the
MRT,tuning the response time fro the Host membership report
Querier election Process- provides the method of selecing the preffered
router for sending query messages when multiple routers are connected
to the same subnet
multicast router with lowest IP address is elected querier
IGMPv2
IGMPv2 Message Format
IGMPv2 message has four fields

Type 8 bit field
-Membership Query (Type code= 0x11) Used only by
routers
- Type 2, Host Membership Report Used only by Hosts
Group Address Set to 0.0.0.0 when a router sends a query,
and set to multicast group address when a host sends a
membership report.

IGMPv2

IGMPv2
Multicast Traffic Destination
Address 226.1.1.1
Multicast Traffic Destination
Address 226.1.1.1
Multicast Traffic Destination
Address 226.1.1.1
Leave Group Message I
dont want to receive
multicast traffic for
226.1.1.1 anymore.
Host Membership
Report I Would like to
receive multicast traffic
for 226.1.1.1.
Group-Specific Query
Does anyone want to
receive multicast
traffic for 226.1.1.?
1
2
3
2
1 3
No body sent a report for
226.1.1.1 on this interface. I
will stop forwarding traffic
IGMPv3
IGMP Version 3
Group-Source Report message is defined. Enables hosts to specify which
senders it can receive or not receive data from.
Group-Source Leave message is defined. Enables host to specify the
specific IP addresses of a (source, group) that it wishes to leave.
IGMPv3
.
Forward Packets to
226.1.1.1, but only if
sourced from
209.165.201.2.
Multicast traffic
Destination Address 226.1.1.1
Source Address 209.165.201.2
Multicast traffic
Destination Address 226.1.1.1
Source Address 209.165.201.2
R3 R2
R1
IGMPv3 Membership report
join 226.1.1.1 source INCLUDE-
209.165.201.2
Internet Cloud
H1
Reverse Path Forwarding
Reverse path forwarding is the mechanism that performs an incoming
interface check to determine whether to forward or drop an incoming
multicast frame.
This RPF check helps to guarantee that the distribution tree for multicast is
loop-free.
In addition, RPF enables routers to correctly forward multicast traffic down the
distribution tree
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 the routing table for the
source address; then the RPF check succeeds Otherwise, the RPF Check fails.
.Reverse Path Check

RPF Check how would I go in reverse
to the source address 10.1.1.10?




R1 R2
R3
Multicast Traffic
Destination Address 226.1.1.1
Source Address:10.1.1.10
S1
H2
H1
S0/0
S0/0
S0/1
S0/1
S0/1
Flood
Flood
Flood
Flood
Fa0/0
Reverse Path Forwarding
For traffic flowing down a source tree, the RPF check procedure works as
follows:
1. The router looks up the source address in the unicast routing table to
determine whether it arrived on the interface that is on the reverse path
back to the source.
2. If the packet has arrived on the interface leading back to the source, the
RPF check is successful and the router replicates and forwards the
packet to the outgoing interfaces.
3. If the RPF check in the previous step fails, the router drops the packet
and records the drop as an RPF failed drop.

Multicast Routing Protocols
DENSE Mode
Protocol independent Multicast Dense Mode (PIM-DM)
Distance Vector Multicast Routing Protocol (DVMRP)
Multicast open Shortest Path First (MOSPF)

SPARSE Mode
Protocol Independent Multicast Sparse Mode
Core-Based Tree


PIM
PIM Hello Messages
PIM send hello messages every 30 secs on PIM enabled interfaces
By receiving the hello on the same interface Routers discover and establish and
maintain adjacency
Pimv2 is the current version and uses IP Protocol no 103 and mcast address 224.0.0.13
(All PIM-Routers Address)
PIMV1 does not use Hellos instead use a PIM Query messg, encapsulated in IP packets
with protocol no 2 and mcast destination address 224.0.0.2

PIM-DM
PIM dense mode (PIM-DM) is less sophisticated than PIM sparse mode. PIM-DM is useful for
multicast LAN applications, the main environment for all dense mode protocols.
PIM-DM implements the same flood-and-prune mechanism that Distance Vector Multicast
Routing Protocol (DVMRP) and other dense mode routing protocols employ. The main
difference between DVMRP and PIM-DM is that PIM-DM introduces the concept of protocol
independence. PIM-DM can use the routing table populated by any underlying unicast
routing protocol to perform reverse path forwarding (RPF) checks.
ISPs typically appreciate the ability to use any underlying unicast routing protocol with PIM-
DM because they need not introduce and manage a separate routing protocol just for RPF
checks. Unicast routing protocols extended as Multiprotocol Extensions to BGP (MBGP) and
Multitopology Routing for IS-IS (M-ISIS) were later employed to build special tables to
perform RPF checks, but PIM-DM does not require them.
PIM-DM can use the unicast routing table populated by OSPF, IS-IS, BGP, and so on, or PIM-
DM can be configured to use a special multicast RPF table populated by MBGP or M-ISIS
when performing RPF checks.

PIM-DM
Source Based Distribution Trees
PIM-DM routers performs a RPF check on receipt of a Multicast packet
and if RPF check succeeds, it forwards a copy of the packet to all PIM
neighbours expect the one on which it received.
The multicast packet is flood to all leaf routers that have no downstream
PIM neighbours.
PIM calls this a source-based distribution tree or Shortest-path tree or
source tree
Maintains a different source tree for each source and multicast group
SPT will differ based on Source and hosts locations listening for each
multicast group address
The (S,G) refers to a particular SPT or Individual routers part of particular
SPT (S-source , G-Group)
PIM
Prune Message
PIM-DM creates new SPT when a source first sends multicast packets to a
new multicast group
SPT includes all interfaces except RPF interfaces
PIM-DM assumes all hosts need to receive a copy of each Multicast
packet. Some subnets may not want to receive a copy of multicast
packets?
PIM-DM defines a process by which routers can remove interfaces from an
SPT by using PIM Prune messages
The PIM Prune message is sent by one router to a second router to cause
the second router to remove the link on which prune is received from a
particular(S,G) SPT.
An interface stays pruned state only for 3 minutes by default


Diagram
Rules for Pruning
Two key rules to follow before a router send a prune
When receiving packets on a non RPF interface
When a router realizes that both the following are true
No locally connected hosts in a particular group are listening for packets.
No down stream routers are listening for the group
There is no separate Prune message and Join message,PIM-SM and PIM-DM
use a single message for Join/Prune Message
A prune message is actually a Join/Prune message with a group address listed
in the Prune filed and likewise for Join message.


PIM-DM
Steady state operation



State refresh Messages
PIM-SM
These are the major characteristics of PIM-SM:
Routers with downstream receivers join a PIM-SM tree through explicit join message.
PIM-SM RPs are the routers where receivers meet sources.
Senders announce their existence to one or more RPs, and receivers query RPs to find multicast
sessions.
Once receivers get content from sources through the RP, the last hop router (the router closest to
the receiver) can optionally remove the RP from the shared distribution tree (*, G), if the new
source-based tree (S,G) is shorter. Receivers then get content directly from the source.
This transitional aspect of PIM-SM from shared to source-based tree is one of the major attractions
of PIM. This feature prevents overloading the RP or surrounding core links.
There are related issues regarding source, RPs, and receivers when sparse mode multicast is used:
Sources must be able to send to all RPs.
RPs must all know each other.
Receivers must send explicit joins to a known RP.
Receivers initially need to know only one RP (they will be informed of others).
Receivers can explicitly prune themselves from a tree.
Receivers that never transition to a source-based tree are effectively running CBT.
PIM-SM has standard features for all of these issues.




































Protocols RFC Standard
PIM-DM 3973
MSDP 3618
Anycast RP 3446
PIM-SM 2362
IGMPv1 1112
IGMPv2 2236
IGMPv3 3376
Multicast Listener Discovery for IPv6 2710
GLOP Addressing 2770
Reference
CCIE Routing and Switching by Wendell Odom and Jim Geier
Routing TCP/IP Volume II by Jeff Doyle and jennifer carroll
Developing IP Multicast Networks by Beau Williamson

Вам также может понравиться