Hi,
I'm having some issues with TCP Speeds with Azure virtual machines. I currently have an A1 Standard VM and some other VM in another provider to complement the tests.
The VM in Azure is an Ubuntu 14.04 LTS 64bit, no firewall rules, 0.02, 0.13, 0.13 load averages.
My problem is: Why is TCP Upload so slow? I've run iperf to and from the 2 machines, and while UDP tests are excellent, TCP is just plain horrible:
TCP: Azure (client) -> OtherProvider (server) - UPLOAD TEST (AZURE TCP UPLOAD):
root@net01:~# iperf -c XXX.XXX.XXX.XXX -p 2000
------------------------------------------------------------
Client connecting to XXX.XXX.XXX.XXX, TCP port 2000
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local XXX.XXX.XXX.XXX port 59437 connected with XXX.XXX.XXX.XXX port 2000
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 22.0 MBytes 18.3 Mbits/sec
root@net01:~#
UDP: Azure (client) -> OtherProvider (server) - UPLOAD TEST (AZURE UDP UPLOAD):
root@net01:~# iperf -c XXX.XXX.XXX.XXX -p 2000 -u -b9999M------------------------------------------------------------
Client connecting to XXX.XXX.XXX.XXX, UDP port 2000
Sending 1470 byte datagrams
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 3] local XXX.XXX.XXX.XXX port 45678 connected with XXX.XXX.XXX.XXX port 2000
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 238 MBytes 200 Mbits/sec
[ 3] Sent 170054 datagrams
[ 3] Server Report:
[ 3] 0.0-10.0 sec 222 MBytes 186 Mbits/sec 0.657 ms 11563/170053 (6.8%)
[ 3] 0.0-10.0 sec 45 datagrams received out-of-order
root@net01:~#
TCP: OtherProvider (client) -> Azure (server) - UPLOAD TEST (AZURE TCP DOWNLOAD):
root@Medusa:~# iperf -c XXX.XXX.XXX.XXX -p 2000------------------------------------------------------------
Client connecting to XXX.XXX.XXX.XXX, TCP port 2000
TCP window size: 23.3 KByte (default)
------------------------------------------------------------
[ 3] local XXX.XXX.XXX.XXX port 51202 connected with XXX.XXX.XXX.XXX port 2000
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 193 MBytes 162 Mbits/sec
root@Medusa:~#
UDP: OtherProvider (client) -> Azure (server) - UPLOAD TEST (AZURE UDP DOWNLOAD):
root@Medusa:~# iperf -c XXX.XXX.XXX.XXX -p 2000 -u -b9999M------------------------------------------------------------
Client connecting to XXX.XXX.XXX.XXX, UDP port 2000
Sending 1470 byte datagrams
UDP buffer size: 224 KByte (default)
------------------------------------------------------------
[ 3] local XXX.XXX.XXX.XXX port 48414 connected with XXX.XXX.XXX.XXX port 2000
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 963 MBytes 808 Mbits/sec
[ 3] Sent 687035 datagrams
[ 3] Server Report:
[ 3] 0.0-10.0 sec 602 MBytes 505 Mbits/sec 0.011 ms 257717/687034 (38%)
[ 3] 0.0-10.0 sec 1 datagrams received out-of-order
root@Medusa:~#
Any ideas as to what might be going on? This post can also be found at http://privatepaste.com/2f01663af9 for better readbility.
Thanks!