Recommended Posts

Ok updated cygwin, did a new compile here is the new update

 

$ iperf3.exe -v
iperf 3.7 (cJSON 1.5.2)
CYGWIN_NT-10.0-18363 i5-win 3.1.4-340.x86_64 2020-02-19 08:49 UTC x86_64
Optional features available: CPU affinity setting

 

https://files.budman.pw/iperf3.7_64_updated_cygwin1dll.zip

CRC32: ABCA3CAA
MD5: C3594A08967FD57BF36F757980480F9D
SHA-1: DF6C8B3D18941DABBC5AB21ACB5844A062620092
SHA-256: B1A14F8B2435AAA98D26F8499DF23BF6532B5F0EA2288DA04E0C28333EDBC48E

edit:  I again had to make the change to ossl_typ.h shown above to get it to compile... My change had gotten over witten with the updated of cygwin.

  • 1 month later...

I don't think you can.. I would love to do that myself.. 

 

If you find a way - please post it here, and I would for sure compile iperf3 as standalone without the need of the extra dll.

 

https://cygwin.com/faq/faq.html#faq.programming.static-linking

 

You would have to compile ipferf3 with something other than cygwin from my understanding.

  • 1 month later...

Yeah been seeing the messages on the changes they were making (I get emails when they make a commit) but hadn't see actual release - will take a look see, thanks - if out should have new version up today.

 

edit:  Ok new version compiled and on site, updated to latest cygwin just before compile.

Had to make the same change to ossl_typ.h as above.

 

E:\test\iperf3.8_64bit>iperf3.exe -v
iperf 3.8 (cJSON 1.7.13)
CYGWIN_NT-10.0-18363 i5-win 3.1.5-340.x86_64 2020-06-01 08:59 UTC x86_64
Optional features available: CPU affinity setting

 

Since now running 2.5 gbps to my nas ds918+ (cheap 40$ usb ethernet nic).. Did a test.. NAS only has 3.7 since the guy that makes the packages has updated as of yet ;) Its only been out yesterday.  If anyone interested in doing the same.. Just ask and post up the info... It was a nice 80$ upgrade for moving files between my pc and nas.. Vs using the smb3 multichannel, which is also great way to break the gig barrier in moving files.

 

E:\test\iperf3.8_64bit>iperf3.exe -c 192.168.10.10
warning: Ignoring nonsense TCP MSS 334080
Connecting to host 192.168.10.10, port 5201
[  5] local 192.168.10.9 port 55228 connected to 192.168.10.10 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   270 MBytes  2.27 Gbits/sec
[  5]   1.00-2.00   sec   278 MBytes  2.33 Gbits/sec
[  5]   2.00-3.00   sec   276 MBytes  2.31 Gbits/sec
[  5]   3.00-4.00   sec   278 MBytes  2.34 Gbits/sec
[  5]   4.00-5.00   sec   275 MBytes  2.31 Gbits/sec
[  5]   5.00-6.00   sec   276 MBytes  2.32 Gbits/sec
[  5]   6.00-7.00   sec   280 MBytes  2.35 Gbits/sec
[  5]   7.00-8.00   sec   278 MBytes  2.33 Gbits/sec
[  5]   8.00-9.00   sec   277 MBytes  2.32 Gbits/sec
[  5]   9.00-10.00  sec   282 MBytes  2.37 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec  2.71 GBytes  2.32 Gbits/sec                  sender
[  5]   0.00-10.01  sec  2.71 GBytes  2.32 Gbits/sec                  receiver

iperf Done.

E:\test\iperf3.8_64bit>

File uploaded

https://files.budman.pw/iperf3.8_64bit.zip

MD5: 38A01DC0D4CC67058B094A96274A6F49
SHA-256: E37B0885EFA60106A3333CDAE878815B2306B434175F2BFBAF2DBF709BAB2049

 

I will update the first post with the details as well.

3.8.1 came out

 

budman@I5-WIN C:\tools\iperf3.8.1_64
$ iperf3.exe -v
iperf 3.8.1 (cJSON 1.7.13)
CYGWIN_NT-10.0-18363 i5-win 3.1.5-340.x86_64 2020-06-01 08:59 UTC x86_64
Optional features available: CPU affinity setting

https://files.budman.pw/iperf3.8.1_64.zip

