Edward Tomasz Napierala adc56f5a38 Make use of the stats(3) framework in the TCP stack.
This makes it possible to retrieve per-connection statistical
information such as the receive window size, RTT, or goodput,
using a newly added TCP_STATS getsockopt(3) option, and extract
them using the stats_voistat_fetch(3) API.

See the net/tcprtt port for an example consumer of this API.

Compared to the existing TCP_INFO system, the main differences
are that this mechanism is easy to extend without breaking ABI,
and provides statistical information instead of raw "snapshots"
of values at a given point in time.  stats(3) is more generic
and can be used in both userland and the kernel.

Reviewed by:	thj
Tested by:	thj
Obtained from:	Netflix
Relnotes:	yes
Sponsored by:	Klara Inc, Netflix
Differential Revision:	https://reviews.freebsd.org/D20655
2019-12-02 20:58:04 +00:00
..
2019-02-20 09:38:19 +00:00
2018-03-27 15:20:03 +00:00
2018-02-12 17:42:28 +00:00
2018-07-03 01:55:09 +00:00
2019-07-28 20:17:40 +00:00
2017-12-13 16:13:17 +00:00
2019-11-19 14:46:28 +00:00
2019-03-12 04:49:47 +00:00
2019-01-01 00:25:25 +00:00
2019-08-13 20:06:55 +00:00
2017-12-13 16:13:17 +00:00
2019-02-04 21:28:25 +00:00
2017-12-13 16:13:17 +00:00
2017-12-13 16:13:17 +00:00
2019-10-17 21:33:01 +00:00
2019-11-22 23:23:40 +00:00
2018-03-20 15:51:05 +00:00
2019-11-19 14:46:28 +00:00
2019-10-10 18:52:24 +00:00
2017-12-13 16:30:39 +00:00
2017-12-13 16:30:39 +00:00
2018-03-02 22:13:29 +00:00
2019-09-18 16:13:50 +00:00
2019-06-25 19:55:42 +00:00
2019-09-03 18:56:25 +00:00
2019-07-15 21:48:02 +00:00
2019-02-20 09:38:19 +00:00
2018-12-11 12:01:46 +00:00
2019-08-07 19:27:14 +00:00
2019-01-16 05:15:57 +00:00
2019-09-27 18:43:36 +00:00
2019-09-25 19:20:41 +00:00
2019-11-30 17:22:10 +00:00
2019-09-17 18:49:13 +00:00
2018-07-25 00:18:21 +00:00
2018-12-05 16:43:03 +00:00
2019-09-26 15:41:10 +00:00
2019-09-26 15:41:10 +00:00
2018-01-05 22:26:23 +00:00
2019-11-18 23:31:12 +00:00
2017-12-13 16:13:17 +00:00
2019-04-13 04:46:35 +00:00
2017-11-30 20:33:45 +00:00
2019-07-24 23:04:59 +00:00
2019-11-08 14:51:09 +00:00
2019-06-10 05:28:03 +00:00
2018-03-27 15:20:03 +00:00
2019-09-25 19:20:41 +00:00