Specifications

CHAPTER 3. SYSTEM ARCHITECTURE 12
The network cards have internal clocks which are synchronized with the global clock cards.
These clock cards are interconnected with wires and are always synchronized between them.
All the outgoing packets are marked with timestamps (values of the clock counter) and with
sequence numbers (for packet loss calculation).
The NIC receiving traffic uses the timestamps and its global clock reference to determine
the latencies of the incoming packets. The on-board processor builds a histogram with
the latency distribution. The histogram is transferred to the PC’s host processor after
completion of tests (to avoid the poss ible b ottleneck on PCI communication with the host
computer).
The user interface of the tester is programmed in a client-server manner. One client (a
GUI called the Steering) talks to several servers (the Agents) over an asynchronous socket
connection. The Agent software is installed on the computers hosting the NICs and it
controls their operation. One agent can control multiple cards from the same computer.
The Agent must be running prior to any attempt to be contacted by the Steering.
Figure 3.1: The Gigabit Network Tester in a Local Area Network
The main software components of the tester are listed below:
Kernel modules - They enable the access to the Linux devices created for the underlying
hardware components.
Network card firmware - Runs on the Alteon Acenic GE NIC, sending and receiving
traffic according to traffic descriptors uploaded from the host computer
The Agents - Server software component that runs on the computer hosting the NICs; it
transmits the commands and reads the results from the test in real time
The Steering - GUI that controls the operation of the testbed, allowing the user to define
the test, run it and save the results
Traffic generator programs - They generate the array of packet descriptors describing
the traffic that has to be sent by each NIC in the testbed