1.73 Gbps at best on an Amazon EC2 10 Gigabit instance?Simple tool to test Amazon EC2 instance throughput?Amazon ec2 reserve instanceAmazon EC2 Instance Type UpgradeWhy is TCP accept() performance so bad under Xen?Automatically stop instance amazon ec2Amazon EC2 instance - STOPDelete Amazon EC2 terminated instanceSimple tool to test Amazon EC2 instance throughput?Amazon EC2 t1.micro instanceAmazon EC2 instance goes offlineAmazon AWS EC2 Instance Reboot
Is there a reason why Turkey took the Balkan territories of the Ottoman Empire, instead of Greece or another of the Balkan states?
Why can't argument be forwarded inside lambda without mutable?
Playing Doublets with the Primes
Why are condenser mics so much more expensive than dynamics?
How to say something covers all the view up to the horizon line?
Primes in a Diamond
Can an Iranian citizen enter the USA on a Dutch passport?
Can a player choose to add detail and flavor to their character's spells and abilities?
Problem with estimating a sequence with intuition
Convert Numbers To Emoji Math
Old story about a creature laying pyramid shaped eggs on Mars
What is a common way to tell if an academic is "above average," or outstanding in their field? Is their h-index (Hirsh index) one of them?
Referring to person by surname, keep or omit "von"?
What does the phrase "go for the pin" mean here?
GitLab account hacked and repo wiped
What does the coin flipping before dying mean?
Two denim hijabs
Is there any other simpler way to draw the following cross section?
What's the 2-minute timer on mobile Deutsche Bahn tickets?
What are the requirements for a river delta to form?
How important are good looking people in a novel/story?
Where did Lovecraft write about Carcosa?
What does のそ mean on this picture?
Antivirus for Ubuntu 18.04
1.73 Gbps at best on an Amazon EC2 10 Gigabit instance?
Simple tool to test Amazon EC2 instance throughput?Amazon ec2 reserve instanceAmazon EC2 Instance Type UpgradeWhy is TCP accept() performance so bad under Xen?Automatically stop instance amazon ec2Amazon EC2 instance - STOPDelete Amazon EC2 terminated instanceSimple tool to test Amazon EC2 instance throughput?Amazon EC2 t1.micro instanceAmazon EC2 instance goes offlineAmazon AWS EC2 Instance Reboot
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
When I test my own '10 Gigabit' instances (c3.8xlarge) with iperf I won't see transfer rates exceeding 1.73 Gbps. This is at least four times worse than what a blogger at scalablelogic reports where tests show results of 7 Gbps and 9.5 Gbps.
I'm testing between two c3.8xlarge instances located in the same zone and region, so these should be optimal benchmarking conditions. The one c3.8xlarge acts as iperf server and the other as an iperf client. Both instances are launched with Amazon Linux AMI 2013.09.2 - ami-5256b825 (64-bit).
Why am I seeing such poor results?
What should I look at if I want to improve throughput?
networking amazon-ec2 bandwidth-measuring
|
show 8 more comments
When I test my own '10 Gigabit' instances (c3.8xlarge) with iperf I won't see transfer rates exceeding 1.73 Gbps. This is at least four times worse than what a blogger at scalablelogic reports where tests show results of 7 Gbps and 9.5 Gbps.
I'm testing between two c3.8xlarge instances located in the same zone and region, so these should be optimal benchmarking conditions. The one c3.8xlarge acts as iperf server and the other as an iperf client. Both instances are launched with Amazon Linux AMI 2013.09.2 - ami-5256b825 (64-bit).
Why am I seeing such poor results?
What should I look at if I want to improve throughput?
networking amazon-ec2 bandwidth-measuring
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances usingwget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server withiperf –s
and connected from the client usingiperf -c elastic_ip_of_iperf_server
.
– niemion
Jan 29 '14 at 22:52
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
1
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10
|
show 8 more comments
When I test my own '10 Gigabit' instances (c3.8xlarge) with iperf I won't see transfer rates exceeding 1.73 Gbps. This is at least four times worse than what a blogger at scalablelogic reports where tests show results of 7 Gbps and 9.5 Gbps.
I'm testing between two c3.8xlarge instances located in the same zone and region, so these should be optimal benchmarking conditions. The one c3.8xlarge acts as iperf server and the other as an iperf client. Both instances are launched with Amazon Linux AMI 2013.09.2 - ami-5256b825 (64-bit).
Why am I seeing such poor results?
What should I look at if I want to improve throughput?
networking amazon-ec2 bandwidth-measuring
When I test my own '10 Gigabit' instances (c3.8xlarge) with iperf I won't see transfer rates exceeding 1.73 Gbps. This is at least four times worse than what a blogger at scalablelogic reports where tests show results of 7 Gbps and 9.5 Gbps.
I'm testing between two c3.8xlarge instances located in the same zone and region, so these should be optimal benchmarking conditions. The one c3.8xlarge acts as iperf server and the other as an iperf client. Both instances are launched with Amazon Linux AMI 2013.09.2 - ami-5256b825 (64-bit).
Why am I seeing such poor results?
What should I look at if I want to improve throughput?
networking amazon-ec2 bandwidth-measuring
networking amazon-ec2 bandwidth-measuring
asked Jan 29 '14 at 22:39
niemionniemion
14118
14118
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances usingwget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server withiperf –s
and connected from the client usingiperf -c elastic_ip_of_iperf_server
.
– niemion
Jan 29 '14 at 22:52
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
1
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10
|
show 8 more comments
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances usingwget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server withiperf –s
and connected from the client usingiperf -c elastic_ip_of_iperf_server
.
– niemion
Jan 29 '14 at 22:52
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
1
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances using
wget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server with iperf –s
and connected from the client using iperf -c elastic_ip_of_iperf_server
.– niemion
Jan 29 '14 at 22:52
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances using
wget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server with iperf –s
and connected from the client using iperf -c elastic_ip_of_iperf_server
.– niemion
Jan 29 '14 at 22:52
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
1
1
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10
|
show 8 more comments
4 Answers
4
active
oldest
votes
AWS Support admit that 10 GbE speeds can only be achieved between instances on the private subnet network. It requires that the private IP is used as opposed to the public IP which in my case always maxes out at 1.73 Gbps. That might change depending on zone and region. If you see different results please post them here.
This means that when it comes to external throughput, the c3.8xlarge (or similar 10 GbE instances) offer terrible value when compared to smaller instances with "High" network capabilities. A c1.medium instance comes at 1/16 the price of a c3.8xlarge, but it will allow for over half the througput (~0,95 Gbps) of a c3.8xlarge 10 GbE instance (~1,7 Gbps).
See this thread on the Wowza forums for AWS Support's answers.
add a comment |
Because of the virtualization layer the networking layer can't use DMA directly and CPU has to copy data back and forth spending time doing softirq. In this case, when you have too many packets transferred you need to tell the kernel to use more than one CPU core for that.
You can monitor this by doing watch -n1 cat /proc/softirqs
and looking at NET_RX.
Fortunately there is a feature called packet steering which allow us to use more CPU cores for receiving and transiting packets.
To allow the CPU to use more than one core for receiving packets you can do echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
For transiting you can do echo f0 > /sys/class/net/eth0/queues/tx-0/xps_cpus
This way the first 4 cores would be used for receiving and the next for 4 for transmitting.
f => 1+2+4+8 = 15 in hexadecimal
f0 => 16+32+64+128 = 240 in hexadecimal
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
add a comment |
Hope this helps you, we've wondered EC2's true public facing throughput for a while. We just finished running several Wowza Edge instances on C4.8xl instances and had no issues at 6+Gbps per instance. Per http://www.aerospike.com/blog/boosting-amazon-ec2-network-for-high-throughput/, the benchmarks below seem to be very accurate:
*Network Bandwidth
Amazon offers a range of instance types with varying amounts of memory and CPU. What is not well “documented” however, is network capabilities which are simply categorized as – Low, Moderate, High, and 10Gb. Based on our experiments running Aerospike servers on AWS and iperf runs on AWS, we were able to better define these categories to the following numbers:
- Low – Up to 100 Mbps
- Moderate – 100 Mbps to 300 Mbps
- High – 100 Mbps to 1.86 Gbps
- 10Gb – upto 8.86Gbps*
add a comment |
I am not sure how you are running iperf for your tests but sometimes it needs to be run multi-threaded to yield results that better reflect the actual maximum throughput of the underlying network stack. I have seen it necessary to sometimes build the thread count up to 96 to get to what appeared to be close to the optimal throughput.
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f570879%2f1-73-gbps-at-best-on-an-amazon-ec2-10-gigabit-instance%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
AWS Support admit that 10 GbE speeds can only be achieved between instances on the private subnet network. It requires that the private IP is used as opposed to the public IP which in my case always maxes out at 1.73 Gbps. That might change depending on zone and region. If you see different results please post them here.
This means that when it comes to external throughput, the c3.8xlarge (or similar 10 GbE instances) offer terrible value when compared to smaller instances with "High" network capabilities. A c1.medium instance comes at 1/16 the price of a c3.8xlarge, but it will allow for over half the througput (~0,95 Gbps) of a c3.8xlarge 10 GbE instance (~1,7 Gbps).
See this thread on the Wowza forums for AWS Support's answers.
add a comment |
AWS Support admit that 10 GbE speeds can only be achieved between instances on the private subnet network. It requires that the private IP is used as opposed to the public IP which in my case always maxes out at 1.73 Gbps. That might change depending on zone and region. If you see different results please post them here.
This means that when it comes to external throughput, the c3.8xlarge (or similar 10 GbE instances) offer terrible value when compared to smaller instances with "High" network capabilities. A c1.medium instance comes at 1/16 the price of a c3.8xlarge, but it will allow for over half the througput (~0,95 Gbps) of a c3.8xlarge 10 GbE instance (~1,7 Gbps).
See this thread on the Wowza forums for AWS Support's answers.
add a comment |
AWS Support admit that 10 GbE speeds can only be achieved between instances on the private subnet network. It requires that the private IP is used as opposed to the public IP which in my case always maxes out at 1.73 Gbps. That might change depending on zone and region. If you see different results please post them here.
This means that when it comes to external throughput, the c3.8xlarge (or similar 10 GbE instances) offer terrible value when compared to smaller instances with "High" network capabilities. A c1.medium instance comes at 1/16 the price of a c3.8xlarge, but it will allow for over half the througput (~0,95 Gbps) of a c3.8xlarge 10 GbE instance (~1,7 Gbps).
See this thread on the Wowza forums for AWS Support's answers.
AWS Support admit that 10 GbE speeds can only be achieved between instances on the private subnet network. It requires that the private IP is used as opposed to the public IP which in my case always maxes out at 1.73 Gbps. That might change depending on zone and region. If you see different results please post them here.
This means that when it comes to external throughput, the c3.8xlarge (or similar 10 GbE instances) offer terrible value when compared to smaller instances with "High" network capabilities. A c1.medium instance comes at 1/16 the price of a c3.8xlarge, but it will allow for over half the througput (~0,95 Gbps) of a c3.8xlarge 10 GbE instance (~1,7 Gbps).
See this thread on the Wowza forums for AWS Support's answers.
edited Feb 11 '14 at 23:49
answered Feb 11 '14 at 23:44
niemionniemion
14118
14118
add a comment |
add a comment |
Because of the virtualization layer the networking layer can't use DMA directly and CPU has to copy data back and forth spending time doing softirq. In this case, when you have too many packets transferred you need to tell the kernel to use more than one CPU core for that.
You can monitor this by doing watch -n1 cat /proc/softirqs
and looking at NET_RX.
Fortunately there is a feature called packet steering which allow us to use more CPU cores for receiving and transiting packets.
To allow the CPU to use more than one core for receiving packets you can do echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
For transiting you can do echo f0 > /sys/class/net/eth0/queues/tx-0/xps_cpus
This way the first 4 cores would be used for receiving and the next for 4 for transmitting.
f => 1+2+4+8 = 15 in hexadecimal
f0 => 16+32+64+128 = 240 in hexadecimal
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
add a comment |
Because of the virtualization layer the networking layer can't use DMA directly and CPU has to copy data back and forth spending time doing softirq. In this case, when you have too many packets transferred you need to tell the kernel to use more than one CPU core for that.
You can monitor this by doing watch -n1 cat /proc/softirqs
and looking at NET_RX.
Fortunately there is a feature called packet steering which allow us to use more CPU cores for receiving and transiting packets.
To allow the CPU to use more than one core for receiving packets you can do echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
For transiting you can do echo f0 > /sys/class/net/eth0/queues/tx-0/xps_cpus
This way the first 4 cores would be used for receiving and the next for 4 for transmitting.
f => 1+2+4+8 = 15 in hexadecimal
f0 => 16+32+64+128 = 240 in hexadecimal
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
add a comment |
Because of the virtualization layer the networking layer can't use DMA directly and CPU has to copy data back and forth spending time doing softirq. In this case, when you have too many packets transferred you need to tell the kernel to use more than one CPU core for that.
You can monitor this by doing watch -n1 cat /proc/softirqs
and looking at NET_RX.
Fortunately there is a feature called packet steering which allow us to use more CPU cores for receiving and transiting packets.
To allow the CPU to use more than one core for receiving packets you can do echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
For transiting you can do echo f0 > /sys/class/net/eth0/queues/tx-0/xps_cpus
This way the first 4 cores would be used for receiving and the next for 4 for transmitting.
f => 1+2+4+8 = 15 in hexadecimal
f0 => 16+32+64+128 = 240 in hexadecimal
Because of the virtualization layer the networking layer can't use DMA directly and CPU has to copy data back and forth spending time doing softirq. In this case, when you have too many packets transferred you need to tell the kernel to use more than one CPU core for that.
You can monitor this by doing watch -n1 cat /proc/softirqs
and looking at NET_RX.
Fortunately there is a feature called packet steering which allow us to use more CPU cores for receiving and transiting packets.
To allow the CPU to use more than one core for receiving packets you can do echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
For transiting you can do echo f0 > /sys/class/net/eth0/queues/tx-0/xps_cpus
This way the first 4 cores would be used for receiving and the next for 4 for transmitting.
f => 1+2+4+8 = 15 in hexadecimal
f0 => 16+32+64+128 = 240 in hexadecimal
edited Jan 30 '14 at 10:37
answered Jan 30 '14 at 10:23
BogdanBogdan
19016
19016
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
add a comment |
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
thank you. I tried it on both the iperf server and client, but I'm still limited at ~ 1.73 Gbps.
– niemion
Jan 30 '14 at 12:44
1
1
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
Not true (any more?): SR-IOV aka AWS Enhanced Networking, which gets rid of one layer of buffer copying for virtual machines, can be used on Linux and Windows.
– Eugene Beresovsky
May 28 '15 at 4:15
add a comment |
Hope this helps you, we've wondered EC2's true public facing throughput for a while. We just finished running several Wowza Edge instances on C4.8xl instances and had no issues at 6+Gbps per instance. Per http://www.aerospike.com/blog/boosting-amazon-ec2-network-for-high-throughput/, the benchmarks below seem to be very accurate:
*Network Bandwidth
Amazon offers a range of instance types with varying amounts of memory and CPU. What is not well “documented” however, is network capabilities which are simply categorized as – Low, Moderate, High, and 10Gb. Based on our experiments running Aerospike servers on AWS and iperf runs on AWS, we were able to better define these categories to the following numbers:
- Low – Up to 100 Mbps
- Moderate – 100 Mbps to 300 Mbps
- High – 100 Mbps to 1.86 Gbps
- 10Gb – upto 8.86Gbps*
add a comment |
Hope this helps you, we've wondered EC2's true public facing throughput for a while. We just finished running several Wowza Edge instances on C4.8xl instances and had no issues at 6+Gbps per instance. Per http://www.aerospike.com/blog/boosting-amazon-ec2-network-for-high-throughput/, the benchmarks below seem to be very accurate:
*Network Bandwidth
Amazon offers a range of instance types with varying amounts of memory and CPU. What is not well “documented” however, is network capabilities which are simply categorized as – Low, Moderate, High, and 10Gb. Based on our experiments running Aerospike servers on AWS and iperf runs on AWS, we were able to better define these categories to the following numbers:
- Low – Up to 100 Mbps
- Moderate – 100 Mbps to 300 Mbps
- High – 100 Mbps to 1.86 Gbps
- 10Gb – upto 8.86Gbps*
add a comment |
Hope this helps you, we've wondered EC2's true public facing throughput for a while. We just finished running several Wowza Edge instances on C4.8xl instances and had no issues at 6+Gbps per instance. Per http://www.aerospike.com/blog/boosting-amazon-ec2-network-for-high-throughput/, the benchmarks below seem to be very accurate:
*Network Bandwidth
Amazon offers a range of instance types with varying amounts of memory and CPU. What is not well “documented” however, is network capabilities which are simply categorized as – Low, Moderate, High, and 10Gb. Based on our experiments running Aerospike servers on AWS and iperf runs on AWS, we were able to better define these categories to the following numbers:
- Low – Up to 100 Mbps
- Moderate – 100 Mbps to 300 Mbps
- High – 100 Mbps to 1.86 Gbps
- 10Gb – upto 8.86Gbps*
Hope this helps you, we've wondered EC2's true public facing throughput for a while. We just finished running several Wowza Edge instances on C4.8xl instances and had no issues at 6+Gbps per instance. Per http://www.aerospike.com/blog/boosting-amazon-ec2-network-for-high-throughput/, the benchmarks below seem to be very accurate:
*Network Bandwidth
Amazon offers a range of instance types with varying amounts of memory and CPU. What is not well “documented” however, is network capabilities which are simply categorized as – Low, Moderate, High, and 10Gb. Based on our experiments running Aerospike servers on AWS and iperf runs on AWS, we were able to better define these categories to the following numbers:
- Low – Up to 100 Mbps
- Moderate – 100 Mbps to 300 Mbps
- High – 100 Mbps to 1.86 Gbps
- 10Gb – upto 8.86Gbps*
answered Sep 22 '15 at 23:59
StreamSpotDevGuyStreamSpotDevGuy
112
112
add a comment |
add a comment |
I am not sure how you are running iperf for your tests but sometimes it needs to be run multi-threaded to yield results that better reflect the actual maximum throughput of the underlying network stack. I have seen it necessary to sometimes build the thread count up to 96 to get to what appeared to be close to the optimal throughput.
add a comment |
I am not sure how you are running iperf for your tests but sometimes it needs to be run multi-threaded to yield results that better reflect the actual maximum throughput of the underlying network stack. I have seen it necessary to sometimes build the thread count up to 96 to get to what appeared to be close to the optimal throughput.
add a comment |
I am not sure how you are running iperf for your tests but sometimes it needs to be run multi-threaded to yield results that better reflect the actual maximum throughput of the underlying network stack. I have seen it necessary to sometimes build the thread count up to 96 to get to what appeared to be close to the optimal throughput.
I am not sure how you are running iperf for your tests but sometimes it needs to be run multi-threaded to yield results that better reflect the actual maximum throughput of the underlying network stack. I have seen it necessary to sometimes build the thread count up to 96 to get to what appeared to be close to the optimal throughput.
answered Jan 31 '18 at 17:02
Boris EpsteinBoris Epstein
395
395
add a comment |
add a comment |
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f570879%2f1-73-gbps-at-best-on-an-amazon-ec2-10-gigabit-instance%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Please paste your iperf configuration, as it very well could be the culprit.
– MDMarra
Jan 29 '14 at 22:43
@MDMarra, please explain how I find the iperf configuration? I have simply installed on both instances using
wget http://iperf.fr/download/iperf_2.0.2/iperf_2.0.2-4_i386 ; chmod +x iperf_2.0.2-4_i386 ; sudo mv iperf_2.0.2-4_i386 /usr/bin/iperf
, then started the server withiperf –s
and connected from the client usingiperf -c elastic_ip_of_iperf_server
.– niemion
Jan 29 '14 at 22:52
When you are running these iperf tests, are you sure your instance isn't maxing out the CPU or anything? Have you tried with an alternate OS? Have you checked with Amazon's support?
– Zoredache
Jan 29 '14 at 23:02
@Zoredache, CPU-usage is only a few percent. I have not tried with another OS, but I could try with Red Hat Enterprise Linux 6.4, SUSE Linux Enterprise Server 11 or Ubuntu Server 13.10. Which one would you suggest? Amazon support has not answered me, I guess it's because I haven't payed for support so I only have access to sales "support".
– niemion
Jan 29 '14 at 23:07
1
@niemion things like window size, threads, etc will play in here. They are all detailed in the iperf manpage. I'm not sure that running iperf with no options will ever yield "good" results, but I don't have any 10GbE hardware to test with
– MDMarra
Jan 29 '14 at 23:10