Jitter Buffer Control for V.34 Facsimile Over IP
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing jitter buffer management in V.34 facsimile communication over IP networks faces challenges in maintaining synchronization and preventing overflow/underflow, especially during full-duplex communication, which can lead to communication errors and synchronization loss due to phase shifts and packet loss.
Innovation Solution
A communication apparatus that performs packet processing by discarding packets when the buffer exceeds a threshold and inserting silent packets when it falls below a threshold, while also initiating control channel retraining to synchronize modems and maintain buffer stability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the size of the jitter buffer is increased to reduce packet fluctuations, then the number of packets to be accumulated increases and fluctuations are further reduced, but the output delay increases corresponding to the time period of accumulating packets
Solution Approach 1:
The jitter buffer size is made dynamic rather than fixed. The buffer automatically adjusts its size based on real-time network conditions and packet arrival patterns. When packet fluctuations are severe, the buffer expands to accumulate more packets; when conditions improve, it contracts to reduce delay. This dynamic adaptation resolves the contradiction by allowing the buffer to optimize between reliability and time loss according to actual operating conditions.
2Loss of time
If a regular-sized jitter buffer is used to minimize delay, then the buffer size is kept small, but overflow or underflow occurs during long-period facsimile communication due to clock accuracy differences
Solution Approach 1:
The system implements continuous feedback monitoring of the jitter buffer state, tracking packet accumulation and depletion patterns over time. When the buffer approaches overflow or underflow thresholds, the system detects these conditions and triggers corrective actions such as adjusting buffer size, modifying packet processing rates, or initiating re-synchronization procedures. This feedback mechanism enables the small buffer to operate reliably without overflow/underflow by continuously adapting to maintain safe operating margins.
Solution Approach 2:
The system performs preliminary actions to prevent overflow or underflow before they occur. By monitoring buffer levels and predicting future states based on current packet flow patterns and clock accuracy characteristics, the system takes preventive measures such as pre-adjusting buffer size or preparing re-synchronization sequences when thresholds are approached, thereby avoiding communication errors during long-period operation.
3Reliability
If packet processing is performed by discarding packets when buffer exceeds threshold, then buffer overflow is prevented, but communication quality may deteriorate due to packet loss
Solution Approach 1:
When packets are discarded to prevent buffer overflow, the system implements recovery mechanisms to mitigate the information loss. This may involve requesting retransmission of discarded packets through error correction protocols, using forward error correction codes to reconstruct lost data, or interpolating missing audio packets from surrounding packets to maintain communication quality. The discarded packets are not simply lost but actively recovered or compensated for, resolving the contradiction between preventing overflow and maintaining quality.
Data Source
AI summary
A communication apparatus that includes a buffer, an acquisition unit, a packet processing unit, and a control unit performs packet communication of image data as audio data via a first channel and performs procedure signal exchange via a second channel. The buffer temporarily stores transmitted and received packets to synchronize the packets between a transmitting and a receiving side. The acquisition unit acquires a number of packets stored in the buffer. The packet processing unit performs packet processing by discarding a packet stored in the buffer where the number of acquired packets exceeds a first threshold value, and inserting a silent packet in the buffer where the number of acquired packets does not exceed a second threshold value. The control unit performs procedure signal exchange according to a packet stored in the buffer in which the number of packets is adjusted upon completion of the performed packet processing.


