Le client BitTorrent Transmission est disponible en version 4.0.0

Le client BitTorrent Transmission est disponible en version 4.0.0

Le client BitTorrent Transmission est disponible en version 4.0.0

Cette application, bien connue sur Linux pour son interface sobre et sa légèreté, est disponible dans une nouvelle mouture majeure, cette fois pour les trois plateformes principales, sans attendre.

Elle a nécessité plus d’un an de travail et se distingue par un vaste nettoyage de son code (migration de C vers C++, base de code réduite de 18 %), de nombreuses corrections et, bien sûr, de nouvelles fonctions. Cette modernisation lui permet notamment de consommer moitié moins de ressources quand l’application gère un très grand nombre de fichiers torrent.

Transmission 4.0.0 apporte en outre le support du protocole BitTorrent v2, des listes de blocage IPv6 ainsi que des torrents hybrides. Notez que l’on ne peut pas encore créer ces derniers depuis l’application, mais la fonction est prévue pour une prochaine version.

Transmission étant régulièrement le client BitTorrent par défaut dans les distributions Linux, il suffit d’attendre que les dépôts soient mis à jour. Sur macOS et Windows, il faut récupérer l’installeur depuis le site officiel.

Commentaires (36)


Oh bah je vais essayer ça …



que des torrents hybrides.




En quoi consistent les torrents hybrides svp ?


Bonne question.



Voilà, ce que j’ai trouvé :




v1 is the classic torrent file format.
v2 is the new BitTorrent 2.0 file format.
v1 + v2 hybrid is a mix of the two. It is a v2 torrent which is backwards compatible with v1.




Sans garantie, mais ça a du sens, expliqué comme ça.


fred42

Bonne question.



Voilà, ce que j’ai trouvé :




v1 is the classic torrent file format.
v2 is the new BitTorrent 2.0 file format.
v1 + v2 hybrid is a mix of the two. It is a v2 torrent which is backwards compatible with v1.




Sans garantie, mais ça a du sens, expliqué comme ça.


Merci, je n’avais pas eu connaissance effectivement d’une version 2 du protocole BitTorrent dont le principal changement est le remplacement de SHA-1 par SHA-256 pour le hachage.



Un billet assez complet ici qui mentionne également les torrents hybrides : https://blog.libtorrent.org/2020/09/bittorrent-v2/


Gorom

Merci, je n’avais pas eu connaissance effectivement d’une version 2 du protocole BitTorrent dont le principal changement est le remplacement de SHA-1 par SHA-256 pour le hachage.



Un billet assez complet ici qui mentionne également les torrents hybrides : https://blog.libtorrent.org/2020/09/bittorrent-v2/


Me semble qu’il y a un exploit par collision sur la v1 du protocole (qui est “résolu” en v2) + d’autre amélioration.


Kazer2.0

Me semble qu’il y a un exploit par collision sur la v1 du protocole (qui est “résolu” en v2) + d’autre amélioration.


Oui, c’est la possibilité de faire des collisions qui a décidé BitTorrent de passer de SHA1 à SHA2 (v1 à v2).
Google avait montré qu’ils avaient réussi à faire 2 PDF avec la même empreinte de hachage en SHA1.



Mais, cela aurait quand même été compliqué à mettre en œuvre sur torrent et ce n’est pas forcément grave.
Si comme Vincent (voir screenshot), tu télécharges des iso de Linux, tu vérifies ton ISO avant de l’utiliser grâce au hash disponible sur le site de la distro.



Si tu télécharges des films de vacances (expression consacrée), il doit y avoir un degré de complexité supplémentaire pour faire une collision sur une vidéo valide par rapport à un PDF.



L’autre ajout important de la v2 de BitTorent, comme dit le premier lien : le calcul d’empreinte s’effectue désormais en mode bloc sous la forme d’un arbre de hachage dit « de Merkle ». Grâce à ce système, les clients BitTorrent pourront détecter plus rapidement la présence de fausses données.



Je pense que ce point est bien plus important.



Cette application, bien connue sur Linux pour son interface sobre et sa légèreté,




