P2P Streaming Buffer Level Assignment for Playback Continuity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Peer-to-peer (P2P) networks face challenges in streaming content delivery due to partial and temporary content storage, leading to server saturation and playback issues, especially in live streaming where content is generated in real-time and requires low latency, causing jerks and interruptions.
Innovation Solution
A method for broadcasting streaming content in a P2P network that assigns priority levels to client devices based on their buffer memory capacity, ensuring a minimum list of segments is stored, allowing for efficient content delivery by balancing server downloads and peer-to-peer transfers, and dynamically updating segment lists to maintain smooth playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If P2P technology is used for content distribution, then the server load is reduced and distribution efficiency is improved, but content storage is partial and temporary leading to playback interruptions
Solution Approach 1:
The system performs preliminary actions by having peers download and store content segments in advance before they are needed for playback. The buffer mechanism pre-loads segments into memory, ensuring that when playback is requested, the content is already available locally rather than being fetched in real-time, thus preventing playback interruptions.
Solution Approach 2:
The buffer acts as an intermediary between the P2P network and the playback system. It temporarily stores content segments received from peers and provides them to the playback system in the correct sequence, decoupling the irregular P2P data arrival from the continuous playback requirement and ensuring smooth playback continuity.
2Reliability
If all peers download from the server to ensure complete content availability, then playback reliability is improved, but the server becomes saturated and unable to serve all clients
Solution Approach 1:
The system merges the roles of client and server into a single peer entity. Each peer既可以 download content from the server and other peers,也可以 upload content to other peers. This combination allows the distributed network to share the content distribution load, reducing server saturation while maintaining content availability through multiple sources.
Solution Approach 2:
The peer architecture provides universality by enabling each client device to perform multiple functions: downloading content, storing content in buffer, uploading content to other peers, and acting as a content source for the network. This multi-functionality transforms the traditional client-server model into a resilient distributed system where any peer can fulfill content availability requirements.
3Reliability
If peers store more content segments in buffer, then playback continuity is improved, but buffer memory consumption increases
Solution Approach 1:
The system applies partial action by having peers store only the necessary portion of content in the buffer - specifically, enough segments to cover the playback duration plus a safety margin. This is not complete content storage (excessive) but sufficient content storage (partial) to ensure playback smoothness without unnecessarily consuming buffer memory resources.
Solution Approach 2:
The system dynamically adjusts the buffer size parameter based on network conditions, peer capabilities, and playback requirements. By changing the buffer memory allocation parameter adaptively rather than using a fixed size, the system optimizes the balance between playback smoothness and memory consumption, allocating more memory when needed and less when sufficient.
Data Source
Figure 1
Figure 2
AI summary
The present invention relates to a method of broadcasting a content by streaming in a peer-to-peer network (10) of client devices (11, 12, 13) which is connected to a content server (2), said content consisting of a sequence of segments stored on data storage means of the content server (2), each client device (11, 12, 13) comprising a buffer memory storing in a temporary manner at least one segment of said content, the method being characterized in that each client device (11, 12, 13) is associated with a level defining a minimal list of segments of the content that have to be stored by the buffer memory of the device (11, 12, 13), the method comprising steps of: (a) connection of a new client device (14) to the peer-to-peer network (10); (b) assignment of a level to the new client device (14) as a function of the number of client devices (11, 12, 13) associated with each level; (c) transmission to said new client device (14) from the server (2) of at least each segment of the content which is absent from the buffer memory of the new client device (14), which belongs to said list of segments of the content corresponding to the level assigned to the new client device (14).