Re: Seeing TCP socket options (nodelay, cork, etc) in Linux procfsor elsewhere?

From: Eric Dumazet
Date: Mon Mar 15 2010 - 12:20:46 EST


Le lundi 15 mars 2010 Ã 15:49 +0000, MacCana, Mike a Ãcrit :
> Hi kernel folks,
>
> I was wondering if there was a standard location to see TCP socket
> options (eg, nodelay, cork, etc), perhaps via procfs or some other
> means? I'd like to check whether arbitrary apps (for which I don't have
> code) are using particular TCP options.
>
> Wandering round /proc/net hasn't turned up anything yet, and after a
> quick:
> socket.setsockopt(0, 1, 1)
> to enable NODELAY I can't see any obvious difference in procfs or
> netstat output (where other Unixes seem to put this info). hat's the
> best way to see TCP options on sockets created by others' code?
>

There is limited support given by ss command (part of iproute2) :

ss -emoi

ESTAB 0 0 55.225.18.5:4900
55.225.18.5:50000 uid:501 ino:135421 sk:c3b405c0
mem:(r0,w0,f4096,t0) ts bic wscale:6,6 rto:201 rtt:1/0.5 ato:40 cwnd:3
send 393.2Mbps rcv_space:32768


But CORK flag is not exported yet (its usually a volatile flag, at least
with Apache server)



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/