gvisor/pkg
Bhasker Hariharan 3d71c627fa Add support for TCP receive buffer auto tuning.
The implementation is similar to linux where we track the number of bytes
consumed by the application to grow the receive buffer of a given TCP endpoint.

This ensures that the advertised window grows at a reasonable rate to accomodate
for the sender's rate and prevents large amounts of data being held in stack
buffers if the application is not actively reading or not reading fast enough.

The original paper that was used to implement the linux receive buffer auto-
tuning is available @ https://public.lanl.gov/radiant/pubs/drs/lacsi2001.pdf

NOTE: Linux does not implement DRS as defined in that paper, it's just a good
reference to understand the solution space.

Updates #230

PiperOrigin-RevId: 253168283
2019-06-13 22:28:01 -07:00
..
abi Update canonical repository. 2019-06-13 16:50:15 -07:00
amutex Update canonical repository. 2019-06-13 16:50:15 -07:00
atomicbitops Update canonical repository. 2019-06-13 16:50:15 -07:00
binary Update canonical repository. 2019-06-13 16:50:15 -07:00
bits Update canonical repository. 2019-06-13 16:50:15 -07:00
bpf Update canonical repository. 2019-06-13 16:50:15 -07:00
compressio Update canonical repository. 2019-06-13 16:50:15 -07:00
control Update canonical repository. 2019-06-13 16:50:15 -07:00
cpuid Update canonical repository. 2019-06-13 16:50:15 -07:00
eventchannel Update canonical repository. 2019-06-13 16:50:15 -07:00
fd Update canonical repository. 2019-06-13 16:50:15 -07:00
fdnotifier Update canonical repository. 2019-06-13 16:50:15 -07:00
gate Update canonical repository. 2019-06-13 16:50:15 -07:00
ilist Update canonical repository. 2019-06-13 16:50:15 -07:00
linewriter Update canonical repository. 2019-06-13 16:50:15 -07:00
log Update canonical repository. 2019-06-13 16:50:15 -07:00
memutil Update canonical repository. 2019-06-13 16:50:15 -07:00
metric Update canonical repository. 2019-06-13 16:50:15 -07:00
p9 Update canonical repository. 2019-06-13 16:50:15 -07:00
procid Update canonical repository. 2019-06-13 16:50:15 -07:00
rand Update canonical repository. 2019-06-13 16:50:15 -07:00
refs Update canonical repository. 2019-06-13 16:50:15 -07:00
seccomp Update canonical repository. 2019-06-13 16:50:15 -07:00
secio Update canonical repository. 2019-06-13 16:50:15 -07:00
segment Update canonical repository. 2019-06-13 16:50:15 -07:00
sentry Add support for TCP receive buffer auto tuning. 2019-06-13 22:28:01 -07:00
sleep Update canonical repository. 2019-06-13 16:50:15 -07:00
state Update canonical repository. 2019-06-13 16:50:15 -07:00
syserr Update canonical repository. 2019-06-13 16:50:15 -07:00
syserror Update canonical repository. 2019-06-13 16:50:15 -07:00
tcpip Add support for TCP receive buffer auto tuning. 2019-06-13 22:28:01 -07:00
tmutex Update canonical repository. 2019-06-13 16:50:15 -07:00
unet Update canonical repository. 2019-06-13 16:50:15 -07:00
urpc Update canonical repository. 2019-06-13 16:50:15 -07:00
waiter Update canonical repository. 2019-06-13 16:50:15 -07:00