diff options
author | Bruce A. Mah <bmah@es.net> | 2014-10-23 11:10:39 -0700 |
---|---|---|
committer | Bruce A. Mah <bmah@es.net> | 2014-10-23 11:10:39 -0700 |
commit | 432ef7ebb3abfedcb87b717b251eb72fc1a2d0c3 (patch) | |
tree | fd2a0fcb891bcc13d14eb2891555a7c9f49c98a7 /src/iperf.h | |
parent | 8634b34804c20211b94fc5992bb311a2f245109d (diff) | |
download | iperf3-432ef7ebb3abfedcb87b717b251eb72fc1a2d0c3.tar.gz |
Retrieve RTT information on platforms supporting it.
This value is available on the sender side, expressed in
microseconds. It's available in the JSON output.
In the JSON output we also output the maximum observed RTT
per-stream. Note that since the observation interval is many times
the RTT, it's not clear how good this value would be at capturing the
largest computed RTT value over the lifetime of each stream.
While here, also determine the maximum observed snd_cwnd value over
the lifetime of each stream.
This all works pretty well on Linux, but on FreeBSD (which should
theoretically be supported) we don't do a good job of supporting the
tcp_info structure. We need to make this code a lot more portable,
rather than just assuming the world of platforms is "Linux"
vs. "everything else". Fixing this requires some rearchitecting of
the way that we retrieve, compute, and print statistics.
Part of a fix for #215.
Diffstat (limited to 'src/iperf.h')
-rw-r--r-- | src/iperf.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/iperf.h b/src/iperf.h index 6b55559..b1ff1e8 100644 --- a/src/iperf.h +++ b/src/iperf.h @@ -77,6 +77,7 @@ struct iperf_interval_results int snd_cwnd; TAILQ_ENTRY(iperf_interval_results) irlistentries; void *custom_data; + int rtt; }; struct iperf_stream_result @@ -89,6 +90,8 @@ struct iperf_stream_result int stream_retrans; int stream_prev_total_sacks; int stream_sacks; + int stream_max_rtt; + int stream_max_snd_cwnd; struct timeval start_time; struct timeval end_time; TAILQ_HEAD(irlisthead, iperf_interval_results) interval_results; |