A Bit of Background…
As with any technology, IPFS is a combination of solutions to problems that had existed in the past. Storage technology is at the core of everything we think of as computers. Player Pianos, dating back to the early 18th century, were the first real form of digital storage. The notches on a steel cylinder pulled tensioned lines, effectively playing a song when the springs were pulled by an attendant. Our modern hard drives are not much more complex than this, using electrical charge rather than the mechanical potential of a spring, but otherwise very similar.
In the early days of computing, storage devices were coupled with processing units in single purpose systems; however with the introduction of the internet and high speed broadband these two components are now commonly separated, often by hundreds of miles. As cloud services have grown, the notion of storage has shifted from individual hard drives and physical devices to a network of high-availability devices which a client device can access for a fee.
The goal of IPFS is to provide a common protocol for networks of computers to use to share their storage.
In particular, when HTTP calls are routed, they use the central domain service to request files by their relation to a particular url. As a result, all files on the network must belong to a particular domain and must be hosted on a particular connected device.
What makes IPFS different?
In contrast, IPFS uses purely peer to peer transfer of data. Each file is hosted across a network of connected nodes who each participate independently of each other. In a similar fashion to the torrents used to share pirated music or movies, these decentralized files cannot be deleted nor their access controlled without access to every participating node in the network.