My PPLive/PPTV startup experience
I am a person who is very eager to pursue technology and geek spirit. I always want to do things that change the world.
In 2004, when I was still in college, suddenly one day, Bill approached me and said that there was no way to watch NBA basketball games smoothly via the Internet on campus . Can we do a real-time live video software using P2P transmission technology together? This idea was similar to the popular BitTorrent download software at that time. When I looked at this idea, I could not only solve my own needs for watching NBA, but also the most important thing is that I could not resist the temptation of technical challenges, so I quickly agreed to Bill. In this way, we started our business together and the software soon became very popular in China. PPLive was later rebranded as PPTV. Bill became the Founder and CEO of PPTV and I became the Chief Architect of PPTV and began to focus on P2P transmission technology.
The first thing PPLive achieved was real-time streaming via peer to peer transmission technology. What is real-time streaming P2P transmission technology? It is simultaneous data upload and download at the same time, which makes live streaming possible.
Simply put, I am for everyone, everyone is for me.
In the beginning, I led the team to build an live broadcast platform with P2P. Because the characteristics of live broadcast are that many people will share the same data, this way we can achieve a bandwidth saving ratio of more than 99.9% when we watch the most popular content at the same time. With only 10Mb of release bandwidth, it can support up to 10 million users to watch TV at the same time.In this case, we can achieve excellent QoS(Quality of Service): the average time to start playing is 1.2 seconds; the average count of interruption is 1.6 seconds per half an hour; the whole network latest delays from broadcast source is up to 90 seconds.
After the P2P live broadcast is completed and became sophisticated, we began to develop P2P VOD(video on demand) because the demand for VOD was getting bigger and bigger. P2P VOD on-demand and P2P live broadcast are different from each other. VOD is the need to use hard disk storage and memory cache, which is more difficult than the live broadcast. Besides, it is the difference between popular content and unpopular content in the VOD system, and the P2P effect of unpopular content is not as good as the popular content. However, our P2P VOD has achieved excellent QoS(Quality of Service) too: 90% bandwidth saving ratio; the average time to start playing is 1.5 seconds; the average count of interruption is 2.2 seconds per half an hour; the average time to play when seek position is 0.9 second.
Subsequently, I led the team to port the P2P kernel to the embedded system. We streamlined the P2P transmission protocol and made a number of optimizations in terms of performance. The hard disk in embedded device read and write is not used for regular mechanical hard disk, so we have done a good amount of protection measures, which enable the P2P core to run on embedded devices. Then we quickly launched an iOS client that supports P2P, an Android mobile phone client that supports P2P, and finally an Android set-top box client that supports P2P.
Soon after, amid the growing popularity of smartphones, video creation became easier than ever Smartphone users become more enthusiastic about producing their own content, which helped video content increased dramatically. I led the team to start the cloud broadcast service, giving each user a certain amount of free storage space. On this platform users can freely upload,download, and share video content, In fact, it is very similar to network hard drives such as Google Drive. The difficulty of network hard drive with share is similar to that of VOD, but the count of videos is far more than that of VOD. The content head effect is more obvious and a large amount of content is stored in the tail. We have put a great amount of work onto the optimization of this particular area.
In 2013, PPTV was sold it to a listed Chinese company, Suning Yunshang, for US$420 million. A year later, I waved goodbye to video and P2P technology, which I had been doing for over ten years. To pursue a bigger dream, I started a new path to another startup.
My startup experience at JDO
After the success of PPTV startup, I have been pursuing new technology and geek spirit, so I did not choose video and P2P fields again, instead, I devoted myself to intelligent hardware and artificial intelligence. In 2014, I founded JDO with Cloud Wong, a company which produces cars that implement AI technology and connected to the Internet. In the past four years, I have served as CTO in JDO, and have accumulated in-depth technical experience in intelligent hardware, embedded software, artificial intelligence, and machine learning.
The automotive industry is a very closed industry. We need a long business negotiation cycle for everything we do and the product development cycle is limited by the iteration cycle of cars. In this environment of only catering to businesses, I could not entirely follow my ideas to be innovative. JDO was doing very well in the automotive field, where they have received orders from many internationally renowned car manufacturers. However, in order to pursue a bigger dream and to change the world, I decided to leave JDO.
The thought of sharing storage
Because I am doing artificial intelligence every day, I have to do a lot of neural network training and I have established cooperation and communication with many other AI companies. To do neural network training, it requires high-end NVIDIA GPU graphics cards, such graphics cards are costly, and most of the time they are idle. I was ponder: Is there a chance to build a shared GPU graphics platform, which encourages everyone to rent out unused GPU resources? Meaning when I need it, I have to pay to use other people’s unused GPU resources to calculate; when others need it, they have to pay to use my remaining GPU resources to calculate; so for startups, you don’t need to buy so many GPUs at once. The cost will be reduced and companies that use less can make money.
I took the idea of sharing a GPU graphics platform, did a simple MVP(Minimum Viable Product) to verify my thoughts and let several cooperative AI companies to use this MVP. However, I found that they have not been used. After I learned about the situation, I realized that although AI companies like lower price with sharing GPU graphics platform, they are more concerned about the security of data than price. AI company’s data collection often requires high cost to collect enough data. If they put these data on shared computers, they are afraid of being stolen data by competitors. More importantly, the neural network does not have an excellent way to split into multiple computer calculations, encrypt the data in time, and the data must be decrypted before entering the neural network, which is easy to be stolen. Technically, there is currently the no good way to decentralize the neural network model and there is no good way to send cryptographic data directly into the neural network calculation. Due to this obstacle plus other reasons, I finally gave up on this idea.
At this time, P2P storage suddenly came to my mind. I used to work on P2P video for 10 years. If you do not share the GPU, but only the hard disk and bandwidth, could this be feasible? After careful consideration, as we are entering the Internet of Things era, a large number of households have idle computers which not fully used, a large number of households purchase bandwidth on a monthly basis but not fully used, and a large number of IoT devices have storage capabilities. If these vast amounts of idle resources can be fully utilized, this will be an excellent cause for human society.
More importantly, what was done in PPTV before was that users share content voluntarily without any incentives. What is needed now is to encourage users to share by giving them incentives. That is, some users use the service to pay for the fee, and some users provide services to earn income, thus establishing a sharing storage network, just like Uber and Airbnb, passengers and rentees use the service to pay the fee, the driver and the landlord provide services to earn income.
Therefore, I came up with this sharing storage idea. The few problems that can be solved are:
- The cost is lower because, For miners, this is the reuse of idle resources. It is a fairly zero cost regarding cost structure.;
- Faster, P2P can speed up the transmission, and PPTV’s success is the best proof. After the sharing storage, because the storage nodes are everywhere on the network, the data is stored on the nearest storage node, so it can also be the fastest transmission.
- Decentralized storage is more private. because big companies do not necessarily guarantee privacy. Almost all big companies have exposed data leakage incidents. Today’s big companies are very dependent on big data and they might use user data for AI training. Decentralized storage is to double-encrypt data through the user’s key and developer key, then slice it into multiple segments.In this way, different segments are stored on different computers. Moreover, the sharing platform itself does not store data, which completely prevents leakage risk. Only the user’s key can open the data and the sharing operator has no way. Also, for hackers, hacking into one computer is useless, because the data is stored across many different computers This significantly increases the difficulty for hackers to steal data.
Although shared storage can solve these problems, it also brings many challenges.
- How to guarantee the stability of miner nodes? Some nodes will go online soon and some will go offline, just like the users of PPTV before. How to make stable products based on unstable nodes is a challenge, but it is also a thing that P2P itself must do.
- The quality of the miner node: For example, the hard disk of some miner nodes may be old, and it is easy to break; for another example, the bandwidth quality of some miner nodes may be terrible; for another example, some place’s power is unstable, and there are power outages frequently.
- Cheating on evil miner nodes: Since there are gains, some people find ways to cheat. It is the weakness of human nature and it is inevitable.
Although these problems are challenging, for me who have done 10 years of international P2P projects, I believe that these problems can be solved very well in the end, because most of the problems have been encountered before in PPTV.
However, if it’s just shared storage, even if you do the above, why do you believe that your income distribution is fair? It is the value of the blockchain.
Me and blockchain
The fate of my blockchain, starting in 2010, I was exposed to Bitcoin, a P2P currency system. As a commercial P2P practitioner, I quickly read through Bitcoin’s code: block, block hash, nonce, and mining algorithms, which are quickly understood. However, at the time I only felt the greatness of Bitcoin’s technology. In business, I didn’t understand it so deeply.
Later, Ethereum was born. In my opinion, in addition to optimizing Bitcoin’s block performance and mining algorithm, Ethereum’s most significant improvement is that Bitcoin can only execute simple instructions OPCODE into complex logic code. Virtual machine code and can program in solidity high-level language. This blockchain can be used not only for digital currencies but also for writing a variety of smart contracts that work in many scenarios.
Later, after carefully studying the technical mechanism of the open source alliance chain fabric made by IBM, I finally found the value of the blockchain itself.
From a technical point of view, blockchain is essentially a distributed and fully synchronized database. Since the chain scattered on different computers, there is a need to resolve the dispute, and the consensus algorithm is used to resolve the dispute. From a sociological perspective, the decentralization and consensus of blockchains can generate enormous social value. This value is that blockchain can build real trust. The value is that the public blockchain can build true public trust.
In the sharing storage scenario, I think it is wrong to store the stored files on the chain. The function of the blockchain for shared storage does not aim at solving data storage problems, but to solve trust problems. The data stored in the chain should be trust-related data, such as user assets, storage contracts, proofs, rewards, and penalties.
My thinking is getting clearer
With blockchain technology, an effective third-party node certification mechanism can be established to supervise the cheating problem of evil nodes through consensus; the rules of sharing distribution cannot be changed thought of one’s will, and there are fairness and transparency.
Because of fairness and transparency, everyone can safely invest resources in the platform network. Because of fairness and transparency, everyone is willing to invest in funds and build a reliable and competitive and large service center to provide services for incentives. Because of fairness and transparency, there is a truly transparent market that drives everyone to look for better and affordable resources to provide users with better and affordable services.
Because of fairness and transparency, we can build an economic model that is implemented purely by computer programs. For evil miners, they must be severely punished until the collateral is forfeited to 0. For the miners who are unstable online and the service, it must be punished according to the amount and the collateral is forfeited. Thus, such method stimulates miners to provide stable service. For miners who occasionally fail, there must be a warning penalty to motivate the service provider to provide more stable hardware. Through an effective economic mechanism, as long as the miners are stable, the entire platform service will be stabilized and QoS will be guaranteed.
What needs to be done is to: use blockchain to create a sharing storage network; use incentives to stimulate sharing; use public blockchain to ensure fair and transparent incentives. The value is: affordability, speed, and privacy. This network is easy to use and is friendly to developers. Developers can write a variety of applications in various computer languages.
Eventually, I started the project PPIO
When I was doing PPTV back in the days, Bill approached me. However, this time I approached Bill and told him that I wanted to change the world again. Therefore, Bill and l once again launched this new project with the goal to change the world，which is PPIO.
PPIO — — A decentralized data storage and delivery platform for developers that values speed, affordability, and privacy.