Skip to contentSkip to conversation

udp v6 early demux?

DISCUSSION Vlad Yasevich 2 participants 4 messages Feb 10, 2015 – Feb 11, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi

While testing udpv6 lockless path, I noticed that there is no support for udpv6 early demux? Is there a technical reason why, or was this just something that got forgotten (kind of like lockeless sendmsg)?

Thanks
-vlad

#1 lore raw
Quoted 6 lines · Vlad Yasevich

Hi

While testing udpv6 lockless path, I noticed that there is no support for udpv6 early demux? Is there a technical reason why, or was this just something that got forgotten (kind of like lockeless sendmsg)?

If you have a use case for connected UDP ipv6 flows with performance issues, then you might add early demux I guess.

IPv4 udp early demux has been a bit of a hack actually, as Shawn main usage was multicast AFAIK

63c6f81cdde5 udp: ipv4: do not waste time in __udp4_lib_mcast_demux_lookup 610438b74496 udp: ipv4: fix potential use after free in udp_v4_early_demux() f69b923a758f udp: fix a typo in __udp4_lib_mcast_demux_lookup 421b3885bf6d udp: ipv4: Add udp early demux

#2 lore raw
Quoted 11 lines · Eric Dumazet
Quoted 6 lines · Vlad Yasevich

Hi

While testing udpv6 lockless path, I noticed that there is no support for udpv6 early demux? Is there a technical reason why, or was this just something that got forgotten (kind of like lockeless sendmsg)?

If you have a use case for connected UDP ipv6 flows with performance issues, then you might add early demux I guess.

Quoted 9 lines

IPv4 udp early demux has been a bit of a hack actually, as Shawn main usage was multicast AFAIK

63c6f81cdde5 udp: ipv4: do not waste time in __udp4_lib_mcast_demux_lookup 610438b74496 udp: ipv4: fix potential use after free in udp_v4_early_demux() f69b923a758f udp: fix a typo in __udp4_lib_mcast_demux_lookup 421b3885bf6d udp: ipv4: Add udp early demux

I was more wondering if we can avoid the route the lookup. It may not always be a connected a case. If you have multiple senders and a single receiver on the same subnet, avoiding the route lookup with early demux might help.

-vlad

#3 lore raw
Quoted 3 lines · Vlad Yasevich

I was more wondering if we can avoid the route the lookup. It may not always be a connected a case. If you have multiple senders and a single receiver on the same subnet, avoiding the route lookup with early demux might help.

Yes, but early demux requires a connected socket, sorry.