InterPlanetary File System (IPFS) is a protocol which seeks to replace the Hypertext Transfer Protocol (HTTP) with the goal of having a truly decentralized Internet by changing how data is communicated across the World Wide Web (WWW). This is accomplished by a decentralized network where all devices on the network have hypermedia content stored and content-addressed for sharing. This process makes it similar to the World Wide Web (WWW), however, it is very different as it creates another network which works alongside a file system. The protocol was realized in 2014 by using the Bitcoin blockchain protocol and network as its framework which allowed it to store immutable data, handle duplicated files, and obtain addressing information across the network. This led to achieving faster speeds, more reliable performance, and better security than HTTP and HTTPS although it is not popular nor commonplace.
How it Functions
The protocol's main functionality is created by two main things: having a decentralized network and content-addressing. A decentralized network would be nothing more than a series of nodes or devices on a network with each of them acting as both clients and servers. Next, content-addressing allows every file to be uniquely identified by an address for further use. Using these two together; IPFS allows any node on the network to pull the content of a file from multiple devices on the network with that file. So for example, if I had used my phone to visit iplocation.net two days prior, and then used my laptop to also access the website; both of which were using the IPFS protocol (ergo; they are both devices on the network), my laptop would pull the content for the website from my phone instead of going to iplocation's web server for the request. This makes the amount of bandwidth required to open files on the WWW faster as the physical difference is significantly smaller between the user requesting the information (the client) and the server which stores the information (the server). Furthermore; after both my phone and laptop have accessed the website, if a third person used the website afterward while using the IPFS protocol, they would pull the content from both devices as two different servers, making it faster to access the website. This means that the value of the protocol and the network will exponentially increase as more people join the network as it will also exponentially become faster each time as well. It also means that having the information stored on numerous devices and making it decentralized ensures better reliability by having multiple connections for open in the event one dies.
Hypertext Transfer Protocol vs InterPlanetary File System
HTTP has been an integral part of the Internet Protocol (IP) Suite since its inception, however, it is definitely not without its flaws. The main flaw above all is with the distance between the client and server when communicating in an HTTP Session. A user's bandwidth is based on the package of their internet service provided by their Internet Service Provider (ISP); however, that bandwidth is only the set amount when measuring the connection between the ISP and that device. This leads to the problem of a device's bandwidth dropping over distance as it travels from server-to-server to reach the web server it is requesting to pull information from; this process is called a hop. For example, to reach iplocation.net, a client would have to make some number of hops from server-to-server before reaching iplocation's web server to issue their HTTP-request message. Throughout this process, the connection could be broken or some part of the data being sent could be lost as the bandwidth deteriorates with each hop; this is the main problem with HTTP. IPFS solves this problem by not having a centralized server location to send an HTTP-request to. This allows the bandwidth used by IPFS to be much higher between hops as it is likely to make fewer hops with the more devices which join the network. Having fewer hops between servers also make the protocol more reliable as it becomes less likely for a connection to break or for data to be dropped, alongside its feature of content-addressing.
The creative minds behind IPFS have stated their goals with the protocol and have shown their passion for its realization. One of these goals includes having IPFS' functionality go even further and to completely replace HTTP in the IP Suite. For the moment, the protocol still has a long way to go as its popularity is not very commonplace but as time rolls on and blockchain technology becomes more prominent, there is very little doubt that IPFS will grow as well.