Subject: Not forwarding

From: "Craig M. Votava" <[email-masked]>
Date: Wed, 05 Aug 1998 14:40:43 -0500

Folks-

I'm a beginning multicast debugger, please help me...

In my mtrace output, I get the message "nimrod2 Not forwarding", and I
expect that it should be forwarding. How can I figure out why it's not
forwarding?

The setup is that I have one machine (SGI O2) running mrouted-3.9-beta3,
which has 2 network interfaces: nimrod (135.185.11.1) and nimrod2
(135.185.106.254). I am receiving the source on this machine.

The source broadcast comes from nwsvideo (135.185.14.30)

The destination is craig (135.185.106.253) - it receives nothing

Here is the mtrace output tracing from source to destination:

===============================================================================
Mtrace from 135.185.14.30 to 135.185.106.253 via group 224.2.142.70
Querying full reverse path... 
  0  craig (135.185.106.253)
 -1  nimrod2 (135.185.106.254)  DVMRP  thresh^ 1  Not forwarding
 -2  nwsvideo (135.185.14.30)
Round trip time 2 ms; total ttl of 2 required.

Waiting to accumulate statistics... Results after 10 seconds:

  Source        Response Dest    Overall     Packet Statistics For
Traffic From
135.185.14.30   224.0.1.32       Packet      135.185.14.30 To
224.2.142.70
     v       __/  rtt    1 ms     Rate       Lost/Sent = Pct  Rate
135.185.11.1   
135.185.106.254 nimrod2 Not forwarding
     v      \__   ttl    2         0 pps        ?/519         51 pps
135.185.106.253 135.185.106.254
  Receiver      Query Source

===============================================================================

All suggestions are appreciated.

Thanks!

-Craig  

	()_()	Craig Votava
	 (_)	Lucent Technologies
		[email-masked]

---

From: Bill Fenner <[email-masked]>
Date: Sat, 8 Aug 1998 13:01:39 PDT

In DVMRP, there are two reasons for a router to forward onto a subnet:
1) There are downstream dependent routers that have not pruned the source
    and group
2) There are group members of the group
And one reason that it will never forward onto a subnet:
3) There is a "dominant" router on the subnet who has been elected the
   forwarder for packets from the source.

So, either both (1) and (2) are false, or (3) is true.  You can determine
(1) from the combination of mrouted.dump and mrouted.cache; the mrouted.dump
will have a bracketed list of downstream dependent routers for each source.
Example:

Virtual Interface Table
Vif  Name  Local-Address                               M  Thr  Rate   Flags
 0    le0  13.2.116.239    subnet: 13.2.116/22         1   1      0   querier
                            peers: 13.2.116.244 (3.255) [0] have-genid up 44:03:59

This peer is neighbor ID 0 (see the [0]).

Each route has a list of downstream dependent routers, as follows:

 Origin-Subnet      From-Gateway    Metric Tmr Fl In-Vif  Out-Vifs
 204.147.128.4/30   204.162.228.1      4    20 ..   4    0[0] 1* 2* 3*

This means that on vif 0, neighbor ID 0 has expressed a downstream
dependency.

The mrouted.cache file contains an entry for each active source and group.

 Origin             Mcast-group         CTmr     Age      Ptmr Rx IVif Forwvifs
<(prunesrc:vif[idx]/tmr) prunebitmap
>Source             Lifetime SavPkt         Pkts    Bytes RPFf
 204.147.128.4/30   224.0.1.32       0:04:05  0:01:26  0:07:54  1  4P  0p
<(13.2.116.244:0[0]/474) 0x0000000000000001
>204.147.128.5      -             1

This shows traffic from 204.147.128.5 to 224.0.1.32, and we received a
prune from neighbor ID 0.  The "p" after the 0 in the Forwvifs indicates
that it is pruned.

To determine if (2) is true, once again examine the mrouted.dump and
mrouted.cache.  Newer mrouted's will put a "g" in the cache file to indicate
that forwarding is happening because of group membership:

 Origin             Mcast-group         CTmr     Age      Ptmr Rx IVif Forwvifs
<(prunesrc:vif[idx]/tmr) prunebitmap
>Source             Lifetime SavPkt         Pkts    Bytes RPFf
 204.162.228/24     224.0.1.1        0:00:18 44:56:37        -  -  4   0  1g
>204.162.228.1      44:56:37      0         2528   192128    0

In addition, the mrouted.dump file indicates the group membership on each
interface:

Vif  Name  Local-Address                               M  Thr  Rate   Flags
 1    le1  13.1.100.239    subnet: 13.1.100/22         1   1      0   querier leaf
           group host (time left): 224.0.1.1       13.1.100.13     ( 0:04:06)

indicating that traffic to 224.0.1.1 will be forwarded out this interface.

Finally, (3) can also be verified by the mrouted.dump .  If an interface
appears in the list of Out-Vifs in the mrouted.dump, then there is no
dominant router on that interface:

 Origin-Subnet      From-Gateway    Metric Tmr Fl In-Vif  Out-Vifs
 204.162.228/24     204.162.228.1      2    20 ..   4    0[0] 1* 2* 3*

Given your other message about snooping the network and not seeing the
IGMP group membership message, I'd bet that #2 is your problem - mrouted
does not know that there is a group member on the interface.

  Bill