Because P2P systems designers have to a large extent failed to overcome these challenges, the semantics provided by these systems is typically quite weak. In most content sharing systems, only popular content is readily accessible — yet content popularity seems to be driven by Zipf distributions, in which a large fraction of requests are directed to unpopular content. Similarly, current content sharing systems ignore problems such as updates to content, and they typically only support retrieval of objects by name. At first glance, many of the challenges in designing P2P systems seem to fall clearly under the banner of the distributed systems community. However, upon closer.