ABSTRACT
InterPlanetary File System (IPFS) is a peer-to-peer protocol for decentralized content storage and retrieval. The IPFS platform has the potential to help users evade censorship and avoid a central point of failure. IPFS is seeing increasing adoption for distributing various kinds of files, including video. However, the performance of video streaming on IPFS has not been well-studied. We conduct a measurement study with over 28,000 videos hosted on the IPFS network and find that video streaming experiences high stall rates due to relatively high Round Trip Times (RTT). Further, videos are encoded using a single static quality, because of which streaming cannot adapt to different network conditions.
A natural approach is to use adaptive bitrate (ABR) algorithms for streaming, which encode videos in multiple qualities and streams according to the throughput available. However, traditional ABR algorithms perform poorly on IPFS because the throughput cannot be estimated correctly. The main problem is that video segments can be retrieved from multiple sources, making it difficult to estimate the throughput. To overcome this issue, we have designed Telescope, an IPFS-aware ABR system. We conduct experiments on the IPFS network, where IPFS video providers are geographically distributed across the globe. Our results show that Telescope significantly improves the Quality of Experience (QoE) of videos, for a diverse set of network and cache conditions, compared to traditional ABR.
- [1] 2015. http://www.ppstream.com/Google Scholar
- [2] 2018. https://github.com/Dash-Industry-Forum/dash.js/wiki/ABR-LogicGoogle Scholar
- 2021. DTube coin (DTC) presentation. https://token.d.tube/Google Scholar
- 2022. DTube. https://d.tube/Google Scholar
- 2022. HTTP RPC API reference. https://docs.ipfs.io/reference/http/api/Google Scholar
- 2022. PPTV. https://pptv.com/Google Scholar
- Adobe. 2022. Adobe HTTP Dynamic Streaming. http://www.adobe.com/products/hds-dynamic-streaming.htmlGoogle Scholar
- Saamer Akhshabi, Ali C. Begen, and Constantine Dovrolis. 2011. An Experimental Evaluation of Rate-Adaptation Algorithms in Adaptive Streaming over HTTP. In Proceedings of the Second Annual ACM Conference on Multimedia Systems (San Jose, CA, USA) (MMSys ’11). Association for Computing Machinery, New York, NY, USA, 157–168. https://doi.org/10.1145/1943552.1943574Google ScholarDigital Library
- Zahaib Akhtar, Yun Seong Nam, Ramesh Govindan, Sanjay Rao, Jessica Chen, Ethan Katz-Bassett, Bruno Ribeiro, Jibin Zhan, and Hui Zhang. 2018. Oboe: Auto-tuning Video ABR Algorithms to Network Conditions. In Proceedings of the 2018 Conference of the ACM Special Interest Group on Data Communication. Budapest, Hungary, 44–58.Google ScholarDigital Library
- Fasiha Ashraf, Ateeqa Naseer, and Shaukat Iqbal. 2019. Comparative analysis of unstructured P2P file sharing networks. In Proceedings of the 2019 3rd International Conference on Information System and Data Mining. 148–153.Google Scholar
- Susie Batt. 2021. Your Files for Keeps Forever with IPFS. https://blogs.opera.com/tips-and-tricks/2021/02/opera-crypto-files-for-keeps-ipfs-unstoppable-domains/.Google Scholar
- Juan Benet. 2014. IPFS - Content Addressed, Versioned, P2P File System. CoRR abs/1407.3561 (2014). arXiv:1407.3561http://arxiv.org/abs/1407.3561Google Scholar
- Brian Bondy. 2021. IPFS Support in Brave. https://brave.com/ipfs-support/.Google Scholar
- Cloudflare. 2021. What is MPEG-DASH¿https://www.cloudflare.com/learning/video/what-is-mpeg-dash/.Google Scholar
- Bram Cohen. 2003. Incentives build robustness in BitTorrent. In Workshop on Economics of Peer-to-Peer systems, Vol. 6. Berkeley, CA, USA, 68–72.Google Scholar
- Dash-Industry-Forum. 2021. Dash.js Github. https://github.com/Dash-Industry-Forum/dash.js.Google Scholar
- Edgar Lee Dirk McCormick. 2020. New improvements to IPFS Bitswap for faster container image distribution. https://blog.ipfs.io/2020-02-14-improved-bitswap-for-container-distribution/.Google Scholar
- Trinh Viet Doan, Tat Dat Pham, Markus Oberprieler, and Vaibhav Bajpai. 2020. Measuring Decentralized Video Streaming: A Case Study of DTube. In 2020 IFIP Networking Conference, Networking 2020, Paris, France, June 22-26, 2020. IEEE, 118–126. https://ieeexplore.ieee.org/document/9142739Google Scholar
- Gin-Gonic. 2021. Gin Web Framework Github. https://github.com/gin-gonic/gin.Google Scholar
- golang.org. 2021. The Go Programming Language. https://golang.org/.Google Scholar
- Barbara Guidi, Andrea Michienzi, and Laura Ricci. 2020. Steem Blockchain: Mining the Inner Structure of the Graph. IEEE Access 8 (2020), 210251–210266. https://doi.org/10.1109/ACCESS.2020.3038550Google ScholarCross Ref
- Ragib Hasan, Zahid Anwar, William Yurcik, Larry Brumbaugh, and Roy Campbell. 2005. A survey of peer-to-peer storage techniques for distributed file systems. In International Conference on Information Technology: Coding and Computing (ITCC’05)-Volume II, Vol. 2. IEEE, 205–213.Google ScholarDigital Library
- Hsiao-Shan Huang, Tian-Sheuan Chang, and Jhih-Yi Wu. 2020. A Secure File Sharing System Based on IPFS and Blockchain. In Proceedings of the 2020 2nd International Electronics Communication Conference (Singapore, Singapore) (IECC 2020). Association for Computing Machinery, New York, NY, USA, 96–100. https://doi.org/10.1145/3409934.3409948Google ScholarDigital Library
- Ipfs. 2021. IPFs/ipfs-companion: Browser extension that simplifies access to ipfs resources on the web. https://github.com/ipfs/ipfs-companionGoogle Scholar
- Ipfs. 2022. InterPlanetary Name System (IPNS). https://docs.ipfs.io/concepts/ipns/.Google Scholar
- kernel.org. 2021. tc - show / manipulate traffic control settings. https://linux.die.net/man/8/tc.Google Scholar
- Hongzi Mao, Ravi Netravali, and Mohammad Alizadeh. 2017. Neural Adaptive Video Streaming with Pensieve. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (Los Angeles, CA, USA) (SIGCOMM ’17). Association for Computing Machinery, New York, NY, USA, 197–210. https://doi.org/10.1145/3098822.3098843Google ScholarDigital Library
- Hongzi Mao, Ravi Netravali, and Mohammad Alizadeh. 2017. Neural Adaptive Video Streaming with Pensieve. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication, SIGCOMM 2017, Los Angeles, CA, USA, August 21-25, 2017. ACM, 197–210. https://doi.org/10.1145/3098822.3098843Google ScholarDigital Library
- Wolfgang Merkle and Frank Stephan. 1996. Trees and Learning. In Proceedings of the Ninth Annual Conference on Computational Learning Theory, COLT 1996, Desenzano del Garda, Italy, June 28-July 1, 1996, Avrim Blum and Michael J. Kearns (Eds.). ACM, 270–279. https://doi.org/10.1145/238061.238118Google ScholarDigital Library
- Microsoft. 2022. Microsoft Smooth Streaming. http://www.iis.net/downloads/microsoft/smooth-streamingGoogle Scholar
- Naeem Ramzan, Hyunggon Park, and Ebroul Izquierdo. 2012. Video streaming over P2P networks: Challenges and opportunities. Signal Processing: Image Communication 27, 5 (2012), 401–411. https://doi.org/10.1016/j.image.2012.02.004 ADVANCES IN 2D/3D VIDEO STREAMING OVER P2P NETWORKS.Google ScholarDigital Library
- Ton Roosendaal. 2008. Big Buck Bunny. In ACM SIGGRAPH ASIA 2008 Computer Animation Festival (Singapore) (SIGGRAPH Asia ’08). Association for Computing Machinery, New York, NY, USA, 62. https://doi.org/10.1145/1504271.1504321Google ScholarDigital Library
- Sandvine. 2022. Global internet phenomena. https://www.sandvine.com/phenomenaGoogle Scholar
- Kevin Spiteri, Ramesh Sitaraman, and Daniel Sparacio. 2018. From Theory to Practice: Improving Bitrate Adaptation in the DASH Reference Player. In Proceedings of the 9th ACM Multimedia Systems Conference (Amsterdam, Netherlands) (MMSys ’18). Association for Computing Machinery, New York, NY, USA, 123–137. https://doi.org/10.1145/3204949.3204953Google ScholarDigital Library
- Kevin Spiteri, Rahul Urgaonkar, and Ramesh K. Sitaraman. 2016. BOLA: Near-optimal bitrate adaptation for online videos. In IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications. 1–9. https://doi.org/10.1109/INFOCOM.2016.7524428Google ScholarDigital Library
- Dennis Trautwein, Aravindh Raman, Gareth Tyson, Ignacio Castro, Will Scott, Moritz Schubotz, Bela Gipp, and Yiannis Psaras. 2022. Design and Evaluation of IPFS: A Storage Layer for the Decentralized Web. In ACM SIGCOMM 2022 Conference (SIGCOMM ’22). ACM, Amsterdam, Netherlands. https://doi.org/10.1145/3544216.3544232 ISBN 978-1-4503-9420-8/22/08.Google ScholarDigital Library
- Long Vu, Indranil Gupta, Jin Liang, and Klara Nahrstedt. 2006. Mapping the PPLive network: Studying the impacts of media streaming on P2P overlays. (2006).Google Scholar
- Quanqing Xu, Zhiwen Song, Rick Siow Mong Goh, and Yongjun Li. 2018. Building an Ethereum and IPFS-Based Decentralized Social Network System. In 2018 IEEE 24th International Conference on Parallel and Distributed Systems (ICPADS). 1–6. https://doi.org/10.1109/PADSW.2018.8645058Google ScholarCross Ref
- Xiaoqi Yin, Abhishek Jindal, Vyas Sekar, and Bruno Sinopoli. 2015. A Control-Theoretic Approach for Dynamic Adaptive Video Streaming over HTTP. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, SIGCOMM 2015, London, United Kingdom, August 17-21, 2015, Steve Uhlig, Olaf Maennel, Brad Karp, and Jitendra Padhye (Eds.). ACM, 325–338. https://doi.org/10.1145/2785956.2787486Google ScholarDigital Library
Index Terms
- Is IPFS Ready for Decentralized Video Streaming?
Recommendations
An adaptive buffer-map exchange mechanism for pull-based peer-to-peer video-on-demand streaming systems
Unlike P2P live video streaming in which all the peers in a channel watch a video with tiny differences in viewing points, in P2P video on demand (VoD) streaming systems, neighbor peers may watch the same video with more different viewing points; ...
Experimental comparison of a tree-based and a mesh-based peer-to-peer video streaming system
Grid and P2P SystemsWe analyse two commercial peer-to-peer (P2P) video streaming systems via active measurements: a tree-based overlay multicast and a mesh-based overlay. Our controlled IP test bed allows us to reproduce near-identical network conditions for both systems ...
Multiple description coded video streaming in peer-to-peer networks
It is known that in a peer-to-peer (P2P) network a peer node serves as both a receiver and a supplier, which enables uploading bandwidth of peer nodes to be utilized efficiently while relieving burden of the server node. This solves the scalability ...
Comments