Perso je trouve qBittorrent bien plus sobre et leger.
Pour moi l’avantage de Transmission c’est qu’il est plus complet, pas plus sobre et léger.


Transmission est plus sobre, dans le sens où il y a moins de contrôles apparents, moins de couleurs, pas de barre latérale, l’interface se concentre sur la liste des torrents avec quelques boutons. Et plus léger il me semble bien, comme à chaque fois que j’ai regardé (mais on est d’accord, ce n’est pas une preuve absolue).


Pour les perfs je sais pas, mais pour les fonctionnalités, qBittorrent est beaucoup, beaucoup plus complet (et l’interface plus chargée mais ça c’est un détail). J’ai toujours considéré Transmission comme plus simpliste. C’est encore plus flagrant sur l’interface d’ailleurs (quelqu’un a dit seedbox ?), qui limite encore plus l’accès aux fonctionnalités les plus avancées…



Cela étant dit, peut-être que cette 4.0 change la donne, je n’ai pas encore testé.


Bjr
Savez vous sit Qbitorrent utilise le protocole V2?


Oui, je le sais.



La réponse se trouve en comprenant ce qu’est ce client, en particulier sur quel logiciel torrent il s’appuie.



#apprendreàpécher



balmaresco a dit:


Bjr Savez vous sit Qbitorrent utilise le protocole V2?




un indice au bas de votre écran



https://github.com/qbittorrent/qBittorrent/issues/15109



balmaresco a dit:


Bjr Savez vous sit Qbitorrent utilise le protocole V2?




Sur la page de téléchargement de qbittorent (https://www.qbittorrent.org/download.php) il faut sélectionner la version “lt20” qui contient libtorrent2.0 et qui est compatible avec le protocole v2.



Vincent_H a dit:


Transmission est plus sobre, dans le sens où il y a moins de contrôles apparents, moins de couleurs, pas de barre latérale, l’interface se concentre sur la liste des torrents avec quelques boutons. Et plus léger il me semble bien, comme à chaque fois que j’ai regardé (mais on est d’accord, ce n’est pas une preuve absolue).




je pense que la mémoire consommée c’est le cache de qb. Pour des raisons historiques (windows !) qb gère son propre cache. C’est pour cela qu’il a (avait ?) parfois de meilleurs taux de transfert que Transmission.


quelqu’un qui a maj vers transmission 4.0.0 peut-il me confirmer si transgui fonctionne toujours avec?



fred42 a dit:


Mais, cela aurait quand même été compliqué à mettre en œuvre sur torrent et ce n’est pas forcément grave. Si comme Vincent (voir screenshot), tu télécharges des iso de Linux, tu vérifies ton ISO avant de l’utiliser grâce au hash disponible sur le site de la distro.




Je n’ai jamais constaté de différence, d’ailleurs ça me paraît logique, car si quelqu’un pirate le site et modifie l’image ISO, il modifiera aussi le hash.
Quant à modifier les données pendant le téléchargement, je n’ai encore jamais entendu parler d’un exploit de ce genre (techniquement c’est possible, mais il faut avoir des accès particuliers).


On est dans un cas où tu télécharges en P2P et que tu vérifies sur le site. C’est différent de ton cas où tout se passe sur le site.



Br31zh a dit:


Pour les perfs je sais pas, mais pour les fonctionnalités, qBittorrent est beaucoup, beaucoup plus complet




De quoi as-tu besoin de plus que ce que permet Transmission ?
(j’utilise Transmission)


Alors, je lance Transmission (3.0 pour l’instant, si la 4.0 ajoute des trucs que j’estime manquants, tant mieux) juste pour vérifier, donc je rate peut-être des trucs, mais à priori :




  1. Les tags et catégories. S’il y en a c’est clairement pas évident.

  2. Pas d’option pour pré-allouer l’espace disque ?

  3. Impossible de mettre illimité sur le nombre de pairs, et système de file d’attente obligatoire ? Pas critique cela dit (au pire tu mets des nombres ridiculement gigantesques et t’es large quoi).

  4. À priori impossible d’ajouter automatiquement une liste de trackers à tout nouveau torrent public.

  5. Pareil, à priori on ne peut pas forcer l’annonce à tous les trackers, à voir comment il se comporte dans le cas où il y a plusieurs « niveaux » de trackers.

  6. Pas de téléchargement automatique sur RSS ? Je suppose que tu peux utiliser un soft tiers, mais l’avoir intégré est pratique chez qBittorrent quand même.

  7. Impossible de le limiter à une seule interface d’écoute (cas du VPN) ? Là aussi ça doit pouvoir se régler via le système, mais bon.

  8. Revérification complète du torrent une fois le téléchargement terminé absente, pas indispensable mais m’a été utile quelques fois.

  9. Diverses options avancées de la libttorrent-rasterbar qui sont pas forcément indispensables, mais pour lesquelles j’ai quand même fait plusieurs modifications sur mes machines.



Bref, c’est du détail pour plusieurs de ces fonctionnalités (d’autres comme les premières sont indispensables…), mais j’apprécie de les avoir. Transmission offre clairement un contrôle beaucoup moins fin.


Je crois comprendre que torrent v2 permet aussi de partager des fichiers entre torrents?
Si je comprends bien la section “per-file hash trees” https://blog.libtorrent.org/2020/09/bittorrent-v2/



Ex si j’ai un torrent torrent 1 qui contient A, B, C, et un 2ème torrent 2 qui contient juste A, le fichier A pourra être téléchargé depuis l’un ou l’autre des torrents.



Corrigez-mois si je me trompe, mais c’est comme ça que je comprends.



Br31zh a dit:


Alors, je lance Transmission (3.0 pour l’instant, si la 4.0 ajoute des trucs que j’estime manquants, tant mieux) juste pour vérifier, donc je rate peut-être des trucs, mais à priori :




  1. Les tags et catégories. S’il y en a c’est clairement pas évident.

  2. Pas d’option pour pré-allouer l’espace disque ?
    [..]

  3. Diverses options avancées de la libttorrent-rasterbar qui sont pas forcément indispensables, mais pour lesquelles j’ai quand même fait plusieurs modifications sur mes machines.




Merci pour cette réponse détaillée.
Ça ne rigole pas je vois :-) .
Les tags et catégories ça ne me parle pas.
Pré-allouer l’espace disque, ça sert à quoi ?




