FirstPacket

From TPU Reference

Jump to: navigation, search

riceltli NVIDIA FirstPacket is a technology that prioritizes IP packets to improve latency for critical applications. It is similar to QoS but uses NVIDIA proprietary technology.

In a typical PC the network hardware, driver software and the operating system are unaware of and unable to reduce latency. The interfaces that allow applications to send and receive data are effectively identical, whether the application is a latency-tolerant application like FTP or a Web browser; a latency-sensitive application like a game; or VoIP applications like Skype, Gizmo, or any IM-based VoIP applications (Google Talk, Yahoo! Instant Messenger, and MSN Messenger).

Without FirstPacket
Without FirstPacket
With FirstPacket
With FirstPacket

FirstPacket delivers measurable improvements by adding intelligence to the network driver, leaving the OS and the applications alone. It operates by creating an additional transmit queue in the network driver. This queue is used to provide expedited transmission for user-approved applications, which presumably are latency-sensitive applications (although the user is free to choose any application).

By allowing these applications to get preferential access to the upstream bandwidth (not necessarily guaranteed, but with far less jitter than would otherwise be the case in a single-queue design), their system’s performance is greatly improved. A game that was unplayable before may be completely usable. VoIP connections will not be dropped due to the traffic in the local PC. (No guarantees can be made about how the network will treat the traffic after it leaves the PC!).

First Packet shows the best improvements when used on a network connection which already has heavy traffic. For example if you are uploading a big file and want to play an online game your ping will be too high for any fun. With First Packet the online game's outgoing data will always be sent out first, no matter if other traffic is scheduled to be sent out.

Personal tools