Download a magnet link if available. These files are slightly different than a standard torrent file. They match content based on a unique identifier that can then be accessed without the use of central trackers. A magnet link is a simple text line, and you don’t need to download a torrent file.
You'll need a free torrent client if you want to download files over the BitTorrent network. Once you've located a torrent file from a torrent website, you'll need some way to download it — and that's where a torrent client becomes necessary.
There are several different kinds of free torrent clients. Some torrent clients have more features than others and some even run from a website, meaning you don't need to install any software at all.
Below is an updated list of the best free torrent programs and web services available online. Use any of these clients with your torrent files to download content over the BitTorrent network.
While these programs are free and legal to use, it doesn't mean the actual content you're downloading via the torrent is legally available in this way. You should be familiar with the copyright laws in your country before using a torrent client to download movies, music, software programs, etc.
If you're not sure about the legality of downloading movies or music via torrents, please know that there are plenty of places where you can download movies for free, legally. There are also legal methods to getting free music, like with free music streaming services, free online radio stations, and websites that offer free music downloads.
of 09
uTorrentWhat We Like
What We Don't Like
uTorrent is one of the more popular free torrent clients. The installer size is tiny and only a fraction of system resources are used when the program is running.
You can subscribe to RSS feeds in uTorrent to automatically download new torrent items that are pushed through the feed.
uTorrent Remote is a feature that comes built-in that allows remote monitoring and administration of your uTorrent client. You can add, pause, and delete torrents from any browser or Android device.
This free torrent client can be installed on Windows, Mac, and Linux systems, as well as Android devices.
Android
of 09
FileStream.meWhat We Like
What We Don't Like
FileStream.me is another online torrent client that works by entering torrent links or uploading torrent files into your account and then having FileStream.me upload the files for you so you can then download them through your browser.
The free version of FileStream.me is ad supported, limits torrents to 200 MB for each file, gives you three days to download your torrents, can hold up to 200 GB of data, can fetch two torrents at once, and might restrain your download speed if you're downloading lots of files.
However, it does hide your IP address, let you resume downloads, allows streaming video and audio files, offers an Android client, and doesn't limit your monthly access.
Since FileStream.me runs from a browser, you can use it to download torrents on any OS that supports a modern web browser.
of 09
ZBIGZWhat We Like
What We Don't Like
ZBIGZ is similar to Filestream in that it downloads and seeds torrents for you and then lets you download the files as regular HTTP data. Because it works this way, it may be preferred if your ISP is restricting your access to torrent downloads.
Among other limitations, ZBIGZ allows your torrents to be no larger than 1 GB. Plus, your download speeds are topped off at a mere 150 KB/s.
The ZBIGZ online torrent client works for any operating system that can load the webpage, including Windows, macOS, and Linux.
of 09
BitLordWhat We Like
What We Don't Like
You can password protect the BitLord program, stream video/audio before the download is complete, and search for torrents inside the program without leaving the client.
You can also add RSS feeds to BitLord to help keep track of new torrent releases.
BitLord is a free torrent downloader for Windows and macOS.
of 09
VuzeWhat We Like
What We Don't Like
Another free torrent program is Vuze (formerly Azureus). There are tons of awesome features in this program, such as media playback support and a built-in browser for searching for torrents.
Vuze lets you control its functions from a browser or desktop client.
Cassidy am to pm download full. A folder that connects directly to iTunes is included in Vuze so that you can drag downloaded media into it to include them in your iTunes library.
Vuze can automatically hibernate your PC, shut it down, or run a program when downloading or seeding is finished.
The Vuze torrent client can be installed for Windows, Mac, and Linux.
of 09
FrostWireWhat We Like
What We Don't Like
FrostWire can search for torrent files on several websites at once, with available filters to narrow down results by file size and seed count.
There are also tons of Internet radio stations included with FrostWire with the ability to add custom streams.
In addition to using it on Windows, macOS, or Ubuntu OS, a FrostWire app is available for other devices, too, like Android. If on the web, you can chat with other FrostWire users through their community chat room.
of 09
DelugeWhat We Like
What We Don't Like![]()
Deluge is a pretty simple, free torrent client. You can adjust the max upload slots and speeds, as well as download speeds and encryption.
There are plenty of plugins you can grab for expanding Deluge's settings. There are plugins for an email notifier, scheduler, web interface, stats, auto RSS downloader, and many others.
Deluge is available for many Linux distributions along with macOS and Windows.
of 09
BitCometWhat We Like
![]()
BitComet is a free torrent program with remote access and virus scanning.
There are advanced options like scheduled bandwidth limits, long-term seeding, and CometID VIP Acceleration.
BitComet can be configured to auto shut down, reboot, hibernate, or sleep when all downloads are complete, which is a useful function.
You can install BitComet on Windows computers only.
of 09
qBittorrentWhat We Like
What We Don't Like
qBittorent has a clean interface with a password protection option, built-in RSS reader and web browser, web interface for remote control, and many detailed advanced options like anonymous mode and defining a particular network interface for transmissions.
Even with the advanced features, qBittorrent is easy to use and isn't confusing in the slightest.
For the first time I used a magnet link. Curious about how it works, I looked up the specs and didn't find any answers. The wiki says
xt means 'exact topic' and is followed by the format (btih in this case) with a SHA1 hash. I saw base32 mentioned, knowing it's 5 bits per character and 32 characters, I found it holds exactly 160bits, which is exactly the size of the SHA1.
There's no room for an IP address or anything, it's just a SHA1. So how does the BitTorrent client find the actual file? I turned on URL Snooper to see if it visits a page (using TCP) or does a lookup or the like, but nothing happened. I have no idea how the client finds peers. How does this work?
Also, what is the hash of? Is it a hash of an array of all the file hashes together? Maybe it's a hash of the actual torrent file required (stripping certain information)?
In a VM, I tried a magnet link with uTorrent (which was freshly installed) and it managed to find peers. Where did the first peer come from? It was fresh and there were no other torrents.
user34537
6 Answers
A BitTorrent magnet link identifies a torrent using1 a SHA-1 or truncated SHA-256 hash value known as the 'infohash'. This is the same value that peers (clients) use to identify torrents when communicating with trackers or other peers. A traditional .torrent file contains a data structure with two top-level keys:
announce , identifying the tracker(s) to use for the download, and info , containing the filenames and hashes for the torrent. The 'infohash' is the hash of the encoded info data.
Some magnet links include trackers or web seeds, but they often don't. Your client may know nothing about the torrent except for its infohash. The first thing it needs to is find other peers who are downloading the torrent. It does this using a separate peer-to-peer network2 operating a 'distributed hash table' (DHT). A DHT is a big distributed index which maps torrents (identified by infohashes) to lists of peers (identified by IP address and ports) who are participating in a swarm for that torrent (uploading/downloading data or metadata).
The first time a client joins the DHT network it generates a random 160-bit ID from the same space as infohashes. It then bootstraps its connection to the DHT network using either hard-coded addresses of clients controlled by the client developer, or DHT-supporting clients previously encountered in a torrent swarm. When it wants to participate in a swarm for a given torrent, it searches the DHT network for several other clients whose IDs are as close3 as possible to the infohash. It notifies these clients that it would like to participate in the swarm, and asks them for the connection information of any peers they already know of who are participating in the swarm.
When peers are uploading/downloading a particular torrent, they try to tell each other about all of the other peers they know of that are participating in the same torrent swarm. This lets peers know of each other quickly, without subjecting a tracker or DHT to constant requests. Once you've learned of a few peers from the DHT, your client will be able to ask those peers for the connection information of yet more peers in the torrent swarm, until you have all of the peers you need.
Finally, we can ask these peers for the torrent's
info metadata, containing the filenames and hash list. Once we've downloaded this information and verified that it's correct using the known infohash , we're in practically the same position as a client that started with a regular .torrent file and got a list of peers from the included tracker.
The download may begin.
1 The infohash is typically hex-encoded, but some old clients used base 32 instead. v1 (
urn:btih: ) uses the SHA-1 digest directly, while v2 (urn:bimh: ) adds a multihash prefix to identify the hash algorithm and digest length.2 There are two primary DHT networks: the simpler 'mainline' DHT, and a more complicated protocol used by Azureus. 3 The distance is measured by XOR. Further Reading
UserUser
Peer discovery and resource discovery (files in your case) are two different things.
I am more familiar with JXTA but all peer to peer networks work on the same basic principles.
The first thing that needs to happen is peer discovery.
Peer Discovery
Most p2p networks are 'seeded' networks: when first starting a peer will connect to a well-known (hard-coded) address to retrieve a list of running peers. It can be direct seeding like connecting to
dht.transmissionbt.com as mentioned in another post or indirect seeding as usually done with JXTA where the peer connects to an address that only delivers a plain text list of other peers network addresses.
Once connection is established with the first (few) peer(s), the connecting peer performs a discovery of other peers (by sending requests out) and maintains a table of them. Since the number of other peers can be huge, the connecting peer only maintains part of a Distributed Hash Table (DHT) of the peers. The algorithm to determine which part of the table the connecting peer should maintain varies depending on Network. BitTorrent uses Kademlia with 160 bit identifiers/keys.
Resource Discovery
Once a few peers have been discovered by the connecting peer, the latter sends a few requests out for discovery of resources to them. Magnet links identifies those resources and are built in such a way that they are a 'signature' for a resource and guarantee that they uniquely identify the requested content among all the peers.The connecting peer will then send a discovery request for the magnet link/resource to peers around it. The DHT is built in such a way that it helps determine which peers should be asked first for the resource (read on Kademlia in Wikipedia for more). If the requested peer does not hold the requested resource it will usually 'pass on' the query to additional peers fetched from its own DHT.
The number of 'hops' the query can be passed on is usually limited; 4 is an usual number with JXTA type networks.
When a peer holds the resource, it replies with its full details. The connecting peer can then connect to the peer holding the resource (directly or via a relay - I won't go into details here) and start fetching it.
Resources/Services in P2P networks are not directly attached to network addresses: they are distributed and that is the beauty of these highly scalable networks.
Bruno GriederBruno Grieder
I was curious by the same question myself. Reading the code for transmission, I found the following in
libtrnasmission/tr-dht.c :
How To Download Torrent Without Magnet Link
It tries that 6 times, waiting 40(!) seconds between tries. I guess you can test it by deleting the config files (
~/.config/transmission on unix), and blocking all communication to dht.transmissionbt.com , and see what happens (wait 240 seconds at least).
So it appears the client has a bootstrap node built in to start with. Of course, once it has gotten into the network, it doesn't need that bootstrap node anymore.
yhageryhager
I finally found specification. For the first time google didnt help. (wiki linked to bittorrent.com which is the main site. I Clicked the developers link, notice the bittorrent.org tab on the right then it was easy from there. Its hard finding links when you have no idea what they are labeled and many clicks away).
It seems like all torrents have a network of peers. You find peers from trackers and you keep them between sessions. The network allows you to find peers and other things. I havent read how its used with magnet links but it seems like it is undefined how a fresh client find peers. Perhaps some is baked in, or they use their home server or known trackers embeded into the client to get the first peer in the network.
user34537
When I started answering your question, I didn't realize you were asking how the magnet scheme works. Just thought you wanted to know how the parts relevant to the bittorrent protocol were generated.
The hash listed in the magnet uri is the torrent's info hash encoded in base32. The info hash is the sha1 hash of the bencoded info block of the torrent.
This python code demonstrates how it can be calculated.
I wrote a (very naive) C# implementation to test this out since I didn't have a bencoder on hand and it matches what is expected from the client.
As I understand it, this hash does not include any information on how to locate the tracker, the client needs to find this out through other means (the announce url provided). This is just what distinguishes one torrent from another on the tracker.
How To Download Torrent Without Using Magnet For Mac
Everything related to the bittorrent protocol still revolves around the tracker. It is still the primary means of communication among the swarm. The magnet uri scheme was not designed specifically for use by bittorrent. It's used by any P2P protocols as an alternative form of communicating. Bittorrent clients adapted to accept magnet links as another way to identify torrents that way you don't need to download .torrent files anymore. The magnet uri still needs to specify the
tr acker in order to locate it so the client may participate. It can contain information about other protocols but is irrelevant to the bittorrent protocol. The bittorrent protocol ultimately will not work without the trackers.
Jeff MercadoJeff Mercado
the list of peers are probably populated from the torrent that upgrades the client (e.g. there's a torrent for utorrent that upgrades it). as long as everyone's using the same client, it should be good because you have no choice but to share the upgrade.
Pirate Bay
MoeMoe
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |