Monday November 23 2009
Story Header

FPSLabs Home: KillerNIC Review

By: Thomas Gribble - Published September 25, 2006 at 10:49 PM EDT - Writer Archive
Before we discuss the features of LLR, you should be wary that the naming convention will seem to be some sort of marketing ploy. It is indeed, but behind the names there are features that actually do something (or at least we think they do).

The first feature of LLR, as presented in the KillerNIC whitepaper, is called “GameFirst”. GameFirst is the packet-shaping element of LLR. When the NPU receives user datagram protocol (UDP) packets (packets are small portions of data transmitted over a packet switching network (a la Internet)), it labels them according to the specific kind of data they contain. The NPU does the same thing to UDP packets on the way out, as well. When sending and receiving these packets, the NPU can distinguish which are gaming packets, and prioritizes them so that the network operations necessary to run the game are carried out first, hence the moniker "GameFirst".

The next feature of LLR is what is called MaxFPS. MaxFPS works on two different fronts; first and foremost, it is the ability of the NPU to handle the networking load, thereby increasing the ability of the CPU to perform other operations that will increase FPS. This is no different from the effect we see from putting a GPU or PPU in a system. The other way in which MaxFPS works is to reduce the time it takes for datagrams to be processed. All programs operate by something called a loop. A loop is a series of commands that are executed over and over again to sustain the application. Suppose you go AFK in a Counter-Strike scrim. The game loop is what allows your computer to keep the game open and running while you are away. This is different from normal application loops in that most applications - word processors, for instance - do not function while the user is not inputting data; they just sit there. In this loop, data must go through something called the network stack. The network stack is a series of protocols that are implemented by the operating system to do tell the networking hardware what to do with the information it is receiving. Since the LLR chipset can already do this by itself, thanks to the NPU and LLR ASIC, it can bypass the network stack altogether. This has all sorts of potential benefits in many different situations. Because the network load in games can fluctuate dramatically, it would only make sense that the effect of the LLR chipset during these times would be diminished. This is not the case, however, because the main game loop requires that data be passed through the network stack regardless of the level of network activity at the time. This speeds things up significantly by essentially removing the operating system as the middleman.

UltimatePing is the third feature of LLR Technology and is designed to reduce the internal UDP ping time. Internal UDP ping is generated from delays associated with the processing of a UDP packet. We are not really sure what these delays are (primarily because we are not really network experts), but we do know that the combination of the delays creates a latency that increases the UDP ping time. UltimatePing takes these delays and eliminates those that are not necessary, which is designed to ensure that the UDP processing operation goes as smoothly as possible. As a note, we had always considered UDP packet processing to cause negligible latency (somewhere around a microsecond or so), but we seem to be wrong in this assumption.

Because LLR Technology is able to control internal UDP ping time like this, it can theoretically create an artificially high ping if desired. This is what the PingThrottle feature of LLR is - a means by which the user can dial back their ping for whatever reason. Bigfoot proposes two possible applications of this technology. The first is to increase your ping if it is lower than the other players in the server, to help maintain a level playing field. The second purpose is to increase your ping so you can train in a poorer game environment, and be that much better in scenarios when your ping is lower. We are not entirely convinced that either of these applications is really practical, but more hardcore gamers that play with different pings and know that they can play better with lower ping may find this feature quite useful. An important thing to note about this feature is that it cannot really be abused. For instance, you can’t adjust your ping by 100ms on the fly to jump around on your opponents screen then turn it down and shank him in the back. The max amount of latency you can add using PingThrottle is about 20ms.

The final feature of LLR technology is the big one: FNapps. We mentioned earlier that the NPU on the KillerNIC is capable of running a stripped-down version of Linux that allows Bigfoot’s Flexible Network Architecture to be implemented. Imagine being able to run Ventrilo without having to deal with any of the CPU/system load associated with doing so. This is what FNapps potentially provides for. There are currently no FNapps available to the public, but we have been assured that there will be a VoIP application and a BitTorrent client by the end of this year (2006). The real benefit here is that advanced users will be able to program their own FNapps and utilize them on the KillerNIC.

Continued (3/10) »

User Comments

- 65 Comments

» This story has had 65 comments posted since September 25, 2006 at 10:49 PM EDT.

Latest Poll