A system and method for dynamically adjusting the bit rate of a data
transmission. A sending endpoint transmits data, such as video
conferencing data across a network to a receiving endpoint. The receiving
endpoint maintains information about the performance of the network and
uses the information to determine when to request an increase or a
decrease in the transmission rate. The information is maintained as a set
of called parameters. The called parameters provide historical and
statistical information about the call. For example, by maintaining
information that indicates the number of intervals since the last
increase was attempted and the number of intervals that the last increase
was maintained, the receiving endpoint can avoid oscillating between a
higher bit rate and a lower bit rate. If a bit rate increase was
requested, but was not maintained for a sufficient period of time, then
the endpoint will delay a subsequent request for an increase until the
call parameters indicate that the increase will be successful. The call
parameters include both predetermined and dynamic thresholds. The
thresholds are compared against measured network performance indicators
to determine when to request an adjusted bit rate.