fred42 a dit:


On est dans un cas où tu télécharges en P2P et que tu vérifies sur le site. C’est différent de ton cas où tout se passe sur le site.




Ah oui. Note que je télécharge en P2P la plupart du temps :-) .



Br31zh a dit:




  1. Pas d’option pour pré-allouer l’espace disque ?

  2. Impossible de le limiter à une seule interface d’écoute (cas du VPN) ? Là aussi ça doit pouvoir se régler via le système, mais bon.

  3. Revérification complète du torrent une fois le téléchargement terminé absente, pas indispensable mais m’a été utile quelques fois.

  4. Diverses options avancées de la libttorrent-rasterbar qui sont pas forcément indispensables, mais pour lesquelles j’ai quand même fait plusieurs modifications sur mes machines.



Bref, c’est du détail pour plusieurs de ces fonctionnalités (d’autres comme les premières sont indispensables…), mais j’apprécie de les avoir. Transmission offre clairement un contrôle beaucoup moins fin.





  1. Je crois que c’est le cas par défaut, l’option existe dans la config JSON en tout cas

  2. Les options bind-addr existent dans la config JSON, peut-être pas exposées en GUI

  3. C’est possible dans le menu contextuel de chaque torrent sur la webGUI, ça m’étonnerait que ça ne soit pas présent sur la GUI classique



Pour moi, Transmission est parfait : je l’utilise en seedbox sur un dédié, et comme j’ai toujours une connexion pourrie, ça me permet de maintenir un ratio sur des trackers privés tout en téléchargeant à mon rythme en HTTP de mon côté.



