From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id F14573B29D for ; Sun, 19 Dec 2021 20:41:00 -0500 (EST) Received: by mail-ed1-x52a.google.com with SMTP id m21so4809461edc.0 for ; Sun, 19 Dec 2021 17:41:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=48OBZmrR7KSJ7ZwudoqYnLGC5yLV6VJc8dANZ8muvuk=; b=IP++2OwDIYpN4mHiKvZCl2SNRKcVSUazN29tdmjfpNUv2HWfkl4PQG1y9qpJGf8/Ov fN3RnzdsDD3z//oNzo6t+/sKov/VcobPKJMO7+t+bsW8S9gVCx/xLLMQJD42Y2uZumjd kvSM+L90r41DK1f8GE/3qGJmbsRVPKn0N3VDI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=48OBZmrR7KSJ7ZwudoqYnLGC5yLV6VJc8dANZ8muvuk=; b=f2krLboTfhlDqkNu600UuKhnBlA/BoxWFnoA9YwsztOGrKZFJcQvZ8Ad9s3Qfkz0qc yVNnb2z4q/Wb0murmqVmrm2UNt0BcB9RcwjjnqU9S51lXmjcnUfIcOgIrouaOvG3TWX7 P+C9MVJ4vNzBBlmdBkO4PkVc+FHPsBztbUw9I9uEioX8TGWpEQdKpWBTpoE0d9/PQhbl aBJ0w/ZhB3acb7En5uIddR+g+nlWE6w1LBXvW4Lh8ssF51OpFdBsNagoMaWOXqViL4b6 N4Ax2QJesHU24vxeEij8ys+918w7nX5QJSejueZ22Zs++oSvIUXrI5vHBUVNUknxPSCl Yskw== X-Gm-Message-State: AOAM533SsjIgeDmC8BReMsW3TM8QXpZrvNbBz/FkCgVMUxHSQAzr5Irr GUw6nP6krbW2Kr6ITcAkoAeQKRNgR92pUh5GEdGgjSth3h6atTO7/JeIpfu6nKwhpz/WKNXXwrD umDTxt5kjLFhvuNhZ26iyyAyHM8ARHoRcNdrp6rulfWRpc//OKw== X-Google-Smtp-Source: ABdhPJxfFR7NQB59GcnInxc1V/dTWX5y+QcbfIZNflqytXVSz4srJonPh37mdsNLISdDRKrSLEvqi1WHXK8DHmWub9c= X-Received: by 2002:a05:6402:2c4:: with SMTP id b4mr10275601edx.364.1639964459785; Sun, 19 Dec 2021 17:40:59 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Bob McMahon Date: Sun, 19 Dec 2021 17:40:49 -0800 Message-ID: To: Dave Taht Cc: Make-Wifi-fast Content-Type: multipart/alternative; boundary="00000000000012021805d389fba9" Subject: Re: [Make-wifi-fast] Fwd: a succession of networkQuality tests 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, 20 Dec 2021 01:41:01 -0000 --00000000000012021805d389fba9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable FYI, I've added a --bounceback option to iperf 2 . One can use the BB cnt as analogous for messages per unit time. It by default turns on TCP_QUICKACK so one can compare the TCP RTT vs the app level bounceback (-i is recommended for tcpinfo sampling.) There is an option to add a full duplex TCP stream to the same dest along with the bounceback traffic. If you use --trip-times you'll get a histogram (BB8) of the one way delays too (clocks must be sync'ed and assumed so) This is designed to be a simple socket level test. Please do feel free to comment and suggest improvements. [rjmcmahon@ryzen3950 iperf2-code]$ src/iperf - hidden.com --bounceback -t 10 --trip-times -e --hide-ips ------------------------------------------------------------ Client connecting to (**hidden**), TCP port 5001 with pid 240864 (1 flows) Write buffer size: 100 Byte Bounce-back test (size=3D 100 Byte) (hold=3D0 usecs) TOS set to 0x0 and nodelay (Nagle off) TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 1] local *.*.*.133%enp4s0 port 55634 connected with *.*.*.123 port 5001 (MSS=3D1448) (bb len/hold=3D100/0) (trip-times) (sock=3D3) (irtt/icwnd=3D14= 469/14) (ct=3D14.52 ms) on 2021-12-19 17:29:23 (PST) [ ID] Interval Transfer Bandwidth *BB cnt*=3Davg/min/max/= stdev Rtry Cwnd/RTT [ 1] 0.00-10.03 sec 178 KBytes 145 Kbits/sec *911*=3D10.982/6.187/21.876/1.883 ms 0 14K/13160 us [ 1] 0.00-10.03 sec OWD Delays (ms) Cnt=3D911 To=3D5.222/0.383/16.277/1.= 875 From=3D5.760/5.500/6.091/0.092 Asymmetry=3D0.538/-10.678/5.421/1.871 [ 1] 0.00-10.03 sec BB8(f)-PDF: bin(w=3D100us):cnt(911)=3D62:1,79:1,97:13,98:23,99:65,100:92,101:115,102:13= 5,103:85,104:70,105:43,106:30,107:17,108:15,109:11,110:6,111:3,112:4,113:5,= 114:5,115:5,116:2,117:4,118:2,119:4,120:5,121:4,122:2,123:3,124:2,125:1,126= :3,127:3,128:1,131:1,132:1,133:7,134:1,135:4,138:6,139:6,141:4,142:2,143:4,= 144:2,145:7,146:6,147:5,148:6,149:6,150:12,151:1,153:3,154:2,155:1,156:4,15= 7:6,158:1,159:4,160:2,162:3,163:2,165:2,166:2,167:3,168:1,169:1,171:1,172:1= ,177:2,179:1,183:1,187:1,188:1,191:2,197:1,208:1,219:1 (5.00/95.00/99.7%=3D99/154/197,Outliers=3D0,obl/obu=3D0/0) (0.000 ms/0.0) [rjmcmahon@ryzen3950 iperf2-code]$ src/iperf -c hidden.com --bounceback -t 10 --trip-times -e --hide-ips -*-bounceback-congest* [ 2] local *.*.*.133 port 55640 connected with *.*.*.123 port 5001 (full-duplex) (trip-times) [ 1] local *.*.*.133%enp4s0 port 55642 connected with *.*.*.123 port 5001 (MSS=3D1448) (bb len/hold=3D100/0) (trip-times) (sock=3D3) (irtt/icwnd=3D10= 580/14) (ct=3D10.67 ms) on 2021-12-19 17:29:48 (PST) ------------------------------------------------------------ Client connecting to (**hidden**), TCP port 5001 with pid 240911 (1 flows) Write buffer size: 100 Byte Bounce-back test (size=3D 100 Byte) (hold=3D0 usecs) TOS set to 0x0 and nodelay (Nagle off) TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ ID] Interval Transfer Bandwidth [ 2] 0.00-10.02 sec 7.82 MBytes 6.55 Mbits/sec [ ID] Interval Transfer Bandwidth BB cnt=3Davg/min/max/stdev Rtry Cwnd/RTT [ 1] 0.00-10.09 sec 92.2 KBytes 74.9 Kbits/sec *472*=3D20.788/6.149/128.539/17.973 ms 1 14K/42283 us [ 1] 0.00-10.09 sec OWD Delays (ms) Cnt=3D472 To=3D15.290/1.068/123.623/17.616 From=3D5.498/4.806/23.336/1.342 Asymmetry=3D-9.792/-118.707/4.013/17.356 [ 1] 0.00-10.09 sec BB8(f)-PDF: bin(w=3D100us):cnt(472)=3D62:1,82:1,91:1,94:5,95:1,96:5,97:6,98:6,99:3,100:= 6,101:4,102:4,103:3,104:3,105:7,106:6,107:4,108:6,109:2,110:5,111:5,112:2,1= 13:3,114:3,115:4,116:3,117:4,118:1,119:3,120:4,121:3,122:3,123:1,124:2,126:= 2,127:2,128:1,129:3,132:3,133:1,135:2,136:2,137:5,138:1,139:3,140:8,141:8,1= 42:8,143:9,144:12,145:10,146:14,147:6,148:7,149:4,150:6,151:7,152:3,153:5,1= 54:5,155:4,156:2,157:6,158:8,159:2,160:6,161:11,162:3,163:2,164:6,165:2,166= :5,167:3,168:2,169:2,170:7,171:6,172:1,174:2,175:3,176:1,177:1,178:1,179:2,= 180:1,181:1,182:1,183:3,184:2,186:1,187:3,189:2,190:1,193:2,194:1,195:1,196= :2,197:1,199:2,200:2,201:1,202:1,204:4,206:3,208:1,209:1,213:1,216:1,218:1,= 219:1,220:1,221:1,225:1,226:1,228:1,240:1,248:1,252:1,259:1,262:1,269:1,275= :1,276:1,279:1,281:2,282:1,283:1,290:1,291:2,293:2,295:1,297:1,298:1,301:1,= 304:1,313:1,317:1,319:1,325:1,327:1,330:1,344:1,359:1,360:1,365:1,372:1,375= :1,396:1,406:1,412:1,433:1,440:1,442:1,469:1,480:2,485:1,515:1,521:1,533:1,= 535:1,536:1,543:1,544:1,547:1,559:1,571:1,597:1,600:1,604:1,608:1,663:1,668= :1,689:1,735:1,750:1,784:1,810:1,818:1,832:1,840:1,847:1,850:1,884:1,892:1,= 897:1,924:1,997:1,1010:1,1039:1,1046:1,1177:1,1286:1 (5.00/95.00/99.7%=3D98/604/1177,Outliers=3D2,obl/obu=3D0/0) (0.000 ms/0.0) [ ID] Interval Transfer Bandwidth Burst Latency avg/min/max/stdev (cnt/size) inP NetPwr Reads=3DDist [ *2] 0.00-10.40 sec 149 MBytes 120 Mbits/sec 243.512/21.708/616.257/106.136 ms (1190/131072) 3.48 MByte 61.58 1567094=3D900:2894:3359:2773:1327:1282:1624:1760 [SUM] 0.00-10.41 sec 157 MBytes 126 Mbits/sec CLIENT SPECIFIC OPTIONS*-b*, *--bandwidth* *n*[kmgKMG][,*n*[kmgKMG]] | *n* [kmgKMG]ppsset target bandwidth to *n* bits/sec (default 1 Mbit/sec) or *n* packets per sec. This may be used with TCP or UDP. Optionally, for variable loads, use format of mean,standard deviation*--bounceback*run a tcp bounceback test (set size with -l or --len, defaults to 100 bytes) *--bounceback-congest*request a concurrent full-duplex TCP stream *--bounceback-hold **n*request the server to insert a delay of n milliseconds between its read and write (default is no delay) *--bounceback-period **n*request the client schedule a send every n milliseconds (w/o option bouncebacks are immediately scheduled. With command option and no optional value given, the interval will be one second.)*--bounceback-no-quickack*request the server not set the TCP_QUICKACK socket option (disabling TCP ACK delays) during a bounceback test (see NOTES)*--burst-period **n* Bob --=20 This electronic communication and the information and any files transmitted= =20 with it, or attached to it, are confidential and are intended solely for=20 the use of the individual or entity to whom it is addressed and may contain= =20 information that is confidential, legally privileged, protected by privacy= =20 laws, or otherwise restricted from disclosure to anyone else. If you are=20 not the intended recipient or the person responsible for delivering the=20 e-mail to the intended recipient, you are hereby notified that any use,=20 copying, distributing, dissemination, forwarding, printing, or copying of= =20 this e-mail is strictly prohibited. If you received this e-mail in error,= =20 please return the e-mail to the sender, delete it from your computer, and= =20 destroy any printed copy of it. --00000000000012021805d389fba9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
FYI, I've added a --bounceback option to iperf 2.=C2=A0 One can = use the BB cnt as analogous for messages per unit time. It by default turns= on TCP_QUICKACK so one can compare the TCP RTT vs the app level bounceback= (-i is recommended for tcpinfo sampling.) There is an option to add a full= duplex=C2=A0TCP stream to the same dest along with=C2=A0the bounceback tra= ffic.=C2=A0 If you use --trip-times you'll get a histogram (BB8) of the= one way delays too (clocks must be sync'ed=C2=A0and assumed=C2=A0so)
This is designed to be a simple socket level test. Please do feel fre= e to comment and suggest improvements.

[rjmcmahon@ryzen3950 iperf2-code]$ src/i= perf - hidden.com --bounceback -t 10 --tr= ip-times -e --hide-ips
-------------------------------------------------= -----------
Client connecting to (**hidden**), TCP port 5001 with pid 24= 0864 (1 flows)
Write buffer size: =C2=A0100 Byte
Bounce-back test (si= ze=3D 100 Byte) (hold=3D0 usecs)
TOS set to 0x0 and nodelay (Nagle off)<= br>TCP window size: 85.0 KByte (default)
-------------------------------= -----------------------------
[ =C2=A01] local *.*.*.133%enp4s0 port 556= 34 connected with *.*.*.123 port 5001 (MSS=3D1448) (bb len/hold=3D100/0) (t= rip-times) (sock=3D3) (irtt/icwnd=3D14469/14) (ct=3D14.52 ms) on 2021-12-19= 17:29:23 (PST)
[ ID] Interval =C2=A0 =C2=A0 =C2=A0 =C2=A0Transfer =C2= =A0 =C2=A0Bandwidth =C2=A0 =C2=A0 =C2=A0 =C2=A0 BB cnt=3Davg/min/max= /stdev =C2=A0 =C2=A0 =C2=A0 =C2=A0 Rtry =C2=A0Cwnd/RTT
[ =C2=A01] 0.00-1= 0.03 sec =C2=A0 178 KBytes =C2=A0 145 Kbits/sec =C2=A0 =C2=A0911=3D1= 0.982/6.187/21.876/1.883 ms =C2=A0 =C2=A00 =C2=A0 14K/13160 us
[ =C2=A01= ] 0.00-10.03 sec =C2=A0OWD Delays (ms) Cnt=3D911 =C2=A0To=3D5.222/0.383/16.= 277/1.875 From=3D5.760/5.500/6.091/0.092 Asymmetry=3D0.538/-10.678/5.421/1.= 871
[ =C2=A01] 0.00-10.03 sec BB8(f)-PDF: bin(w=3D100us):cnt(911)=3D62:1= ,79:1,97:13,98:23,99:65,100:92,101:115,102:135,103:85,104:70,105:43,106:30,= 107:17,108:15,109:11,110:6,111:3,112:4,113:5,114:5,115:5,116:2,117:4,118:2,= 119:4,120:5,121:4,122:2,123:3,124:2,125:1,126:3,127:3,128:1,131:1,132:1,133= :7,134:1,135:4,138:6,139:6,141:4,142:2,143:4,144:2,145:7,146:6,147:5,148:6,= 149:6,150:12,151:1,153:3,154:2,155:1,156:4,157:6,158:1,159:4,160:2,162:3,16= 3:2,165:2,166:2,167:3,168:1,169:1,171:1,172:1,177:2,179:1,183:1,187:1,188:1= ,191:2,197:1,208:1,219:1 (5.00/95.00/99.7%=3D99/154/197,Outliers=3D0,obl/ob= u=3D0/0) (0.000 ms/0.0)


[rjmcmahon@ryzen3950 iperf2-code]$ src/ipe= rf -c hidden.com --bounceback -t 10 --tri= p-times -e --hide-ips --bounceback-congest
[ =C2=A02] local *.*.*= .133 port 55640 connected with *.*.*.123 port 5001 (full-duplex) (trip-time= s)
[ =C2=A01] local *.*.*.133%enp4s0 port 55642 connected with *.*.*.123= port 5001 (MSS=3D1448) (bb len/hold=3D100/0) (trip-times) (sock=3D3) (irtt= /icwnd=3D10580/14) (ct=3D10.67 ms) on 2021-12-19 17:29:48 (PST)
--------= ----------------------------------------------------
Client connecting t= o (**hidden**), TCP port 5001 with pid 240911 (1 flows)
Write buffer siz= e: =C2=A0100 Byte
Bounce-back test (size=3D 100 Byte) (hold=3D0 usecs)TOS set to 0x0 and nodelay (Nagle off)
TCP window size: 85.0 KByte (de= fault)
------------------------------------------------------------
[= ID] Interval =C2=A0 =C2=A0 =C2=A0 Transfer =C2=A0 =C2=A0 Bandwidth
[ = =C2=A02] 0.00-10.02 sec =C2=A07.82 MBytes =C2=A06.55 Mbits/sec
[ ID] Int= erval =C2=A0 =C2=A0 =C2=A0 =C2=A0Transfer =C2=A0 =C2=A0Bandwidth =C2=A0 =C2= =A0 =C2=A0 =C2=A0 BB cnt=3Davg/min/max/stdev =C2=A0 =C2=A0 =C2=A0 =C2=A0 Rt= ry =C2=A0Cwnd/RTT
[ =C2=A01] 0.00-10.09 sec =C2=A092.2 KBytes =C2=A074.9= Kbits/sec =C2=A0 =C2=A0472=3D20.788/6.149/128.539/17.973 ms =C2=A0 = =C2=A01 =C2=A0 14K/42283 us
[ =C2=A01] 0.00-10.09 sec =C2=A0OWD Delays (= ms) Cnt=3D472 =C2=A0To=3D15.290/1.068/123.623/17.616 From=3D5.498/4.806/23.= 336/1.342 Asymmetry=3D-9.792/-118.707/4.013/17.356
[ =C2=A01] 0.00-10.09= sec BB8(f)-PDF: bin(w=3D100us):cnt(472)=3D62:1,82:1,91:1,94:5,95:1,96:5,97= :6,98:6,99:3,100:6,101:4,102:4,103:3,104:3,105:7,106:6,107:4,108:6,109:2,11= 0:5,111:5,112:2,113:3,114:3,115:4,116:3,117:4,118:1,119:3,120:4,121:3,122:3= ,123:1,124:2,126:2,127:2,128:1,129:3,132:3,133:1,135:2,136:2,137:5,138:1,13= 9:3,140:8,141:8,142:8,143:9,144:12,145:10,146:14,147:6,148:7,149:4,150:6,15= 1:7,152:3,153:5,154:5,155:4,156:2,157:6,158:8,159:2,160:6,161:11,162:3,163:= 2,164:6,165:2,166:5,167:3,168:2,169:2,170:7,171:6,172:1,174:2,175:3,176:1,1= 77:1,178:1,179:2,180:1,181:1,182:1,183:3,184:2,186:1,187:3,189:2,190:1,193:= 2,194:1,195:1,196:2,197:1,199:2,200:2,201:1,202:1,204:4,206:3,208:1,209:1,2= 13:1,216:1,218:1,219:1,220:1,221:1,225:1,226:1,228:1,240:1,248:1,252:1,259:= 1,262:1,269:1,275:1,276:1,279:1,281:2,282:1,283:1,290:1,291:2,293:2,295:1,2= 97:1,298:1,301:1,304:1,313:1,317:1,319:1,325:1,327:1,330:1,344:1,359:1,360:= 1,365:1,372:1,375:1,396:1,406:1,412:1,433:1,440:1,442:1,469:1,480:2,485:1,5= 15:1,521:1,533:1,535:1,536:1,543:1,544:1,547:1,559:1,571:1,597:1,600:1,604:= 1,608:1,663:1,668:1,689:1,735:1,750:1,784:1,810:1,818:1,832:1,840:1,847:1,8= 50:1,884:1,892:1,897:1,924:1,997:1,1010:1,1039:1,1046:1,1177:1,1286:1 (5.00= /95.00/99.7%=3D98/604/1177,Outliers=3D2,obl/obu=3D0/0) (0.000 ms/0.0)
[ = ID] Interval =C2=A0 =C2=A0 =C2=A0 =C2=A0Transfer =C2=A0 =C2=A0Bandwidth =C2= =A0 =C2=A0Burst Latency avg/min/max/stdev (cnt/size) inP NetPwr =C2=A0Reads= =3DDist
[ *2] 0.00-10.40 sec =C2=A0 149 MBytes =C2=A0 120 Mbits/sec =C2= =A0243.512/21.708/616.257/106.136 ms (1190/131072) 3.48 MByte 61.58 =C2=A01= 567094=3D900:2894:3359:2773:1327:1282:1624:1760
[SUM] 0.00-10.41 sec =C2= =A0 157 MBytes =C2=A0 126 Mbits/sec

CLIENT SPECIFIC OPTIONS
-b,=C2=A0--bandwidth=C2=A0n[= kmgKMG][,n[kmgKMG]] |=C2=A0n[kmgKMG]pps
set target ba= ndwidth to=C2=A0n=C2=A0bits/sec (default 1 Mbit/sec) or=C2=A0n=C2=A0packets per sec. This may be used with TCP or UDP. Optionally, for v= ariable loads, use format of mean,standard deviation
--bouncebac= k
run a tcp bounceback test (set size with -l or --len, default= s to 100 bytes)
--bounceback-congest
request a concu= rrent full-duplex TCP stream
--bounceback-hold=C2=A0n=
request the server to insert a delay of n milliseconds between its= read and write (default is no delay)
--bounceback-period=C2=A0<= /b>n
request the client schedule a send every n milliseconds= (w/o option bouncebacks are immediately scheduled. With command option and= no optional value given, the interval will be one second.)
--bo= unceback-no-quickack
request the server not set the TCP_QUICKAC= K socket option (disabling TCP ACK delays) during a bounceback test (see NO= TES)
--burst-period=C2=A0n

Bob


This ele= ctronic communication and the information and any files transmitted with it= , or attached to it, are confidential and are intended solely for the use o= f the individual or entity to whom it is addressed and may contain informat= ion that is confidential, legally privileged, protected by privacy laws, or= otherwise restricted from disclosure to anyone else. If you are not the in= tended recipient or the person responsible for delivering the e-mail to the= intended recipient, you are hereby notified that any use, copying, distrib= uting, dissemination, forwarding, printing, or copying of this e-mail is st= rictly prohibited. If you received this e-mail in error, please return the = e-mail to the sender, delete it from your computer, and destroy any printed= copy of it. --00000000000012021805d389fba9--