Packet Pacing Subsystem for Streaming Media Delivery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing streaming media transmission systems are inefficient due to excessive CPU resource consumption from frequent suspension/resume operations and context switches when processing individual data packets, leading to suboptimal delivery of media streams.
Innovation Solution
A packet pacing subsystem that waits for a group of packets instead of individual ones, schedules delivery events based on predetermined times, and reduces CPU overhead by minimizing suspension/resume operations and context switches through batch processing and a delivery queue mechanism.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the packet pacing sub-system processes individual data packets with suspension/resume operations and context switches, then the data stream can be transmitted to clients, but CPU resource consumption increases excessively
Solution Approach 1:
The patent combines multiple individual packet processing operations into a single batch processing operation. The packet pacing sub-system waits to receive multiple data packets before processing them together, eliminating the need for repeated suspension/resume operations and context switches that would occur if each packet were processed individually. This merging of operations directly reduces CPU resource consumption while maintaining streaming media delivery efficiency.
2Reliability
If the server processes each data packet individually with multiple suspension/resume points, then packet delivery can be controlled, but system performance deteriorates due to excessive CPU overhead
Solution Approach 1:
The patent implements preliminary action by having the packet pacing sub-system wait to receive a group of data packets before processing them. This preliminary gathering of packets allows the system to perform multiple delivery control operations in a single processing cycle, rather than controlling each packet individually. The sub-system schedules delivery events for multiple packets in advance, reducing the frequency of suspension/resume operations and improving overall system performance while maintaining reliable packet delivery control.
3Manufacturing precision
If the packet pacing sub-system waits for individual packets and performs filtering and scheduling operations, then the data stream quality can be maintained, but the number of suspension/resume operations increases
Solution Approach 1:
The patent merges multiple quality control operations (filtering, scheduling, delivery event setup) into a single batch processing cycle. Instead of performing these operations on each individual packet, the packet pacing sub-system collects multiple packets and applies all necessary quality control measures to the group simultaneously. This approach maintains the required data stream quality while significantly reducing the total processing time by eliminating repeated operation cycles.
Data Source
AI summary
A method and system to efficiently transmit streaming media are described. The system includes a network protocol engine configured to receive a request for a data stream from a client system and to transmit data packets from the data stream to the client system; and a packet pacing sub-system, responsive to the request for the data stream. The packet pacing sub-system is configured to wait to receive a plurality of data packets from the data stream, and schedule delivery events for the plurality of data packets.The system may further include a streaming media protocol engine to determine a delivery time for data packets in the data stream. The packet pacing sub-system may be configured to receive an associated delivery time for the data packets from the streaming media protocol engine and schedule the delivery events for the data packets according to the associated delivery times for the plurality of packets.