CRC32: 69CE7B06
MD5: 1157B038DC04646B074A822A171E77A7
SHA-1: A692D6E5FAD3004A229C92661EC4448004EA269E
SHA-256: CD337C2EEB5ACF02713867990E4F9F0656CC0CAEA850F3B3C289DD79305DF1A1

  • 3 weeks later...

D:\Download\iperf3.8.1_64>iperf3.exe -v
iperf 3.8.1 (cJSON 1.7.13)
CYGWIN_NT-10.0-19041 DESKTOP-SBNDHC1 3.1.5-340.x86_64 2020-06-01 08:59 UTC x86_64
Optional features available: CPU affinity setting

 

 

D:\Download\iperf3.8.1_64>iperf3.exe -Z -c 172.30.1.32
iperf3: parameter error - this OS does not support sendfile

Can you solve this problem?

Prob not.. since its not supported on windows.. 

 

If you can get the iperf guys to get it to work, then I could compile it..  I am not by any means a coder, I just compiling it - and in the past have figure out a few issues with it compiling like header issues, etc.. But something like this would be beyond my skillset.

 

It works on linux... I have to reinstall cygwin (just redid my pc)

 

 

  • 1 month later...

3.9 released

iperf 3.9 2020-08-17
--------------------

* Notable user-visible changes

  * A --timestamps flag has been added, which prepends a timestamp to
    each output line.  An optional argument to this flag, which is a
    format specification to strftime(3), allows for custom timestamp
    formats (#909, #1028).

  * A --server-bitrate-limit flag has been added as a server-side
    command-line argument.  It allows a server to enforce a maximum
    throughput rate; client connections that specify a higher bitrate
    or exceed this bitrate during a test will be terminated.  The
    bitrate is expressed in bits per second, with an optional trailing
    slash and integer count that specifies an averaging interval over
    which to enforce the limit (#999).

  * A bug that caused increased CPU usage with the --bidir option has
    been fixed (#1011).

* Notable developer-visible changes

  * Fixed various minor memory leaks (#1023).

 

C:\iperf3.9_64>iperf3.exe -v
iperf 3.9 (cJSON 1.7.13)
CYGWIN_NT-10.0-19041 I5-Win 3.1.6-340.x86_64 2020-07-09 08:20 UTC x86_64
Optional features available: CPU affinity setting

 

https://files.budman.pw/iperf3.9_64.zip

Name: iperf3.9_64.zip
Size: 1542276 bytes (1506 KiB)
SHA256: 15D2D3C2A8B9A69EFD9991FEFE5206E31D6055399F7A4C663C3CB6D77B6770F8

 

  • Like 2
  • 9 months later...

There is new version:

https://github.com/esnet/iperf/archive/refs/tags/3.10.zip

 

iperf 3.10 2021-05-26

Notable user-visible changes

Fix a bug where some --reverse tests didn't terminate (#982 / #1054).

Responsiveness of control connections is slightly improved (#1045 / #1046 / #1063).

The allowable clock skew when doing authentication between client and server is now configurable with the new --time-skew-threshold (#1065 / #1070).

Bitrate throttling using the -b option now works when a burst size is specified (#1090).

A bug with calculating CPU utilization has been fixed (#1076 / #1077).

A --bind-dev option to support binding sockets to a given network interface has been added to make iperf3 work better with multi-homed machines and/or VRFs (#817 / #1089 / #1097).

--pidfile now works with --client mode (#1110).

The server is now less likely to get stuck due to network errors (#1101, #1125), controlled by the new --rcv-timeout option.

Fixed a few bugs in termination conditions for byte or block-limited tests (#1113, #1114, #1115).

Added tcp_info.snd_wnd to JSON output (#1148).

Some bugs with garbled JSON output have been fixed (#1086, #1118, #1143 / #1146).

Support for setting the IPv4 don't-fragment (DF) bit has been added with the new --dont-fragment option (#1119).

A failure with not being able to read the congestion control algorithm under WSL1 has been fixed (#1061 / #1126).

Error handling and error messages now make more sense in cases where sockets were not successfully opened (#1129 / #1132 / #1136, #1135 / #1138, #1128 / #1139).

Some buffer overflow hazards were fixed (#1134).

Notable developer-visible changes

It is now possible to use the API to set/get the congestion control algorithm (#1036 / #1112).

Yeah I knew it was coming out soon - I had just checked yesterday.. Thanks should have compiled version up later today.

 

odd - they haven't announced it yet

https://software.es.net/iperf/news.html

 

Nor do I see it download here yet?

https://downloads.es.net/pub/iperf/

Well it is there - doh.. I had seen the mailing list announcement that 5/26 was suppose to be the release date.  But never saw the news site update with info..

 

My cygwin is updating now to 3.2 and will compile here in a bit after that is finish.  Thanks for poke ;)

Ok 3.10 64bit is up

 

md5 	12c084405e3c8352278e48922dbd7499
sha1 	63e2ffd5b33f5bd372b62dc617ba7d786493c29a
sha256 	098f276552939acec2a9a7d6990e79bac17e45fb951d32ce59c2d764cdcaf15a

 

https://files.budman.pw/iperf3.10_64bit.zip

 

C:\test\iperf3.10_64bit>iperf3.exe -v
iperf 3.10 (cJSON 1.7.13)
CYGWIN_NT-10.0-19043 I5-Win 3.2.0-340.x86_64 2021-03-29 08:42 UTC x86_64
Optional features available: CPU affinity setting, support IPv4 don't fragment

 

I tested it against older 3.7 version running on my nas.. It works from that standpoint.

 

C:\test\iperf3.10_64bit>iperf3.exe -c 192.168.10.10
Connecting to host 192.168.10.10, port 5201
[  5] local 192.168.10.9 port 27081 connected to 192.168.10.10 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   264 MBytes  2.21 Gbits/sec
[  5]   1.00-2.00   sec   274 MBytes  2.30 Gbits/sec
[  5]   2.00-3.00   sec   276 MBytes  2.32 Gbits/sec
[  5]   3.00-4.00   sec   276 MBytes  2.31 Gbits/sec
[  5]   4.00-5.00   sec   278 MBytes  2.33 Gbits/sec
[  5]   5.00-6.00   sec   276 MBytes  2.32 Gbits/sec
[  5]   6.00-7.00   sec   275 MBytes  2.30 Gbits/sec
[  5]   7.00-8.00   sec   275 MBytes  2.31 Gbits/sec
[  5]   8.00-9.00   sec   275 MBytes  2.31 Gbits/sec
[  5]   9.00-10.00  sec   274 MBytes  2.30 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec  2.68 GBytes  2.30 Gbits/sec                  sender
[  5]   0.00-10.01  sec  2.68 GBytes  2.30 Gbits/sec                  receiver

iperf Done.

 

edit: updated 6/4/21

https://files.budman.pw/iperf3.10.1_64bit.zip

sha256     2cf3ff3671f9f4f57cf01ab8b2d960feb9e087d450f3b58aaf4ab82333262be0

iperf 3.10.1 fixes a problem with the configure script that made it make not work correctly in some circumstances. It is functionally identical to iperf 3.10.

I didn't seem to have any issues with my 3.10 build, but redid to keep with current version numbers.

 

C:\test\iperf3.10.1_64bit>iperf3.exe -v
iperf 3.10.1 (cJSON 1.7.13)
CYGWIN_NT-10.0-19043 I5-Win 3.2.0-340.x86_64 2021-03-29 08:42 UTC x86_64
Optional features available: CPU affinity setting, support IPv4 don't fragment

 

  • +BudMan changed the title to Iperf 3.10.1 Windows build
  • 3 weeks later...

Ok, I got a bit tired of waiting for where I was getting iperf3 to run on my nas.. So I compiled it myself.. Not sure how to create a package yet, etc.

 

But creating the build environment for my ds918+ was easier than I thought..

 

So if you have an apollolake synology nas and would like to test iperf3.10.1

https://files.budman.pw/iperf3.10.1-apollolake.zip

 

Copy iperf3 to /usr/bin

Copy the libiperf.so.0 to /usr/local/lib

make sure you can exe the iperf3, chmod 755 for example

 

And there you go..

ash-4.3# iperf3 -v
iperf 3.10.1 (cJSON 1.7.13)
Linux NAS 4.4.59+ #25556 SMP PREEMPT Thu Mar 18 13:00:35 CST 2021 x86_64
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy, socket pacing, authentication, bind to device, support IPv4 don't fragment
ash-4.3# 

 

ash-4.3# iperf3 -s
-----------------------------------------------------------
Server listening on 5201 (test #1)
-----------------------------------------------------------
Accepted connection from 192.168.10.9, port 4739
[  5] local 192.168.10.10 port 5201 connected to 192.168.10.9 port 4740
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   1.00-2.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   2.00-3.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   3.00-4.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   4.00-5.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   5.00-6.00   sec   281 MBytes  2.36 Gbits/sec                  
[  5]   6.00-7.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   7.00-8.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   8.00-9.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   9.00-10.00  sec   283 MBytes  2.37 Gbits/sec                  
[  5]  10.00-10.01  sec  2.96 MBytes  2.34 Gbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.01  sec  2.76 GBytes  2.37 Gbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5201 (test #2)
-----------------------------------------------------------
^Ciperf3: interrupt - the server has terminated
ash-4.3# 

 

If any one tests this - let me know how it turns out.. When I get a bit more motivated might look into creating a package.

 

Also if you have a different synology nas other than apollolake and would like me to compile for you.. Let me know and give it a shot.

2 minutes ago, BudMan said:

Ok, I got a bit tired of waiting for where I was getting iperf3 to run on my nas.. So I compiled it myself.. Not sure how to create a package yet, etc.

 

But creating the build environment for my ds918+ was easier than I thought..

 

So if you have an apollolake synology nas and would like to test iperf3.10.1

https://files.budman.pw/iperf3.10.1-apollolake.zip

 

Copy iperf3 to /usr/bin

Copy the libiperf.so.0 to /usr/local/lib

make sure you can exe the iperf3, chmod 755 for example

 

And there you go..


ash-4.3# iperf3 -v
iperf 3.10.1 (cJSON 1.7.13)
Linux NAS 4.4.59+ #25556 SMP PREEMPT Thu Mar 18 13:00:35 CST 2021 x86_64
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy, socket pacing, authentication, bind to device, support IPv4 don't fragment
ash-4.3# 

 


ash-4.3# iperf3 -s
-----------------------------------------------------------
Server listening on 5201 (test #1)
-----------------------------------------------------------
Accepted connection from 192.168.10.9, port 4739
[  5] local 192.168.10.10 port 5201 connected to 192.168.10.9 port 4740
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   1.00-2.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   2.00-3.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   3.00-4.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   4.00-5.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   5.00-6.00   sec   281 MBytes  2.36 Gbits/sec                  
[  5]   6.00-7.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   7.00-8.00   sec   282 MBytes  2.37 Gbits/sec                  
[  5]   8.00-9.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   9.00-10.00  sec   283 MBytes  2.37 Gbits/sec                  
[  5]  10.00-10.01  sec  2.96 MBytes  2.34 Gbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.01  sec  2.76 GBytes  2.37 Gbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5201 (test #2)
-----------------------------------------------------------
^Ciperf3: interrupt - the server has terminated
ash-4.3# 

 

If any one tests this - let me know how it turns out.. When I get a bit more motivated might look into creating a package.

 

Also if you have a different synology nas other than apollolake and would like me to compile for you.. Let me know and give it a shot.

Thank you sir. If you want to make an installer, check out inno setup.

https://jrsoftware.org/isinfo.php

Thanks but no interest for windows installer, its a simple exe and just run.  But for nas prob be easier package installed it... Just have to read up on doing that ;)

 

Use to be able to get package for nas here - but he seems to have lost interest.

http://www.jadahl.com/

 

Under misc he had iperf 3.7 for a bunch of nases

 

  • 3 weeks later...

So finally pulled the trigger on moving to dsm 7, went way smoother than I expected.. Plex was my big concern - and it was really no big deal.  I have 1 docker that is not running related to plex, but that is because the plex folder moved, and docker can not see it in new location.  But its not a big deal, sure the developer will fix it up for dsm 7 I hope ;)

 

The one thing holding me up besides my concern for plex was driver for usb 2.5ge nic.. And that was released awhile ago so finally got around to doing it this morning.  Well that broke my iperf3.10.1 I had compiled for dsm6.2 branch.. Anyhoo I got it compiled for dsm7.. If you you have a apollolake synology nas you can find it here.

 

https://files.budman.pw/iperf3.10.1-apollolake-dsm7.zip

 

Seems I need a lib that wasn't needed on 6.2.. both libs included.. Read the readme.txt

 

At some point will prob make a spk for this so easier to install.. But this works for me..

 

ash-4.4# ./iperf3 -v
iperf 3.10.1 (cJSON 1.7.13)
Linux NAS 4.4.180+ #41890 SMP Fri Jun 25 02:42:35 CST 2021 x86_64
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy, socket pacing, authentication, bind to device, support IPv4 don't fragment
ash-4.4# ./iperf3 -s
-----------------------------------------------------------
Server listening on 5201 (test #1)
-----------------------------------------------------------
Accepted connection from 192.168.10.9, port 16310
[  5] local 192.168.10.10 port 5201 connected to 192.168.10.9 port 16311
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec   148 MBytes  1.24 Gbits/sec                  
[  5]   1.00-2.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   2.00-3.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   3.00-4.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   4.00-5.00   sec   282 MBytes  2.36 Gbits/sec                  
[  5]   5.00-6.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   6.00-7.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   7.00-8.00   sec   153 MBytes  1.28 Gbits/sec                  
[  5]   8.00-9.00   sec   283 MBytes  2.37 Gbits/sec                  
[  5]   9.00-10.00  sec   283 MBytes  2.37 Gbits/sec                  
[  5]  10.00-10.01  sec  3.00 MBytes  2.37 Gbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.01  sec  2.51 GBytes  2.15 Gbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5201 (test #2)
-----------------------------------------------------------
^Ciperf3: interrupt - the server has terminated

 

  • 6 months later...

Glad if you can use it, and it was a learning adventure to get the dsm build environment going.. But after I did it - guess what I found ;)  A package that has it as part of it hehehe

 

https://synocommunity.com/package/synocli-monitor

 

I am currently just using my build, but if they continue to update that package, I will prob move to it when the new iperf3 comes out.   But will continue to do the iperf3 for windows as new versions come out.

 

I am currently running 7.0.1-42218 Update 2, and still works..

  • 3 weeks later...

So.. I got a new machine not that long ago, finally got around to putting cygwin back on so I could compile iperf3 again when next version came out. Well I noticed 3.11 is out from https://downloads.es.net/pub/iperf/

 

Dated Jan 31, but don't see any release notes published yet.

 

Anyway I went ahead and to test compile working I redid 3.10.1 64bit, newer cygwin for sure, and with cygcheck now show some dlls didn't see before being needed.  So I have updated the download for 3.10.1 with version that includes these other dlls.  And also did a compile of 3.11

 

$ cygcheck ./iperf3.exe
C:\cygwin64\usr\local\bin\iperf3.exe
  C:\cygwin64\bin\cygcrypto-1.1.dll
    C:\cygwin64\bin\cygwin1.dll
      C:\Windows\system32\KERNEL32.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-rtlsupport-l1-1-0.dll
        C:\Windows\system32\ntdll.dll
        C:\Windows\system32\KERNELBASE.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-processthreads-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-processthreads-l1-1-1.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-heap-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-memory-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-handle-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-synch-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-synch-l1-2-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-file-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-file-l1-2-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-namedpipe-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-datetime-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-sysinfo-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-timezone-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-localization-l1-2-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-processenvironment-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-string-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-debug-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-errorhandling-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-util-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-profile-l1-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-file-l2-1-0.dll
        C:\Program Files\Eclipse Adoptium\jdk-17.0.1.12-hotspot\bin\api-ms-win-core-console-l1-1-0.dll
    C:\cygwin64\bin\cygz.dll

Budman@i9-win /usr/local/bin

 

I tested them both doing test to my nas running 3.10.1 and working.  I have no idea at this time what has changed (if anything), etc. But figured would put up both the new compile of 3.10.1 and 3.11

 

Budman@I9-WIN G:\iperf3.10.1_64bit_compiled_2-2-2022
$ iperf3.exe -v
iperf 3.10.1 (cJSON 1.7.13)
CYGWIN_NT-10.0-19044 i9-win 3.3.4-341.x86_64 2022-01-31 19:35 UTC x86_64
Optional features available: CPU affinity setting, authentication, support IPv4 don't fragment

Budman@I9-WIN G:\iperf3.11_64bit
$ iperf3.exe -v
iperf 3.11 (cJSON 1.7.13)
CYGWIN_NT-10.0-19044 i9-win 3.3.4-341.x86_64 2022-01-31 19:35 UTC x86_64
Optional features available: CPU affinity setting, authentication, support IPv4 don't fragment

 

https://files.budman.pw/iperf3.11_64bit.zip

sha-256

166F815BEEC86DE38CC26C243C344C67143575F380974EE0033C6CEF90398F84

 

https://files.budman.pw/iperf3.10.1_64bit_compiled_2-2-2022.zip

sha-256

212A5E346D018A63BD35212EFA1387CDEE1248979D89DB0DE3BADCAA897257CE

 

btw for those that just want to compile yourself.. No edits at all had to be made to get this to work.  Just install cygwin.  Make sure you select the development packages to be installed.  Copy the source code to your cygwin, change into that directory and run

 

./configure; make; make install

 

You will find your new exe in /usr/local/bin and run a cygcheck on it to see what dlls you need.. Copy those all over to your windows filesystem and there you go.

 

edit: Guess I timed that perfect, just got email announcement of release of 3.11 here are the release notes

Iperf-3.11 2022-01-31
-----------------------
* Update links to Discussions in documentation
* Fix DSCP so that TOS = DSCP * 4 (#1162)
* Fix --bind-dev for TCP streams (#1153)
* Fix interface specification so doesn't overlap with IPv6 link-local addresses for -c and -B (#1157, #1180)
* Add get/set test_unit_format function declaration to iperf_api.h
* Auto adjustment of test-end condition for file transfers (-F), if no end condition is set, it will automatically adjust it to file size in bytes
* Exit if idle time expires waiting for a connection in one-off mode (#1187, #1197)
* Support zerocopy by reverse mode (#1204)
* Update help and manpage text for #1157, support bind device
* Consistently print target_bandwidth in JSON start section (#1177)
* Test bitrate added to JSON output (#1168)
* Remove fsync call after every write to receiving --file (#1176, #1159)
* Update documentation for -w (#1175)
* Fix for #952, different JSON object names for bidir reverse channel

 

 

  • +BudMan changed the title to Iperf 3.11 Windows build
  • 3 weeks later...
On 02/02/2022 at 08:54, BudMan said:

I tested them both doing test to my nas running 3.10.1 and working.  I have no idea at this time what has changed (if anything), etc. But figured would put up both the new compile of 3.10.1 and 3.11

In last 2 versions, unknowingly you compiled iperf3 dynamically linked with openssl. Openssl must have been in your path that is why it got linked during configure automatically.

If you do "iperf3.exe -v" you will see a new feature "authentication". And If you do "iperf3.exe -h" you will see additional options related to ssl/rsa. This feature enables authentication between iperf server and client. People hardly use this feature for speed tests.

 

BTW the previous 3.10.1 version you have without openssl, the binary size is 158KB larger than what it should be, its a big difference (I assume it is something related to your env or code changes)

 

I have 3 variations available in my public git repo under Releases:

Iperf3 No Openssl (Dependency: cygwin1.dll)
Iperf3 With Openssl Statically Linked (Dependency: cygwin1.dll)
Iperf3 With Openssl Dynamically Linked (Dependency: cygcrypto-1.1.dll, cygwin1.dll, cygz.dll)

 

https://github.com/ar51an/iperf3-win-builds

  • 7 months later...

Well looks like @CryptAnalyst beat me too it by like 6 hours, his versions are up on his site. 

 

But I have also updated my build

 

Budman@I9-WIN C:\tools\iperf3.12
$ iperf3.exe -v
iperf 3.12 (cJSON 1.7.15)
CYGWIN_NT-10.0-19044 i9-win 3.3.6-341.x86_64 2022-09-05 11:15 UTC x86_64
Optional features available: CPU affinity setting, authentication, support IPv4 don't fragment

 

https://files.budman.pw/iperf3.12_64.zip

SHA-256: 24222F681219D3814880D0E3FAB2165C1A88628D1DBD89CCBFADD4A853DD8AC7

  • Like 3
  • +BudMan changed the title to Iperf 3.12 Windows build

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Posts

    • So size is the ONLY selling point????? People have been plugging in PC's to TV's in living rooms for 20+ years. I would take a bigger box for more peformance. Also lot and lots of SFF/Mini ITX build guides out there.
    • My point is, if you buying this instead of a console for TV purposes, that you need to understand that you will not be able to play the most popular MP games with Steam OS. Now if you are not into those games, and into some of the perputual alpha/beta games on Steam then this is an option. I would argue a gaming PC would be the better route, more expensive but take the 1k -1.4k you are about to spend on this thing and build a better one. Because it is running Linux you can overide its 1080p settings. However The Verge complained about its 1080p cap and how you would have to get around it at the CLI, so someone buying this instead of a PS5 or Xbox might have a challege on their hands.
    • A review of Synology's BeeCamera software for the BeeStation Plus by Christopher White Synology is leaning into the BeeStation and the BeeStation Plus, and it's easy to understand why. While power users will want something more customizable, the BeeStation and its more powerful sibling, the BeeStation Plus, are great for those who want a device they can simply plug in, click a few buttons, and have it work as their own personal cloud. Until recently, the device was mostly used for the storage of files, photos, and videos, and with the Plus model, you could install and stream media through Plex. Synology recently released a new free application for the BeeStation Plus called BeeCamera, which is basically a stripped-down version of Surveillance Station. First, let's get the confusing naming out of the way. While you might initially think that BeeCamera is a physical device, perhaps a camera that Synology created specifically for the BeeStation Plus, that would be incorrect. BeeCamera is simply the name for the application that runs on the NAS and on your mobile device. I think the marketing team missed the mark here, but it does fit the other naming on the device, like BeePhotos and BeeFiles, I guess. Camera Support As of right now, only Synology-branded cameras are supported, which many will see as a callback to the drive locking the company implemented and then backtracked on. That said, while I 100% disagree on drive locking, I agree that camera locking for a device made to simply plug and play is the right decision. The whole point of the BeeStation line is simplicity. There are currently three camera model lines available, a wireless device for indoor use, and two PoE models for external use. CC400W (Wi-Fi): Plug it into power using the included power adapter, and connect it to your wireless network. This camera is rated only for indoor use and is the one I was provided to review the BeeCamera. $198.36, in line with the Unifi G6 Compact. BC510 (PoE): A bullet-style camera. Connect it to an Ethernet cable that is providing Power over Ethernet (PoE). This camera is rated for both indoor and outdoor use. $240. TC510 (PoE): A dome-style camera. Connect it to an Ethernet cable that is providing Power over Ethernet (PoE). This camera is rated for both indoor and outdoor use. $240. Although this isn't a review of the actual Synology camera, I did want to note that a positive for the Synology CC400W is that it uses a magnetic base. This means you can mount it on any magnetic surface, which is pretty handy. However, a downside to the camera is that it's powered by a built-in USB cable that's about six and a half feet (two meters) long. This means that the cable will probably be either too long or too short, but more importantly, if the cable is damaged at all, you'll likely need to buy an entirely new camera because there doesn't appear to be a way to replace it, unlike many competitors, like the Unifi G6 Instant. Hopefully, this is something Synology addresses in a future revision of the hardware. The BeeStation Plus supports up to four cameras. Setup The setup of BeeCamera is, like everything in the BeeStation family, very straightforward. Simply make sure you're on at least version 1.5 of the BeeStation OS, and BeeCamera is automatically installed on the device. BeeCamera Setup Screenshots Setting up the CC400W was just as easy. Plug it in, open up the BeeCamera app, and follow the on-screen steps to add the camera. During this process, you'll configure the camera name and how many days of retention you want to keep. The system will also automatically update the firmware for you. The whole thing took only a couple of minutes, excluding the time it took for the camera to update the firmware. Once the camera is connected to the BeeStation Plus, you can manage the various camera settings within the app, although there aren't many to choose from. You're able to configure whether the microphone will record audio (some privacy laws may preclude you from recording it), select what codec to use (H.264 or H.265), configure the color and exposure of the camera, and determine what data you want to overlay onto the video. Finally, you can set up AI detections so that BeeCamera will alert you if it sees certain things. These are all of the common detections you would expect in a camera system, such as people, pets, and vehicles. Under people and vehicles, you can also add extra monitoring for lingering and congestion detection, although pets are currently in "Lab" and therefore have no extra features yet. Recording in 4K using H.265 for 30 days will take roughly 300 GB of storage, which is very reasonable for most regular households, as the BeeStation Plus has 8TB of native storage. If you want to set up detection zones, you can. These are areas that BeeCamera will look at for the various detections, and are helpful if, for example, there's a tree in your frame and you don't want to be notified each time the wind makes the branches move around in the frame. Finally, you can also schedule when the camera should and should not be recording, which is a very useful feature. For example, you may want to record only at night when you're sleeping, but not during the day when you're up and about the house, so you can easily shut the camera off between 8 am and 10 pm. Each hour of each day can be configured to record continuously, only upon a detection event, or disabled completely. You can't fine-tune to record at a specific time, though, only hourly blocks on the hour. Daily Use The best part of BeeCamera is that it's easy and just works. If you only care about being notified when things happen, the mobile app sends those notifications and lets you click the button to bring up the video and see what's going on. For example, when I went out of town and had the camera pointed at the cat tower in our hallway, it was nice to be able to drop in and check that my furry friends were doing okay without me. Initiating the remote connection to the BeeStation Plus through the app is very responsive, but this will heavily depend on your ISP. In my case, using Xfinity, I'm able to go from starting the app to seeing live video in roughly three seconds, which is about the same amount of time it takes to connect to my Unifi UNVR system that costs much more. If you want to see footage from a specific day and time, you can do so using the calendar icon. You can also scroll through the timeline, looking for detections that are labeled in blue (vs. the normal gray when there's nothing of interest). There are buttons that let you go to the last/next detection on the timeline, which is helpful if you missed the notification on your mobile device. That's where the ease of use stops, though. While you can download clips that are flagged by detection, there's apparently no way to select generic time frames you're interested in, and the only place to download is to your phone. In addition, sharing a video shares the actual video, not just a link back to your BeeStation Plus. While that's good from a security and privacy perspective, it's a little awkward for sharing large videos. Limitations While the ease of implementation is great, there are some things that are lacking from BeeCamera. The most obvious is that there is no way to view the footage on the desktop. You can log in to the BeeStation Plus to see how much storage BeeCamera is using, but unlike BeePhotos and BeeFiles, there is no BeeCamera on the web console to manage or view footage. This means you'll be viewing all of your security footage on your mobile device, which is pretty limiting. In addition, there's no way to download the video to your PC without first using your phone as the intermediary. The one exception to this is that you can use BeeFiles to see the raw MP4 files. They're saved in 5-minute increments, and it's just raw data with no detection information or any other way to identify what any of them are. The lack of a way to interact with BeeCamera on the desktop also makes configuration of the cameras more difficult. For example, trying to set up detection zones using a tiny screen and your finger to draw boxes is more cumbersome than it needs to be. This reinforces the idea that BeeCamera is not made for power users. It's also missing some of the more advanced functionality of Surveillance Station. For example, I couldn't find a way to say, "Alert me if the thing in this zone is no longer there." Another major deficiency with BeeCamera, and a feature I suspect may come out in the future, is that while it can detect generic people, there is no specific facial recognition yet. This is an interesting omission, given the fact that other Synology tools can detect specific individuals, and competitors such as Unifi Protect also do it. This is probably a software limitation, so we will have to wait and see if this feature is added in the future. Conclusion If you need a security guard to monitor surveillance cameras to make sure your property is secure, then BeeCamera is not the solution for you. That said, you probably wouldn't be using a BeeStation Plus as the brains behind the system either. BeeCamera (and BeeStation in general) is clearly aimed at households that want to avoid sending personal data to Google and Amazon, and now want to add some cameras to keep an eye on their home and their pets while they're away. BeeCamera excels at doing this. The target market isn't interested in creating cases, tying multiple views together in a single pane of glass, or the like, and for the intended use case, the system works great. Where it starts to fall apart a bit is with more advanced features. Not being able to use a desktop app is a major compromise in my opinion, and having to do all of the configuration on a mobile device is annoying, but not impossible. If you don't want to have a full-fledged NAS device in your home, but still want control over your data (or maybe want an easy way to backup your data for World Backup Day), and want to add a couple of cameras to keep an eye on your house and your pets, this is a great, cheap, and easy way to go, and I suspect more functionality will come over time. If Synology releases a desktop app or at least a way to configure cameras and view footage on a desktop browser, this would be a near-perfect solution for a general home user. As an Amazon Associate, we earn from qualifying purchases.
    • I forgot to add on my comment that when robots will take physical jobs, it's when they become more cheaper to manufacture and sell. That will be the starting point of the end to lanscaping, trash pickup, factory jobs, etc.
    • How many people can actually use a 2.5gig ethernet port? Most people do not have more than a 1gig internet connection, heck most have less than that. Most people at home do not have a switch that has multiple 2.5gig ports either.
  • Recent Achievements

    • One Month Later
      timbobit earned a badge
      One Month Later
    • One Month Later
      nates earned a badge
      One Month Later
    • Week One Done
      Almohandis earned a badge
      Week One Done
    • Rookie
      dorf went up a rank
      Rookie
    • First Post
      mike_rumble earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      476
    2. 2
      +Edouard
      172
    3. 3
      PsYcHoKiLLa
      104
    4. 4
      Michael Scrip
      88
    5. 5
      Steven P.
      70
  • Tell a friend

    Love Neowin? Tell a friend!