摘要:
A system, method and apparatus are disclosed herein for media streaming. In one embodiment, the system comprises one or more media servers to serve media content and a plurality of peers communicably coupled to one or more other peers of the plurality of peers and at least one of the one or more media servers to receive segments of media content, where at least one of peers allocates a set of resources for serving the segments of media content including cache memory to store the segments and media files and uplink bandwidth to send the segments of media content to the one or more peers to which the one peer is communicably coupled. The system also includes a first control server to track media content demand and the allocated resources of the plurality of peers to determine which peer should cache which segment of the media file and to return peer location information specifying the one or more peer locations from which each peer is to receive each segment of each media content requested. The control server is operable to send the location information to each peer. In one embodiment, the one control server is also operable to calculate a utility of each caching option and enforce it by sending triggers to the peers to initiate the caching at those peers.