Timing recovery for modem transmission on IP networks
OwnerMichael Rauchwerkinventor
Life of this patent
Estimating the term…
Abstract
Retraining of modems communicating data signals as voice signals via gateways over a packet network, such as a VoIP network, that does not communicate the sample clock of the transmitter to the receiver is eliminated by monitoring the buffer level in a receiving gateway, and adjusting the local clock as a function thereof, so that the long term average of the rate of incoming samples to the buffer is equal to the long term average rate of the codec clock which is used to clock samples out of the receiver buffer. Advantageously, there is no need to communicate clock synchronization information between the transmit and receive gateways. Further advantageously, only one gateway on the connection requires the functionality of the instant invention to be implemented therein.
Claims40
A method for use in a gateway for a network in which information about sample timing is not transmitted across said network to said gateway, said gateway employing a buffer for temporarily storing received voice band samples that were generated by a modem to represent data signals and, said gateway also including a clock that indicates when a sample should be extracted from said buffer for subsequent processing of the analog information represented thereby, the method comprising the steps of:
- measuring a fullness level of said buffer;
- and
- adjusting said clock, as a function of said buffer fullness level, so that a long term average of the rate at which said received voice band samples are supplied to said buffer from said network is equal to a long term average of said frequency of said clock.
Apparatus for use in a gateway coupled to a network in which information about sample timing is not transmitted across said network to said gateway, said gateway employing a buffer for temporarily storing received voice band samples that were generated by a modem to represent data signals and, said buffer being responsive to a clock that indicates when a sample should be extracted from said buffer for subsequent processing of the analog information represented thereby, the apparatus comprising:
- a phase locked loop that supplies as an output a clock adjustment signal as a function of an indication of a fullness level of said buffer;
- and
- a clock adjusting circuit, responsive to said clock adjustment signal, for supplying an adjusted version of an initial clock, said adjusted version being supplied to said buffer to indicate when a sample should be extracted from said buffer so that a long term average of the rate at which said received voice band samples are supplied to said buffer from said network is equal to a long term average of said frequency of said adjusted version of said clock.
A method for use in a gateway providing conversion of a packet stream received from a network from which sample timing information is not conveyed to said gateway, to an analog voice band representation of the information contained in said packet stream, the method comprising the steps of:
- receiving packets of said packet stream;
- storing samples extracted from said packets in a buffer;
- and
- extracting samples from said buffer for conversion to said analog voice band representation at a rate that is adjusted to have a long term average that is equal to the long term average rate at which said samples are stored in said buffer.
A gateway for coupling a circuit switched connection carrying data using an analog voice band representation and a packet carrying network across which sample timing is not transmitted to said gateway, comprising:
- a buffer for storing samples of said voice band representation received from said packet carrying network;
- a codec for converting samples supplied from said buffer to said analog representation;
- wherein said samples are obtained by said codec from said buffer at a rate such that a long term average of the rate at which said samples are stored in said buffer is equal to a long term average of a rate at which said samples are obtained by said codec from said buffer.
A gateway for coupling a circuit switched connection carrying data as modem signals using a voice band representation and a packet carrying network across which sample timing is not transmitted to said gateway, comprising:
- means for storing samples of said voice band representation received from said packet carrying network;
- means for converting samples supplied from said buffer to an analog representation;
- wherein said samples are obtained by said means for converting from said means for storing at a rate such that a long term average of the rate at which said samples are received from said network and stored in said means for storing is equal to a long term average of a rate at which said samples are obtained by said means for converting from said means for storing.
A method for use in a gateway coupling a circuit switched connection carrying data in a voice band representation to a packet carrying network across which sample timing is not transmitted, the method comprising the steps of:
- storing in a buffer samples of said voice band representation received from said packet carrying network at a first rate;
- converting said samples stored in said buffer to an analog representation at a second rate;
- and
- adjusting said second rate so that it has the same long term average rate as does said first rate.
A method for use in a gateway coupling a circuit switched connection carrying data in a voice band representation and a packet carrying network across which sample timing is not transmitted to said gateway, the method comprising the steps of:
- storing in a buffer samples of said voice band representation received from said packet carrying network at a first rate;
- converting said stored samples that are supplied from said buffer to an analog representation at a second rate controlled by a clock of said gateway;
- adjusting said clock as a function of an indication of a fullness of said buffer so that said first and second rates have the same long term average.
A method for use in a gateway coupling a circuit switched connection carrying data in a voice band representation and a packet carrying network across which sample timing is not transmitted to said gateway, the method comprising the steps of:
- storing samples of said voice band representation received from said packet carrying network in a buffer as they arrive at said gateway;
- obtaining samples from said buffer by a codec for conversion to an analog representation once said buffer becomes half full until a first prescribed point in time after said buffer became half full, said obtaining being performed at a rate of a first clock;
- determining, a buffer fullness level at said first prescribed point in time;
- and
- when said buffer fullness level at said first prescribed point in time is at least at a prescribed amount greater than half full, switching from said first clock to a second clock, said second clock being an adjusted version of said first clock and having a long term average rate equal to the long term average rate at which samples received from said packet carrying network are stored in said buffer.
A method for use in a gateway coupling a circuit switched connection carrying data in a voice band representation to a packet carrying network across which sample timing is not transmitted, the method comprising the steps of:
- storing samples of said voice band representation received from said packet carrying network in a buffer as they arrive, said samples being stored in said buffer;
- obtaining samples from said buffer by a codec for conversion to an analog representation once said buffer becomes half full until a first prescribed point in time after said buffer became half full, said obtaining being performed at a rate of a first clock;
- determining, a buffer fullness level at said first prescribed point in time;
- and
- when said buffer fullness level at said first prescribed point in time is at least at a prescribed amount greater than half full, beginning a process of adjusting said first clock to develop an adjusted clock that has a long term average rate equal to the long term average rate at which samples received from said packet carrying network are stored in said buffer, and employing said adjusted clock to obtain samples from said buffer by said codec.
A method for use in a voice over internet protocol (VoIP) gateway, said VoIP gateway employing a buffer for temporarily storing received voice band samples which represent data signals and were generated by a modem, said VoIP gateway also including a clock that indicates when a sample should be extracted from said buffer for eventual conversion back to an analog signal, the method comprising the steps of:
- monitoring a fullness level of said buffer;
- and
- adjusting a frequency of said clock so that a long term average of the rate at which said received voice band samples are supplied to said buffer is equal to a long term average of said frequency of said clock.
A method for use in a communications arrangement including a plurality of gateways, each of said gateways being capable of coupling a circuit switched connection carrying data signals converted by a modem to a voice band representation with a packet carrying network, the method being for use in at least one of said gateways to which sample timing is not transmitted from said network, said at least one gateway being adapted to (i) store in a buffer samples of said voice band representation received from said packet carrying network at a first rate;
- (ii) convert said samples stored in said buffer to an analog representation at a second rate;
- and (iii) adjust, under controllable command, said second rate, said method comprising the steps of:
- making a determination as a function of at least one measure of fullness of said buffer that it is appropriate to adjust said second rate;
- and
- issuing, in response to said determination, a command to adjust said second rate so that it has the same long term average as does said first rate.
Dependencies are inferred from the claim text.