Page MenuHomeFreeBSD

if_lagg: Allow lagg interfaces to be used with NetMap
Needs ReviewPublic

Authored by thj on Fri, Nov 18, 4:28 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 2, 11:10 AM
Unknown Object (File)
Fri, Dec 2, 11:10 AM
Unknown Object (File)
Mon, Nov 28, 1:16 PM

Details

Reviewers
None
Group Reviewers
Klara
network
Test Plan

Issues with epair and netmap require hardware to perform testing (as far as I
can tell). Instead I tested with two hosts I have an 4 igc interfaces. I tested
with pkt-gen to verify that traffic can be sent (it could already) and received
by a netmap application:

dut # ifconfig lagg create
lagg0
dut # ifconfig igc1 up
dut # ifconfig igc2 up
dut # sudo ifconfig lagg0 inet 10.4.100.2/24 laggport igc1 laggport igc2 laggproto lacp up

pktgen # ifconfig lagg create
lagg0
pktgen # ifconfig igc0 up
pktgen # ifconfig igc1 up
pktgen # sudo ifconfig lagg0 inet 10.4.100.3/24 laggport igc0 laggport igc1 laggproto lacp up

# cd /usr/obj/code/freebsd/worktrees/netmap/amd64.amd64/tools/tools/netmap
dut # sudo ./pkt-gen -f rx -i lagg0
pktgen # sudo ./pkt-gen -f tx -i lagg0 -n 1000000000 -l 60 -d 198.19.0.1:2000-198.19.0.100 -D a0:36:9f:1e:28:14 -s 198.18.0.1:2000-198.18.0.20 -w 4

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 48421
Build 45307: arc lint + arc unit

Event Timeline

thj requested review of this revision.Fri, Nov 18, 4:28 PM

I'm not familiar with netmap, just some thoughts.

I've not benchmarked but current approach looks a little heavy weight.
Can we hook netmap directly onto LAGG members so that routine ether_nh_input() can be totally bypassed ?