![Page 1: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/1.jpg)
Design of a Cooperative Video Streaming System
on Community based Resource Sharing Networks
2010 International Conference on P2P, Parallel, Grid, Cloud and Internet Computing
Presenter: Lin - You Wu
Yasuhiro KawanoGraduate School of Software and
Information Science,Iwate Prefectural University
Koji Hashimoto and Shibata YoshitakaFaculty of Software and Information
Science, IwatePrefectural University
![Page 2: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/2.jpg)
Outline
1. INTRODUCTION2. BASIC CONFIGURATION OF COOPERATIVE VIDEO STREAMING SYSTEM3. A RELAY PATH SELECTION METHOD4. AN EXAMPLE OF RELAY PATH SELECTION5. PROTOTYPE SYSTEM6. CONCLUSION
![Page 3: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/3.jpg)
1. INTRODUCTION
• As broadband networks become more common , distributing HD (High-Definition) quality video streams has become increasingly popular in ordinary scenes.
• However, our live streaming network environments don't always have enough resources to distribute high quality video streams.
![Page 4: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/4.jpg)
• In this paper, we propose a design of a video streaming system on community based resource sharing networks.
• When we distribute live video streams for community events like a kind of cultural or sport activities, we may use the community members' video cameras, personal computers and computer networks.
![Page 5: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/5.jpg)
• By sharing these community based resources, the whole system may have enough resources to process both HD and SD quality video streams.
• On live video distribution, it is important to select a suitable relay path from a live source to sinks in consideration of available resource status.
![Page 6: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/6.jpg)
• The video distribution session consists of some available User Terminals (UT) in the community. Each UT has video transmission functions and format transcoding functions.
![Page 7: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/7.jpg)
• In this cooperative video streaming system, when clients request to receive live video streams, the sender creates a candidate relay path list and the best path is selected.
• And then if a new relay node is required, the suitable transcoding function is placed on sharing networks in consideration of available resource status.
![Page 8: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/8.jpg)
2. BASIC CONFIGURATION OF COOPERATIVE VIDEO STREAMING SYSTEM
• Shows the basic configuration of a distribution session in the system.
![Page 9: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/9.jpg)
(1) Video Stream Processing by UT of Source Group
• This network environment has enough bandwidth and each UT has enough CPU power for the HD video processing in the stream path between UT0 and UT1.
![Page 10: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/10.jpg)
• On the other hand, although UT3 also requests to receive the HD video stream from UT0, it doesn't have enough bandwidth between UT0 and UT3.
• Session Owner selects a stream path that includes a transcoding node, and decides the UT where the transcoding function is placed in.
• In this example, UT2 in Source Group is selected as the transcoding node, and then UT3 will receive the live video stream via UT2.
![Page 11: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/11.jpg)
(2) Video Stream Processing by UT of Relay Group
• UT1 in Relay Group relays a HD video stream to Destination Group #0, and UT3 transcodes the same HD video stream into another SD video stream and relays the SD video stream to Destination Group #1.
![Page 12: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/12.jpg)
• If a source terminal can't connect to a destination terminal directly and if there is available UTs in Relay Group, the UT is used as relay or transcoding node.
• Source Group doesn't have enough resources to process several numbers of video streams, if Relay Group is available in community based network, more video streams will be distributed to sinks.
![Page 13: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/13.jpg)
(3) Video Stream Processing by UT of Destination Group
• If one of stream sinks has enough CPU power to transcode and relay several numbers of video streams, of course those sinks should perform as relay node for close destinations.
![Page 14: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/14.jpg)
3. A RELAY PATH SELECTION METHOD
• In order to build a kind of distribution sessions, a Session Owner has a Live Stream Path for creating a suitable new relay path.
• There are three types of Stream Node, which are Source Node, Distributor and Destination Node.
![Page 15: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/15.jpg)
• A Source Node has an original live video source and sends the video stream to Distributors or Destination Nodes.
• A Distributor receives an incoming video stream and distributes the stream.
• A Destination Node receives a video stream from a Source Node or a Distributor, and renders the video stream in User Terminal.
![Page 16: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/16.jpg)
• When the UT sends a request for new video stream to the Session Owner of the stream.
• The Session Owner that received the request creates a list of candidate relay paths from the current Live Stream Path.
• Then the Session Owner gathers current resource utilization status of UTs that are joining in this distribution session, and the Session Owner obtains available network I/O bandwidth and CPU utilization status of each UT.
![Page 17: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/17.jpg)
![Page 18: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/18.jpg)
(1) Creating of a Candidate Relay Path List
• The video stream can be relayed to the Destination Node directly without transcoding, the direct relay path is added to the candidate relay path list.
• The video stream can't be relayed to directly or transcoding functions are required, the Session Owner appends a relay path using new Distributor to the candidate relay path list.
![Page 19: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/19.jpg)
(2) Gathering of Resource Utilization Status of User Terminals
![Page 20: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/20.jpg)
• Replied resource status reports are appended to a current status list, and after a timeout that has specified in advance, an available Stream Node list is created.
• Each element of the list includes resource status information of Stream Nodes which have enough network bandwidth and CPU power in order to relay or transcode the video format.
![Page 21: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/21.jpg)
(3) Selecting a Relay Path
![Page 22: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/22.jpg)
• The Session Owner checks outgoing network bandwidth of a Stream Node that is parent node of the Destination Node.
• If the Stream Node can allocate required resources for relaying the video stream, then the Session Owner checks whether new Distributor is available or not.
![Page 23: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/23.jpg)
4. AN EXAMPLE OF RELAY PATH SELECTION
• UT1 and UT2 receives the HD video stream.• UT2 transcodes the incoming HD stream
format into a SD format and then relays the SD video stream to UT3.
![Page 24: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/24.jpg)
• Here, when UT5 sends a request to receive a SD video stream to Session Owner, UT0 will perform the following actions.
(A1) Creating of a candidate relay path list(A2) Gathering of resource utilization status of User Terminals(A3) Selecting a suitable relay path(A4) Beginning to relay on the selected relay path
![Page 25: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/25.jpg)
![Page 26: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/26.jpg)
5. PROTOTYPE SYSTEM
![Page 27: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/27.jpg)
• The Control Interface component is user interface for a user to create or join distribution sessions and to control audio-video streams.
• The Session Connection Manager component manages distribution sessions, live stream paths and audio-video stream connections.
![Page 28: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/28.jpg)
• The User Terminal Manager component manages resource utilization status (network I/O bandwidth and CPU load) of User Terminals which join in a distribution session.
• The Stream Connection Controller component creates and deletes audio-video streams, manages relay connection and controls audio-video streaming sub-system.
![Page 29: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/29.jpg)
• The prototype system employs an existing audio-video streaming system as a part of this system.
• By using existing streaming system, we can focus on our proposed relay path selection method.
![Page 30: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/30.jpg)
6. CONCLUSION
• Using some shared network computing environments we will be able to build more high quality video distribution sessions.
• Our goal is to realize more easily live communication by audio-video streams in small community based computer networks.
![Page 31: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/31.jpg)
• In this paper, a relay path selection method for video distribution sessions has been described.
• By using the method, a suitable relay path is selected from a candidate relay path list and resource utilization status of community based computer networks.
![Page 32: Design of a Cooperative Video Streaming System on Community based Resource Sharing Networks 2010 International Conference on P2P, Parallel, Grid, Cloud](https://reader035.vdocuments.mx/reader035/viewer/2022062409/5697bfbe1a28abf838ca2bd2/html5/thumbnails/32.jpg)
END