C’est vrai qu’il est simpliste, c’est un logiciel de la philosophie GNOME : ça doit fonctionner par défaut pour Mme MICHU qui a ouvert un torrent sans même comprendre ce qu’elle a fait, et ça le fait bien. Les power-users seront ennuyés par le manque de fonctionnalités apparent et devront se résoudre à éditer la configuration à la main ou à interfacer avec d’autres outils en CLI, je comprends qu’on puisse lui préférer d’autres solutions plus complètes out-of-the-box.



Personnellement, les clients plus complets à la Deluge/qBitTorrent me semblent au contraire bourrés d’options inutiles (planification des téléchargements, ajouts automatiques via RSS, etc.) pour moi, mais je conçois qu’elles fassent le bonheur de certains.



Br31zh a dit:


Revérification complète du torrent une fois le téléchargement terminé absente, pas indispensable mais m’a été utile quelques fois.




Cette fonction existe dans Transmission, je vérifie régulièrement mes ISO téléchargées comme ça.


Je voulais dire, de façon automatique. Sur ma seedbox, quand le torrent est arrivé à 100 %, qBittorrent refais une vérif complète, ça m’a sauvé de quelques corruptions.



Les catégories j’en abuse : https://fichiers.breizh.pm/Images/Screenshots/2023-02-11-001954_287x1008_scrot.png avec 442 torrents c’est assez indispensable xD



Pré-allouer l’espace disque permet d’attribuer directement l’espace nécessaire aux fichiers avant de les DLs entièrement. Ensuite le client rempli ce fichier. Sur un disque mécanique, ça permet d’éviter la fragmentation (sur un SSD osef), particulièrement quand tu as tendance à remplir tes disques. Et au passage, ça permet de mieux anticiper l’espace restant (je frôle constamment les 100 % sur ma seedbox, j’apprécie de voir le torrent planter toute de suite et pas au plein milieu du téléchargement ^^’).



C’est un très bon client torrent, oui, mais on a tous des besoins différents. J’avais besoin de plus de fonctionnalités que ce que propose Transmission. J’utilise qBittorrent à la fois sur mon PC et en seedbox comme tu le fais (ce qui m’a permis d’avoir un ratio tout à fait confortable d’ailleurs).



Et son côté simple est idéal dans certains cas, oui, qBittorrent est une usine à gaz en comparaison.



Le fait d’avoir le choix est excellent, chacun a l’outil adapté à ses besoins. J’étais juste surpris parce qu’au début de cet échange il a été avancé que qBittorrent semblait plus simple et léger que Transmission, et si je préfère qBittorrent personnellement, je suis bien obligé de dire que c’est le contraire : Transmission est plus léger, mais qBittorrent est plus complet (sans pour autant aller trifouiller de la conf cachée ou utiliser des outils tiers).


Br31zh

Je voulais dire, de façon automatique. Sur ma seedbox, quand le torrent est arrivé à 100 %, qBittorrent refais une vérif complète, ça m’a sauvé de quelques corruptions.



Les catégories j’en abuse : https://fichiers.breizh.pm/Images/Screenshots/2023-02-11-001954_287x1008_scrot.png avec 442 torrents c’est assez indispensable xD



Pré-allouer l’espace disque permet d’attribuer directement l’espace nécessaire aux fichiers avant de les DLs entièrement. Ensuite le client rempli ce fichier. Sur un disque mécanique, ça permet d’éviter la fragmentation (sur un SSD osef), particulièrement quand tu as tendance à remplir tes disques. Et au passage, ça permet de mieux anticiper l’espace restant (je frôle constamment les 100 % sur ma seedbox, j’apprécie de voir le torrent planter toute de suite et pas au plein milieu du téléchargement ^^’).



C’est un très bon client torrent, oui, mais on a tous des besoins différents. J’avais besoin de plus de fonctionnalités que ce que propose Transmission. J’utilise qBittorrent à la fois sur mon PC et en seedbox comme tu le fais (ce qui m’a permis d’avoir un ratio tout à fait confortable d’ailleurs).



Et son côté simple est idéal dans certains cas, oui, qBittorrent est une usine à gaz en comparaison.



