Download as pdf or txt
Download as pdf or txt
You are on page 1of 29

The New Internet

Moving from a centralized to a Decentralized to a


Distributed Internet

COS216
AVINASH SINGH
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF PRETORIA
Topologies
History

 Originally the internet was centralized


 Central sole servers
 Central DNS
 Central switches
 Over the past few decades, the internet has become
decentralized
 Multiple duplicate/backup servers (eg multiple Google
servers)
 Multiple hierarchical DNS servers
 Decentralized switches
History

 A truly distributed internet was just a theoretical idea for a long time
 With technological advances a distributed internet is now feasible
 Exponential increase in computational power (Moore’s law)
 Increase and internet speed and bandwidth, with a parallel decrease in price
 Advances in distributed and consensus algorithms (blockchains, hashgraphs, etc)
 Many projects have popped up trying to create a distributed internet
 In this lecture we will look at the main projects
Future

 The near to far future


1. Next 5 years: Distributed systems will only be used by a few people, mainly developers
2. Next 10 years: Entry points will be created to connect the “old internet” to the “new
internet”
3. Next 15 years: More people and applications will start using distributed systems
4. Next 20 years: The majority of the global networks will run over the “new internet”
Centralization

 Centralized, and to an extent decentralized, systems have a number of problems


 Bottlenecks and poor architecture
 Single point of failure
 Subject to certain attacks like DDoS
 Ownership and profit-driven companies
 Censorship, restrictions, and freedom of speech
 Different distributed systems try to solve some or all of these problems
Distribution

 With a truly distributed internet


 Any individual (phone, laptop, desktop, etc) can join the network
 These individuals can operate as servers and ISPs (miners) and earn money for that
 Or the individuals can only be clients and access websites without being the server as well
 With a distributed internet, there will be no need for ISPs or central servers
 These roles will be taken over by individuals
 Some form of ISPs will probably always exist, since someone has to provide the underlying
infrastructure
Components

 Various components of our current internet/network structure has to be distributed to


create the “new internet”
 Distributed DNS and routing
 Distributed file storage and replication
 Distributed application execution
 Distributed communication, email, and chat
 Distributed consensus, security, and payments
 We will specifically look at a distributed web, other components to create a
distributed internet are beyond the scope of this module
Systems

 Various systems have varying degree of distributed internet features


 BitTorrent (2001)
 Usenet (1979)
 Freenet (2000)
 ZeroNet (2015)
 Ethereum (2015)
 MaidSafe (2016)
 Status (2017)
 IPFS (2017)
 Skycoin (2017)
BitTorrent

 Distributed peer-to-peer (P2P) network protocol


 Created by Bram Cohen in 2001
 BitTorrent refers to
 The application-layer BitTorrent protocol for data transmission
The client application GUI used to download torrents
 The company (BitTorrent Inc) create by Cohen
 BitTorrent is to used share files via a distributed network
 Is not the “new internet”, since it only solves the distributed file storage problem
 BitTorrent has some centralized aspects, such as torrent file/magnet retrieval and trackers
 BitTorrent company purchased by Tron (cryptocurrency project) in 2018
Usenet

 Decentralized information exchange network


 Created by Tom Truscott and Jim Ellis in 1979/1980
 Was the predecessor to the web (WWW)
 Originally indented for journalists to exchange news articles
 Similar to a forum or bulletin board (eg Reddit)
 Originally only allowed text, binary support was later added
 Today is mostly used for file sharing, like BitTorrent
 Was never distributed, but rather decentralized
Freenet

 P2P censorship resident communication network


 First truly distributed web
 Created by Ian Clarke in 2000
 The main focus on the project was
 Censorship-free internet
 Freedom of speech
 Privacy and anonymity
 Similar to the Tor network, but has distributed internet components that Tor does not
have
Freenet

 Freenet operates as follows


 Each users provides disk space to Freenet
 The disk space is used to stores parts of the content accessed on the Freenet
 No control over which content is saved locally
 Locally stored files are encrypted
 If a peer request certain content, it is retrieved from another peer who has a copy of the
content
 Similar to torrents, but aim is on general web content
 Old/unrequested data is deleted – unvisited websites may disappear
 Hence, websites are distributed over the network, similar to how other files are
distributed via BitTorrent
ZeroNet

 Not a new network


 Created by Tamas Kocsis in 2015
 A combination of multiple other technologies
 Bitcoin
 BitTorrent
 Tor
 The focuses on creating a distributed web using existing systems
ZeroNet

 ZeroNet aims to create a distributed web-based network


 Servers websites without the need of centralized servers
 Currently websites are limited to 10MB, but more storage can be manually granted
 Users who access a website (leechers) are also serving/sharing the website (seeders)
 Website can be served as long as at least one users has a copy
 Nearly impossible to take down
