You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/net
Jordan Whited 0926954cf5
net/tstun,wgengine/netstack: implement TCP GRO for local services (#13315)
Throughput improves substantially when measured via netstack loopback
(TS_DEBUG_NETSTACK_LOOPBACK_PORT).

Before (d21ebc2):
jwhited@i5-12400-2:~$ iperf3 -V -c 100.100.100.100
Starting Test: protocol: TCP, 1 streams, 131072 byte blocks
Test Complete. Summary Results:
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  5.77 GBytes  4.95 Gbits/sec    0 sender
[  5]   0.00-10.01  sec  5.77 GBytes  4.95 Gbits/sec      receiver

After:
jwhited@i5-12400-2:~$ iperf3 -V -c 100.100.100.100
Starting Test: protocol: TCP, 1 streams, 131072 byte blocks
Test Complete. Summary Results:
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  12.7 GBytes  10.9 Gbits/sec    0 sender
[  5]   0.00-10.00  sec  12.7 GBytes  10.9 Gbits/sec      receiver

Updates tailscale/corp#22754

Signed-off-by: Jordan Whited <jordan@tailscale.com>
2 months ago
..
art all: fix new lint warnings from bumping staticcheck 3 months ago
captivedetection net/captivedetection: mark TestAllEndpointsAreUpAndReturnExpectedResponse flaky (#13021) 3 months ago
connstats all: use Go 1.22 range-over-int 7 months ago
dns net/dns: updated gonotify dependency to v2 that supports closable context 3 months ago
dnscache net/dnscache: use parent context to perform lookup 5 months ago
dnsfallback {control,net}: close idle connections of custom transports 3 months ago
flowtrack net/flowtrack: fix, test String method 5 months ago
ipset go.mod: bump bart 4 months ago
ktimeout net/ktimeout: add a package to set TCP user timeout 9 months ago
memnet net/memnet: export the network name (#9111) 1 year ago
netaddr all: update copyright and license headers 2 years ago
netcheck health: introduce captive-portal-detected Warnable (#12707) 4 months ago
neterror net/neterror, wgengine/magicsock: use UDP GSO and GRO on Linux (#7791) 2 years ago
netkernelconf ipn/{ipnlocal,localapi},net/netkernelconf,client/tailscale,cmd/containerboot: optionally enable UDP GRO forwarding for containers (#12410) 5 months ago
netknob all: update copyright and license headers 2 years ago
netmon all: fix new lint warnings from bumping staticcheck 3 months ago
netns net/netns: remove some logspam by avoiding logging parse errors due to unspecified addresses 3 months ago
netstat all: add test for package comments, fix, add comments as needed 4 months ago
netutil all: add test for package comments, fix, add comments as needed 4 months ago
packet net/packet/checksum: fix v6 NAT 3 months ago
ping net/ping: fix ICMP echo code field to 0 1 year ago
portmapper all: use math/rand/v2 more 5 months ago
proxymux all: cleanup unused code, part 1 (#10661) 11 months ago
routetable net/{interfaces,netmon}, all: merge net/interfaces package into net/netmon 7 months ago
socks5 net/socks5: support UDP 3 months ago
sockstats net/{interfaces,netmon}, all: merge net/interfaces package into net/netmon 7 months ago
speedtest all: update copyright and license headers 2 years ago
stun ci: enable checklocks workflow for specific packages 5 months ago
stunserver all: use Go 1.22 range-over-int 7 months ago
tcpinfo all: use Go 1.22 range-over-int 7 months ago
tlsdial cmd/tta, vnet: add host firewall, env var support, more tests 3 months ago
tsaddr net/ipset, wgengine/filter/filtertype: add split-out packages 5 months ago
tsdial {control,net}: close idle connections of custom transports 3 months ago
tshttpproxy all: use Go 1.22 range-over-int 7 months ago
tstun net/tstun,wgengine/netstack: implement TCP GRO for local services (#13315) 2 months ago
wsconn go.{mod,sum}: migrate from nhooyr.io/websocket to github.com/coder/websocket 3 months ago