Network Interface Device Underrun Detection and Packet Marking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Buffer underrun conditions during data transmission over networks can lead to data packet corruption, especially in low-latency applications where data is transmitted before the entire frame is received, causing issues with buffer underrun and potential data loss.
Innovation Solution
A network interface device with a monitor that detects underrun conditions and provides an indication in the data packet, allowing receivers to discard invalid packets and potentially retransmit data only when the buffer is adequately filled, using cyclic redundancy check modifications or known values to mark packets as invalid.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is transmitted as soon as the first data bytes are available (low latency approach), then transmission speed is improved, but buffer underrun may occur leading to data packet corruption
Solution Approach 1:
The system performs preliminary actions by initiating transmission only after the buffer is sufficiently filled, rather than waiting for complete data availability. This preliminary buffer filling action prevents underrun conditions while maintaining low latency transmission.
Solution Approach 2:
The monitor continuously observes the buffer fill level and provides feedback control by enabling or disabling transmission based on whether the buffer contains sufficient data. This feedback mechanism dynamically adjusts transmission timing to prevent underrun while maintaining speed.
2Reliability
If the buffer is filled completely before transmission (buffer safety approach), then data packet integrity is improved, but transmission latency increases
Solution Approach 1:
The system applies partial action by filling the buffer to a sufficient but not necessarily complete level before transmission. This partial filling approach provides adequate protection against underrun while avoiding the excessive latency that would result from waiting for complete buffer filling.
Solution Approach 2:
The transmission timing is made dynamic rather than static. The system adaptively determines when the buffer is sufficiently filled based on real-time conditions, allowing flexible transmission timing that balances latency and reliability requirements rather than using fixed buffer fill thresholds.
3Reliability
If a monitor is added to detect underrun conditions, then data packet integrity is improved, but device complexity increases
Solution Approach 1:
The monitor performs self-service by autonomously detecting buffer underrun conditions and autonomously marking affected packets without requiring external intervention. This self-contained monitoring approach improves reliability while minimizing the complexity of external control mechanisms.
Solution Approach 2:
The monitoring function is extracted as a separate, dedicated component that specifically handles underrun detection. By isolating this function, the overall system complexity is managed more effectively, as the monitor operates independently with a single well-defined purpose rather than being integrated into more complex control logic.
4Productivity
If packets with underrun conditions are transmitted anyway, then productivity is improved, but loss of information increases due to corrupted packets
Solution Approach 1:
The system converts the harmful effect of underrun conditions into a beneficial outcome by marking corrupted packets with a distinctive pattern. This allows the receiver to identify and discard only the corrupted packets while maintaining throughput for valid packets, thus converting potential data loss into a controlled error-handling mechanism that preserves overall productivity.
Solution Approach 2:
The system implements a discard and recover strategy by marking packets with underrun conditions so they can be identified and discarded by the receiver. This selective discarding of only corrupted packets allows the system to maintain high throughput by continuing to transmit and process valid packets, thereby recovering productivity while minimizing information loss.
Data Source
AI summary
A network interface device, said network interface device has a data transmission path configured to receive data for transmission. The data for transmission is to be sent over a network by the network interface device. A monitor is configured to monitor the data transmission path to determine if an underrun condition is associated with the data transmission path. If so, an indication is included in the transmitted data packet.


