The Argos Card is an FPGA-based system, whose main component is the NetFPGA Card developed by Stanford University. The FPGA technology allows users to change the hardware design inside the card. There is a wide application range for just one single network card

The High Performance Computing and Networking group at the Universidad Autonoma de Madrid, developed two accessories to communicate with an external GPS signal source.

The Argos Card is a standard network interface with some specific features.

Inside the OneLab2 project, the Argos Card is used to give an accurate measurement of the time elapsed between the transmission of a packet through the net and its reception. For that purpose, the Argos Card needs to be globally synchronised using a GPS signal, to measure the absolute transmission time.

The hardware design used for this project, together with its network device driver, provides the functionality of programming the sending of a UDP packet train. Each packet train is composed by a number of bursts each of which has a number of UDP packets. The user can choose how many bursts to be sent and how many packets per burst, as well as the elapsed time between the transmissions of each packet/burst.

Inside the UDP data field of each packet lie a time-stamp of the moment in which the packet was sent through the net, so the elapsed propagation time can be easily obtained by subtracting this value to the time-stamp of the moment the packet is received.

Use the “onelab configure” command to configure the burst trains. The onelab configure command is provided in the OneLab Linux distribution.

Usage: onelab_configure

  • Options

    • -d dsize- number of extra bytes added to the data field
    • -a destination_mac (won't make ARP request)
    • -p interpacket - time (ns) between packets in the same burst (default 100 us)
    • -b interbust - time (ns) between bursts (default 1 ms)
  • Parameters

    • source_port
    • router_ip_address
    • destination_ip
    • destination_port
    • burst_number - number of bursts to be sent on the train
    • packet_number - number of packets to be sent on each burst
  • Example

onelab_configure -p 10000000 -b 1000000000 7575 7575 100 5000

By making use of the ETOMIC tool we can ease the task of programming which kind of burst trains we want to be sent and where.