I'd like to know how to check TCP version on Linux (FreeBSD, Centos, Ubuntu)
Are we playing "which does not belong?"
Ubuntu and CentOS (a RHEL re-branding) are Linux distributions.
FreeBSD is a different OS altogether.
The Linux kernel offers several implementations of TCP.
cf. http://lxr.linux.no/linux/net/ipv4/Kconfig#L440
config TCP_CONG_BIC
config TCP_CONG_CUBIC
config TCP_CONG_WESTWOOD
config TCP_CONG_HTCP
config TCP_CONG_HSTCP
config TCP_CONG_HYBLA
config TCP_CONG_VEGAS
config TCP_CONG_SCALABLE
config TCP_CONG_LP
config TCP_CONG_VENO
config TCP_CONG_YEAH
The current default is "cubic"
https://en.wikipedia.org/wiki/CUBIC_TCP
The /proc/sys/net/ipv4/tcp_congestion_control knob can be used
to switch between the available algorithms. (I don't know how
that affects open TCP connections.)
http://lxr.linux.no/linux/Documentation/networking/ip-sysctl.txt
http://lxr.linux.no/linux/Documentation/networking/tcp.txt
The following article is relevant.
http://linuxgazette.net/135/pfeiffer.html
Regards.