Patent ID: 8775503

Claim:
A method for multicasting over a communications system having a communications path between a server side of the communications system and a plurality of clients, the communications path comprising a shared forward link over which bandwidth resources are shared during a multicast communication, the method comprising: intercepting traffic at the server side of the communications system, the traffic comprising a header portion and a content portion and being part of a first client session stream configured to communicate a content stream comprising the traffic to a first client over the communications path, the server side in communication with a global stream model configured to maintain models of active session streams being communicated over the communications path, one of the active session streams being a second client session stream currently communicating the content stream to a second client over the communications path so that an elapsed portion of the content stream has already been communicated to the second client and a remaining portion of the content stream has not yet been communicated to the second client when the traffic is intercepted; generating a fingerprint using byte-level information comprised by the content portion of the traffic; using the fingerprint to identify overlapping requests by determining that the traffic matches byte-level information comprised by the elapsed portion of the content stream communicated to the second client over the second client session stream according to the global stream model; and when the traffic matches the byte-level information comprised by the elapsed portion of the content stream and thus identifies overlapping requests, configuring the first client session stream, the second client session stream, and a shared session stream to collapse at least some of the remaining portion of the content stream for the first client session stream and the second client session stream by configuring the shared session stream to multicast at least some of the remaining portion of the content stream from the server side of the communications system to the first client and the second client over the communications path.