Code Talks: From PPTV to PPIO Decentralized Storage
PPIO Code Talks is an open platform for high-quality presentations and discussions on blockchain technology with the aim of engaging the community and spreading ideas. The following is an adaptation of a presentation given on November 26 by Wayne Wong, CEO of PPIO, about his experiences in PPTV and what he and the team are planning with PPIO.
Video Software to Watch the NBA
22Let’s jump back 15 years ago. I was a computer science major at Huazhong University in Wuhan, China. I was like most of my peers in college and enjoyed reading papers, writing code, and of course watching the NBA.
During this period, as the software industry was growing in China, I found an ‘abnormal’ phenomenon while studying software development. At that time, file transfer protocol (FTP) downloads were popular on campus networks. Everyone used it to download the latest movies and games. But FTP websites suffer a huge problem — the more people downloading at the same time, the slower the download speed.
At the time, there was a unique and innovative software called BitTorrent. As it’s based on, at the time, a new computer network transmission technology called peer-to-peer, or P2P, it allowed for more users and faster downloads. The principle of this technology is that when everyone downloads, they also upload data that is shared with users. Contrast that with the client-server model where everyone gets their data only from the server. BitTorrent and P2P technology changed offered a new model. This method can greatly save server bandwidth. It made me wonder if the same principles are used, could more users result in a smoother transmission? As basketball fans, my classmate and later partner Bill Yao and I, began to research and then develop this idea. Several weeks later we had a minimum viable product that met the needs of our classmates who were using the internet to watch online content. This later turned into PPTV.
From Campus Software to 450 Million Users Worldwide
In order to further meet a growing demand, Bill and I, who were still students at the time, formed a team to turn our then campus software into a business. This was the birth of PPLive, which later rebranded as PPTV. From wanting to watch the NBA to creating a mature content ecosystem; from a niche software made from thousands of lines of code to a well known brand, PPTV has more than 10 years of development experience.
The next decade was of great success for PPTV. From 2004 onwards, PPTV went through six rounds of financing, from angels to e-round, and then finally accumulated financing numbering in the hundreds of millions of dollars.
The software architecture of PPTV has also withstood the tests of large-scale live broadcasts such as the Olympic Games, the FIFA World Cup, and the Chinese National Day parade. PPTV was finally sold to Chinese conglomerate Suning in 2014.
Timeline
To have a better idea of the type of development involved to take an idea and turn it into a multi-million dollar company, here is a brief timeline of PPTV over the years.
- 2004: Live video streaming software based on peer-to-peer technology was extended to include video on demand
- 2008: PPLive broadcast the 2008 Beijing Olympic Games
- 2009: PPLive becomes PPTV; becomes one of the largest ultrahigh-definition video platforms, gaining 450 million users worldwide
- 2011: $250 million investment from Softbank
- 2014: Suning wholly acquires PPTV
PPTV was able to serve 450 million users around the world while maintaining stability and a smooth transmission. In terms of resource aggregation, PPTV boasted 120P of storage and 50Tbp of bandwidth, while also supporting multiple platforms including the PC, Mac, mobile phones, tablets, set-top boxes, and televisions.
Success and New Emerging Industries
From a technological perspective, PPTV has made P2P streaming applications that have been tested on various extreme scenarios, and the commercialization of these technologies in the global software industry is nothing short of a miracle. However, there are also shortcomings in the design of PPTV. The essence of P2P transmission technology is sharing. If someone downloads something, someone must upload something. Only when uploading and downloading are equal, can the best user experience be guaranteed. In the early days, network transmission depended on a users’ willingness to upload. However, with the rapid development of the Internet, the influence of peer-to-peer technology is declining.
There are several reasons for this. The first is that there is no incentive to upload a file and operate a node in the network. Without an incentive to be an active part of the network, the service is not as robust as it should be. Contrast that with centralized alternatives which guarantee that content and data is available, which in turn results in a more stable service. The second is that the mobile devices, now the dominant way to browse the internet, are not suited for seeding. Due to the limitation of their operating systems, mobile devices are only suitable for downloading, rather than uploading. With fewer and fewer users relying on PCs, there are fewer uploads, and the experience of pure P2P transmissions is getting worse and worse. The PPTV team even performed a series of measures to obtain more traffic but failed to solve the underlying problem.
In recent years, the emergence of two new things in the Internet industry have attracted the attention of myself and my team. One is the sharing economy, namely Uber and Airbnb. Uber relies on sharing a ride, while Airbnb lets people rent out their homes and spaces to anyone from around the world. The other inspiration is Bitcoin which uses distributed ledger technology to design a fair and transparent mechanism that gathers the cheapest computer computing resources in the world.
Inspired by these new emerging business models, PPIO’s founding team wondered what it would be like to build a platform where idle bandwidth and storage resources could be pooled together by combining the game mechanism of the incentive layer with peer-to-peer transmission technology.
A Fresh Start and the Next Generation of Technology
In early 2018, PPIO was launched to explore the new frontier of the next generation of Internet technology.
The PPIO R&D team is committed to solving the pain points of storage and transmission in the Internet industry. From demand research to module project approval, the development team has experienced countless overnight discussions and deep research, and is responsible for the landing of each module.
The team and I have found that the demand for data storage and delivery is growing faster than the technology that facilitates it. In short, the demand for data processing on a global scale is not being fully met and there was a huge opportunity in emerging markets.
The world’s top cloud service providers, such as AWS, deploy technology that are always located in developed, stable, prosperous, and safe cities.
In recent years, the Internet ecosystem in emerging markets has been rising at lightning speed, and it seems that the big players have not paid enough attention to provide cloud services to long tail sectors.
Another interesting insight comes from comparing traffic prices in global emerging markets. Data shows that the price of cloud services in emerging markets such as Southeast Asia and South America is three times higher than in Europe and the United States. The current storage industry faces some challenges.
Three Challenge of Centralized Cloud Services
Challenge 1: High Costs
In the era of big data, the price of centralized cloud storage and bandwidth is high and the current cloud storage giants monopolize the industry. This has lead to huge differences in the price depending on the region.
Challenge 2: Cloud Failure Is Inevitable
Centralized cloud computing solutions are prone to single points of failure and data loss. Past services like Google Cloud and TenCent’s Cloud have suffered from this.
Challenge 3: Data Security and Privacy Protection
Centralized storage are at risk of breaching your data privacy. Even the biggest companies like Dropbox had 60 million user’s accounts hacked.
From PPTV Video Streaming to PPIO Distributed Storage and Transmission
A simple summary of PPIO might be that we are an AWS-like storage and delivery service based on distributed resources. PPIO will not replace existing cloud services but will serve certain businesses and scenarios as a complement to traditional cloud services.
PPIO’s sustainable business model is based on price differences, such as the price difference between demand and supply, which will provide developers with a cost-effective interface through a low-cost supply of resources.
PPIO is positioned as a blockchain service platform that enables content storage and delivery:
- Affordable: Use incentives to stimulate idle resources to contribute to an affordable network
- Faster: The nature of P2P technology is that it is fast
- Greater privacy: Apply cutting-edge cryptography & blockchain technology to maximize user privacy
Will a Decentralized Storage Network Provide the Same Quality of Service as AWS?
Some people suspect that when data is stored on a miners’ machine, it can lead to the loss of files due to the miners’ instability.
If you examine another sharing service like Uber, while there are unreliable drivers that contribute to a bad experience, the greater majority of drivers are very reliable. A storage and delivery platform based on the same principles and can meter the same penalties for people that do not enrich the service will also be able to guarantee a high-quality experience.
Furthermore, can a large company like AWS S3 guarantee that 100% of stored files are not ever lost? The truth is, they can only guarantee that 99.99999999999% of stored files will not be lost. The storage industry calls this quality of service (QoS) durability. We can also provide a QoS at the same rate but at a cheaper price.
Want to understand how our erasure algorithm works so your data is never lost? Read How PPIO Protects Your Data for more details.
Developing A Sustainable Platform
To become a decentralized platform, PPIO is being designed in three distinct stages: centralized, semi-centralized, and completely decentralized.
Looking at other storage or transmission projects, most of them are focused on “complete decentralization, security and privacy, and community-based governance.” The purpose behind these projects is to increase the “valuation” in response to hype, without placing the actual usage as the first consideration. As a team looking to solve the pain points of storage and transmission, PPIO’s architecture design will initially consider sacrificing some decentralized aspects in order to prioritize a successful launch and long-term application.
This design mainly considers three aspects:
Complicated Proof Mechanisms
Unlike digital currencies, blockchain proof mechanisms for decentralized storage and transmission are more complex. The size and time of the stored content is a measurement factor as is how much data is transmitted. To prove these two factors, it requires a mechanism that is far more complicated than Bitcoin’s stand-alone “do arithmetic” PoW algorithm. The mechanism required is not simple or a one-time commercial solution.
QoS Iteration and Optimization
QoS optimization is not achieved overnight, but only after a long upgrade and numerous iteration cycles. At the very beginning of PPIO’s architecture design, there was a strong emphasis on efficient QoS because good QoS can attract users and thus create a positive-growth cycle.
Economic Model
The establishment of a reward and punishment system in the early days will be very important. There are many issues that need to be explored, such as whether a mortgage is required to participate in consensus, or whether offline nodes need to be punished if the reason is due to non-human actions (e.g. network failure). After much discussion we believe that the sustainable development of the platform will be affected if the economic model is set too early and doesn’t allow for natural changes depending on what occurs from future use.
PPIO Usage Scenarios
PPIO is mainly suitable for some scenarios with large storage and transmission requirements, including the following:
- In-demand Data Transmission Scenarios: File distribution (CDN, game downloads), live broadcasts, online on-demand, etc.
- Transmission Scenarios: WeTransfer, RapidShare, offline network disk, etc.
- Pure Transmissions: Audio and/or video calls, conferences, low-latency live broadcasts, etc.
- Data Storage: Personal network disk, enterprise network disk, data backup, etc.
PPIO’s Technology Design for Content Distribution
We have rich experience in designing and operating a successful P2P video streaming service. This has enabled our team to accumulate the knowledge and practices of P2P delivery projects in terms of technology, products, and operational practices. These experiences allow us to design the technical architecture that meets the actual needs for content delivery products. The following is PPIO’s technical design for content delivery scenarios.
1. Overlay Network
PPIO supports an overlay network. Each storage node (miner) will take the storage node with a faster physical connection as its neighbor. Every node can take full advantage of its neighbor nodes to significantly improve network efficiency.
2. Optimization of Media Streaming Transmission
Streaming media content delivery is the most commonly used types of products used today. Therefore a service that supports it must provide a high QoS. PPIO implements a special data-driven download algorithm for media streaming to ensure smooth playback of live streaming media.
3. P4P Technology
P2P will generate a large amount of cross-ISP traffic between networks. There is no additional charge for the traffic within the network of an ISP, but ISPs usually charge extra for the traffic generated by the transmission between different operators. Is there any way to maintain the advantages of P2P technology while reducing cross-ISP traffic? Yes, with P4P technology.
4. Design for P2P Living Streaming
The PPIO platform not only considers the download of streaming media on demand but also includes live streaming services. Live broadcast is essentially the delivery of a series of small files. These small files have a shorter life cycle and are useless after a certain period of time. Despite their size, these files do have a high requirement for efficient delivery. For example, small files need to be delivered very quickly to as many nodes as possible. The overall structure of a live broadcast is consistent with the streaming media system of PPIO. It is worth noting though that the way to split the files and the download algorithm is different.
5. PPIO’s PCDN Design
PPIO is designed to support PCDN and to provide an easy-to-use interface for DApps to accelerate their content delivery.
6. Adaptive Scheduling of Popular Content
In P2P-CDN, adaptive scheduling of popular content is an essential means to improve the quality of service (QoS). Adaptive scheduling ensures that content is scheduled to more and more storage nodes as it becomes popular. The more nodes hosting the content, the better the user experience and the more nodes that make a profit.
7. Pre-Delivery Mechanism
If there are already a lot of people watching a TV series, then it’s very likely that these people will tune in a week later for the next episode. Therefore a published can push the newest episode in advance to all the storage nodes so that they are ready for users to access the content once it is officially released.
Compared with other storage blockchains, PPIO attaches more importance to data delivery. Here is a simple comparison table that analyzes three storage chains and gives comparative information.
For more information about PPIO’s content delivery design, please read our article Why PPIO Offers The Best Content Delivery Solution On The Market.
Current Status
We have launched our TestNet that offers a small glimpse of what we are building. It’s a simple personal storage cloud disk that you can use to upload, download and share your files. All operations are decentralized and it is also open sourced.
Also available is our command line interface ‘PPIO CLI’ and our PPIO SDK for Node.js and Android. You can find more information on our Github or official website along with guides to help you.
I hope you can all follow us on our journey as we build an alternative to current clouds services; a new platform that is based on affordability, privacy, and security.
Wayne Wang is the CEO of PPIO and Former Chief Architect and Co-Founder of PPTV. To understand the full journey that led Wayne to start PPIO and some of his experience starting companies, please read My Blockchain Startup Journey: Reflections of a Tech Entrepreneur.
More In The Code Talks Series
- Steps Needed to Build a Blockchain Platform: No-nonsense explanation of everything needed when building a blockchain platform.
- Application of Zero-Knowledge Proofs: From November’s Code Talk meetup at Tongji University. This article looks at the different types of zero-knowledge proofs and how they can be applied to improve a project
- Libra and PPIO: Our first Code Talks coincided with the announcement of Libra so we break down how it works and then share what we can learn from it.
- Tendermint: Introduction and Analysis: Details the ingenuity of their consensus mechanism and a tutorial on building your own public chain in just 15 minutes.
- The A-to-Z on zkSnarks: Why zero-knowledge proof is ideal for authentication so no one else can knows what you’re communicating.
- Talking Sense About Digital Currency Exchanges: Unpacking the business mechanics of exchanges and the biggest challenges they need to know in order to grow.
Want more? Join the PPIO community on Discord or follow us on Twitter.