Multicasting Fast switching

Answered Question
Aug 22nd, 2009

Hi Experts,

ip igmp static-group

Donot Accept But forwards Multicast traffic

ip igmp join-group

Accepts and forwards Multicast traffic

I understood the meaning and behaviour of these two commands,

But What is confusing me is, WHY FAST SWITCHING IS PREVENTED WHEN "ip igmp join-group" IS USED. I read that "The static-group command causes the router to put the interface permanently in the OIF (output interface) list. This is not process-switched"

What is this mean? Hope you will shed some lights on this

Regards,

sairam

I have this problem too.
0 votes
Correct Answer by Giuseppe Larosa about 7 years 3 months ago

Hello Sairam,

>> why packets of group x.x.x.x are not sent to main cpu for processing if "ip pim igmp-join" is used and not for the "ip pim static-group"

I wrote sent to main cpu for ip pim igmp-join.

answering is difficult, my guess is that the two commands have different purposes:

the first one makes the router one of the receivers of group x.x.x.x and forwards the packets of the group out the interface where it is applied.

the second command only puts the interface in the OIlist but doesn't make the router a receiver for group x.x.x.x.

the command reference says:

for igmp join-group

>>IP packets that are addressed to the group address are passed to the IP client process in the Cisco IOS software.

This means becoming a receiver for a group.

http://www.cisco.com/en/US/docs/ios/ipmulti/command/reference/imc_03.html#wp1011528

says

To configure static group membership entries on an interface

if you have interest in testing source specific multicast you can notice that ip igmp join-group has no option to specify a source.

When I tested PIM SSM I used this:

Rx router with ip pim static-group with source option to generate the correct PIM SSM join for (S,G) downstream to this a second router Ry actually used as an host with ip igmp join-group to that same group G.

This to be able to ping group G using source S in a lab environment.

I think this explains clearly the difference between the two commands: Rx couldn't answer to a ping because it is not a receiver of (S,G).

Hope to help

Giuseppe

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (2 ratings)
Loading.
Giuseppe Larosa Sat, 08/22/2009 - 11:39

Hello Sairam,

with ip igmp join-group x.x.x.x the packets of the multicast group x.x.x.x are sent to the router cpu like it were a PC.

But sending to main cpu in router terminology is process switching.

this is dangerous in production networks where forgetting to remove a statement ip igmp join-group can cause cpu to go to 100% also on very powerful devices like C6500.

The other command was probably introduced later to overcome this limitation.

In this case packets of group x.x.x.x are not sent to main cpu for processing.

The command allows to be sure that the PIM tree is stable because local node will send pim joins for group x.x.x.x regardless of the presence of interested receivers on its interfaces.

ip igmp join-group is handy in lab environments because the router will answer to a ping to group x.x.x.x allowing to verify the multicast routing in a basic way.

Hope to help

Giuseppe

snarayanaraju Sat, 08/22/2009 - 11:47

Hi Giuseppe,

Great and detailed explanation helps really. Thanks. I like this forum mainly because of this kind of response and answer which cannot be googled.

Coming to the case, can you please take your time to explain us

why packets of group x.x.x.x are not sent to main cpu for processing if "ip pim igmp-join" is used and not for the "ip pim static-group"

I understood both needs outgoing interface.

Thanks for sharing

Sairam

Correct Answer
Giuseppe Larosa Sat, 08/22/2009 - 13:27

Hello Sairam,

>> why packets of group x.x.x.x are not sent to main cpu for processing if "ip pim igmp-join" is used and not for the "ip pim static-group"

I wrote sent to main cpu for ip pim igmp-join.

answering is difficult, my guess is that the two commands have different purposes:

the first one makes the router one of the receivers of group x.x.x.x and forwards the packets of the group out the interface where it is applied.

the second command only puts the interface in the OIlist but doesn't make the router a receiver for group x.x.x.x.

the command reference says:

for igmp join-group

>>IP packets that are addressed to the group address are passed to the IP client process in the Cisco IOS software.

This means becoming a receiver for a group.

http://www.cisco.com/en/US/docs/ios/ipmulti/command/reference/imc_03.html#wp1011528

says

To configure static group membership entries on an interface

if you have interest in testing source specific multicast you can notice that ip igmp join-group has no option to specify a source.

When I tested PIM SSM I used this:

Rx router with ip pim static-group with source option to generate the correct PIM SSM join for (S,G) downstream to this a second router Ry actually used as an host with ip igmp join-group to that same group G.

This to be able to ping group G using source S in a lab environment.

I think this explains clearly the difference between the two commands: Rx couldn't answer to a ping because it is not a receiver of (S,G).

Hope to help

Giuseppe

Actions

This Discussion