Bonum Certa Men Certa

IPFS: The Good, the Bad, and the Exceptionally Ugly

Video download link | md5sum 43c1ae14359c4ba2d4adc78cc9e4601a



Summary: A personal and occasionally arduous experience with a whole year of IPFS; it may come across -- on the surface at least -- as an unconstructive rant, but IPFS is still a promising technology, albeit it has severe limitations that need to be properly understood (some can be technically overcome, too)

THE Web is generally not decentralised. The Internet is not decentralised, either. DNS is centralised, certificates are centralised (if you rely on the concept of 'trusted' CAs), and with most services you rely on just one address to work (for things to become accessible; it's possible to have multiple servers assigned/connected to the same address, but that's redundancy, not decentralisation).



Peer-to-peer (P2P) technologies and BitTorrent are OK, but they too have their limitations, including privacy- and censorship-related limitations. There are single points of failure.

IPFS is a bit different. We started using it about a year ago, starting with daily bulletins and then adding IRC logs, both in the form of HTML and plain text (the latter was added months later).

"We started using it about a year ago, starting with daily bulletins and then adding IRC logs, both in the form of HTML and plain text (the latter was added months later)."IPFS is generally good; when it works, it sure works well (albeit not quickly, the latency is incredibly high, ranging from seconds to minutes, which is unsuitable for some use cases). As I noted in the video above, this week has been more eventful than usual because the IPFS daemon started respawning endlessly and was still malfunctioning. Last night it just completely stopped working all of a sudden. With DHT traffic taking up the lion's share of the pie (unless you serve something such as video), IPFS does not scale well. It's very costly, requiring a lot of energy and bandwidth for relatively small returns. To make matters worse, it occasionally can and would become inaccessible, it can use up all the bandwidth (requiring further configuration), and it's difficult to debug. So adopting IPFS for site-related delivery of content can become a lot of work devoted to maintenance, not to mention CPU cycles and bandwidth. We have a few thousands of objects in it and it's stretching it to the limits, at least for a device with a residential connection. Several other people have reported similar issues, so we know we're not alone. What's ugly is that many of those reports -- like much of the code -- are still hosted by proprietary software (Microsoft GitHub) and are "GitHub Issues", i.e. vendor lock-in. That sends across a negative message; GitHub is an enemy of decentralisation, it's proprietary, and it is a den of arbitrary censorship on behalf of Hollywood, governments, etc.

IPFS can very quickly become utterly wasteful, just like Bitcoin and other digital (or crypto) 'coins'. But unlike coin mining, timeliness matters. IPFS can become completely inaccessible for long periods of time, with no fallbacks in place. That means downtime. We've been spending hours on IPFS this past week and it's not even serving the content (it times out); it is failing for long periods of time. It's almost impossible to debug because it is decentralised and diagnosing a swarm is incredibly difficult, akin to guesswork or "hocus pocus". One time it works, the next time it might not...

"IPFS can very quickly become utterly wasteful, just like Bitcoin and other digital (or crypto) 'coins'."As noted at the end of this video, adding a new object scales poorly (but linearly, not quadratically/exponentially) as the index of objects needs to be rebuilt from scratch (in the Go implementation at least), which means that when the number of objects doubles it can take twice as long to add new ones. If this carries on for a few years it can take an hour if not hours just to add our daily objects. Hours of CPU cycles! Maybe future/present versions tackle this issue already, so we can be patient and hope IPFS will mature/evolve gracefully. Otherwise, it is untenable for the purposes/work we've assigned to it originally (last October).

The video isn't an admission of mistake or regret; I don't personally regret pouring so much energy into IPFS, I just hope to express my thoughts on things that can be improved and probably should be improved. IPFS isn't a very young project (it has been around for quite a while), but its releases are considered not stable and work in progress. If we're part of a large experiment and the risk we take is occasional downtime (over IPFS, not Gemini or HTTP), then so be it.

Recent Techrights' Posts

Brittany Day Can Rest and Let Microsoft/Chatbots Write Fake 'Articles' About "Linux" This Christmas
Who said people don't work on Christmas? Chatbots or plagiarism-as-a-service work 24/7, every day of the year except during Microsoft downtimes
Links 25/12/2024: Windows TCO Brought to SSH, Terence Eden 'Retires'
Links for the day
Gemini Links 25/12/2024: Reality Bites and Gopher Thanks
Links for the day
Links 25/12/2024: Latest Report Front Microsoft Splinter Group, War Updates
Links for the day
Links 25/12/2024: Hong Kong Attacks Activists During Holidays, Xerox to Buy Lexmark
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, December 24, 2024
IRC logs for Tuesday, December 24, 2024
Gemini Links 25/12/2024: Open Source Social and No Search
Links for the day
Brittany Day Connects Windows Ransomware to "Linux" Using Microsoft LLMs (FUD Galore, Zero Effort, No Accountability)
FUD and misinformation made by Microsoft LLMs again?
Links 24/12/2024: Labour Strikes and TikTok Scrambling to Prop Up Radical Politicians That Would Protect TikTok
Links for the day
Where the Population is Controlled by Skinnerboxes Inside People's Pockets (or Purses)
A very small fraction of mobile users practise or exercise freedom/control over the skinnerbox
[Meme] Coin-Operated Publishers (Gaming the Message, Buying the Narrative)
Advertise (sponsor) to 'play'
Advertisers and Their Covert Impact on Publications' Output (or Writers' Topics of Choice, as Assigned or Approved by Editors)
It cannot be trivially denied that sponsorship in the form of "advertising" impacts where publishers go (or don't go, won't go)
Terrible Year for Microsoft Windows in Cyprus
down from 86% to 72% since January
[Meme] How to Kill Unions (Staff on Shoestring Budget Cannot Afford Lawyers)
What next for the EPO? "Gig economy"?
The EPO's Staff Union (SUEPO) Takes Legal Action to Rectify the Decrease in Wages (Lessening of Purchasing Power)
here is what the union published
Gemini Links 24/12/2024: Deedum Gemini Client Gets Colour Support, Advent of Code 2024
Links for the day
Microsoft Windows Slides to New Lows in Colombia
Now Windows is at an all-time low
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, December 23, 2024
IRC logs for Monday, December 23, 2024
A Strong and Positive Closing for the Year's Last Week
In a lot of ways this year was a good one for Free software
Feels Too Warm for Christmas
Christmas is here, no snow in sight
Links 23/12/2024: 'Negative Time' and US Arms Taiwan Again
Links for the day
Links 23/12/2024: The Book of Uncommon Beings, Squirrels, and Slop Ruining Workplaces
Links for the day
Links 23/12/2024: North Korean Death Toll in Russia at ~1,100, Oligarch Who Illegally Migrated/Stayed (Musk) Shuts Down US Government
Links for the day
The World's 'Richest Country' Chooses GNU/Linux
This has gone on for quite some time
Richard Stallman on Love
Richard Stallman's personal website includes a section that lists three essays on the subject of love
Apple's LLM Slop Told Us Luigi Mangione Had Shot Himself, BetaNews Used LLMs to Talk About a Dead Linus Torvalds
They can blame it on some bot
Microsoft, Give Me LLM Slop About "Linux" and "Santa", I Need Some Fake Article...
BetaNews is basically an LLM slop site
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Sunday, December 22, 2024
IRC logs for Sunday, December 22, 2024