From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bobcat.rjmcmahon.com (bobcat.rjmcmahon.com [45.33.58.123]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 896AE3CB38 for ; Mon, 25 Mar 2024 14:42:06 -0400 (EDT) Received: from mail.rjmcmahon.com (bobcat.rjmcmahon.com [45.33.58.123]) by bobcat.rjmcmahon.com (Postfix) with ESMTPA id AEC9E1B258 for ; Mon, 25 Mar 2024 11:42:05 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 bobcat.rjmcmahon.com AEC9E1B258 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rjmcmahon.com; s=bobcat; t=1711392125; bh=H8Qqz9RifmoZAHiQwvM9xPSw1++c0uigtcMpRQKs1NY=; h=Date:From:To:Subject:From; b=ZHL2wrqI+rTsXSGdCKpHQtcvMvFeZzpTS4kGi13W9jX2K3ZEV8z1Tlc1ZCZVLd9BW WAx6E35NhF53okA84XBupm7WNOjPE2baZmuV9R5fLZneuTxT+HWJ8BgO4O3HCn7/6g GN2QioOmBVhyhUllVDVamXCDL4hPi8kuMUEagydw= MIME-Version: 1.0 Date: Mon, 25 Mar 2024 11:42:05 -0700 From: rjmcmahon To: make-wifi-fast@lists.bufferbloat.net Message-ID: X-Sender: rjmcmahon@rjmcmahon.com Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Subject: [Make-wifi-fast] iperf 2-2-0 release candidate X-BeenThere: make-wifi-fast@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Mar 2024 18:42:06 -0000 Hi All, iperf 2 has a release candidate ready for users to try. It's on sourceforge as iperf 2-2-0-rc. Please file tickets on sourceforge as well. Release notes: 2.2.0 (as of March 14th, 2024 ------------------------------ o new ./configure --enable-summing-debug option to help with summing debug o select ahead of writes slow down UDP performance. support ./configure --disable-write-select o support fo -b 0 with UDP, unlimited load or no delay between writes o support for --sync-transfer-id so client and server will match the ids and give a remap message o support --dscp command line option o support for application level retries and minimum retry interval of the TCP connect() syscall via --connect-retry-time and --connect-retry-timer, repsectively o support for --ignore-shutdown so test will end on writes vs the BDP drain and TCP close/shutdown, recommended not to use this but in rare cases o support for --fq-rate-step and --fq-rate-step-interval o CCAs per --tcp-cca, --tcp-congestion, etc neeed to be case sensitive o support for both packets and bytes inflight taken from tcp_info struct amd pkt calc of (tcp_info_buf.tcpi_unacked - tcp_info_buf.tcpi_sacked - tcp_info_buf.tcpi_lost + tcp_info_buf.tcpi_retrans) o man page updates and -h to reflect new options, better descriptions o lots of work around summing with parallel threads, new implementation based on interval or slot counters, hopefully should work reliably o --bounceback tests are much more reliable and robust o Improve event handling around select timeouts, helps with larger -P values and summing o use the getsockopt IP_TOS for the displayed output, warn when set and get don't match o better tos byte output, include dscp and ecn fields individually o better tos setting code for both v6 and v4, so they behave the same around checks and warnings o much better NULL events to help with reporter processing even when traffic is not flowing o support for a new string report o python flows work around CDF based tests o rate limit fflush calls to a max of one every millisecond or 1000 per sec o remove superfulous fflush calls o reports when P = 1 and --sum-only need sum outputs o enable summing with --incr-dstip o add macro TIME_GET_NOW to set a struct timeval in a portable manner o code readability improvements with enums, bools, etc. o fix for TCP rate limited and -l less than min burst size o only use linux/tcp.h when absolutely needed, otherwise use netinet/tcp.h o print bounceback OWD tx/rx in interval reports o add flows Makefiles for tarball or make dist-all o support interval reports for bounceback histograms o support for TCP working loads and UDP primary flows, including UDP isochronous, per ticket 283 o fix working-load with isoch so working-load streams are capacity seeking o exit when CCA not supported or read of the current CCA doesn't match requested CCA o add more make check tests o add support for omit string (omit code not ready for this release) o pyflows qdisc settings and outputs o add first send pacing with --tx-starttime so listener threads udp_accept has time to perform udp_accept() between the client threads o adjust the sender time per the client delay and the client first write, i.e. subtract out this delay in the calculations o fixes for small packets and --tx-starttime o use more modern multicast socket options (now in src/iperf_multicast_api.c) o warn on bind port not sent with --incr-srcport o display fq-rate values in outputs when --fq-rate is used o add support for --test-exchange-timeout o fixes around wait_tick o add support for TCP_TX_DELAY via --tcp-tx-delay option on both client and server o pass the CCA from client to server o support burst-size with different write sizes and don't require --burst-period o output traffic thread send scheduling error stats in final ouput o output clock unsync stats with --bounceback o add warn message on MSG_CTRUNC o UDP select fixes o enable TCP_NOTSENTLOWAT and set to a default small value with --tcp-write-times o default histogram max binning to 10 seconds o add a max timestamp to histogram outputs so user can find packets in pcaps or equivalent o autoconf change for struct ip_mreqn o print errno on writen fail