Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Table of Contents
The BiglyBT Distributed Database, or DHT as it is also known, is used for many features in the client. It provides a relatively resilient way to store small amounts of information about things like torrents in a distributed manner. Here are some of its uses:
- Decentralized tracking - for non-private torrents that you are downloading the seeds and peers in the swarm locate each other without the need for a centralized tracker by registering their presence in the DHT against the torrent.
- Magnet downloads - when you use a magnet link to download a torrent this is mediated by the DHT.
- Subscriptions - links between torrents and the subscriptions (e.g. RSS feeds) that provided them.
- Ratings and comments - if you use the ratings plugin supplied with BiglyBT then your rating and comment details .
- Friends - a means of sharing content and chatting - see Decentralized-Chat
- NAT Traversal - Rendezvous nodes are maintained in the DHT to help you receive incoming UDP connections when firewalled
Swarm Discoveries adds to this by extending the existing subscriptions feature to allow the relationship between torrents to be recorded. Instead of storing the relationship between a torrent and a subscription in the DHT the BiglyBT client stores the relationship between one torrent and another. Statistical analysis is then automatically used by other BiglyBT clients to extract the significant relationships from the millions of torrent hash links to provide you with a list of things that may be of interest.
'Cloud Discoveries' might be a more accurate word for this, as it is the super-imposition of all the swarms from which this data is aggregated. However, everything is 'Cloud' something these days so 'Swarm' was chosen.
Once you are in the Swarm Discoveries view you can dive into deeper relationships by selecting an entry and right-clicking to obtain the 'Discover Related' menu option. This will open a subview that shows things explicitly related to your selection. When you do this the ranking of the results will be low (i.e. less correlated).
A similar menu option is available in the Library views to do the same for content in your Library:
The sidebar has a context menu that gives you a few options:
- Lookup Subscriptions - this performs an exhaustive look-up for subscriptions related to content in the Swarm Discoveries view
- Discover By Hash... - searches for content related to the torrent hash (a Magnet URI can also be used to search)
- Discover By File Size... - allows an explicit file size to be entered and searches for other content containing a file of exactly the same size. This is useful when looking for duplicate content - see Swarm-Merging for a particular use of this
- Discover By Search... - this allows content to be searched by keyword. A keyword can be prefixed with a '-' to search for results that exclude that word. Content with a specific tag (prefix) can be searched for by using the syntax 'tag:<prefix></prefix>'. For example, 'tag:doc' will match the 'document' and 'documentary' tags. Regular expressions are supported, they need to be specified within brackets. For example '(^R.*\]$)' will match content that starts with 'R' and ends with ']'.
- Mark All Read - marks the current content in the view as read
- Delete All Results - deletes all the entries in the current view and prevents them from being shown again
- Reset to Initial State - deletes all the entries in the view and proceeds as if start of day
Swarm Search integrates with the existing meta-search (we strongly encourage your to review Meta Search) function within BiglyBT to automatically bring you results from the various data-sets created by 'Swarm Discoveries'. It is not an exhaustive or deterministic search and in general different results will be returned each time a search is attempted. In particular it takes a while to 'warm up' after BiglyBT is started.
As with any other search source you can create a subscription from a Swarm Search. This will cause the search to be periodically re-run and any new results will appear in the subscription as new items. This is particularly useful as Swarm Search results are non-deterministic, meaning you will in general get different results every time you run the same query. To do this you need to perform the desired search and then click on the RSS icon at the top of the search and follow the instructions.
The feature as a whole, or parts thereof can be enabled and disabled by the Swarm Discoveries plugin configuration - see Tools->Options->Plugins->Swarm Discoveries.
When a content relationship is stored in the DHT it is done so anonymously. When another client looks up a relationship no information about the relationship originator is available. The search function works purely on content relationships, not on downloads themselves.
If you close the Swarm Discoveries entry in the side bar then you can re-open it via the View menu - select 'Swarm Discoveries' from it
If this doesn't work then you may have disabled the interface in the plugin configuration. Go to Tools->Options->Plugins->Swarm Discoveries and ensure that the 'Enable the Swarm Discoveries UI' option is selected. Then go to the View menu again and re-select it.
Swarm Discoveries and its search results on BiglyBT are drawn from a statistical view of content associations created by other BiglyBT clients on the internet and are automatically generated by the BiglyBT client. For tracker sites not included in those pre-selected by BiglyBT, we additionally warn that some of those tracker sites might be accused of being more likely to track torrent files that might infringe upon the rights of others, including copyright, and might include more "adult" content, some of which might be alleged to infringe upon the rights of others. Given how Swarm Discovery works, third party torrent files that might automatically be considered "related" to the torrent files on your device which files are found by way of "all" tracker sites might be "related" only by virtue of the fact that if you and other users have "ABC.torrent," for example, and many or some of those other users have "XXX.torrent," Swarm Discoveries might consider the "XXX.torrent" to be "related." If you choose to enable "all" tracker sites, you might want to take additional care in selecting what Swarm Discovery content you wish to download, as well as then make available for uploading. The content available through BiglyBT may or may not comply with copyright laws, including copyright laws, in your territory and country, and BiglyBT is not responsible for content you may download or share. BiglyBT stresses that it respects the rights of copyrights holders and expects that you do and will too. Any use of BiglyBT that violates an intellectual property right or any right of a third party is not allowed. Please do not infringe upon copyright.