[Nfd-dev] Best Route strategy doesn't work over ethernet multicast?

Nicholas Gordon nmgordon at memphis.edu
Tue Mar 27 13:44:53 PDT 2018


The 'adhoc' setting is intended.

Turns out the error was between the keyboard and the chair on this one.
The face '256' is the NIC bridging the VM to the host, not the VM to VM
link. I guess I thought best-route would eventually switch if the one
it chose wasn't working, but it just kept blindly sending to the
numerically least-ordered face. After only setting the route for face
'257', it works as it should. False alarm!

-- 
-Nick

On Tue, 27 Mar 2018
16:28:34 -0400 Davide Pesavento <davide.pesavento at lip6.fr> wrote:

> Nick,
> 
> On Tue, Mar 27, 2018 at 3:46 PM, Nicholas Gordon <nmgordon at memphis.edu> wrote:
> > Machine 1:
> > faceid=1 remote=internal:// local=internal:// counters={in={0i 25d 0n 7412B} out={21i 0d 0n 1974B}} flags={local permanent point-to-point local-fields}
> > faceid=254 remote=contentstore:// local=contentstore:// counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={local permanent point-to-point}
> > faceid=255 remote=null:// local=null:// counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={local permanent point-to-point}
> > faceid=256 remote=ether://[01:00:5e:00:17:aa] local=dev://enp0s3 counters={in={0i 0d 0n 0B} out={4i 0d 0n 200B}} flags={non-local permanent multi-access}
> > faceid=257 remote=ether://[01:00:5e:00:17:aa] local=dev://enp0s8 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> 
> The ether multicast faces are set to "multi-access" on machine1 and
> "adhoc" on machine2, is that intended?
> 
> > faceid=258 remote=fd://29 local=unix:///run/nfd.sock counters={in={18i 2d 0n 2429B} out={2i 16d 0n 5244B}} flags={local on-demand point-to-point local-fields}
> > faceid=259 remote=udp4://224.0.23.170:56363 local=udp4://10.0.2.15:36202 counters={in={0i 0d 0n 0B} out={0i 0d 0n0B}} flags={non-local permanent multi-access}
> > faceid=260 remote=udp4://224.0.23.170:56363 local=udp4://10.0.0.10:36424 counters={in={0i 0d 0n 0B} out={0i 0d 0n0B}} flags={non-local permanent multi-access}
> > faceid=261 remote=udp6://[ff02::1234%enp0s3]:56363 local=udp6://[fe80::9045:fd09:d20f:1ca4%enp0s3]:59758 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=262 remote=udp6://[ff02::1234%enp0s8]:56363 local=udp6://[fe80::f88f:13de:3fd6:15bd%enp0s8]:48217 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=266 remote=fd://38 local=unix:///run/nfd.sock counters={in={1i 0d 0n 46B} out={0i 0d 0n 0B}} flags={local on-demand point-to-point}
> >
> > Machine 2:
> > faceid=1 remote=internal:// local=internal:// counters={in={0i 19d 0n 5694B} out={15i 0d 0n 1436B}} flags={local permanent point-to-point local-fields}
> > faceid=254 remote=contentstore:// local=contentstore:// counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={local permanent point-to-point}
> > faceid=255 remote=null:// local=null:// counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={local permanent point-to-point}
> > faceid=256 remote=ether://[01:00:5e:00:17:aa] local=dev://enp0s3 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent adhoc}
> > faceid=257 remote=ether://[01:00:5e:00:17:aa] local=dev://enp0s8 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent adhoc}
> > faceid=258 remote=ether://[01:00:5e:00:17:aa] local=dev://enp0s9 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent adhoc}
> > faceid=259 remote=fd://33 local=unix:///run/nfd.sock counters={in={14i 1d 0n 1653B} out={1i 11d 0n 3675B}} flags={local on-demand point-to-point local-fields}
> > faceid=260 remote=udp4://224.0.23.170:56363 local=udp4://10.0.2.15:41951 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=261 remote=udp4://224.0.23.170:56363 local=udp4://10.0.0.11:45389 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=262 remote=udp6://[ff02::1234%enp0s3]:56363 local=udp6://[fe80::7711:c86d:d3c3:5a60%enp0s3]:51080 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=263 remote=udp6://[ff02::1234%enp0s8]:56363 local=udp6://[fe80::d9ba:9f4f:afdb:a550%enp0s8]:48887 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=264 remote=fd://42 local=unix:///run/nfd.sock counters={in={1i 0d 0n 230B} out={0i 1d 0n 413B}} flags={local on-demand point-to-point}
> > faceid=265 remote=udp6://[ff02::1234%enp0s9]:56363 local=udp6://[fe80::4bde:a24b:305e:10f2%enp0s9]:39751 counters={in={0i 0d 0n 0B} out={0i 0d 0n 0B}} flags={non-local permanent multi-access}
> > faceid=266 remote=fd://45 local=unix:///run/nfd.sock counters={in={1i 0d 0n 46B} out={0i 0d 0n 0B}} flags={local on-demand point-to-point}
> >
> >
> > And these are the routes listed for them:
> > Machine 1:
> > prefix=/ndnping nexthop=256 origin=static cost=0 flags=child-inherit expires=never
> > prefix=/ndnping nexthop=257 origin=static cost=0 flags=child-inherit expires=never
> > prefix=/localhost/nfd nexthop=258 origin=app cost=0 flags=child-inherit expires=never
> >
> > Machine 2:
> > prefix=/ndnping/ping nexthop=264 origin=app cost=0 flags=child-inherit expires=never
> > prefix=/localhost/nfd nexthop=259 origin=app cost=0 flags=child-inherit expires=never
> >
> >
> > I should stress that connectivity is fine when I use the multicast
> > strategy, so I'm confident it isn't the network setup. The logs for
> > machine 1 show that the interest is being forwarded:
> >
> > 1522179263.243695 DEBUG: [Forwarder] onOutgoingInterest face=256 interest=/ndnping/ping/9219221538684228872
> > 1522179263.243986 DEBUG: [BestRouteStrategy2] /ndnping/ping/9219221538684228872?ndn.MustBeFresh=1&ndn.Nonce=3051988968 from=265 newPitEntry-to=256
> 
> This is odd... There should be an "onOutgoingInterest" DEBUG message
> from [Forwarder] immediately after the above message...
> 
> > 1522179264.246352 DEBUG: [Forwarder] onInterestUnsatisfied interest=/ndnping/ping/9219221538684228869
> >
> > But there is never any corresponding message on machine 2. I also don't
> > see any logs that indicate any errors. The transports are open when I'm
> > running the pings, too.
> >
> > For each machine, I have the logging set like this:
> >
> > log
> > {
> >   default_level INFO
> >   Forwarder DEBUG
> >   Transport DEBUG
> >   MulticastEthernetTransport DEBUG
> >   BestRouteStrategy2 DEBUG
> > }
> 
> You can enable TRACE logging in EthernetTransport (not
> MulticastEthernetTransport) to check whether the packet is actually
> sent from the face.
> 
> Best,
> Davide


More information about the Nfd-dev mailing list