Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Having wifi on all day is one thing, actually using it is totally different. Just activate your wifi hotspot on your phone and start using it from your computer. See how fast the battery depletes.

No matter what incentive scheme you device , it's not going to help you with your battery.



> No matter what incentive scheme you [devise], it's not going to help you with your battery.

Obviously with certain incentives, battery would become irrelevant. If this hypothetical "IPFS ratio" were as valuable as (for example) what.cd ratio, I'd have no problem carrying around car battery to continue seeding. Thankfully, I don't think it would be possible for my phone to consume that much power in a day.


> Obviously with certain incentives, battery would become irrelevant.

Sure, cold hard cash would suffice, but imaginary Internet points won't do. But even with cash there comes a point where you would turn off IPFS, because the alternative would be to have a dead phone for the rest of the day.

> Thankfully, I don't think it would be possible for my phone to consume that much power in a day.

Perhaps not that much battery, but it is quite easy to deplete your battery in much less than a day by having your hotspot on constantly, which is what IPFS would require.


Seeding when phone is actually in use would be net positive. And everyone is on their phones all the time nowadays anyway.


Net positive to who? Not to the seeder, whose most scarce resource, the battery, is being exploited.


Let’s not forget the context here. We’re talking over-WiFi (not cellular) opportunistic sharing between two phones running an IPFS node.

If you have anything to share at this point this is probably a good indication that both clients have some content in common. So first of all, transfers over WiFi while the phone is in use anyway are not that expensive, and more importantly there’s an opportunity to save a lot of battery, and data, that results in substantial net positive gain.

To illustrate imagine the likely scenario of two people using some form of Youtube with a distributed IPFS cache while on a plane. If those two people have anything in common—and certainly there are things like news etc. that are always in common, those can be shared instantly over the WiFi.

So for an insignificant battery investment, you can potentially save a lot of data and modem power in the long run.


Plus a plane, bus, or train could easily have 50 people within range. Assuming everyone has 8GB of cache space on their phones, you could access about 0.4TB of content directly. With a mesh network that supports packet forwarding, you could connect with everyone on the plane, meaning 100-700 people, which would give you 0.8-5.6TB of content.

Obviously content would be highly duplicated between peers, but you'd have access to a significant chunk of the "popular" internet, and would be able to avoid in-flight WiFi.

For such a mesh network, you don't even necessarily need to connect over WiFi - lower energy Bluetooth could be used too.


> Assuming everyone has 8GB of cache space on their phones

That feels optimistic. I doubt people have that much free space on their phones, especially those that don't have flash cards. Heck, a basic iPhone won't have. Even a 16GB model has something like only 12 GB free when it's empty.

> For such a mesh network, you don't even necessarily need to connect over WiFi - lower energy Bluetooth could be used too.

IPFS doesn't (currently) work over Bluetooth.

However, my main point is, that I don't think most people would be altruistic enough to participate unless they could plug in their phones on the plane.


> So for an insignificant battery investment, you can potentially save a lot of data and modem power in the long run.

Having run many a phone into the ground while hotspotting, I do not consider the battery investment insignificant. It's annoying enough when I drain my own battery when using the hotspot, I would never allow complete strangers to do that to me.


As I said on mobile it would have to be very opportunistic, not something to be left in the background that keeps the phone awake.


Isn't that the direct antithesis of IPFS? Might as well just Airdrop whatever you want to share with your buddy if you are going to require a rendezvous mechanism.


Opportunistic as in piggyback on active WiFi connection and non-idle state. P2P networks like Bittorrent pride themselves on being available despite high churn, so this is right up their alley.

The network works even if people only seed during a download. Obviously, that’s less than ideal. For mobile, though, this is perfectly fine.

The point of IPFS is you can do an ‘airdrop’ without having to coordinate it. You lookup content by hash— If it’s available locally? Great! If not just get it from remote and add to cache. Simple as that.


> Opportunistic as in piggyback on active WiFi connection and non-idle state.

That's a reasonable approach, but due to the synchronous requirement I guess the offload factor would be minimal. When I want to download something I might as well enable wifi and see if it's available locally. After I'm done there's really no incentive for me to keep seeding or even have wifi turned on.

> P2P networks like Bittorrent pride themselves on being available despite high churn, so this is right up their alley.

This really isn't applicable to opportunistic mobile use of IPFS, as you are unlikely to have a large enough local swarm to guarantee uptime or availability.


> This really isn't applicable to opportunistic mobile use of IPFS, as you are unlikely to have a large enough local swarm to guarantee uptime or availability.

IPFS content is chunked, your swarm is lan+wan.

> That's a reasonable approach, but due to the synchronous requirement I guess the offload factor would be minimal.

A room full of people using their phones is what I have in mind. Remember, a node’s cache is not exclusive to just the content that’s being currently consumed. Anyway, the point was whatever’s the offload factor it would still be a net positive.

Also one can imagine if IPFS gets popular, just as ISPs collocate CDN caches in the present model, WiFi routers could come with a local node of their own. The “Web Accelerator.” And now we’re talking!

There’s opportunity for caching at many network levels, but there’s no incentive to do so with HTTP.


> IPFS content is chunked, your swarm is lan+wan.

Yes, but for offload, all that matters is your local lan swarm.

> A room full of people using their phones is what I have in mind.

That might work to some extent, but how often do you (i) spend your time in rooms full of people and (ii) have no wifi.

> Anyway, the point was whatever’s the offload factor it would still be a net positive.

Not quite. If the offload factor is sufficiently small there is no rational reason to burn battery on it.

> Also one can imagine if IPFS gets popular, just as ISPs collocate CDN caches in the present model, WiFi routers could come with a local node of their own. The “Web Accelerator.” And now we’re talking!

Possible, but unlikely. Web cache hit ratios are abysmal, normally it's much cheaper to just up the bandwidth. A lot of business models would also have to change for the (large) and interesting content to become third party cacheable.

> There’s opportunity for caching at many network levels, but there’s no incentive to do so with HTTP.

There are also many business models where there is no incentive to cache either.


> If the offload factor is sufficiently small there is no rational reason to burn battery on it.

Sure, but there’s also no cost to it, if you go with the piggyback/opportunistic approach. That’s the point. It’s either net positive or just neutral. Whether the local offload is effective or not— that’s a different argument.

Anyway, the driving reason for my interest in IPFS is re-decentralization of the Web. If it can, theoretically, save some data on mobile—so much better.

What it needs, though, is simply work on mobile at least as well as HTTP. There’s no doubt IPFS has no fundamental architectural problems in that regard.

Though, full disclosure, it does have some major implementation issues at the moment.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: