Bandwidth limits for Amazon EC2
I have a micro instance on Amazon EC2 cloud.
Also the instance is small and it has vary low CPU and EAM usage but it generates a lot of content, so it can be considered like a web server serving small amount of static files (not of a big size) to many clients.
From the technical point of view there is no problems for such instance to handle the load serving many MBs per seconds.
What I'm considered is if there are limitation of bandwidth by Amazon itself. Many VPS service providers limit the bandwidths to lets say 10MB/s, are there such limits at Amazon and if they are what are they?
I couldn't find any reference.
Solution 1:
Remembered that I had bookmarked a similar post a while back, and Cyberx86 posted an excellent answer with benchmark tests :)
Serverfault answer
Edit
From what I've been able to find on the AWS forums - It doesn't seem like the support people from Amazon want to answer that question. Their advice is to test it with an external source: AWS forum post from 2012
Older posts (post1, post2 refer to transfer speeds in coalition to instance size. The 2nd one mentions that the data was a part of the AWS documentation but later it was replaced with stuff about I/O.
small 250 mbps
large 500 mbps
xlarge 1000 mbps
These numbers seem to fit with the benchmarks you can find on google.
So sadly - I don't think you can find transfer speeds on their site anymore.
Solution 2:
Edit:
After @tomasz notified me, I checked the issue again.
I found a blog where the bandwidths are compared in;
http://epamcloud.blogspot.com.tr/2013/03/testing-amazon-ec2-network-speed.html?m=1
And I think, there is no a certain limit because of the different technical infrastructures by zone and the technology and infrastructure providers continues to improvement day by day.
If EC2 bandwidth limits are wanted to be known, each zone should be handled separately.
Now, there is a list on AWS docs.
The answer from its source;
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-ec2-config.html
Solution 3:
You say that the static files being served are not of a big size
. The smaller they are, the more you'll be worried about packets per second instead of overall bandwidth on the network.
As with bandwidth, AWS doesn't publish any concrete numbers, only "Low", "Moderate", "High", etc. I ran into some problems with PPS limitations, and it was even less published than bandwidth numbers, so I ran some tests.
Here's what I found for various instance sizes:
t1.micro 8,473
t2.nano 9,807
t2.micro 19,391
t2.small 28,296
t2.medium 47,214
t2.large 49,512
c1.medium 110,575
m3.large 142,839
m1.large 157,557
m4.large 222,280
c4.large 233,450
r3.large 412,315
c3.large 475,996
i3.large 529,558
r4.large 544,981
c5.large 823,806
There was a lot more that I found, too, around guaranteed throughput and best effort PPS (packets per second). I put it into a blog on monitoring packets per second on EC2 where I show graphs and tables better than I can show in a comment.
To tie it back to Amazon's Network Performance Designation ("Low", "Moderate", "High"), you'd probably be shocked to know there's little correlation between actual bandwidth and actual PPS to those designations. They are worthless - only rely on test results, not published categories from AWS.