Patent ID: 8051161

Claim:
A first peer computing device of a peer-to-peer architecture, the first peer computing device comprising: one or more processors; memory; a membership module, stored in the memory and executable on the one or more processors to: establish a connection between a bootstrap server and the first peer computing device, and exchange partial view information between the first peer computing device and the bootstrap server, the partial view information comprising: (i) peer record information that describes a current status of the first peer computing device, and (ii) a current status of the bootstrap server, wherein the peer record information that describes the current status of the first peer computing device is provided to the bootstrap server and the current status of the bootstrap server is provided to the first peer computing device, at least a first portion of the partial view information being stored in a local cache in the first peer computing device and at least a second portion of the partial view information being stored in a bootstrap cache in the bootstrap server; and an overlay construction and optimization module, stored in the memory and executable on the one or more processors to: describe a data flow in a streaming overlay of the peer-to-peer architecture, and enable the first peer computing device to provide at least the first portion of the partial view information to a second peer computing device of the peer-to-peer architecture and enable the second peer computing device to provide at least a third portion of the partial view information to the first peer computing device utilizing a parent-child protocol that allows for the first and second peer computing devices to be both a parent and a child of one another.