Multicast Routing Fundamental concepts

Multicast Routing Fundamental concepts

In this article we will simplify the fundamental concept of Multicast Routing.

Prerequisite: Should aware Unicast Multicast & broadcast, IGMP versions.

Mostly, the service Provider uses Multicast Routing in their network to provide IPTV services to their customers.

Multicast Network Can be divided into three parts:

  1. Multicast Source Network: Which is generating Multicast Feed and sending towards Multicast router.
  2. Multicast Forwarding Network: Which is PIM enabled Core, Established Multicast forwarding Paths throughout the core, These Paths are called Multicast distribution Trees (MDT).
  3. Multicast Receiver Network: IGMP enabled part of multicast network, where Multicast Receiver or we can say Multicast group members request for & receiving Multicast Feed.

No alt text provided for this image


Multicast Source sending Multicast feed to Multicast forwarding Network, Multicast forwarding Network should have to know the location of Multicast group members and information of "Multicast group" which user want to join.

Multicast Group Members are nothing but a Multicast feed receiver Hosts. Multicast Group: It is the Multicast IP, against that IP, Multicast source is sending Multicast feed and Host have request & Receive that Feed.

Through IGMP, Multicast group members want to join the Multicast forwarding network at that time Group member's location has been exposed to the last hop multicast router. The process is called multicast group member discovery.

In Multicast forwarding Network Those routers which are connected with Multicast group members are called last hop routers & those which are connected with Multicast server are the First hop routers.

Let's understand the basic how exactly multicast routing works.

No alt text provided for this image
Multicast Topology


As shown in topology,?PC-2 which is the Multicast receiver here & directly connected with the last hop multicast router NE-3, PC-2 want to join multicast group (239.1.1.1). it sends multicast report message via IGMPv2 towards NE-3 & seeking for Multicast feed from it. Remember that, NE-3 is also sending query message periodically?towards all IGMP enabled interfaces inviting the host to join multicast network.

The query-report messages are not normal ipv4 unicast packets. lets capture & check inside packet.

No alt text provided for this image
IGMPV2 report message

As we see in the packet, PC-2 is sending IGMPV2 report message, In layer-3 header of the packet source IP is the PC-2's IP while, the destination IP is 239.1.1.1 Which is the "Multicast Group IP" receiver want to join and expecting Multicast feed against this group IP.

In Layer-2 header: Source mac-address is PC-2's own mac address, While The destination mac address is multicast mac-address (01:00:5e:01:01:01)

Point: Destination mac address is always derived from Multicast destination IP, So This "01:01:01" part of the mac-address is derived from 239.1.1.1 IP.

When the multicast-enabled router receives this message on one of its IGMP enabled interface what it will do with this packet ?

Firstly, NE-3 will generate IGMP group entry for received request. Entry have below information.

"Interface from which it received the request", "IP of Multicast group address which PC want to join", and "IP of reporter host". entry looks like as:

<NE3>display?igmp?group?

Interface group report information of VPN-Instance: public net

?Ethernet1/0/2(10.255.141.17):

?Total 1 IGMP Group reported

??Group Address??Last Reporter??Uptime???Expires???

??239.1.1.1????10.255.141.18??00:42:54??00:02:04

NE-3 is Multicast Router it has to receive multicast feed for Multicast group 239.1.1.1 from Multicast server then it will be able to forward feed to Receivers.

Now, How does NE-3 will receive the feed from the multicast server ? Well, here PIM comes to play the role.

PIM is mainly used to generate Multicast distribution tree MDT within AS, that tree defines multicast forwarding path from multicast Source to multicast Receiver.

There is two way to generate MDT or you can say two Modes of the PIM.

PIM Dense Mode PIM-DM

PIM Spare Mode PIM-SM which is Further classified as.

PIM-SM- Any Source Multicast (ASM)

PIM SM Source specific Multicast (SSM)

What is PIM-DM ?

This mode work on Flooding-Prune mechanism. Ok But What does this mean ?

  • Flood: When a PIM Router receives a multicast packet it perform RPF check on the packet. if packet passes RPF check, the router creates Multicast routing entry and send packet to all PIM Neighbors.

No alt text provided for this image


Prune: Not all routers on the multicast network connected to any group members. That Router does not need to received multicast feed. Each router that is not interested in the multicast traffic will send a prune to its upstream router, requesting it to stop forwarding multicast feed to it.

There are a couple of reasons why a router can send a prune message

  • When we don’t have any directly connected hosts that are interested in receiving the multicast traffic.
  • When no downstream routers are interested in receiving the multicast traffic.
  • When we receive traffic on a non-RPF interface

No alt text provided for this image

Now What is RPF check ??

  • RPF is the mechanism to avoid multicast packet duplication and routing loop in multicast network, by default When a last-hop router received a multicast stream from two different uplink interfaces, it will forwarded duplicated packet to the multicast receives. This behavior need to be changed. last-hop router check source IP of multicast router in its unicast routing table and check from which interface it received the best route for unicast server source IP Only from that interface it will send and receive multicast packets and block other interfaces for multicast traffic. Another way to look at this is that the RPF check ensures that we only accept multicast packets from the?shortest path. Multicast packets that travel?longer paths are dropped.?

No alt text provided for this image


In this way a lot of path will be blocked and Multicast distribution tree formed from first hop router till to the last hop routers, That MDT is called Shared Path Tree (SPT).

In addition to the Flooding and Prune mechanism, PIM-DM has few Mechanisms like: assert, graft, state-refresh Mechanisms.

