Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

NOTE: Please consider the following notes as more of a brain dump instead of a well thought out document.

Table of Contents

Updates - 03/29/2018

  • IPv6 results gathered using ping-vs-tcp.pl script. They are yet to be analyzed

    • Tests complete in less than a day; not many IPv6 addresses

    • About 56 nodes with IPv6 addresses, 14 of which responded with Npings

    • We essentially have a 14-point data set
  • IPv4 results gathered from SLAC. (Repeating Virginia Tech experiments.)
    • Complete batch may be downloaded here (approx. 24 MB)
    • Skimmed results; findings are pretty much the same as before
    • Identified relevant events in the network stack that highlight timing (_RECVFROM, _RECVMSG, _IP_RECV, _NETIF_RX etc.). Looking for instrumentation that enables us to measure timestamps. 
      • perf-tools allows us to measure transport events
      • If we could assume that the path for ICMP & TCP through the network is the same, then the only difference between two (controlled) tests would be the time spent in the transport layers. This can be measured using perftools. 
      • However, such measurements must be made in a controlled environment where ICMP and TCP are treated the same. (I say so because some results — e.g., in East Asia and South Asia — clearly show that ICMP performs much worse than TCP.)
    • We also need to figure out how to determine whether ICMP & TCP traffic are treated differently? and then how to measure the difference?
    • We would also need to cater for cross traffic and queuing delays. Given how small the differences are, one may argue that the variations in measurements are due to cross traffic. Perhaps we should start with controlled tests and then see if real world measurements reflect similar behavior.
  • We need to setup a test environment. We can either setup a bare-metal box or use a VM. 
    • I will see if I can arrange for a bare-metal box.

What are we investigating?

...

3) Executing the script includes passing it the necessary arguments and pipe the output to a file. I tend to prefer tee so that I may also see the output on the terminal, while it is being saved to a file. Please see the command below, which was executed under a tmux session.

 

Code Block
$ sudo ./ping-vs-tcp.pl --prot 4 --port 80 --count 3 | tee 2018-03-02-ps-v4-uk.log

 

...