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
James Tucker 4903d6c80b wgengine/netstack: block link writes when full rather than drop
Originally identified by Coder and documented in their blog post, this
implementation differs slightly as our link endpoint was introduced for
a different purpose, but the behavior is the same: apply backpressure
rather than dropping packets. This reduces the negative impact of large
packet count bursts substantially. An alternative would be to swell the
size of the channel buffer substantially, however that's largely just
moving where buffering occurs and may lead to reduced signalling back to
lower layer or upstream congestion controls.

Updates #9707
Updates #10408
Updates #12393
Updates tailscale/corp#24483
Updates tailscale/corp#25169

Signed-off-by: James Tucker <james@tailscale.com>
11 months ago
..
bench ipn/ipnlocal, all: plumb health trackers in tests 2 years ago
filter wgengine/filter: add check for unknown proto 12 months ago
magicsock feature/capture: move packet capture to feature/*, out of iOS + CLI 12 months ago
netlog wgengine: add exit destination logging enable for wgengine logger (#11952) 2 years ago
netstack wgengine/netstack: block link writes when full rather than drop 11 months ago
router wgengine/router: refactor udm-pro into broader ubnt support 1 year ago
wgcfg wgengine/wgcfg/nmcfg: coalesce, limit some debug logs 12 months ago
wgint wgengine{,/wgint}: add wgint.Peer wrapper type, add to wgengine.Engine 2 years ago
wglog all: use Go 1.22 range-over-int 2 years ago
winnet all: add test for package comments, fix, add comments as needed 2 years ago
mem_ios.go all: update copyright and license headers 3 years ago
pendopen.go all: add Node.HomeDERP int, phase out "127.3.3.40:$region" hack [capver 111] 1 year ago
userspace.go feature/capture: move packet capture to feature/*, out of iOS + CLI 12 months ago
userspace_ext_test.go util/usermetrics: make usermetrics non-global 1 year ago
userspace_test.go util/usermetrics: make usermetrics non-global 1 year ago
watchdog.go feature/capture: move packet capture to feature/*, out of iOS + CLI 12 months ago
watchdog_js.go all: update copyright and license headers 3 years ago
watchdog_test.go util/usermetrics: make usermetrics non-global 1 year ago
wgengine.go feature/capture: move packet capture to feature/*, out of iOS + CLI 12 months ago