[official]qBittorrent 3.3.16 installer - Built with MSVC 2017

Testing the freshly baked, latest builds!
TomGarner

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by TomGarner »

Testing out 3.3.09 and then 3.3.10 came out... so just downloaded and installed:

- windows 10
- hp pavilion p6 series box
- Drobo external storage device (for long term storage)
- wd external device (for downloads)
- roughly 238 torrents at this time (have many, many, many more but am slowly porting over, playing w/ labeling, location, rename of display/folders (or files))
- rss feeds (with about 8 different locations, all functioning)

Everything works fine on my machine.  No issues to complain about.
Papanikles

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Papanikles »

Can someone update windows compilation page with commands for msvc2015 x64? Thanks.
Switeck

Re: [official]qBittorrent 3.3.7 installer - Built with MSVC 2015

Post by Switeck »

Very similar earlier problem still persists, in part:
index.php/topic,3982.msg23615.html#msg23615
Problem still exists of qBT 3.3.10 trying to listen on the wrong port:
(qBT is set to listen on port 65509)

Launch 1:
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/37714
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/37714
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 1:56:06 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 1:56:06 AM - qBittorrent v3.3.10 started

Launch 2:
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/38632
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/38632
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 3:17:32 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 3:17:32 AM - qBittorrent v3.3.10 started

Launch 3:
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/41692
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/41692
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 7:36:49 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 7:36:49 AM - qBittorrent v3.3.10 started

