pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/net/iperf2 net/iperf2: Update to 2.1.4
details: https://anonhg.NetBSD.org/pkgsrc/rev/b087bec02ad1
branches: trunk
changeset: 458078:b087bec02ad1
user: gdt <gdt%pkgsrc.org@localhost>
date: Wed Sep 08 23:45:45 2021 +0000
description:
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.
diffstat:
net/iperf2/Makefile | 8 ++----
net/iperf2/distinfo | 12 ++++-----
net/iperf2/patches/patch-src_Listener.cpp | 36 -----------------------------
net/iperf2/patches/patch-src_PerfSocket.cpp | 20 ----------------
4 files changed, 8 insertions(+), 68 deletions(-)
diffs (100 lines):
diff -r 70265f2867f9 -r b087bec02ad1 net/iperf2/Makefile
--- a/net/iperf2/Makefile Wed Sep 08 22:55:06 2021 +0000
+++ b/net/iperf2/Makefile Wed Sep 08 23:45:45 2021 +0000
@@ -1,12 +1,10 @@
-# $NetBSD: Makefile,v 1.2 2021/03/15 17:00:06 gdt Exp $
+# $NetBSD: Makefile,v 1.3 2021/09/08 23:45:45 gdt Exp $
-# Upstream has newer files but no newer actual releases.
-# https://sourceforge.net/p/iperf2/tickets/102/
-DISTNAME= iperf-2.0.13
+DISTNAME= iperf-2.1.4
CATEGORIES= net benchmarks
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=iperf2/}
-MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+MAINTAINER= gdt%NetBSD.org@localhost
HOMEPAGE= https://sourceforge.net/projects/iperf2/
COMMENT= TCP and UDP bandwidth performance measurement tool
LICENSE= modified-bsd
diff -r 70265f2867f9 -r b087bec02ad1 net/iperf2/distinfo
--- a/net/iperf2/distinfo Wed Sep 08 22:55:06 2021 +0000
+++ b/net/iperf2/distinfo Wed Sep 08 23:45:45 2021 +0000
@@ -1,8 +1,6 @@
-$NetBSD: distinfo,v 1.2 2021/03/15 17:00:06 gdt Exp $
+$NetBSD: distinfo,v 1.3 2021/09/08 23:45:45 gdt Exp $
-SHA1 (iperf-2.0.13.tar.gz) = 0c7625c61087b9e6866421abb8bb533658b40a8d
-RMD160 (iperf-2.0.13.tar.gz) = 199ccc03cabb48e825b948688bbc1867369cf9ef
-SHA512 (iperf-2.0.13.tar.gz) = 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea
-Size (iperf-2.0.13.tar.gz) = 326148 bytes
-SHA1 (patch-src_Listener.cpp) = 76751e63e17f7c65d182ed9fdefdec0170aa28f2
-SHA1 (patch-src_PerfSocket.cpp) = f59214e44c29ca73132a3edcbebc3701a2da46cd
+SHA1 (iperf-2.1.4.tar.gz) = f1b7835eb74094b1a1849faeafe35b7c362f4ab5
+RMD160 (iperf-2.1.4.tar.gz) = 26262ed6c1b062555c27ea7979916566964f81e1
+SHA512 (iperf-2.1.4.tar.gz) = 75a0e61eba649d843e23855dec3c578db573c1b34a59837d6a210b85c57b8bf92a244bacc61cf9b8796a9965982950d8d555abed69f1f9e4149f31391463ad6e
+Size (iperf-2.1.4.tar.gz) = 395909 bytes
diff -r 70265f2867f9 -r b087bec02ad1 net/iperf2/patches/patch-src_Listener.cpp
--- a/net/iperf2/patches/patch-src_Listener.cpp Wed Sep 08 22:55:06 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-$NetBSD: patch-src_Listener.cpp,v 1.2 2021/03/15 17:00:06 gdt Exp $
-
-Fix bug where the standards-specificed IPV6_JOIN_GROUP is not used.
-See https://tools.ietf.org/html/rfc3493 on page 20.
-See https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_10_16
-
-https://sourceforge.net/p/iperf2/tickets/103/
-
-Fix bug where setsockopt was used with int when it is defined to use
-unsigned char. This should avoid bugs on BE machines.
-
-https://sourceforge.net/p/iperf2/tickets/104/
-
---- src/Listener.cpp.orig 2019-01-22 20:31:17.000000000 +0000
-+++ src/Listener.cpp
-@@ -462,6 +462,9 @@ void Listener::McastJoin( ) {
-
- } else {
- #ifdef HAVE_IPV6_MULTICAST
-+#if !defined(IPV6_ADD_MEMBERSHIP) && defined(IPV6_JOIN_GROUP)
-+#define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
-+#endif
- struct ipv6_mreq mreq;
-
- memcpy( &mreq.ipv6mr_multiaddr, SockAddr_get_in6_addr( &mSettings->local ),
-@@ -759,8 +762,9 @@ int Listener::L2_setup (void) {
- void Listener::McastSetTTL( int val ) {
- #ifdef HAVE_MULTICAST
- if ( !SockAddr_isIPv6( &mSettings->local ) ) {
-+ u_char uval = val;
- int rc = setsockopt( mSettings->mSock, IPPROTO_IP, IP_MULTICAST_TTL,
-- (char*) &val, sizeof(val));
-+ (char*) &uval, sizeof(uval));
- WARN_errno( rc == SOCKET_ERROR, "multicast ttl" );
- }
- #ifdef HAVE_IPV6_MULTICAST
diff -r 70265f2867f9 -r b087bec02ad1 net/iperf2/patches/patch-src_PerfSocket.cpp
--- a/net/iperf2/patches/patch-src_PerfSocket.cpp Wed Sep 08 22:55:06 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-$NetBSD: patch-src_PerfSocket.cpp,v 1.2 2021/03/15 17:00:06 gdt Exp $
-
-Fix bug where setsockopt was used with int when it is defined to use
-unsigned char. This should avoid bugs on BE machines.
-
-https://sourceforge.net/p/iperf2/tickets/104/
-
---- src/PerfSocket.cpp.orig 2019-01-22 20:31:18.000000000 +0000
-+++ src/PerfSocket.cpp
-@@ -120,8 +120,9 @@ void SetSocketOptions( thread_Settings *
- // set TTL
- int val = inSettings->mTTL;
- if ( !isIPV6(inSettings) ) {
-+ u_char uval = val;
- int rc = setsockopt( inSettings->mSock, IPPROTO_IP, IP_MULTICAST_TTL,
-- (char*) &val, (Socklen_t) sizeof(val));
-+ (char*) &uval, (Socklen_t) sizeof(val));
-
- WARN_errno( rc == SOCKET_ERROR, "multicast v4 ttl" );
- } else
Home |
Main Index |
Thread Index |
Old Index