Multicasting is a method through which a single source can able to send any data to selected multiple destination across layer-3 network.
- Radio Programs
- Corporate mgs to employee
- TV Broadcasts
Basic Requirement of Multicast:
- In order to run multicast traffic in any environment following requirement is required:
- A dedicated Layer-3 address range for Multicast application, Multicast address must be used as destination address not source address
- A specific multicast application used to generate multicast traffic
- Following mechanism is used by host to inform device whether they want to receive multicast traffic or not.
- IGMP -->Router
- CGMP, IGMP Snooping -->Switch
- For Multicast Switching and Routing following protocols are used.
- Routing : PIM, MSDP
- Switching: IGMP, CGMP, IGMP Snooping etc.
How Multicast traffic is sent to Selected Users
Let’s understand the concept of Multicast by below diagram.
- A Video Server is sending video streaming on multicast address 255.5.5.5
- Host H1, H2 are not intended to receive but H3 and H4 are interested to receive this multicast video stream and they launched the application in PC to see that stream.
- When Host H3 and H4 launch the application, these host joins the group and request to receive multicast video stream which is being sent to 255.5.5
- H3 and H4 indicated this request to R2 about its desire.
- Multicast application calculates the L2 multicast address from its L3 Multicast address and assign it to NIC of host H3 and H4 along with its BA Address.
- Multicast Routing is already configured and is working on R1 and R2 and they will forward multicast traffic to destination switch over which H3 and H4 are connected.
- Switch with the help of CGMP/IGMP snooping stores the Source and Destination information and on which port the multicast has to be sent
- Now multicast traffic will flow from source to destination H3 and H4.
Multicast IP address:
Multicast IP address range is as per given rule:
- Class D: 188.8.131.52 - 184.108.40.206
- In 32 bit address, the first four bit of first octet is reserved for bit 1110 = 224.
- Last 28 bits are unstructured and can be used for address spacing.
Multicast Well known address used in today networks environment.
Multicast address for permanent group:
There are two ranges for permanent group
Local Group: Packet of this range should not be forwarded by routers
- All multicast host: 220.127.116.11
- All Multicast Routers: 18.104.22.168
- All OSPF Routers: 22.214.171.124
- OSFP DR: 0.0.6
- RIP Router: 126.96.36.199
- EIGRP Router: 188.8.131.52
- All PIM Router: 184.108.40.206
- RP Announce: 220.127.116.11
- RP Discovery: 18.104.22.168
Routed Range: 22.214.171.124 – 126.96.36.199
Multicast Address for Source Specific address:
- Range: 188.8.131.52 – 184.108.40.206
- Purpose: Allow host to select the Source for multicast group
Multicast address GLOP address:
- Range: 220.127.116.11 – 18.104.22.168
- Use: used by registered AS
Example: AS 5663, Binary 00010110 00011111
- 00010110 = 22 second Octet
- 00011111 = 33 third octet
- Range allocated to AS 5663 : 22.214.171.124 – 126.96.36.199
Multicast address for private multicast group:
- Range: 188.8.131.52 – 184.108.40.206
- Use: Used by administratively scoped address
Mapping Multicast IP Address to Layer-2 MAC address:
There are certain rules for converting Multicast IPv4 address to Multicast L2 MAC address.
Suppose the Multicast MAC address is 48 bits and it represents here as any multicast MAC address:
0000 0001: 0000 0000: 0101 0001: 0001 0101: 0100 0011: XXXX XXXX
In every first octet the extreme right bit is called least significant bit (LSB) and is also called individual or group bit.
- If this RED numeric is set to 0 than it represent to MAC belong to individual host
- If this RED numeric is set to 1 than it represent to MAC belong to group of hosts.
All multicast MAC address must have LSB set to 1 and IEEE multicast MAC address starts with 01005e.
Multicast MAC address range: 01-00-5e-00-00-00 to 01-00-5e-ff-ff-ff
RULE: While creating the MAC address from multicast IPv4 address , it always contains 01-00-5e with next bit set to 0 and rest lower 23 bit copied from layer 3 multicast group address.
Converting Multicast address to MAC address:
Here on the second octet, the value for 175 is 2f and if you calculate the hexadecimal value of 47 it will same as 2f.
So in essence there could be 32 multicast IPv4 address that map to same MAC address so it is always advisable to give space of 32 IP in between them while allocating.
Multicast Distribution Trees
In order to send the multicast traffic to all receivers, multicast distribution tree are used and this tree describes the path from source to group of destination.
There are two types of Multicast distribution tree:
- Source Tree
- Shared Tree
In source tree, the Source who is sending multicast traffic is root and all branches are shortest path to intended receivers of that group.
Each source has separate (S, G) entry for each Multicast group where S is IP address of source and G is multicast group address.
In above figure SPT is written as (220.127.116.11, 18.104.22.168)
In SPT the (S, G) exits for every source for each group.
Shared Tree: Shared Tree uses single common root which is used for different groups and is also called as RP (Rendezvous point) and we say these types of tree as RP tree or CBT core based tree.
In the above figure there are two source 22.214.171.124 and 126.96.36.199 and who is sending multicast traffic to Shared Root R4 and then from R4 , its going down to two receivers. The shared tree can be said as (*,G) entry where * means all or any source and G is specific Multicast Group IP address.
Shared tree can be written as (*, 188.8.131.52)
Shared tree can also be sub categorized to two other tree
- Bidirectional Shared Tree: In this Tree, a multicast traffic can be send in any direction from up to down or from down to up.
- Unidirectional Tree: In this a source will always send traffic to Root and from Root it can be sent down the shared tree to receivers.
In multicast forwarding there are two concepts
- Reverse Forwarding checks
- TTL Threshold
Reverse Path Forwarding: In this any traffic flowing down a source tree, RPF check works as follows:
- The routers looks the source address of the arriving Multicast packet to determine the packet arrived via an interface that is on reverse path back to source
- If the packet arrives on the interface and through same interface Source is reached RPF Check is successful and packet is forwarded.
- If RPF check fails than packet is discarded
TTL Threshold: Whenever each time an IP multicast packet is forwarded by router, its TTL decrements by one. If the TTL reaches to 0 then Packet is discarded.
TTL threshold may be applied to individual interface of multicast router to prevent multicast packets with a TTL less than TTL threshold from being forwarded out the interface and any packet will be forwarded only of its TTL is equal or greater than interface TTL threshold.