The Impact of the Network on AJAX

The importance of an application ready network

I've been talking a lot about how AJAX and SOA impact the network of late, specificially focusing on the increase in traffic - both the amount of data and frequency of requests. Saturday night I was reminded of how important a properly tuned network can be to applications, especially those based on AJAX.

TimeWarner Cable, our only choice in broadband providers, has thoughtfully reconfigured its network as part of a consolidation in the midwest. That shouldn't affect me, it's mostly about routing and such, right? That's what I thought, but it's starting to appear that changes they've made are having a seriously negative impact on my applications.

That AJAX-based Application

Every Saturday night Don and I hook up with friends remotely to do a little gaming. Skype provides us with voice communication, and an AJAX-based application provides us with chat and some basic housekeeping duties we need for the game. In all, there are a total of 4 real-time updating components in this app, each automatically updating approximately every 5 seconds.

Normally, there are no problems. Everything updates as it should and with the exception of some sporadic Skype issues we're good to go.

But since TimeWarner's recent upgrades and reconfiguring of their network, there have been ... problems. Big problems. We're talking massive latency issues in the core network that have just about destroyed the application's usability.

At some point during the game Saturday night, both our remote players were suddenly dead in the water. The app wasn't responding, wasn't updating, and neither player had any way to keep track of some pretty important data in regards to the game. So I checked the statistics on my BIG-IP, and found that the connection count was acceptable, and that throughput was running about 400k. That's a little "k", mind you, and well under what we are "allowed" by our tier of service.

So it's not my server, it's load average is low and it's responding well via the LAN. It's not my BIG-IP, it's running just fine and doing a great job managing client-side connections and multiplexing server-side connections. So what's left?

Yup. You guessed it - the core network.

Latency (lag) kills

Everyone who's gamed in an MMORPG (massively multiplayer online role-playing game) like WoW or EverQuest knows that lag kills. Lag is the online gamer's term for latency and is likely the singular most important network metric in terms of real-time online gaming. Checking out TimeWarner's network Saturday night showed some serious lag. I'm talking over 1000ms to get from my cable modem to the router on TimeWarner's network, and an average of 500-700ms per hop to get to our fellow players.

And for some reason, it's taking 14-15 hops to get where we're going. And 7 of those hops - over half the route - are contained within TimeWarner's network. If you're playing along, that's an average of 8-10 seconds. Suddenly the timeouts and intense lag - chat messages showing up 30 or 40 seconds after they were entered - made some amount of sense. It wasn't the application, it wasn't the server, it was the freaking network. A network over which we have no control and can't do a thing about. Luckily Skype was available and everyone's favorite character is still alive and well, but still...it made for a less than pleasant experience and caused a lot of frustration.

Like online gaming, real-time AJAX-based applications can be latency sensitive. The more lag, the more drag. And Saturday night that app was d  r  a  g  g  i  n  g  something awful.

Apparently TimeWarner hasn't heard of an application ready network.

The Application Ready Network

The reason it's important to understand what the impact of AJAX and SOA-based applications on the network will be is primarily so the network can be ready to support and, when possible, assist in improving the delivery of these applications. That's one of the things our BIG-IP does for us in addition to some layer 7 switching - it uses OneConnect to manage connections on the server side to help the servers handle the load of dealing with all the additional TCP/IP connections created by our AJAX-based gaming application.  By default, BIG-IP also employs a number of TCP-related optimizations that help improve performance of applications. It keeps our servers from being overloaded by the number of requests and keeps our games moving along smoothly - at least when TimeWarner's network is working correctly.

Luckily for you, as you're rolling out new or upgrading existing applications there's something you can do to get your network ready. Deploying an application delivery network is a good start, especially if you have remote users that will be accessing corporate applications delivered via the web. Deploying a full ADN with support for network-level data reduction, connection management, application acceleration, and QoS functionality can go a long way toward ensuring your remote users don't suffer poor application performance or, even worse, complete outages.

Understanding the needs of the application is an important part of that deployment process. For some of the most popular applications, we've done a lot of the work for you. Oracle. Microsoft. SAP. If you're deploying applications from these vendors, then F5 has an application ready network solution that understands the nuances of improving the performance, reliability, and security of these applications and provides you with the detailed configuration options and a set of validated, tested application templates that make getting your network ready to support these apps a painless process.

There isn't much I can do to improve TimeWarner's network and ensure my application is going to run smoothly in the future aside from complaining loudly - and rest assured I will! It's likely you can be proactive in getting your network ready to support new or upgraded applications, however, so it's important that you consider all the options available for improving the performance, security, and availability of applications by ensuring that the network delivering those applications is as ready as it can be.

Imbibing: Orange juice

Published Nov 12, 2007
Version 1.0

Was this article helpful?

No CommentsBe the first to comment