0

Currently, I am experiencing some problems on getting a server to run efficiently on an EC2 instance. On my local machine everything runs as expected, but on AWS the servers experience some latency, 30ms on servers connected locally to each other, and start to drop connections. My local machine uses Windows 7, and the EC2 instances use Windows Server 2012 R2. After searching online and reading over ways to tune a Windows Server 2012 R2 machine, I am still experiencing a noticeable latency between connected servers and several connections dropping.

One of the things that caught my eye was the Receive-Side Scaling option on Network Adapters. Since the server is going to experience a high load from network messages, it seems that it would benefit a lot from having the work offloaded among all its virtual cores. Has anyone been able to configure RSS, or to be more specific Virtual Receive-Side Scaling, for a Windows Server 2012 R2 instance on EC2? Does anyone have any suggestions on what I could do to reduce the network latency the server experiences or how to tune it?

[EDIT 4/27/2016]

I think I need to describe my current test and setup a little better.

At the moment I am running a test in which I have multiple server programs running on the same machine. I only have one EC2 instance, a c4.4xlarge machine running Windows Server 2012 R2.

On my local machine, I run all of my server programs and experience 0 ms latency between the server programs that communicate with each other using localhost ip.

On AWS, when I replicate my local test and run all of the server programs on one instance, I get a 30 ms latency between server programs that are running on the same machine and using localhost.

I guess my confusion is how can there be such a large latency between 2 server programs that are running on the same machine.

One more thing to clarify, by server I mean software application. So in my current setup I have multiple software applications running on the same instance and communicating to each other using localhost ip.

Jesse
  • 1
  • 1
  • What instance type are you using? Some instance types, such as c4, support enhanced networking. – Matt Houser Apr 27 '16 at 04:42
  • I am using a C4.4xlarge. I checked if enhanced networking was enabled, and it is. My main problem is that for some reason i am experiencing 30 ms latency for servers that are locally connected to each other, so I thought that RSS could help with this. – Jesse Apr 27 '16 at 14:28
  • Were they created in a common placement group? – Matt Houser Apr 27 '16 at 16:06
  • Hi Matt. The servers are running on the same instance. They are connecting to each other with the localhost ip, this is why I cannot grasp why there is latency between the servers. – Jesse Apr 27 '16 at 17:15
  • But are they in a placement group? This is a specific AWS feature. Also are they in the same region and availability zone? I've had Linux instances in the same AZ that had sub ms latency. So first need to work out if it's the hardware/networking or Windows. 30ms is a heck of a lot, that's the latency from Australia to New Zealand. First try this http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html – Tim Apr 27 '16 at 19:48
  • Hi Tim, do I need to place the instance in a placement group even though I am only using one instance? My current goal is to replicate the results I am getting on my local machine on an amazon instance. The test consist of me running several server programs that communicate to each other on one single machine. Locally, I am able to get 0 latency between the servers communicating to each other using localhost, but on amazon I cannot seem to replicate this result. – Jesse Apr 27 '16 at 20:53
  • You may want to clarify your definition of "server". Your intention is that it means a software application whereas many will take it to mean an EC2 instance or the like. – Matt Houser Apr 27 '16 at 20:56

0 Answers0