[Xorp-users] Very simple multicast setup, yet can't find any text on how to do it!

Pavlin Radoslavov pavlin at ICSI.Berkeley.EDU
Tue Jan 27 10:53:33 PST 2009


Erik Slagter <erik at slagter.name> wrote:

> Pavlin Radoslavov wrote:
> 
> > It seems the kernel upcalls contain some bogus information.
> 
> Hmmm....
> 
> This may very well be the case, with my own little
> multicast-forwarding-using-kernel program, I experience the same, i.e. I
> create a raw socket, call mrt6_init, join mld multicast group, set icmp filter
> to "143" and then I still get all sorts of messages from the socket, some of
> them hem type "0" the icmp type can be anything. Indeed looks like a kernel
> bug to me.
> 
> > The following email suggests that other folks might also had seen issues
> > with kernel upcalls:
> 
> > http://www.linux-ipv6.org/ml/usagi-users/msg04077.html
> 
> This involves PIM and router adverts. I try to avoid PIM as much as possible
> ;-) Waaaaay too complex.

If you are running multicast in tightly controlled environment with
a single sender in the center of a star topology directly connecting
the receivers, then you can get away with your own program.
Otherwise, if there are remote senders and receivers, then things
can get easily out of control (there is a reason PIM is complex :)

> > Unfortunately I wasn't able to replicate the problem and investigate
> > the upcall issues.
> 
> Never mind. Maybe you're using a different kernel version?

I've tried with 2.6.27.2 and 2.6.28.1 but I got same result.
I haven't tried yet with the exact version you are using
(2.6.27.10).

> > In my testing I wasn't even getting the MLD_LISTENER_REPORT
> > delivered to the FEA, and there were no upcalls, but I didn't
> > investigate further. A potential source of the problem is the one
> > described in the following email:
> > http://www.linux-ipv6.org/ml/usagi-users/msg04031.html
> 
> Yeah, I know this one, that's where I got the base for my own little app,
> thanks to Todd :-) I couldn't find any text where to start (api...) if you're
> going to do anything with ip6 multicast routing on linux :-(

Were you able to get kernel upcalls and MLD_LISTENER_REPORT messages
by using the unmodified original program from Todd
(http://www.linux-ipv6.org/ml/usagi-users/msg04077.html) ?
I am asking this question because I need a calibration point.


Re. API description online, you could try the FreeBSD multicast(4)
manual page available from the following URL (enter keyword
"multicast"):

http://www.FreeBSD.org/cgi/man.cgi

Most of the info there should apply for Linux as well (at least for
IPv4), but Linux doesn't have the "Advanced Multicast API" support.

Regards,
Pavlin



More information about the Xorp-users mailing list