This is used to wrap "struct tcp_info" as described in tcp(7) and /usr/include/linux/tcp.h. The following readers methods are defined corresponding to the "tcpi_" fields in the tcp_info struct.
As of raindrops 0.18.0+, this is supported on FreeBSD and OpenBSD systems as well as Linux
, although not all fields exist or match the documentation, below.
In particular, the last_data_recv
field is useful for measuring the amount of time a client spent in the listen queue before +accept()+, but only if TCP_DEFER_ACCEPT
is used with the listen socket (it is on by default in Unicorn).
state
ca_state
retransmits
probes
backoff
options
snd_wscale
rcv_wscale
rto
ato
snd_mss
rcv_mss
unacked
sacked
lost
retrans
fackets
last_data_sent
last_ack_sent
last_data_recv
last_ack_recv
pmtu
rcv_ssthresh
rtt
rttvar
snd_ssthresh
snd_cwnd
advmss
reordering
rcv_rtt
rcv_space
total_retrans
kernel.org/doc/man-pages/online/pages/man7/tcp.7.html
Raindrops::TCP_Info.new(tcp_socket) -> TCP_Info object source
Reads a TCP_Info
object from any given tcp_socket
. See the tcp(7) manpage and /usr/include/linux/tcp.h for more details.
info = Raindrops::TCP_Info.new(tcp_socket) info.get!(tcp_socket) source
Update an existing TCP_Info
objects with the latest stats from the given socket. This even allows sharing TCP_Info
objects between different sockets to avoid garbage.
mail archives: https://yhbt.net/raindrops-public/ http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/raindrops-public nntps://news.public-inbox.org/inbox.comp.lang.ruby.raindrops nntp://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/inbox.comp.lang.ruby.raindrops imaps://yhbt.net/inbox.comp.lang.ruby.raindrops.0 imap://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/inbox.comp.lang.ruby.raindrops.0 public: raindrops-public@yhbt.net source code: git clone https://yhbt.net/raindrops.git torsocks git clone http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/raindrops.git