What is ODD about the choice of port 41692 is qBT also has ESTABLISHED TCP connections on ports 41690 and 41691:
qbittorrent.exe 3788 TCP 127.0.0.1 41691 127.0.0.1 41690 ESTABLISHED
qbittorrent.exe 3788 TCP 127.0.0.1 41690 127.0.0.1 41691 ESTABLISHED
(I spotted this using both TCP View and netstat -n from command prompt/dos box.)
What are these for?
(Also odd is I didn't see qbittorrent.exe actually listening on port 4433 in TCP View or netstat -n. Is that only used/present if webui is enabled?)


qBitTorrent 3.3.10 32bit version (which uses libtorrent 1.0.10.0) doesn't receive incoming uTP connections. (I tried using multiple other BT clients.)
Deluge 1.3.13, which also uses libtorrent (1.0.9.0), had no problem receiving uTP connections.
Because I was running multiple BitTorrent clients (using different listening ports for each) on the same computer and I checked the firewall settings repeated (as well as deleting firewall entries for qBT and others!)...I conclude this listening bug is in qBT (rather than in libtorrent), possibly related to the same issue that causes the incorrect listening ports in qBT's logger.

qBT could be coaxed into making OUTGOING uTP connections, so I was able to do additional uTP testing...
uTorrent 2.2.1 uploading to qBT 3.3.10 showed ~10% retransmits when using uTP.
uTorrent uploading to Deluge also showed ~10% retransmits when using uTP.
uTorrent uploading to Tixati 2.51 also showed retransmits when using uTP, but closer to 0-1%.
uTorrent uploading to another uTorrent showed a tiny retransmit at start but none after that when using uTP.

Something seems horribly wrong with the implementation of uTP in libtorrent!
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.7 installer - Built with MSVC 2015

Post by sledgehammer_999 »

[quote="Switeck"]
Very similar earlier problem still persists, in part:
index.php/topic,3982.msg23615.html#msg23615
Problem still exists of qBT 3.3.10 trying to listen on the wrong port:
(qBT is set to listen on port 65509)

Launch 1:
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/37714
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/37714
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 1:56:07 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 1:56:06 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 1:56:06 AM - qBittorrent v3.3.10 started

Launch 2:
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/38632
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/38632
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 3:17:33 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 3:17:32 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 3:17:32 AM - qBittorrent v3.3.10 started

Launch 3:
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/41692
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/41692
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: UDP/65509
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP_SSL/4433
12/24/2016 7:36:50 AM - qBittorrent is successfully listening on interface 0.0.0.0 port: TCP/65509
12/24/2016 7:36:49 AM - qBittorrent is trying to listen on any interface port: 65509
12/24/2016 7:36:49 AM - qBittorrent v3.3.10 started

What is ODD about the choice of port 41692 is qBT also has ESTABLISHED TCP connections on ports 41690 and 41691:
qbittorrent.exe 3788 TCP 127.0.0.1 41691 127.0.0.1 41690 ESTABLISHED
qbittorrent.exe 3788 TCP 127.0.0.1 41690 127.0.0.1 41691 ESTABLISHED
(I spotted this using both TCP View and netstat -n from command prompt/dos box.)
What are these for?[/quote]

Do you see connections to these ports(or connection attempts) to/from external IPs?

[quote="Switeck"]
(Also odd is I didn't see qbittorrent.exe actually listening on port 4433 in TCP View or netstat -n. Is that only used/present if webui is enabled?)
[/quote]

No port 4433 is used by a libtorrent feature called "SSL torrents". It is enabled by default and the 1.0.x series don't give us a way to disable it BEFORE constructing the session. We disable as soon as we construct the session, but libtorrent creates during construction momentarily. The 1.1.x series give us the ability to disabled during session construction and it is never opened.

[quote="Switeck"]


qBitTorrent 3.3.10 32bit version (which uses libtorrent 1.0.10.0) doesn't receive incoming uTP connections. (I tried using multiple other BT clients.)
Deluge 1.3.13, which also uses libtorrent (1.0.9.0), had no problem receiving uTP connections.
Because I was running multiple BitTorrent clients (using different listening ports for each) on the same computer and I checked the firewall settings repeated (as well as deleting firewall entries for qBT and others!)...I conclude this listening bug is in qBT (rather than in libtorrent), possibly related to the same issue that causes the incorrect listening ports in qBT's logger.

qBT could be coaxed into making OUTGOING uTP connections, so I was able to do additional uTP testing...
uTorrent 2.2.1 uploading to qBT 3.3.10 showed ~10% retransmits when using uTP.
uTorrent uploading to Deluge also showed ~10% retransmits when using uTP.
uTorrent uploading to Tixati 2.51 also showed retransmits when using uTP, but closer to 0-1%.
uTorrent uploading to another uTorrent showed a tiny retransmit at start but none after that when using uTP.

Something seems horribly wrong with the implementation of uTP in libtorrent!
[/quote]

Weird, 32bit version uses the exact same version of libtorrent as the 64bit one. I don't know why utp fails. Does DHT work ok? (both are based on udp).
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by sledgehammer_999 »

Sidenote: Libtorrent switches to TCP if both peers support it. So a connection might start as uTP and then reconnect using TCP.
Switeck

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Switeck »

[quote="sledgehammer_999"][quote="Switeck"]What is ODD about the choice of port 41692 is qBT also has ESTABLISHED TCP connections on ports 41690 and 41691:
qbittorrent.exe 3788 TCP 127.0.0.1 41691 127.0.0.1 41690 ESTABLISHED
qbittorrent.exe 3788 TCP 127.0.0.1 41690 127.0.0.1 41691 ESTABLISHED
(I spotted this using both TCP View and netstat -n from command prompt/dos box.)
What are these for?[/quote]Do you see connections to these ports(or connection attempts) to/from external IPs?[/quote]Not on those ports. Seems like they're just whatever ephemeral ports were next available.
My manual attempts to connect to qBT on port 41692 all failed, as I figured maybe uTP was still "stuck" on that port like TCP was sometimes with qBT v3.3.7.[quote="sledgehammer_999"][quote="Switeck"]qBitTorrent 3.3.10 32bit version (which uses libtorrent 1.0.10.0) doesn't receive incoming uTP connections.
...
Something seems horribly wrong with the implementation of uTP in libtorrent![/quote]Weird, 32bit version uses the exact same version of libtorrent as the 64bit one. I don't know why utp fails. Does DHT work ok? (both are based on udp).[/quote]I didn't bother to test DHT, since I was using local loopback (127.0.0.1) testing. I didn't want "outside" ips and traffic interfering with my LAN/loopback tests -- I was running some more extreme speed tests, which sadly proved nowhere near as extreme as I hoped.
qBT refused to run over 1 MB/sec when using uTP and often averaged closer to 500 KB/sec. This is a single seed to a single peer, both using a ramdrive on the same computer! I'm pretty sure the uTP losses and retransmits caused automatic throttle-backs in speed, as the bandwidth graph was very spikey. uTP over an Ethernet LAN or local loopback has NEVER worked well because it relies on a latency feedback mechanism. Under those conditions, the normal latency is often <100 microseconds not the "expected" 10+ milliseconds of typical internet connections...random disk activities and cpu load-spikes trigger latency jumps that are orders-of-magnitude larger than the latency floor so uTP tends to throttle back extremely aggressively under those conditions if it ever ramps up at all.
When using TCP, qBT peaked just over 140 MB/sec...though I did need to use a file that was almost 2 GB in size to finally hit that speed because the ramp-up wasn't instantaneous. CPU usage was almost certainly the limiting factor/bottleneck, as I saw qBT was using ~36% cpu at peak and uT (which was seeding to it) was ~25% at the same time.[quote="sledgehammer_999"]Sidenote: Libtorrent switches to TCP if both peers support it. So a connection might start as uTP and then reconnect using TCP.[/quote]I ruled that out by forcing uTorrent to ONLY use uTP...requires setting an advanced setting to do it and it's a bitmask of a single byte which you have to enter as a decimal value, so fun! Tixati allowed me to change between supporting TCP, uTP, or both (and still "favoring" one or the other)...so I tested with it as well. Deluge didn't offer a means of disabling uTP or TCP, but defaults to supporting both and tries uTP first it seems. Transmission doesn't seem to support uTP...I tested it also.
I crafted a brutal torrent test that Tixati fails particularly badly because of poor coding in it -- it doesn't like my single ~170 MB file torrent made with 16 KB piece size for some reason, doesn't sustain even 100 KB/sec on it unless I "sneak up to it" by stepping up the upload speed slowly. The I/Os of writing lots of tiny pieces is simply a CPU killer on it.

Just for clarification, the ramdrive's total size is almost 7 GB...I wasn't maxing it out in any way and very unlikely for it to be the bottleneck although an enterprise class PCI-express based SSD might load the CPU less at 100+ MB/sec speeds.
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by sledgehammer_999 »

@Switeck

Can you try the following build? It uses latest libtorrent 1.1.x code. Test if the additional ports problem persists.
I mainly did this build for you in order to do your speed tests. The 1.1.x have threaded IO so you should achieve higher speed peaks and not be CPU limited.

Link x86: http://builds.shiki.hu/temp/qbittorrent ... 46d1fdf.7z
Link x64: http://builds.shiki.hu/temp/qbittorrent ... 46d1fdf.7z
Last edited by sledgehammer_999 on Sat Dec 24, 2016 4:40 pm, edited 1 time in total.
Switeck

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Switeck »

The good news -- this qBT build does accept incoming uTP connections for me!

The bad news -- it struggled to reach 500 KB/sec and still had the 10% loss and resends of uTP packets. (I didn't expect this to be fixed, but others might be more disappointed.)

I spotted this in TCP View and it's still possibly worrisome:
qbittorrent.exe TCP 0.0.0.0 65509 0.0.0.0 0 LISTENING
qbittorrent.exe TCP 127.0.0.1 46805 127.0.0.1 46804 ESTABLISHED
qbittorrent.exe TCP 127.0.0.1 46804 127.0.0.1 46805 ESTABLISHED
qbittorrent.exe UDP 0.0.0.0 65509 * *
qbittorrent.exe UDP 0.0.0.0 46808 * *

Still got the 2 ephemeral ports using 127.0.0.1 to connect to each other. These may be used for something crazy like magnet links...so probably "on purpose".
But the UDP listening on port 46808 looks like trouble!

  uTorrent won't make a connection to qBT on that port:
[2016-12-24 15:23:01]  127.0.0.1:46808 [uTP] Connecting: source: C
[2016-12-24 15:23:10]  127.0.0.1:46808 [uTP] Disconnect: Peer error: offline (timed out)
  ...but it doesn't time out instantly (waited 9 seconds to time out) or return this:
[2016-12-24 15:22:46]  127.0.0.1:46804 [uTP] Connecting: source: C
[2016-12-24 15:22:46]  127.0.0.1:46804 [uTP] Disconnect: Peer error: No connection could be made because the target machine actively refused it.
...like it did for port 46804.

So SOMETHING is listening on port 46808, but probably doesn't handle uTP correctly.
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by sledgehammer_999 »

About unexplained ports: Disable lsd, dht, pex, webui, emdedded tracker. Does anything change?

EDIT: Do they still exist if you disable utp too?
Switeck

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Switeck »

[quote="sledgehammer_999"]About unexplained ports: Disable lsd, dht, pex, webui, emdedded tracker. Does anything change?

EDIT: Do they still exist if you disable utp too?[/quote]I can't disable any of those -- they're already disabled. As too is UPnP/NAT-PMP.
They exist even if I disable uTP.

Even enabling anonymous mode did not help...

Worse still, this happened:
qbittorrent.exe TCP 0.0.0.0 65509 0.0.0.0 0 LISTENING
qbittorrent.exe TCP 127.0.0.1 47405 127.0.0.1 47404 ESTABLISHED
qbittorrent.exe TCP 127.0.0.1 47404 127.0.0.1 47405 ESTABLISHED
qbittorrent.exe UDP 0.0.0.0 1900 * *
qbittorrent.exe UDP 0.0.0.0 65509 * *
qbittorrent.exe UDP 0.0.0.0 47408 * *
qbittorrent.exe UDP 10.0.0.24 47406 * *
qbittorrent.exe UDP 127.0.0.1 47407 * *
qbittorrent.exe UDP 127.0.0.1 1900 * *
qbittorrent.exe UDP 10.0.0.24 1900 * *

qBT is now listening on a LOT of UDP ports for some unknown reason, exactly the opposite behavior of what I'd expect from anonymous mode!
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by sledgehammer_999 »

FYI, I posted to the libtorrent mailing list asking for the unexplained ports and telling them your finding about utp performance. I also linked to your starting post telling them to read the next ones too.
So now, I'll refrain from posting more things to avoid polluting the thread. If you find additional info then feel free to post.
sledgehammer_999
Administrator
Administrator
Posts: 2443
Joined: Sun Jan 23, 2011 1:17 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by sledgehammer_999 »

Final question: Does anything change if you configure a specific interface for qbt to listen to?
Switeck

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Switeck »

[quote="sledgehammer_999"]Final question: Does anything change if you configure a specific interface for qbt to listen to?[/quote]No, I still see all these listening ports in TCP View...and they even take awhile for uTorrent to timeout on when trying to contact them via uTP.

But what does change is I cannot use 127.0.0.1 (+correct listening port) to connect to qBT, since uTorrent only works when trying my LAN ip.
thexfile

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by thexfile »

In this build seeding is an issue now. Builds 3.3.9 and 3.3.7 seeding was never a problem.
Last edited by thexfile on Sun Dec 25, 2016 4:06 pm, edited 1 time in total.
User avatar
Nemo
Administrator
Administrator
Posts: 1730
Joined: Sat Jul 24, 2010 6:24 pm

Re: [official]qBittorrent 3.3.10 installer - Built with MSVC 2015

Post by Nemo »

Whats the problem?
Post Reply