-2

I have a cheaply rented server space running Ubuntu 12.04. I've measured response time using a Python script that just connects over a socket and sends small data back and forth, and it seems quite erratic, jumping around from 85ms to 2sec, averaging around 400-600ms.

When I ping the server, response time is about 85ms.

Why the discrepancy?

I'm basically new to server administration. Is there any standard way to characterize or test the networking capabilities of my server? What kind of performance can I expect from a cheap rented space?

I'm running a small, but latency sensitive application.

1 Answers1

3

Why the discrepancy?

Because it's a stream oriented protocol running on top of a packet switched network.

Because cheap services usually equate to poor services.

Because ICMP isn't usually firewalled.

When I ping the server, response time is about 85ms.

Suggests your server is at least 3000 miles away.

Is there any standard way to characterize or test the networking capabilities of my server?

Not really. Bandwidth, latency and packet loss will vary with daily, weekly, and annual cycles, add on top slow changes to the network characteristics (increasing usage, provision of new capacity) and fast changing characteristics (noise, failures) and it's rather difficult to make accurate predictions - about what the bandwidth, latency and packet loss will be. Even knowing what these things are it's difficult to predict how they will affect your application.

I'm running a small, but latency sensitive application

Biggest win would probably renting a server closer to home. There are other things - but it's not clear how many of them are applicable - e.g. using a UDP based transport (possibly with application level forward error control), enabling Explicit Congestion Notifications, using Jumbo packets, tweaking your congestion control mechanism...

symcbean
  • 19,931
  • 1
  • 29
  • 49