Streaming Media Buffering Architecture for High-Concurrency Forwarding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing streaming media systems face limitations in receiving and forwarding data packets during high concurrency and large traffic, leading to packet loss and restricted processing capacity, which hinders their development.
Innovation Solution
Integrate code stream data and message signaling into the same thread task channel using different file descriptors, buffer them into a system buffer, and utilize a packet receiving thread to acquire and store the data into an internal buffer, while service threads read the data from this buffer to improve processing and forwarding performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional separate thread handling is used for code stream data and message signaling, then thread management is simpler, but receiving and forwarding speed is limited and packet loss occurs under high traffic
Solution Approach 1:
The patent merges code stream data and message signaling into the same thread task channel, allowing both types of data to be processed through a unified thread management mechanism. This integration enables the system to achieve full bandwidth receiving and forwarding speeds (2 Gbps) by eliminating the bottlenecks of separate thread handling, while using file descriptors to distinguish and manage different data types within the unified channel.
2Productivity
If high concurrency processing is implemented, then system capability is enhanced, but packet loss increases due to insufficient processing capacity
Solution Approach 1:
The patent introduces an internal buffer as an intermediary component between the system buffer and service threads. This internal buffer acts as a mediator that decouples the high-speed data reception from the concurrent service processing, allowing the system to maintain high processing capacity while preventing packet loss. The buffer absorbs traffic fluctuations and ensures that service threads can process data at their own pace without losing packets during high concurrency scenarios.
3Speed
If data is buffered in system buffer only, then memory usage is reduced, but forwarding speed is insufficient for high traffic scenarios
Solution Approach 1:
The patent segments the buffering function into two distinct layers: a system buffer for initial data reception and an internal buffer for forwarding preparation. This segmentation allows the system to optimize memory usage by keeping the internal buffer compact while achieving high forwarding speeds through the pipelined architecture. The system buffer handles bulk data intake, while the smaller internal buffer focuses on rapid forwarding to service threads, thus balancing speed and memory consumption.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
Embodiments of the present disclosure provide a streaming media data processing method and system. Code stream data and message signaling are integrated to one thread task channel according to different file descriptors, and buffered into a system buffer, which improves the receiving performance of streaming media data; a packet receiving thread acquires the code stream data from the system buffer, and stores same into an internal buffer of streaming media; and different types of service threads read the code stream data from the internal buffer of streaming media, which improves the processing and forwarding performance of the streaming media data and achieving the effect of improving the receiving and forwarding speed of the streaming media data.