Let check now PIM entry on router.

No alt text provided for this image

In above output, we can se two main entries?

(S, G) == ( Multicast?Source IP, Group)

(*, G) == (Any Multicast source, Group)

We have one (S, G), This said that Multicast source 10.10.10.2 sending feed for Multicast Group 239.1.1.1.1 all other Multicast routers will maintain this entry so the NE-3 also maintain. While there is zero entry for (*,G) in above output.

When (*, G) is used ? Well, This is used when host send the request to join Multicast group without specifying the Multicast source. That means, host can receive multicast traffic from any source for specific Multicast group. Let check it with respect to PC-2.

When PC-2 send IGMPv2 report message to join 239.1.1.1, IGMPv2 means PC does not specify the source address. Now check PIM routing table on NE-3.

No alt text provided for this image

Now PIM added 1 (*, G) entry after PC-2 request without mentioning the source.

NE-3 is already receiving feed for group 239.1.1.1 via PIM-DM SPT. so It will just forward feed towards PC-2 connected interface.

In this way all last hop router receive the multicast feed from server and maintain the forwarding path and send the feed to the receivers once they request

I hope the basic concept of PIM-DM & (*,G) and (S,G) entries has cleared.

PIM Sparse mode

PIM Sparse Mode is completely opposite of PIM dense mode, PIM-SM enabled network only forward the multicast traffic?when it has been request for.

Lets start this with PIM-SM-ASM (Any source multicast) - In this mode when first hop router received the feed it will not flood the?multicast traffic as it did in dense mode so how does the last hop routers know that source is sending the feed ?

To solve this issue, PIM sparse mode uses a RP (Rendezvous Point) in the network. Here’s how it works:

Actually RP is a router, where first hop router forward the multicast feed towards it &?The last hop router will forward report message toward RP. So that means RP is multicast router in the multicast network acting as a dating point.. isn't it COOL ??

In PIM-SM-ASM, Every Multicast router must know the address of RP, which is actually loopback IP of RP router & manually configured on each multicast?router. RP can be discovered with PIM Auto RP But i will not touch this part in this article.

Have a look at Topology mentioned above.

NE-2 is the RP point this topology, When PC-2 send report message toward NE-3 to joining Multicast group 239.1.1.1, NE-3 will forward joining request toward NE-2, After receiving the request NE-2 will forward multicast feed toward NE-3 then NE-3 will forward to PC-2. Now A PIM-SM MDT has been established and this MDT is called Root Path Tree RPT, the Root is RP Router.

No alt text provided for this image

Check the PIM table on NE-3, There is RP information below the (*, 239.1.1.1) and (10.10.10.2 ,239.1.1.1) entries.

No alt text provided for this image

According to the above output NE-3's uplink interface is Ethernet 1/0/0 which is toward NE-2 that means NE-3 is getting the feed from NE-2

Now What will be the next, let see the surprise.?

After receiving just one multicast packet from RP, NE-3 now knows the source address of multicast router. it will check optimal path towards Multicast source and if it founds the best path in its?routing table then router will directly getting?Multicast from best path instead of RP and MDT will be changed?from RPT to SPT for only those routers who can found best path toward source in there routing table?otherwise getting Feed via RP is ok if it is optimal path. Magic ..!!!

In our topology If you see, The best path toward source is not through RP but it actually from NE-3 to direct NE-1. Let's see What NE-3 will do next.

No alt text provided for this image

Now you guys can see the Upstream interface: Ethernet1/0/1 instead of Ethernet1/0/0.?

When there is not multicast receivers on the network, after some period of time first hop router has been informed by RP to stop sending Multicast feed to save BW consume of links.

Next is PIM-SM (SSM)

To ensure security, Multicast group members can choose to receive only the multicast data from a specific multicast source. IGMPv1 and IGMPv2 can not carry multicast source information as a result both can not meet the demand for source specific multicast unless SSM mapping is used.

IGMP3 was developed to support this SSM model. In this model Multicast group members send report message via IGMPV3 that said, PC want to receive Multicast feed from specific source (Source information is mentioned in the packet) against a?Multicast group. Source is already pre-defined from Receiver, Last hop router will check the Multicast source IP in into IPV4 routing table, Source should be?reachable.

Direct SPT MDT will established from First hop router to last hop router and that MDT will always remains even if no Multicast traffic is transmitted.

No need of RP here because last hop router already know the Multicast source address.?IF PC is not support IGMPV3 then we can configure PIM-SM SSM statically on last hop router.

What is IGMP SSM Mapping?

If the terminals on the network do not support IGMPv3 then how can we deploy Source specific multicast ?

IGMP SSM Mapping allows IGMPv1 and IGMPv2 group members to access the SSM network if multicast source is manually bound to the multicast group mapping can be configured as below.

Mostly IGMP SSM Mapping is implemented in ISPs

  • ?igmp ssm-mapping enable
  • ?igmp static-group 239.194.0.0 source 58.181.126.5
  • ?igmp static-group 239.194.0.0 source 58.181.126.8

Routers use PIM (Protocol Independent Multicast) to figure out where to forward multicast traffic but what about switches? We will talk about it in our next multicast article.

Thank you.

Asif ALI Shahani

# CCNA # CCNP # JNCIA # JNCIA security # HCIP # NSE4

1 年

Good work Asif Ali

要查看或添加评论,请登录

社区洞察

其他会员也浏览了