gvisor/scripts
Andrei Vagin 8720bd643e netstack/tcp: software segmentation offload
Right now, we send each tcp packet separately, we call one system
call per-packet. This patch allows to generate multiple tcp packets
and send them by sendmmsg.

The arguable part of this CL is a way how to handle multiple headers.
This CL adds the next field to the Prepandable buffer.

Nginx test results:

Server Software:        nginx/1.15.9
Server Hostname:        10.138.0.2
Server Port:            8080

Document Path:          /10m.txt
Document Length:        10485760 bytes

w/o gso:
Concurrency Level:      5
Time taken for tests:   5.491 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      1048600200 bytes
HTML transferred:       1048576000 bytes
Requests per second:    18.21 [#/sec] (mean)
Time per request:       274.525 [ms] (mean)
Time per request:       54.905 [ms] (mean, across all concurrent requests)
Transfer rate:          186508.03 [Kbytes/sec] received

sw-gso:

Concurrency Level:      5
Time taken for tests:   3.852 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      1048600200 bytes
HTML transferred:       1048576000 bytes
Requests per second:    25.96 [#/sec] (mean)
Time per request:       192.576 [ms] (mean)
Time per request:       38.515 [ms] (mean, across all concurrent requests)
Transfer rate:          265874.92 [Kbytes/sec] received

w/o gso:
$ ./tcp_benchmark --client --duration 15  --ideal
[SUM]  0.0-15.1 sec  2.20 GBytes  1.25 Gbits/sec

software gso:
$ tcp_benchmark --client --duration 15  --ideal --gso $((1<<16)) --swgso
[SUM]  0.0-15.1 sec  3.99 GBytes  2.26 Gbits/sec

PiperOrigin-RevId: 276112677
2019-10-22 11:55:56 -07:00
..
build.sh kokoro: don't force to use python2 2019-09-26 14:37:19 -07:00
common.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
common_bazel.sh Add runsc logs to kokoro artifacts 2019-10-01 13:51:10 -07:00
dev.sh Remove extra --rm 2019-10-01 16:45:46 -07:00
do_tests.sh Impose order on test scripts. 2019-09-03 22:02:43 -07:00
docker_tests.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
go.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
hostnet_tests.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
kvm_tests.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
make_tests.sh test: don't use designated initializers 2019-09-24 19:05:12 -07:00
overlay_tests.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
release.sh Fix repository build scripts 2019-09-06 14:28:12 -07:00
root_tests.sh Bring back to life features lost in recent refactor 2019-09-16 08:17:00 -07:00
simple_tests.sh Impose order on test scripts. 2019-09-03 22:02:43 -07:00
swgso_tests.sh netstack/tcp: software segmentation offload 2019-10-22 11:55:56 -07:00
syscall_tests.sh Impose order on test scripts. 2019-09-03 22:02:43 -07:00