Method, system, and computer program product for managing jitter
First Claim
Patent Images
1. A system that manages jitter over a packet-switched network, comprising:
- a framer for appending a timestamp to a received indexed packet;
a traffic analyzer coupled to said framer, wherein said traffic analyzer examines the received indexed packet to determine whether the received indexed packet arrived in a proper sequential order and computes jitter statistics;
a jitter manager coupled to said framer and to said traffic analyzer, wherein said jitter manager uses the jitter statistics to control the flow of the received indexed packet; and
a jitter buffer coupled to said jitter manager for receiving the received indexed packet or a silence packet from said jitter manager, wherein a size of said jitter buffer is controlled by said jitter manager.
15 Assignments
0 Petitions
Accused Products
Abstract
A method, system and computer software product for managing jitter buffering that accurately measures network latency, the variation in latency (also known as jitter), and efficiently manages the media packet stream and jitter buffers is disclosed. A framer time-stamps incoming packets. A traffic analyzer maintains a sliding window of statistics generated from a recent set of packets. A jitter manager monitors packets, receives and makes adjustments based on information received from the traffic analyzer, and manages any connected jitter buffers.
-
Citations
19 Claims
-
1. A system that manages jitter over a packet-switched network, comprising:
-
a framer for appending a timestamp to a received indexed packet;
a traffic analyzer coupled to said framer, wherein said traffic analyzer examines the received indexed packet to determine whether the received indexed packet arrived in a proper sequential order and computes jitter statistics;
a jitter manager coupled to said framer and to said traffic analyzer, wherein said jitter manager uses the jitter statistics to control the flow of the received indexed packet; and
a jitter buffer coupled to said jitter manager for receiving the received indexed packet or a silence packet from said jitter manager, wherein a size of said jitter buffer is controlled by said jitter manager. - View Dependent Claims (2, 3, 4)
-
-
5. A system that manages jitter, comprising:
-
an input port that receives traffic;
an update port capable of receiving jitter statistics for the traffic, wherein the jitter statistics comprise average jitter and average jitter variation for the traffic;
a calculator coupled to said input port and said update port that receives jitter statistics from said update port and that calculates the target size for a jitter buffers; and
a packet-switch that inserts traffic into the jitter buffers.
-
-
6. A method of connecting, comprising the steps of:
-
handling the traffic from a packet-switched network to a public switched telephone network; and
managing the jitter of said traffic, wherein a manager adjusts an adaptive buffer to regulate the flow of data packets, wherein a size of the adaptive buffer is determined based on jitter statistics comprising a jitter measurement for a message currently being processed, an average jitter of a set of received data packets and the average jitter variation of the set of received data packets.
-
-
7. A method for managing the flow of a data packet within a set of data packets, comprising the steps of:
-
(a) receiving the data packet, wherein the received data packet is the most recent data packet received within the set of data packets;
(b) measuring a jitter for the data packet received in step (a);
(c) computing a jitter variation for the data packet received in step (a);
(d) computing an average jitter measurement for the set of data packets;
(e) computing an average jitter variation for the set of data packets; and
(f) computing a target buffer size, wherein the target buffer size is a function of the average jitter measurement and the average jitter variation. - View Dependent Claims (8, 9, 10, 11, 12, 13)
(g) timestamping the received data packet; and
(h) when the received data packet is not in proper sequential order, discarding the received data packet.
-
-
12. The method of claim 7, further comprising:
(g) when a buffer size is less than the target buffer size, inserting silence packets into the buffer.
-
13. The method of claim 7, further comprising:
(g) when a buffer size is greater than the target buffer size, removing silence from a received data packet.
-
14. A method for calculating the size of a buffer used to manage the flow of a set of received data packets, comprising the steps of:
-
(a) establishing a minimum buffer size;
(b) computing an average jitter measurement based on at least two received data packets;
(c) computing an average jitter variation measurement based on at least two received data packets; and
(d) determining a target buffer size based on the values determined in step (a), step (b) and step (c). - View Dependent Claims (15, 16, 17, 18, 19)
(e) maintaining a sliding window array that stores jitter measurements for received data packets, wherein said maintaining step includes adjusting the size of the sliding window array.
-
-
19. The method of claim 14, further comprising:
(e) maintaining a sliding window array that stores jitter measurements for received data packets, wherein said maintaining step includes adjusting the size of the sliding window array.
Specification