Query flooding
This article needs additional citations for verification. (March 2026) |
Query flooding is a method to search for a resource on a peer-to-peer network. It is simple and scales very poorly and thus is rarely used.[1] Early versions of the Gnutella protocol operated by query flooding; newer versions use more efficient search algorithms.
Operation
A peer-to-peer network generally consists of a large number of nodes, each connected to a small subset of the nodes and not all nodes in the network. If a node wants to find a resource on the network, which may be on a node it does not know about, it could simply broadcast its search query to its immediate neighbours. If the neighbours do not have the resource, it then asks its neighbours to forward the query to their neighbours in turn. This is repeated until the resource is found or all the nodes have been contacted, or perhaps a network-imposed hop limit is reached.[2]
Query flooding is simple to implement and is practical for small networks with few requests. It contacts all reachable nodes in the network and so can precisely determine whether a resource can be found in the network (Hyphanet, for example, only returns a probabilistic result).
On the other hand, every request may cause every node to be contacted. Each node might generate a small number of queries; however, each such query floods the network. Thus, a larger network would generate far more traffic per node than a smaller one, making it inherently unscalable. Additionally, because a node can flood the network simply by issuing a request for a nonexistent resource, it could be possible to launch a denial-of-service attack on the network.
Alternatives
Version 0.6 of the Gnutella protocol mandates query routing. The query routing specification explains how the ideas of the original research are implemented. Other file-sharing networks, such as the Kad network, use distributed hash tables to index files and for keyword searches. BitTorrent creates individual overlay networks for sharing individual files (or archives). Searches are performed by other mechanisms, such as locating torrent files indexed on a website. A similar mechanism can be used on the Gnutella network with magnet links. For instance, Bitzi provides a web interface to search for magnet links.
Earlier P2P networks, such as Napster, used a centralized database to locate files. This does not have a scaling problem, but the central server is a single point of failure.
See also
References
- ^ Ai, Wu; Xinsong, Liu; Kejian, Liu (2006-11-01). "Efficient flooding in peer-to-peer networks". 2006 7th International Conference on Computer-Aided Industrial Design and Conceptual Design. pp. 1–6. doi:10.1109/CAIDCD.2006.329410. ISBN 1-4244-0683-8.
- ^ "What is P2P (Peer-to-Peer Process)?". GeeksforGeeks. 2020-04-22. Retrieved 2026-03-02.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.