Patent ID: 8473610
Filing Date: 2013-06-25
Classification: H04L

Abstract:
1. A method comprising: monitoring, in a peer-to-peer computer network, a plurality of agents and a plurality of files by tracking an availability of each agent and tracking a status of each file respectively; evaluating each agent, based at least partially on respective past performance and qualitative factors; encoding each file into portions, wherein the encoding further comprises encoding redundancy and forward error correction (FEC) into raw data; matching the portions into agents to yield a specified distribution of loads among the agents based at least partially on their respective evaluation, each agent storing portions of each file; calculating for each one of the plurality of files an availability function for each one of the plurality of agents, wherein the availability function comprises a summation, over time, of a plurality of time-dependent availability weighing functions; calculating for each one of the plurality of files, a function of cost for distributing each one of the plurality of files, wherein the cost function comprises a summation over each of the availability functions for each one of the plurality of agents, and wherein at least one of the monitoring, the evaluating, the encoding, and the matching is executed by at least one processor.