Libtorrent Einstellung download_limit / upload_limit funktioniert nicht

Ich möchte die Beschränkung meiner Download / Upload-Geschwindigkeit in meinem libtorrent Client. Ich benutze hierfür den folgenden Code.

params = { 'save_path': '.', \ 'storage_mode': lt.storage_mode_t.storage_mode_sparse, \ 'ti': info, 'flags': 0x020 } h = ses.add_torrent(params) h.set_download_limit(100) h.set_upload_limit(100) h.resume() 

Es sollte die Daten mit 0,1 kb / sec herunterladen, aber trotzdem laden sie die Daten mit einer Geschwindigkeit von ca. 1500 kb / s herunter.

 100.00% complete (down: 1576.0 kb/s up: 55.0 kB/s) 

Alles, was mir fehlt?

One Solution collect form web for “Libtorrent Einstellung download_limit / upload_limit funktioniert nicht”

Vielleicht sind deine Kollegen auf dem gleichen lokalen Netzwerk wie du selbst. Standardmäßig unterliegen die lokalen Kollegen nicht der Tarifgrenze (wie hier dokumentiert).

Leider ist die Dokumentation, wie man Ratengrenzen für lokale Kollegen anwenden, ein bisschen fehlt. Ich habe versucht, das in dieser Pull-Anfrage zu beheben.

Grundsätzlich, um die globale Rate Grenze gelten für alle Kollegen, unabhängig davon, welche IP sie haben, dies zu tun:

 std::uint32_t const mask = 1 << lt::session::global_peer_class_id; ip_filter f; // for every IPv4 address, assign the global peer class f.add_rule(address_v4::from_string("0.0.0.0") , address_v4::from_string("255.255.255.255") , mask); // for every IPv6 address, assign the global peer class f.add_rule(address_v6::from_string("::") , address_v6::from_string("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff") , mask); ses.set_peer_class_filter(f); 
Python ist die beste Programmiersprache der Welt.