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/wgengine
David Anderson 2d604b3791 net/packet: represent IP6 as two uint64s.
For the operations we perform on these types (mostly net6.Contains),
this encoding is much faster.

Part of #19.

name                   old time/op    new time/op    delta
Filter/icmp4-8           27.5ns ± 1%    28.0ns ± 2%   +1.89%  (p=0.016 n=5+5)
Filter/tcp4_syn_in-8     38.8ns ± 2%    38.3ns ± 1%   -1.24%  (p=0.024 n=5+5)
Filter/tcp4_syn_out-8    27.6ns ±12%    24.6ns ± 1%     ~     (p=0.063 n=5+5)
Filter/udp4_in-8         71.5ns ± 5%    65.9ns ± 1%   -7.94%  (p=0.008 n=5+5)
Filter/udp4_out-8         132ns ±13%     119ns ± 1%  -10.29%  (p=0.008 n=5+5)
Filter/icmp6-8            169ns ±10%      54ns ± 1%  -68.35%  (p=0.008 n=5+5)
Filter/tcp6_syn_in-8      149ns ± 6%      43ns ± 1%  -71.11%  (p=0.008 n=5+5)
Filter/tcp6_syn_out-8    37.7ns ± 4%    24.3ns ± 3%  -35.51%  (p=0.008 n=5+5)
Filter/udp6_in-8          179ns ± 5%     103ns ± 1%  -42.75%  (p=0.008 n=5+5)
Filter/udp6_out-8         156ns ± 3%     191ns ± 1%  +22.54%  (p=0.008 n=5+5)

Signed-off-by: David Anderson <danderson@tailscale.com>
4 years ago
..
filter net/packet: represent IP6 as two uint64s. 4 years ago
magicsock wgengine/magicsock: quiet an IPv6 warning in tests 4 years ago
monitor wgengine/monitor: fix copy/paste-o to actually monitor route changes 4 years ago
router wgengine/router: disable IPv6 if v6 policy routing is unavailable. 4 years ago
tsdns ipn, wgengine, magicsock, tsdns: be quieter and less aggressive when offline 4 years ago
tstun net/packet: add IPv6 source and destination IPs to Parsed. 4 years ago
winnet Move Linux client & common packages into a public repo. 5 years ago
userspace.go all: prepare for GOOS=ios in Go 1.16 4 years ago
userspace_test.go wgengine: fix lazy wireguard config bug when disco keys change 4 years ago
watchdog.go wgengine: add Engine.SetLinkChangeCallback 4 years ago
watchdog_test.go wgengine: prevent log after exit in watchdog test 4 years ago
wgengine.go ipn, wgengine: disable subnet routes if network has PAC configuration 4 years ago