Well, I think we may have reached the point where we need to look at improving our lot in life.
For those of you who don't care about the technical details, skip ahead to
my next reply.
For those who like to sink their teeth into the nuts and bolts, read on.
Right now, we are on Eastlink's
Business Static 10 program. That gives us [theoretical] 10mbps download and 1mbps upload speeds. Normally that would work out just fine, but in our case, we do a heck of a lot more "uploading" than "downloading". (That is, every page requested is an upload, but the request itself is a download.) So while we have a 10:1 ratio of down to up available, our actual usage is probably more like 1:10, with a lot more data going out to the 'net than coming in from it.
What this means in practical terms is that our upload pipe is constantly full, and packets are often held up waiting to get "out". Sometimes they are held up so long that the user's system on the other end gives up waiting and times out.
I have contacted Eastlink and asked about redistributing the 10:1 a bit more equably for our needs. This is something they technically
can do, but they won't do it. They have
specific plans and that's all they'll provide... I can understand that, most businesses won't do a "one off" like that.
Unfortunately we need a business plan because the residential plans block certain ports (TCP 25/SMTP for example, which means we wouldn't be able to run a mail server). We also need a "static" plan because using dynamic IPs mean that we'd be frequently "moving" on the 'net. While Dynamic DNS solutions exist out there, I've never had much luck with them... they usually end up with a complex config and some downtime when a new IP is leased. That means we are limited to the "Business Static" options.
After looking at the problem from a few different angles, I've narrowed it down to a couple of different possibilities:
- Bump up to the next Business Static plan with Eastlink. This incurs an extra $45+ tax per month, taking our ISP bill from $118.65 to $169.50 (a diff of $50.85 monthly). This approach takes us from 10:1 to 10:1.5. Doesn't seem like much, but it adds 50% to our currently overburdened upload bandwidth. The setup for this is a single phone call, and the change would be nearly immediate.
- Move Army.ca et al. to a service provider. A while back someone suggested Slicehost and I've been looking into them on and off. A 2Gb slice with them would be a step down from the hardware we currently run on... Let's look at it piece by piece. The 2Gb slice would be 1/2 the RAM we currently use, 2Gb vs. 4Gb. We typically do not max out our RAM use, but we do come close. Right now we're at 96.11% memory used, though this can be a bit deceiving on Linux... RAM is only freed up when it's needed. I expect we could get by with 2Gb with some adjustments. 80Gb of disk space could be a bit of a squeeze. We currently use about 100Gb but aren't "careful" with it so we could probably trim down without too much difference. Total monthly bandwidth is 800Gb and we rarely top out 200Gb, so lots of room to grow there. This is also a shared virtual server, so while we'd be getting our "dedicated server," it would be just part of a larger, shared physical piece of hardware. That might have some performance implications.
The good news is that the actual throughput is very high. For the 2Gb slice it would be 40mbps upload and effectively unlimited download. Now, can slicehost actually deliver those speeds? Doubtful, but I'm sure it would be better than the 10:1 we're getting now.
Now here's the rub: setup for this option would be significant. It would require all current Army.ca pages, databases, services, etc. to be migrated to a slicehost server. Not only that, but some things would need to be reconfigured to take the reduced disk and memory into account. All in all this is a significant task and given my "personal" bandwidth it could take weeks or months to complete.
In terms of price, it's $130USD/month, or roughly the same as the Eastlink option above, however this is another consideration. During the cutover period, we'd have to pay for our current connection and the Slicehost service. That would effectively double our Internet bill, which is not something we would want to do for very long!
So the summary of options is, we can get a quick 50% boost to our biggest pain point, or we can move everything to a very fast pipe on lower grade hardware. Both options are roughly equal in cost. Having spent some time considering the options, I am in favour of the first.
Bumping up our upload throughput to 1.5mbps is a quick and easy win, and if it doesn't have the desired effect, we can simply step back to our current plan or kick off something with Slicehost in parallel.