Subject: More SGI O2 mrouted problems

From: "Craig M. Votava" <[email-masked]>
Date: Mon, 24 Aug 1998 10:30:09 -0500

Folks-

I believe that I'm converging on the source of
the difficulties with mrouted running on an SGI O2.

I need to verify that I'm not misunderstanding the
problem, to correctly point the finger of guilt.

Right now, I haven't started pointing yet, just
gathering data.

Please review the information below and give me
your ideas on where to go next. Don't be shy to
ask for more information, or for me to run some
tests.

I've sent Bill Fenner some email directly, asking
for his help too.

Thanks

-Craig

I'm running mrouted3.9b3 on an SGI O2 with IRIX 6.5

The machine has 2 network interfaces, nimrod, and nimrod2;
and the primary interface is currently setup on nimrod2.

There are no tunnels or external multicast connections (I'm
trying to simplify this as much as possible).

The problem can be illustrated in the picture below. The source
machine is providing a vic multicast video source. The monitor
on the subnet A receives it fine. Nobody on subnet B can receive
it, and neither can nimrod2.

I'm confused because I thought that mrouted running on the
nimrod/nimrod2 machine should re-broadcast the multicast packets
from subnet A to subnet B, when somebody on subnet B attaches
to that session.

                                ---------------
                                |  vic source |
                                ---------------
                                       |
------------------------------------------- Subnet A
         |                        |
  ---------------            -----------
  |   nimrod    |            | Monitor |
  |             |            -----------
  |   nimrod2   |
  ---------------
         |
------------------------------------------- Subnet B

Here's the mrinfo output:

mrinfo nimrod2
135.185.106.254 (nimrod2.ih.lucent.com) [DVMRPv3 compliant]:
  135.185.106.254 -> 0.0.0.0 (local) [1/1/querier/leaf]
  135.185.11.1 -> 0.0.0.0 (local) [1/1/querier/leaf]

Here's what I've done so far to debug this problem:

1.) I've verified that the source is actually transmitting, by
bringing vic up on the monitor workstation on subnet A. The
video shows up fine.

2.) I have the O2 monitoring the number of ethernet packets on each
interface. I see the video traffic on the "nimrod" interface (subnet
A), but the "nimrod2" interface (subnet B) is quiet. This tells me
that no multicast packets are being re-transmitted on subnet B.

3.) If I bring up vic for that session on the O2, I don't see any video.
Remember that the primary network interface for my O2 is setup as
nimrod2,
which is subnet B.

4.) I ran netsnoop on the O2's nimrod interface, to look at all IGMP
messages from the source machine. Among all of the IGMP messages, I
saw the one for the video source session:

0002:   len   60   time 14:48:09.930827
    ether:  src 8:0:20:1d:54:30/Sun       dst 1:0:5e:2:e2:32/IP-mcast  
            type ip    
    ip:     v 4       hl 5      tos 0     len 28    id 46123  off 0
            ttl 1     p igmp    sum 0xada8
            src nwsvideo.ih.lucent.com    dst 224.2.226.50             
    igmp:   version 1           type REPORT         unused 0   
            cksum 0x2bca        group 224.2.226.50   

I tried to coordinate this with the mrouted debug log I had:

14:48:07.987 RECV V2 member report   from 135.185.106.254 to
239.238.255.255
14:48:10.697 RECV V1 member report   from 135.185.106.253 to
239.255.255.255

As you can see by the timestamps, there is no member report listed
by mrouted as coming from the source machine (nwsvideo) for
multicast session 224.2.226.50 at 14:48:09.*

ANALYSIS:

Here's what this tells me (please correct me if I'm wrong). The
source machine on subnet A is working fine. Among other things, its
sending out a member report for the video session. That member report
is appearing at the "nimrod" interface on subnet A, and gets printed
out by netsnoop running on the O2.

Somewhere between the level that netsnoop runs at, and mrouted, this
member report disappears, so mrouted doesn't know about this session,
and doesn't re-broadcast those packets on subnet B when somebody
from subnet B attaches to that session.

How can I figure out where the member report is disappearing to?