3 torrent \- bittorrent client
32 BitTorrent is a protocol for efficient file distribution
33 over the internet. Files are split into small pieces
34 that are then downloaded by clients in random order.
35 As soon as a client completes a piece, it makes the piece
36 available for others to download.
38 To find other clients (peers), a tracker-server is
41 Before files can be transmitted, a torrent-file needs
42 to be created describing the pieces of the files and
43 other meta-data like network addresses of the trackers.
49 reads the file given at the final
51 argument (or standard-input when omitted) and writes
52 a torrent file to standard-output and exits.
55 should be given with the
57 option in that case. A list of trackers can be obtained
58 on the web, see the examples below.
60 If the files in the torrent are also available from a url, a
62 can be passed with the
66 ends with a slash, the filename, from the torrent, concatenated
67 with the url forms the target url.
73 downloads the files that are described in the torrent-file
76 argument to the current working directory. If no
78 is given, the torrent is read from standard-input.
80 Normally, the program exits immediately after all pieces
84 option causes it to keep running and serve the remaining
85 clients (also known as seeding).
87 Trackers use a subset of the HTTP protocol, so an
90 mountpoint can be given with the
99 to list the files in the torrent-file before downloading.
103 option produces verbose debug output to standard-error.
105 To monitor the download progress, the
107 option can be given to cause the completed and total number of
108 pieces written as a line of text to standard-output in one
113 option allows you to set the 20-byte
115 that is sent to trackers and peers. If less than 20 bytes, the
117 will be padded on the right with random ASCII numbers. This is
118 useful to fool trackers that filter clients based on the
122 Create new torrent file
124 ip/torrent -t http://exodus.desync.com/announce \\
125 -c 9atom.iso >9atom.torrent
128 Download the latest iso file of the distribution
131 hget http://r-36.net/9front/9front.iso.bz2.torrent | \\
133 aux/statusbar 'download...'
136 Get list of public alive trackers to choose from
138 hget http://www.trackon.org/api/live
142 .B /sys/src/cmd/ip/torrent.c
148 first appeared in 9front (October, 2011).