- Good reference book.
C1 & Part I: Notion, Areas, History, Future
These are introductory chapters and mostly talk about the reasons why this book was written and what are peer-to-peer systems about, as well as some history and application areas.
Main requirements for future Internet-based apps:
- Security and reliability
- Flexibility and quality of service
- Data is addressed by the data itself, not by location
- Note: people usually associate p2p with file-sharing but there’s a lot possibilities than that: distributed computations, verifiable elections, blockchains…
Part II: Unstructured Systems
- Page 36: good table comparing different categories of P2P systems
- Explains how some early p2p systems worked:
Definition of p2p system:
A Peer-to-Peer system consists of computing elements that are:
- connected by a network,
- addressable in a unique way, and
- share a common commmunication protocol.
All computing elements, synonymously called nodes or peers, have comparable roles and share responsability and costs for resources.
Conditions to make P2P infrastructure useful:
- Reliability despite Dynamic change
- Random graph model
- Easy to simulate
- Small-world networks
- High clustering of nodes
- Good way to structure nodes with similar interests
- Scale-free networks
- Good Fault Tolerance
- More vulnerable to attacks
Part III: Structured Systems