Difference between HTTP and IPFS

HyerText Transfer Protocol (HTTP):
HTTP is an application layer protocol created by Tim Berners Lee at Cern in 1989, it is currently used for most of the data transfer on the web. It is the foundation of data communication using hypertext files on the World Wide Web.

InterPlanetary File System (IPFS):
IPFS is a relatively new protocol that can change the way we use Internet. It is an ambitious project created by Juan Benet in 2015, with an aim to create a completely decentralized web and it makes use of a lot of revolutionary ideas in computer science to do it.

Difference between HTTP and IPFS:

HTTP IPFS
It uses a centralised client server approach. It uses a decentralised peer to peer approach.
Data is requested using the address on which data is hosted. Data is requested using the cryptographic hash of that data.
Data cannot be accesed if the server is down or fails or any link gets broken. Data is copied to multiple nodes, hence it can be accessed whenever needed.
The bandwidth provided is low, as multiple clients request from a single server at the same time. Bandwidth is high, as data is requested from the closest peer who has the copy of that data.
One has to set up a hosting server or pay for one, inorder to make content publically available. Uploading content on the IPFS network does not require a host server, every node hosts the data on the network.
HTTP is well established as an industry standard, this is where HTTP has an upper hand. IPFS is relatively newer and is not yet as popular as HTTP.
HTTP support is inbuilt on almost all machines. To run IPFS you need to access it using the HTTP to IPFS portal or manually setup up an IPFS node on your machine.
HTTP is used by almost everyone to access the web. Currently, there is a shortage of IPFS nodes due to it’s low popularity among the laymen.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.