Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Jun 2015 10:22:45 +0200 (CEST)
From:      Emeric POUPON <emeric.poupon@stormshield.eu>
To:        freebsd-net@freebsd.org
Subject:   Multicast routing questions
Message-ID:  <1192147789.4088965.1435134165130.JavaMail.zimbra@stormshield.eu>
In-Reply-To: <1675689431.4082440.1435132697610.JavaMail.zimbra@stormshield.eu>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello,

I'm testing multicast routing on FreeBSD 9.3 and I have a question:

In packet reception, it seems the packet is received locally as many times the packet is rerouted + 1:
ip_input -> ip_mforward -> ip_output (as many times there are dst interfaces in the route cache entry) -> ip_mloopback -> if_simloop (rcvif becomes the ifp of the output interface) -> ip_input -> ip_mforward -> ...
In ip_input, after each ip_mforward call, the packet is processed locally (using the goto "ours:")
Futhermore it seems this infinite loop is actually broken thanks to a test in ip_mforward that checks the ifp is the same as the registered one in the cache entry.

Maybe I missed something, but it does not seem to be working as expected.
What do you think?

Emeric





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1192147789.4088965.1435134165130.JavaMail.zimbra>