Does every peer need to be a node in BitTorrent when DHT is enabled?

bittorrent, dht

Solution

It is possible to just be a DHT node (a bittorrent client with DHT enabled but no torrents for instance). It is also possible to just be a bittorrent peer (a bittorrent client with DHT disabled and at least one torrent started).

Since the DHT is not tied to any specific torrent, running a (DHT) node will help out the global DHT network by aiding in routing and storing of peer-lists for random torrents.

Conversely, it's possible to be a bittorrent peer without participating in the DHT at all. One could even make DHT lookups for a torrent and still not participate in the DHT (by not responding to any requests for instance).

Problem

Does every peer become a DHT node every time it requests peers for a particular file? or do nodes exist independently of peers? in essence, how do you become a node? can you be a peer but not a node? I'm sorry if the question is too simple (noob here) but I wasn't able to find an answer in any other place. The terminology I'm using is the same that is used here.

Original source

Related problems