P2P has led to a recent renewal of interest in decentralized systems and a number of scalable applications being deployed on the Internet. Although the underlying Internet itself is the largest decentralized computer system in the world, most systems have employed a completely centralized topology in the 1990s through the massive growth of the Web as discussed in Chapter 6. With the emergence of P2P in early 2000, there has been a shift into employing the use of radically decentralized architectures, such as Gnutella . In practice, however, extreme architectural choices in either direction are seldom the way to build a usable system. Most current P2P file-sharing software, for example, use a hybrid of the two approaches.
In this chapter, we look at the ways in which peers are organized within ad hoc, pervasive, multi-hop networks by providing an overview of two common scalable approaches often referred to broadly as structured and unstructured P2P networks. Structured networks adopt a somewhat hierarchical approach by creating a structured overlay across the network and dividing content across the distributed network by using hash functions. An unstructured approach, however, adapts dynamically by adding caching centres (super peers) across the network in an ad hoc fashion. Both approaches have been shown to scale to large numbers of participants and both have somewhat equal popularity at the time of writing. Although the specifics of the various approaches within these categories are out of scope for this chapter, we do provide here a high-level overview of the basics of each approach and discuss their similarities and differences.
KeywordsOverlay Network Distribute Hash Table Query Message Super Peer Rendezvous Node
Unable to display preview. Download preview PDF.