on 25-Mar-2011 03:55
Of course not, because sometimes it is about the hardware.
Network latency is a Very Bad Thing™ for real-time online games in which other people are counting on you to blast your opponents. Failure to do so in a timely fashion can not only impact you but your teammates, because they were relying upon you.
But just as important to reducing lag is the graphics card you're using. That's because a weak-sauce graphic card simply isn't able to keep up with the massive amount of data and computations required to display an accurate, real-time picture – literally – of what's happening in the game. And if you aren't seeing an accurate picture of what's going on in the game, you're acting on outdated information; you're unable to react immediately to a threat and that "lag" is just as likely to kill you or your teammates as any network-based latency.
Really good graphics cards have two things going for them: a high-powered GPU (Graphic Processing Unit) and a boatload of memory (RAM). "A GPU is a single-chip processor that creates lighting effects and transforms objects every time a 3D scene is redrawn. These are mathematically-intensive tasks, which otherwise, would put quite a strain on the CPU. Lifting this burden from the CPU frees up cycles that can be used for other jobs." (Webopedia) No serious PC gamer would attempt to take on a horde of stunningly rendered orcs with a group of geolocationally dispersed friends without one. It can be argued that the evolution of graphics cards like those from nVidia actually propelled gaming and allowed it to advance to the point it's at today, because without the ability to render in near real-time the strain on the CPU would overwhelm the rest of the system, which inevitably causes delays in processing of other vital game functions – like network transmission of game information.
Data center applications are no different. The strain placed on the underlying physical system by overly intense mathematical computations impacts every other function of the system.
Specialized acceleration hardware specifically implements in an optimized way the functions required to perform a very specific task. In the case of SSL, it's RSA operations. In the case of compression, it's the algorithms used to seek out redundant text and data. In a video card it's the subtle changes to individual pixels required to move a leg, change the lighting impact and generally transform objects through a 3-D space.
Performing such tasks on a general-purpose CPU introduces lag, because it takes more time and is inefficient. Many modern games, MMORPG or not, require a certain set of capabilities on a video card to be present or it won't even install. That's because not only are games today taking advantage of the horsepower and RAM available on such cards, but they've integrated with it to provide an even smoother gaming experience. It is that integration that makes the games so vivid and allows developers to leverage the full power of CGI (Computer Generated Image) to make that orc look like it's real.
It's that level of integration – at the system level and the software level – that makes some network-hosted solutions able to perform their technical magic when delivering applications.
Like video cards, we continued to seek out new ways to leverage such purpose-built hardware to make it efficient, scalable and ultimately more highly performant. The integration method used to leverage purpose-built hardware is just as important to the overall performance and capacity as the amount of RAM and processing power on the hardware. But you can't achieve that level of integration without writing to the hardware.
The uninitiated often incorrectly believe that an F5 BIG-IP system is just a box with Linux running on it. That stems from the evolution of network-hosted solutions of all kinds, from the days when that's exactly what they were – a dedicated piece of general-purpose hardware pre-installed with some optimized network drivers and a couple of network ports on the back. But we've come oh so far since then, baby, and there's nearly no similarities between those pre-dot com bubble systems and today's highly integrated, specialized hardware-based devices.
See, it's not just about the hardware being present, it's how that hardware can be integrated and subsequently leveraged by developers to not only make BIG-IP fast but to be able to develop solutions that directly manipulate and take advantage of the underlying hardware. If you're poking around on the console of a BIG-IP using tmsh or its traditional CLI, it looks like a Linux-derivative. That's because what you're seeing is the management side of BIG-IP. Poking around on the console of many network-based devices is a similar experience – the management-side of the device has a decidedly Linux or Unix based feel to it, but did you really think Cisco runs IOS on the side of the device that does the routing and switching at incredibly high speeds with no degradation of accuracy?
No. And neither does F5. The operating system (TMOS) and code that makes BIG-IP what it is is highly specialized and integrated with the underlying hardware. Just as games are tightly coupled to specific graphics chip sets, BIG-IP is tightly coupled to its hardware. And because of that, we're able to manipulate the hardware resources in ways that would be otherwise impossible with a general purpose set of hardware components and operating system.
We're also able to do some fairly interesting things regarding how those hardware resources are provisioned and managed. And as the needs of the data center evolve, we can continue to adapt TMOS to include the features and functionality demanded by customers and the market alike. Because sometimes it is all about the hardware; not just because it's specialized really fast hardware, but because of the way in which that hardware is integrated as part of the overall system.
Lag in a game just kills your character; lag in business and technology kills productivity and worse, your bottom line.