CA2841284C

Accelerated channel charge in rate-limited environments

Abstract

Accelerated channel change (ACC) strategies are described for supplying a client module with media information by transitioning between a first delivery of media information provided by first delivery functionality and a second delivery of media information provided by second delivery functionality without exceeding prescribed data rate limitations. The first delivery functionality can represent server-based functionality for delivering a unicast stream of media information at a data rate (or maximum data rate) of some excess amount over the nominal rate of delivery, starting at a selected location within the media information. The second delivery functionality can represent any functionality for delivering the media information at the data rate (or maximum data rate) of the nominal rate of delivery. A join interval separates the first delivery at the excess rate and the second delivery at the nominal rate. In that period, the first delivery functionality can provide media information at a join interval data rate. The join interval data rate, if it is below the nominal data rate, will cause the client module to miss packets of media information. The client module can receive these missing packets by issuing retry requests to the first delivery functionality or to some other entity. The client module can determine the excess amount available by investigating the amount of missing information that occurs at different data rates; or the excess amount can be defined in advance.

CA2841284C, drawing sheet 1
Sheet 1 of 19

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Granted
  4. Today

21 claims: 4 independent, 17 dependent

  1. 1
    CA 02841284 2016-02-22 51018-132D1 CLAIMS:1. A method for delivering media information to a client module, comprising: automatically determining an excess data rate level E* Nominal by iteratively increasing a value E in data rate (1+E) * Nominal, wherein Nominal is a nominal data rate and O<E<1, determining a level of packet loss at each data rate and selecting the value E at which the level of packet loss is still acceptable;delivering the media information, using a unicast delivery functionality, at (1+E) * Nominal data rate during an initial burst period of data transmission to the client module;delivering the media information using a E* Nominal data rate unicast stream during a join interval following the burst period, wherein, following the join interval, the client module switches to a multicast delivery functionality for providing the media information;delivering the media information to the client module using the multicast delivery functionality at data rate levels less than or equal to the data rate Nominal, wherein the unicast and multicast delivery functionalities deliver the same pieces of data;and during the multicast delivery functionality responding to requests from the client module to supply parts of the media information which the client module missed during the join interval as a result of its receipt of the media information at the join interval data rate levels, wherein the parts of the media information which the client module missed are transmitted using the multicast delivery functionality, at E* Nominal data rate.
  2. 17
    A computer-readable media containing computer-executable instructions for implementing the method of any one of claims 1 to 16. CA 02841284 2016-02-22 5J018-132D1
  3. 18
    A server module comprising means for implementing the method of any one of claims 1 to 16.
  4. 19
    A method for receiving resource information at a client module, comprising:automatically determining an excess data rate level E* Nominal by iteratively 5 increasing a value E in data rate (1+E) * Nominal, wherein Nominal is a nominal data rate and O<E<1, determining a level of packet loss at each data rate and selecting the value E at which the level of packet loss is still acceptable;receiving, via a unicast delivery functionality, media information at (1+E) * Nominal data rate levels during an initial burst period of data transmission;10 receiving the media information using a E* Nominal data rate unicast stream during a join interval following the burst period;receiving, a multicast delivery functionality, the media information following the join interval, wherein the unicast and multicast delivery functionalities deliver the same pieces of data;15 requesting parts of the media information which the client module missed during the join interval as a result of its receipt of the media information at the join interval data rate levels;and receiving the missing parts of media information concurrently with the receipt of the media information via the multicast delivery functionality, wherein the parts of the 20 media information which the client module missed are received using the unicast delivery functionality, at E* Nominal data rate.