Subject: CVS commit: pkgsrc/net/iperf2
From: Greg Troxel
Date: 2021-09-09 01:45:45
Message id: 20210908234545.A196BFA97@cvs.NetBSD.org

Log Message:
net/iperf2: Update to 2.1.4

Drop two patches applied upstream.
Take MAINTAINERship.

upstream NEWS:

perf 2.1.4 has many user visible changes since 2.0.13 and even more since
2.0.5 The below describes many of these user visible changes with
a focus on 2.1.4 compared to 2.0.13

    -e or --enhanced-reports

    configure '--enable-fast-sampling'

This configuration causes the iperf binary to support units
of microseconds. It casues iperf to use four units of precision
in it's timing interval output, i.e. 1e-4, as one example

    iperf -c 192.168.1.64 -n 4 -C
    ------------------------------------------------------------
    Client connecting to 192.168.1.64, TCP port 5001
    TCP window size: 85.0 KByte (default)
    ------------------------------------------------------------
    [  1] local 192.168.1.133 port 56568 connected with 192.168.1.64 port 5001
    [ ID] Interval       Transfer     Bandwidth
    [  1] 0.0000-0.0172 sec  4.00 Bytes  1.86 Kbits/sec

    '--trip-times' on the client

This option indicates to iperf a few things. First, that the user
has syncrhonized the clients' and servers' clocks. A good way to do
this is using Precision Time Protocol and a GPS atomic clock as a
reference. This knowledge allows iperf to use many time stamps
to be sender based, i.e. taken from the sender's write timestamp
(which is carried in the payloads.)

The connect message on both the server and the client will indicate
that '--trip-times' has been enabled.

Both UDP an TCP support '--trip-times'

    iperf -c 192.168.1.64 --trip-times
    ------------------------------------------------------------
    Client connecting to 192.168.1.64, TCP port 5001
    TCP window size: 85.0 KByte (default)
    ------------------------------------------------------------
    [  1] local 192.168.1.133 port 56580 connected with 192.168.1.64 port 5001 \ 
(trip-times)

    iperf -s
    ------------------------------------------------------------
    Server listening on TCP port 5001
    TCP window size:  128 KByte (default)
    ------------------------------------------------------------
    [  1] local 192.168.1.64%enp2s0 port 5001 connected with 192.168.1.133 port \ 
56580 (MSS=1448) (trip-times) (sock=4) (peer 2.1.4) on 2021-08-22 11:12:08 (PDT)

Iperf 2 new metrics

    NetPwr

    Network power: The network power (NetPwr) metric originates from Kleinrock \ 
and Jaffe circa 1980.
    It is a measure of a desirable property divided by an undesirable property.
    It is defined as throughput/delay. For TCP transmits, the delay is the \ 
sampled RTT times.
    For TCP receives, the delay is the write to read latency. For UDP the delay \ 
is the
    packet end/end latency.

    Note, one must use -i interval with TCP to get this as that's what sets the \ 
RTT sampling rate.
    The metric is scaled to assist with human readability.

    InP

    The InP metric is derived from Little's Law or Little's Lamma. LL in queuing \ 
theory is a
    theorem that determines the average number of items (L) in a stationary \ 
queuing system
    based on the average waiting time (W) of an item within a system and the \ 
average number
    of items arriving at the system per unit of time (lambda). Mathematically,
    it's L = lambda * W. As used here, the units are bytes. The arrival rate is
    taken from the writes.

Files:
RevisionActionfile
1.3modifypkgsrc/net/iperf2/Makefile
1.3modifypkgsrc/net/iperf2/distinfo
1.2removepkgsrc/net/iperf2/patches/patch-src_Listener.cpp
1.2removepkgsrc/net/iperf2/patches/patch-src_PerfSocket.cpp