Le fait d’avoir le choix est excellent, chacun a l’outil adapté à ses besoins. J’étais juste surpris parce qu’au début de cet échange il a été avancé que qBittorrent semblait plus simple et léger que Transmission, et si je préfère qBittorrent personnellement, je suis bien obligé de dire que c’est le contraire : Transmission est plus léger, mais qBittorrent est plus complet (sans pour autant aller trifouiller de la conf cachée ou utiliser des outils tiers).


Très sympa ton vélo enguirlandé :mdr:



Br31zh a dit:


Je voulais dire, de façon automatique. Sur ma seedbox, quand le torrent est arrivé à 100 %, qBittorrent refais une vérif complète, ça m’a sauvé de quelques corruptions.




Il me semble que tous les clients torrents contrôlent l’intégrité du fichier une fois la fin du téléchargement.



Je me demande si LibreOffice n’utilise pas les torrents hybrides: Transmission plante quand j’utilise le torrent proposé par défaut, il faut alors que je récupère la version avec uniquement des trackers.


Bon, Transmission ne fonctionne plus depuis que je suis passé sur cette version 4. Les téléchargements n’aboutissent jamais et des fichiers se retrouvent corrompus 😅



Br31zh a dit:


Les catégories j’en abuse : https://fichiers.breizh.pm/Images/Screenshots/2023-02-11-001954_287x1008_scrot.png avec 442 torrents c’est assez indispensable xD




Pour ma part même quand j’ai 20-30 téléchargements en cours, le titre est suffisamment clair pour que je n’aie pas besoin de catégorie.




Pré-allouer l’espace disque permet d’attribuer directement l’espace nécessaire aux fichiers avant de les DLs entièrement. Ensuite le client rempli ce fichier. Sur un disque mécanique, ça permet d’éviter la fragmentation (sur un SSD osef)




J’ai toujours en partie des disques magnétiques, sous Linux sur du ext2/3/4 je n’ai jamais noté de fragmentation gênante, à vrai dire la fragmentation est un non-sujet sous Linux (contrairement à ce qui a lieu sous Windows, du moins pendant très longtemps). Ça surprend toujours les windowsiens.




Et au passage, ça permet de mieux anticiper l’espace restant (je frôle constamment les 100 % sur ma seedbox, j’apprécie de voir le torrent planter toute de suite et pas au plein milieu du téléchargement ^^’).




Oui ça je comprends :-) .


Le problème des catégories, c’est pour m’y retrouver sur le disque (ça fait des sous-dossier). Et puis même, voir les 4 saisons d’un anime ou les 10 albums d’un artiste je trouve ça commode (surtout si le nommage des torrents est pas consistant, ce qui est courant aussi).



Et quand tu as beaucoup de gros fichiers (au pif, films et séries), qui se téléchargent en même temps, et un disque bien rempli, le système anticipe pas forcément super bien la taille des fichiers, et place le début de l’un au milieu de l’autre qui n’est pas fini de DL (et du coup ce dernier se retrouve coupé en deux). La fragmentation est certes mieux gérée sur ext4 (et Btrfs, que j’utilise) que sur NTFS, mais elle reste présente. Et sur un mécanique tu le sens passer.



Mon disque descends presque jamais sous les 90 % utilisés, et touche souvent les 99,5 et plus (parfois ça se joue à quelques méga-octets…). Du coup crois-moi, ça fragmente xD


Le problème de Transmission c’est sûr l’on ne peut pas supprimer les trackers associés au . torrent.
Chose que fait qBitorrent.
Mais j’ai quand même hâte de voir les améliorations de Transmission.



(reply:2119672:Pinailleur) Et la palme du hors-sujet reviens à… Pinailleur ! :transpi:



:langue:



Br31zh a dit:


(surtout si le nommage des torrents est pas consistant cohérent, ce qui est courant aussi).




:cap:
Confusion que je vois régulièrement en informatique avec l’anglais “consistent” qui est un faux-ami.




Et quand tu as beaucoup de gros fichiers, qui se téléchargent en même temps, et un disque bien rempli, le système anticipe pas forcément super bien la taille des fichiers, et place le début de l’un au milieu de l’autre qui n’est pas fini de DL.




