Patent ID: 8775456

Claim:
A method of distributing content, the method comprising: requesting, from a server computer by a first client computer of a plurality of client computers, an index of the content, the index including a list of associated files for the content; receiving, by the first client computer, the index of the content from the server computer; identifying, by the first client computer, a first file listed in the index that is not currently held by the first client computer of the plurality of client computers; requesting the first file from a second client computer of the plurality of client computers if the second client computer of the plurality of client computers can distribute the first file to the first client computer, wherein requesting the first file from the second client computer comprises: broadcasting information about the first file to more than one of the plurality of client computers; receiving a response from the second client computer of the plurality of client computers indicating that the second client computer can distribute the first file to the first client computer; and requesting the first file from the second client computer of the plurality of client computers; requesting the first file from a server computer if no client computer of the plurality of client computers can distribute the first file to the first client computer; and receiving the first file on the first client computer.