Question: I am using Ubuntu 14.04 LTS with Linux Kernel version 3.13.0-34.

How can I find out what is the default or what is the current TCP congestion control algorithm being used ? 

Thanks.

Answer: 
There aren't TCP variants; there are TCP *congestion control algorithms*:

```
sysctl net.ipv4.tcp_congestion_control

cat /proc/sys/net/ipv4/tcp_congestion_control

```

The default is usually `cubic` or `reno`, although plenty others are available, and programs can set the preferred algorithm for *individual connections* (e.g. Transmission enables `lp` if available).

(The same knob affects both IPv4 and IPv6, despite its name.)
Adding to ***@grawity*** answer, it is possible to check all TCP congestion control algorithms available with the following command:

```
sysctl net.ipv4.tcp_available_congestion_control

```

A list of some of the possible output (i.e.- availble flavours) is:

*reno*: Traditional TCP used by almost all other OSes. (default)

*cubic*: CUBIC-TCP

*bic*: BIC-TCP

*htcp*: Hamilton TCP

*vegas*: TCP Vegas

*westwood*: optimized for lossy networks

*YeAH*: delay-aware/state-enabled to keep a pipe at or below a threshold

NOTE: 
If *cubic* and/or *htcp* are not listed when you do `'sysctl net.ipv4.tcp_available_congestion_control'`, try the following, as most distributions include them as loadable kernel modules:

```
/sbin/modprobe tcp_htcp
/sbin/modprobe tcp_cubic

```

For more detailes you can have look here:

[TCP tuning Details](https://fasterdata.es.net/host-tuning/linux/expert/)

Hope it helps.

Cheers,

Guy.