EVGA Killer Xeno Pro: The Impact of Network Offloading
by Derek Wilson on July 3, 2009 4:20 AM EST- Posted in
- Networking
The Card and Features
This card sports a 400MHz PowerPC processor with 128MB of RAM, essentially making the Killer Xeno Pro a computer on a x1 PCIe board. As with the first generation, the major feature of the Killer Xeno Pro is it's ability to offload TCP/IP work from the CPU by bypassing the Windows TCP/IP stack.
Microsoft's built-in TCP/IP stack requires the CPU to handle network packet processing. Additionally, when packets arrive, they don't generate interrupts and applications must poll for data (which also wastes time and resources). Bigfoot Networks claims that the windows networking stack is not designed for low latency operation while the Killer Xeno Pro is. Regardless of how (or how efficiently) a software network stack is implemented, having it run in hardware will reduce overhead and impact on the rest of the system. It should also be noted that, for applications which require the windows networking stack (like some VPN products), the Killer Xeno Pro can disable it's "game mode" and enable "application mode" which does disable TCP/IP offload and can increase compatibility in some cases.
Adding to this, the Killer Xeno Pro hardware is capable of offloading other network centric tasks like VoIP, firewalls, and networked storage (though these features are not all fully supported with appropriate software at this point in time).
Installing the hardware is very straight forward, as it's just a simple PCIe card. If you want to use the voice chat features, the only additional need is to connect either the internal or external audio cable. No power is required, and other than that the network port is all that you'll need to worry about. Despite the fact that there is a USB port on the card, it is not used for anything at this point (but Bigfoot has indicated future potential to enable hardware managed USB attached storage).
Mic in and audio line out on a NIC; now that's a first.
The only installation issue we noted is that the driver install, when necessary, will also flash the Killer Xeno Pro hardware. There isn't very much warning about what's going to happen and no confirmation dialog before the start of the flash process. Those who click through install programs quickly without reading them might get themselves into a bit of trouble. There is no way to cancel the flash update once it's started, and while flashing hardware isn't as risky these days, it might be nice if the drivers were a little more clear about what was going to happen.
Easy mode switching.
The hardware comes with drivers and a tray application that are capable of bandwidth throttling and prioritization. Control can be down to a per application basis and maximum download and upload speeds can be specified. Or for benefit without the headache, applications can be prioritized allowing hardware and usage patterns to determine effective bandwidth. Unfortunately, the drivers and applications for the Killer Xeno Pro only run on Microsoft Windows operating systems (XP and Vista flavors). With the gaming focus, this makes sense, but it would still be nice for those who like to dualboot Mac OS X or Linux.
Per application QoS.
Per application bandwidth limits.
With software support, games and voice chat software can completely delegate any VoIP functionality to the Killer Xeno Pro which would handle taking input from the microphone (which plugs straight into the Killer Xeno Pro), compressing the data and sending it out over the network. When a voice packet is received by the Killer Xeno Pro, it decompresses it and sends it straight to the sound card (either via the soundcard's line-in port or an internal cable) bypassing the rest of the system completely. This should help reduce CPU overhead and voice lag caused by sources other than the network or server.
While this is great from a geeky technical standpoint, there isn't a huge amount of overhead on modern CPUs for voice chat software, and the network is by far the largest source of delay. So the actual benefit isn't going to be huge. These issues are the same with hardware firewall, bandwidth control, and all the extras.
The TCP/IP offload capability of the hardware will definitely remove another task from the CPU and operating system. This will free up resources that could be useful for other things, but the real world benefit of this will be very small in most games where the majority of the work is done on the GPU rather than the CPU. Having an NPU (network processing unit, as Bigfoot Networks likes to call it) that handles TCP/IP processing as soon as packets are received and uses hardware interrupts to let a game know that network packets have arrived (rather than requiring polling) can help decrease the latency between when a packet is received by the network card and when a game is able to make use of it, but as with the voice issue the largest delay is inherent in the internet itself and there is only so much benefit that can be had by optimizing the client side.
Not to say that optimizing client side networking is a bad thing: it certainly is not. The real question here is not whether the Killer Xeno Pro does something useful (because it does), the question is whether that useful thing has any significant impact on experience (and if that impact is high enough to justify the price).
121 Comments
View All Comments
navilor - Sunday, July 5, 2009 - link
Thank you for your insight. I value your input.World of Warcraft uses TCP. I couldn't believe it as I thought it would use UDP. I ran Wireshark on my network just to make sure.
The CPU doesn't have to generate an interrupt for any packets at all when packets are processed. I believe that it would be similar interrupt coalescing but without the assumed latency increase.
has407 - Sunday, July 5, 2009 - link
Interesting.... Maybe the WoW dev's need some remedial instruction in network programming :) Even if they use TCP, they could easily segregate and prioritize time-sensitive TCP traffic. Hnmmm... so is the Killer NIC a $120 compensator for bad app design?As to whether "The CPU doesn't have to generate an interrupt for any packets at all when packets are processed."... Ummm... yes it does, in some form or another--even if it isn't a hardware interrupt--as that is how it eventually gets the app's attention (e.g., via DPC/IRP whether the result of a hardware interrupt or polling). You get one or the other: coalescing interrupts (hardware or software) and increased latency, or more interrupts and decreased latency.
I can believe that the Killer NIC driver tries to split the line between latency and interrupt overhead. I can also believe it reduces latency bit, but I find it hard to believe it reduces by a significant amount--unless of course you're doing torrents and other stuff while you're gaming--in which case the appropriate answer is: Don't do That.
Again, I assert that a properly tuned system with a decent and lower-cost NIC would fare as well. But I'd like to see some properly engineered tests to confirm that.
mindless1 - Saturday, July 4, 2009 - link
You overlook something significant. "Offloading" isn't necessarily a good thing, if the processor it's offloaded to is no faster, let alone slower, than the main CPU. I'm not suggesting it is or isn't, but the core ideal that offloading is a positive thing is quite misleading.DerekWilson - Sunday, July 5, 2009 - link
This is a good point -- if you offload it you would want to offload it to something that could do stuff faster.the issue here, though, isn't as much that the 400MHz PPC core actually be able to do the work faster than something like a Core i7 3GHz ... the major bottleneck in network processing on windows is the operating system and the software network stack ...
bypassing the OS, even though it doesn't seem to deliver a better experience from what we can tell, really does seem to be faster when using the Killer Xeno Pro ... but again the major issue is not client side processing but the rest of the network when we are talking about gaming on a standard desktop ...
swaaye - Saturday, July 4, 2009 - link
Well it's nice to hear that you THINK that you are seeing a benefit.The problem is that it's apparently rather unprovable through testing and that means that it likely is placebo effect.
I'd like to hear a network / NIC engineer chime in on these cards anonymously.
navilor - Sunday, July 5, 2009 - link
Have a friend randomly switch someone's connection from their KillerNIC to an onboard NIC while they are out of the room. Ask them if they see a difference. Repeat several times.DerekWilson - Sunday, July 5, 2009 - link
I'd want to try and make it double blind and do it with multiple people ...It'd be a great idea for a LAN party or tournament (maybe not during competition though as people would surely cry foul even if it didn't benefit anyone).
haplo602 - Saturday, July 4, 2009 - link
I see this hoax gets the trashing it deserves ... folks just google windows xp tcp tuning or similar for vista and you will find advices that put this 120$ nonsene right into the recycling bin where it belongs ...swaaye - Friday, July 3, 2009 - link
Note that even Marvell and Realtek integrated NICs have substantial hardware offload these days. I just don't see the justification at all for one of these cards....RU482 - Friday, July 3, 2009 - link
Where I work, we use a PC to serve up hard drive images to as many as 96 computers at a time (using Symantec Ghost). With a consumer grade Realtek 8169 ethernet card, we achieve around 600MB/min (that's the metric that is reported) throughput. With a card like the one in this article, could we expect to increase throughput rates...slightly or dramatically?thoughts?