[Olsr-dev] OLSR Multicast
Erik Tromp
(spam-protected)
Sat Nov 22 18:18:34 CET 2008
I'm afraid the bmf version shipped with olsrd-0.5.6-r2 doesn't work.
I've tested it in a simple 2-node network. First started the olsr daemon
with debug level 9:
# ./olsrd -d 9 | grep -i bmf
Name: "/olsr/olsrd-0.5.6-r2/lib/bmf/olsrd_bmf.so.1.5.3"
---------- LOADING LIBRARY /olsr/olsrd-0.5.6-r2/lib/bmf/olsrd_bmf.so.1.5.3
----------
OLSRD Basic Multicast Forwarding (BMF) plugin 1.5.3 (Nov 22 2008 17:32:36)
OLSRD BMF: opened 1 socket on OLSR interface "eth1"
OLSRD BMF: opened 1 socket on OLSR interface "eth2"
OLSRD BMF: opened 1 socket on OLSR interface "eth3"
OLSRD BMF: opened 1 socket on non-OLSR interface "eth4"
OLSRD BMF: opened 1 socket on "bmf0"
OLSRD Basic Multicast Forwarding (BMF) plugin: opened 5 sockets
---------- LIBRARY /olsr/olsrd-0.5.6-r2/lib/bmf/olsrd_bmf.so.1.5.3 LOADED
----------
In another console, started the ping session:
# ping 224.0.0.1
Now the problem shows up in the OLSRD debug output:
OLSRD BMF: outgoing pkt of 84 bytes captured on tuntap interface "bmf0":
10.0.4.3->224.0.0.1
OLSRD BMF: ----> Considering forwarding pkt on "eth3" to 10.0.6.5
OLSRD BMF: ----> Not forwarding to 10.0.6.5: link is timing out
OLSRD BMF: ----> No suitable neighbor found to forward to on "eth3"
OLSRD BMF: --> not encap-forwarding on "eth3": there is no neighbor that
needs my retransmission
OLSRD BMF: ----> No suitable neighbor found to forward to on "eth2"
OLSRD BMF: --> not encap-forwarding on "eth2": there is no neighbor that
needs my retransmission
OLSRD BMF: ----> No suitable neighbor found to forward to on "eth1"
OLSRD BMF: --> not encap-forwarding on "eth1": there is no neighbor that
needs my retransmission
OLSRD BMF: --> forwarded from non-OLSR to non-OLSR "eth4"
The ping packet is seen outgoing by the bmf process, but bmf cannot find a
suitable link to
forward the packet to. (In my specific test case, bmf should forward the
packet to 10.0.6.5,
which is a suitable link.)
The debug message originates from lib\bmf\src\NetworkInterfaces.c line 797
and onwards:
if (currEtx < LINK_COST_BROKEN)
{
OLSR_PRINTF(
9,
"%s: ----> Not forwarding to %s: link is timing out\n",
PLUGIN_NAME_SHORT,
olsr_ip_to_string(&buf, &walker->neighbor_iface_addr));
continue; /* for */
}
The if-statement should read (of course):
if (currEtx >= LINK_COST_BROKEN)
since we want to rule out links that are broken, instead of ruling out links
that are OK.
After I fixed this everything works fine.
I will put a special version of bmf for olsrd-0.5.6-r2 on
http://sourceforge.net/projects/olsr-bmf .
Henning, could you include this one-line-fix (or better, two-character-fix
:-) asap in your repo?
Best regards,
Erik
________________________________
Van: (spam-protected)
[mailto:(spam-protected)] Namens shahab shiran
Verzonden: vrijdag 21 november 2008 12:18
Aan: (spam-protected); Henning Rogge
Onderwerp: Re: [Olsr-dev] OLSR Multicast
yes i see ICMP Echo request on the receiver's bmf0
interface,
as you say,so everything must be fine.
many thanks for your help,
Sh
--- On Fri, 11/21/08, Henning Rogge <(spam-protected)> wrote:
From: Henning Rogge <(spam-protected)>
Subject: Re: [Olsr-dev] OLSR Multicast
To: (spam-protected), (spam-protected)
Date: Friday, November 21, 2008, 2:32 AM
Am Friday 21 November 2008 11:22:42 schrieb shahab shiran:
> /dev/net/tun exists, and i see bmf0-00 (by ifconfig)
> and route 224.0.0.0 for bmf0.
> but when i do ping 224.0.0.1, nothing comes back...
I think the multicast itself works, but the ICMP-Reply does
not come back (you
are doing some kind of broadcast ping).
Just check it with a tcpdump on the receiver side if you see
the ICMP-Request.
If yes, everything is fine.
Henning
*************************************************
Diplom Informatiker Henning Rogge
Forschungsgesellschaft für
Angewandte Naturwissenschaften e. V. (FGAN)
Neuenahrer Str. 20, 53343 Wachtberg, Germany
Tel.: 0049 (0)228 9435-961
Fax: 0049 (0)228 9435-685
E-Mail: (spam-protected)
Web: www.fgan.de
************************************************
Sitz der Gesellschaft: Bonn
Registergericht: Amtsgericht Bonn VR 2530
Vorstand: Dr. rer. nat. Ralf Dornhaus (Vors.), Prof. Dr.
Joachim Ender
(Stellv.)
More information about the Olsr-dev
mailing list