ZeroNet

 BitTorrent
 Share the website data (HTML, JS, CSS, images, etc)
 When accessing a website the user leeches the website and afterwards seeds the website
to others
 Dedicated seeders also exist
 ZeroNet uses BitTorrent trackers to establish connections between peers
ZeroNet

 Bitcoin
 Instead of using IP addresses to identify websites, a Bitcoin public key (wallet address) is
used as identifier
 Although completely free, these addresses can also be used in the future for certain
payments, such as increasing the website storage space
ZeroNet

 Tor
 IP addresses are hidden through built-in Tor functionality

 Domains
 Website domains can be registered through Namecoin
 Namecoin is the first Bitcoin fork
 Provides domains and distributed DNS
 Provides .bit domains
Ethereum

 An open-source distributed computing platform


 Created by Vitalik Buterin in 2013 (released in 2015)
 The second largest cryptocurrency
 Although most people see Ethereum as (only) a currency
at the moment, its intent was to create a distributed internet
 Ethereum is the network/blockchain, Ether is the cryptocurrency running on top of
Ethereum
Ethereum

 One mayor feature that Ethereum introduced to the blockchain community is


distributed apps (dapps)
 Dapps are small pieces of code (applications) that can be executed on the Ethereum
network
 These dapps run in an Ethereum Virtual Machine (EVM) supporting a number of different
programming languages (C++, Java, Python, JavaScript, Rust, Go, Haskell, etc)
 Dapps require “gas” to be executed which is purchased with Ether
 The creator/owner of the dapp pays for the execution, and the node/miner who executes
the code receives that money
 Smart contracts are high-level programming abstractions that assigns a digital contract to
the execution of a dapp (contract to pay amount X for the execution of dapp Y)
Ethereum

 Due to having dapps and smart contracts, other tokens (ERC20) can be built on top
of Ethereum
 You can very easily create your own ERC20 token (only requires 5 functions)
 Most tokens out there are Ethereum-based (BAT, 0x, Binance, OmiseGo, Status, etc)
Ethereum

 The Ethereum Name Service (ENS) provides decentralized resource addressing


 Names are human-readable and easy to use by blockchains
 ENS therefore provides domains and DNS services for a distributed internet
 They offer .eth domains
Ethereum

 Ethereum has some features of a distributed internet


 Distributed execution (dapps and smart contracts)
 Distributed DNS and domains (ENS)
 One thing that Ethereum is missing is a distributed file storage
 This is a discussed feature in the Ethereum community
 Can easily be added through an ERC20 token
 Most projects now combine Ethereum with the InterPlenatary File System (IPFS) for storage
 Storj is an ERC20 that offers distributed storage on the Ethereum network
 Various other smaller tokens exist for distributed storage
MaidSafe

 A company who started to implement the SAFE network in 2006


 Massive Array of Internet Disks (MAID)
 Secure Access For Everyone (SAFE)
 Tried to implement a distributed internet with focus on
 Distributed storage
 Secure/encrypted network
 Distributed routing
 Some of MaidSafe’s developers are on the Silicon Valley series’ technical advisory
board
 Still very early in the development phase
Status

 An Ethereum token released in 2017


 Company based in Switzerland
 Tries to create a decentralized web
 Aims at browser, chat, and payments
 Starting with chat, browser will be released later
 Browser will allow dapp access for the entire Ethereum network
 Still in its infancy
IPFS

 InterPlanetary File System (IPFS)


 A distributed hypermedia P2P web
 Created by Protocol Labs and released in 2017
 Main focus is on
 Replacing inefficient HTTP with a P2P protocol
 Historic versioning to retain all content every put on the internet (like Internet Archives)
 Remove duplicate data and rather maintain version control (like Git)
 Dismantling the central control and ownership of the internet
 Creating distributed apps (dapps) for their platform
SkyCoin

 Released in 2017
 Trying to create a distributed internet
 Main difference with other major blockchains is the proof
 Uses Obelisk proof instead of proof-of-work or proof-of-stake
 They are really new
 There are many online discussions that they might be a scam
 Especially since they are selling their own mining hardware on the website
 Be careful with this one
Conclusion

 So who will win the race?


 Only time will tell
 Just like ARPANET and TCP/IP, most likely only one will win
 Due to being one of the larges crypto, supporting dapps and ENS, and allowing
tokens to be built on top of it, Ethereum has a good chance
 Although some of the other networks have more/better functionality with regards to
distributed internet
This Photo by Unknown Author is licensed under CC BY-SA

You might also like