Merged to master at ad7f58d1756d..63951151462e (from, to] You can see the entire diff with 'git diff' or at https://github.com/brho/akaros/compare/ad7f58d1756d...63951151462e
You'll need to rebuild glibc at some point - maybe not immediately. Barret On 2017-07-21 at 12:06 barret rhoden <[email protected]> wrote: > Hi - > > I spent a chunk of time fixing up our TCP stack. Most of the changes > are only apparent for long-lived connections with non-trivial RTTs. > > You'll also want to grab the latest dropbear, which has a few changes to > increase throughput - mostly increasing the receive window. > > The major things: > - account for TSO when growing the cwnd > - window scale and timestamps (window scale is critical for long, fat > connections) > - selective acknowledgments for retrans (also helps with loss during > retrans, which requires a timeout) > - handle Silly Window Syndrome (this fixes issues with qemu's usermode > networking which you'd get with the new dropbear) > > As a minor thing, I also added 'dmesg' (supporting -c and -C), for > those of you using trace_print{k,f,x} or who are not looking at the > console (ssh only). > > There are a few more things I'd like to do for TCP, notably support the > pluggable congestion avoidance algorithms, like Linux and BSD do. > Specifically, I want to use TCP-cubic. Maybe support ECN too. But I'm > running out of time to play around with networking. =) > > Barret > > > The following changes since commit ad7f58d1756d6ecbaad00bcb95b18dc014d146c1: > > mlx4: Fix NAPI polling (2017-07-20 08:19:46 -0400) > > are available in the git repository at: > > [email protected]:brho/akaros.git net > > for you to fetch changes up to 63951151462ecdc5f6e8a3de78ae454e7c25eace: > > net: tcp: Use timestamps for the RTTM (2017-07-21 11:56:27 -0400) > > ---------------------------------------------------------------- > View this online at: > https://github.com/brho/akaros/compare/ad7f58d1756d...63951151462e > > ---------------------------------------------------------------- > Barret Rhoden (23): > Remove the #define exit() _exit() hack (XCC) > qio: Allow changing limits dynamically > kprof: Allow clearing the kptrace buffer > net: tcp: Fix cwnd and ssthresh for TSO and Reno > net: tcp: Adjust the transmit queue limit > net: tcp: Always set the retrans timer > net: tcp: Account for TCP options when using MSS > net: tcp: Fix memory leak with tcpackproc > net: tcp: Refactor TCP6 and 4 common code > net: tcp: Support TCP timestamps > net: tcp: Remove the Syn_received state > net: tcp: Advertise support for SACK > net: tcp: Be explicit about the max Window Scale > net: Add timestamps to the netlog > net: tcp: Track ipht and resets as their own class > net: tcp: Refactor in prep for SACKs > net: tcp: Support SACK > net: tcp: Avoid SWS for the receiver > net: tcp: Avoid SWS for the sender > net: tcp: Fix up the receive window > net: tcp: Remove the RETRAN flag > net: tcp: Don't scale SRTT and MDEV > net: tcp: Use timestamps for the RTTM > > kern/drivers/dev/kprof.c | 11 + > kern/include/ip.h | 3 +- > kern/include/ns.h | 3 +- > kern/kfs/bin/dmesg | 14 + > kern/src/net/netlog.c | 14 +- > kern/src/net/tcp.c | 1724 > +++++++++++++++----- > kern/src/ns/qio.c | 13 +- > .../compilers/gcc-glibc/glibc-2.19-existing.patch | 19 + > user/parlib/include/parlib/vcore.h | 12 - > user/parlib/signal.c | 1 + > 10 files changed, 1346 insertions(+), 468 deletions(-) > create mode 100755 kern/kfs/bin/dmesg -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