Oui bien sûr, mais ce n’est pas gênant. Les données sont vite un peu entrelacées sur un disque où il y a de l’activité, même le disque système. La granularité de l’entrelacement, si elle n’est pas trop fine, ne ralentit pas vraiment (tant que la tête de disque a le temps en ~10 ms de lire d’un coup à un endroit).




La fragmentation est certes mieux gérée sur ext4 (et Btrfs, que j’utilise) que sur NTFS, mais elle reste présente. Et sur un mécanique tu le sens passer.




Ben non. Sur des serveurs Linux qui tournent pendant des années, c’est pas vraiment sensible.




Mon disque descends presque jamais sous les 90 % utilisés, et touche souvent les 99,5 et plus (parfois ça se joue à quelques méga-octets…). Du coup crois-moi, ça fragmente xD




Ça doit fragmenter de toutes façons :-) .
Je tâche de rester sous 90 % et à 95 % je lance un ménage en priorité (quel que soit le disque, système ou pas).


Dans le cadre de mon taf, je touche à quelques centaines de serveurs Linux en ext4… (de moins en moins sur disque mécanique cela dit), et effectivement, sur ces serveurs, la fragmentation est rarement un problème. L’usage importe énormément (et le remplissage du disque joue pas mal aussi, puisque quand il te reste 10 Gio sur 2 Tio, t’as quasiment aucune chance que ce soit 10 Gio continus sur le disque… le système mets les données où il peut).



Par contre, j’ai constaté sur ma seedbox, et sur un laptop avec un disque mécanique, que les performances du disque s’écroulent assez vite. Et qu’une vidange du disque et un rebalance / defragment de btrfs aide beaucoup. Sur le serveur j’ai limité la casse en partitionnant en dur / et /home de façon à éviter que le système se retrouve éparpillé dans les données de torrent.



Sur le laptop c’est pas le cas (seulement des sous-volumes) et pour le coup c’est devenu inutilisable.



Dans l’exemple, j’ai parlé de deux fichiers, mais faut voir que j’ai des fichiers qui sont littéralement éparpillés. Je me demande si y’a moyen de cartographier le disque, un peu comme ça : https://github.com/knorrie/btrfs-heatmap mais avec la possibilité de voir les positions d’un fichier en particulier. Ça serait intéressant.


Br31zh

Dans le cadre de mon taf, je touche à quelques centaines de serveurs Linux en ext4… (de moins en moins sur disque mécanique cela dit), et effectivement, sur ces serveurs, la fragmentation est rarement un problème. L’usage importe énormément (et le remplissage du disque joue pas mal aussi, puisque quand il te reste 10 Gio sur 2 Tio, t’as quasiment aucune chance que ce soit 10 Gio continus sur le disque… le système mets les données où il peut).



Par contre, j’ai constaté sur ma seedbox, et sur un laptop avec un disque mécanique, que les performances du disque s’écroulent assez vite. Et qu’une vidange du disque et un rebalance / defragment de btrfs aide beaucoup. Sur le serveur j’ai limité la casse en partitionnant en dur / et /home de façon à éviter que le système se retrouve éparpillé dans les données de torrent.



Sur le laptop c’est pas le cas (seulement des sous-volumes) et pour le coup c’est devenu inutilisable.



Dans l’exemple, j’ai parlé de deux fichiers, mais faut voir que j’ai des fichiers qui sont littéralement éparpillés. Je me demande si y’a moyen de cartographier le disque, un peu comme ça : https://github.com/knorrie/btrfs-heatmap mais avec la possibilité de voir les positions d’un fichier en particulier. Ça serait intéressant.


J’ai été tenté parfois d’utiliser ReiserFS (il y a longtemps) ou btrfs en test, mais je suis resté sur ext4 car ça marche bien pour les usages courants (et c’est ce que disent les benchs depuis toujours, sauf micro-benchmark), en exploitant bien les disques magnétiques (pour les SSD le FS n’a guère plus d’importance il me semble, sauf en empreinte CPU peut-être).


J’étais sur Transmission avant, il me manquait quelques options à l’époque.



Ca fait 2 ans que je suis passé sur Deluge. ça fait le taf correctement.


Fermer