Patent ID: 7908389

Claim:
A streaming system comprising: a plurality of assembling peer clients streaming content from at least one streaming server at an aggregated first rate; a plurality of peer storage-and-computing elements distributively storing a plurality of pushed content fragments associated with the streaming content, which were distributed to the peer storage-and-computing elements according to a version of fragment distribution information, prior to any retrieval from the storage-and-computing elements; wherein as a result of an event rendering the at least one server incapable of sustaining the first rate, at least some of the assembling peer clients begin to retrieve content fragments from the peer storage-and-computing elements in order to continue the streaming, the assembling peer clients retrieve the content fragments utilizing the version of the fragment distribution information used for pushing the content fragments into the storage-and-computing elements by determining a storage element type that stores the content fragments utilizing fragment-to-type association information from the fragment distribution information and determining a first storage-and-computing element physical address corresponding to the storage element type from which to retrieve the content fragment utilizing type-to-physical-address association information and thereafter retrieving the content fragments from a storage-and-computing element located at a first physical address; wherein ‘N’ of the plurality of assembling peer clients play streaming contents from storage-and-computing elements, where ‘N’ equals at least half of the available aggregated uplink bandwidth of the storage-and-computing elements divided by the average streaming bitrate of the at least one streaming server.