You need to enable JavaScript to fully utilise this page.

Network Interface Controller Noise

Characterising a network card requires to have a local reference clock to assess its performance, a setup rarely available. This page collects performance results of network cards we have tested on our testbed.

The need for a good network card

For most configurations, network delay jitter is the first cause of variability that challenges a synchronisation algorithm. In more specific situations it may not be the main cause of variability, if for example:

In this case, the characteristic of the network card used may dominate the noise seen by the synchronisation algorithm and become a limiting factor. While the RADclock is robust to all causes of noise, better performance can be achieved by choosing a good network card.

Characterisation

The methodology used is described in more detais in our "A Methodology for Clock Benchmarking" paper. Here, and because the host clock is not trusted, the NIC performance is reliably measured as the sum of the two one-way delays (also called RTThost) between the host and the DAG card as described in this figure.

Synchronisation packets are exchanged between the client hosting the NIC under test and an NTP Stratum-1 server. Packets are tapped by an Endace DAG card via a 100Mbps hub. The DAG card is synchronised by the PPS signal derived from our GPS locked PRS-10 Rubidium oscillator and is an independent time reference here. The DAG card create hardware timestamps that are then extremely reliable.

On the client side, packets are timestamped in the kernel. Thanks to the small time scale of operations, the RADclock difference clock can be used and the RTT at the host can be measured with an accuracy way better than 1 micro-second. The RTThost is computed by subtracting the RTT seen by DAG from the RTT seen by the host.

Limits to the methodology

We deliberately choose to show NIC performance as part of the computer as a system. Consequently, some external parameters affect the results shown in here and their interpretation.

We provide details on the measurement conditions to help the interpretation of the distribution of RTThost (a.k.a. NIC noise) shown below. Note, the histograms have been normalised and show the distribution from the minimum to the 99th percentile.

Results

3Com 3c905B-TX Fast Etherlink XL 10/100

Freebsd 5.3 (i386)

Dell Precision 410

Intel Pentium 3 (600MHz)

Driver xl

Freebsd 6.1 (i386)

Dell Optiplex GX1

Intel Pentium 3 (550MHz)

Driver xl

Freebsd 6.1 (i386)

Dell Precision 410

Intel Pentium 3 (600MHz)

Driver xl

Linux 2.6.26 (x86)

Dell Optiplex GX1

Intel Pentium 3 (550Mhz)

Driver 3c59x

Linux 2.6.26 (x86)

Dell Precision 410

Intel Pentium 3 (600MHz)

Driver 3c59x

3Com 3c905C-TX Fast Etherlink XL

Freebsd 6.1 (i386)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver xl

Freebsd 6.1 (i386)

Dell GX 110

Intel Pentium 3 (650MHz)

Driver xl

Freebsd 7.0 (i386)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver xl

Linux 2.6.20 (x86)

Dell Dimension 8100

Intel Pentium 4 (1.4GHz)

Driver 3c59x

Linux 2.6.26 (x86)

Dell Optiplex GX1

Intel Pentium 3 (600MHz)

Driver 3c59x

BroadCom 4309 802.11a/b/g

Linux 2.6.28 (x86)

Dell Latitude D600

Intel Pentium M (1.8GHz)

Driver bcmwl5a (ndiswrapper)

BroadCom 5705M 10/100/1000

Linux 2.6.28 (x86)

Dell Latitude D600

Intel Pentium M (1.8GHz)

Driver tg3

BroadCom BCM5721 10/100/1000

Freebsd 7.0 (i386)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver bge

Freebsd 7.1 (amd64)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver bge

Intel PRO/1000 (82572EI)

Freebsd 6.1 (i386)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver em

Freebsd 7.0 (i386)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver em

Freebsd 7.1 (amd64)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver em

Interrupt throttling disabled - BPF fixed

National Semiconductor DP8381 10/100

Freebsd 7.0 (i386)

Dell Precision 420

Intel Pentium 3 (800 MHz)

Driver sis

NetGear GA311 10/100/1000

Freebsd 7.0 (i386)

Dell GX280

Intel Pentium 4 (2.8GHz)

Driver re

Linux 2.6.27 (x86_64)

Dell Optiplex 745

Intel Core 2 (2.13GHz)

Driver r8169

Linux 2.6.28 (x86_64)

Dell Optiplex 745

Intel Core 2 (2.13GHz)

Driver r8169

RealTek 8139 10/100

Freebsd 6.1 (i386)

Dell GX620

Intel Pentium D (3.4GHz)

Driver rl

Freebsd 7.0 (i386)

Dell GX620

Intel Pentium D (3.4GHz)

Driver rl

TP-Link TG-3468 10/100/1000 (PCI-e)

Freebsd 7.1 (amd64)

Dell PowerEdge 850

Intel Pentium D (3GHz)

Driver re