×

Dynamic bandwidth detection and response for online games

  • US 7,680,038 B1
  • Filed: 04/25/2005
  • Issued: 03/16/2010
  • Est. Priority Date: 04/25/2005
  • Status: Active Grant
First Claim
Patent Images

1. A method of communicating data from a sender system to a receiver system via a network connection, the method comprising:

  • communicating data from the sender system to the receiver system in a first mode over the network connection, wherein communicating the data in the first mode comprises;

    (a) determining an available bandwidth estimate for the network connection;

    (b) determining a bandwidth target that is a fraction of the available bandwidth estimate, such that the bandwidth target is less than the available bandwidth estimate;

    (c) communicating data from the sender system via the network connection using an unreliable protocol at a data rate that is substantially equal to the bandwidth target;

    (d) monitoring latency associated with the network connection;

    repeating (a), (b), (c), and (d) until a condition for exiting the first mode is satisfied; and

    exiting the first mode upon determining that the condition for exiting the first mode is satisfied;

    computing a latency threshold (latencythreshold) for the network connection, wherein the latency threshold computed for the network is computed as is set to a greater of (a) a minimum latency threshold value; and

    (b) the smaller of the latency associated with the network connection plus a constant times a latency deviation value and a first latency value;

    communicating data from the sender system to the receiver system in a second mode over the network connection, wherein communicating the data in the second mode comprises;

    (e) determining an available bandwidth estimate for the network connection;

    (f) determining a bandwidth target that is substantially equal to the available bandwidth estimate;

    (g) communicating data from the sender system via the network connection using an unreliable protocol at a data rate that is substantially equal to or greater than the bandwidth target;

    (h) monitoring latency associated with the network connection;

    repeating (e), (f), (g), and (h) until a condition for exiting the second mode is satisfied; and

    exiting the second mode upon determining that the condition for exiting the second mode is satisfied; and

    alternating between the first mode and the second mode over the network connection.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×