Economics of farming

From a few recent discussions the concern came up that there might be too many users of the network compared to farmers.
It’s impossible to predict what the ratio will be, but we can probably assume as a first approximation that something close to the Pareto distribution will happen.

20% of users will be farmers. In those 20% about 80% of storage will be provided by 20% of those farmers. One step further 4% of farmers will contribute 64% of storage space and less than 1% will contribute about 50% of all storage space.

Is the network being developed with approximations li!e these in mind?

Would it perhaps make sense to force users (at least on regular computers) to become farmers in order to ensure sufficient resources?

Nodes in the network cache data as well. That’s unpredictable I think. How can we know how much data is cached and less HOPS away than the data in the Vaults?

Good point!

However, if that is the case, the market economics of the network will force new farmers online.

What I mean by that is the network will adjust its farming rate of safecoins, and eventually it will adjust it to make safecoin so valuable that someone somewhere will put new vaults online to cash in.

In other words, supply and demand will fix this problem :slight_smile:

2 Likes

Another way to think about this is that of all the users, only 20% will be non farmers. I think the number of farmers we get will inform us how well aligned the incentivisation mechanisms (safecoin farming rate) are. It may be the Scotsman in me but I think if I can get: 1/ online services free of monetary charge 2/ pay, I’m taking option 1 every time!

I think one thing to bear in mind is that the network does not have sufficient resource the farming reward will increase to encourage more farming. If the network is under resourced it will take steps to compensate. MaidSafe will also by applying a good amount of computing power to the network in the early days to ensure that it is as well resourced as possible.

8 Likes

Is this like > congestion in the network > less Chunks delivered to clients > less successful Farming attempts > less new coins > price goes up > more Farmers.

Or are there other mechanisms as well?

I think that sacrificial vaults are used as a resource yard stick. This is a few months old (a lifetime in MaidSafe time) but I believe this is still the high level plan.

3 Likes

I think economic error is one of the larger risks to SAFE…

On the one hand, there ought not be a lot of money to be made … Disk space and bandwidth are rather abundant, and de-duplication would make storage significantly less demanded… I in large part believe that people will farm because it is the default behavior, and because the network is reward in and of itself… I disagree with the 80/20 thing. I suspect people are perfectly willing to trade a little hard drive space for a automatically redundantly backed up hacker-proof drive in the cloud. Nobody makes big money by providing something abundant. Hard drive space is abundant. i would be more worried about bandwidth… For this to work it needs to remain abundant as well. I don’t think there will be any shortage of farmers out of the gate.

On the other hand it troubles me that you pay for PUTS while GETs are eternally free… There is an asymmetry here that will not allow the network to self regulate via economic incentive. If it does self regulate it will do so by making the PUT price out of reach for many applications (Because that is the only throttle it has)

3 Likes

As soon as you are paying for framers to farm and then ramping up payment when more are needed will mean this rule cannot be applied in such an absolute manner.

Now if you said that 20% of farmers will farm every day religiously and 80% will farm less often then that would be a more accurate application of the rule.

You need to find a rule that shows how many people will love to earn a coin by just allowing the SAFE package to also run a vault.

If that is the case, then we must make constant casual PUTs ubiquitous. This is done on the developer’s side. Thus my preposal that the apps that do encourage a multitude of puts as normal everyday ocurrances be rewarded per the Put Incentive Model.

Just an observation, couldn’t the pay per GET model also be so made to effectively be pay per put at the developers discretion.

Every PUT is followed by a GET of the data PUT “to verify data”, and thus we have a pay-per-put using only the pay-per-get.

The advantage is that not every APP will initiate PUTs but every APP will initiate GETs (even if its only the GETs to load the APP). And it is then at the developer’s discretion if they do the pseudo pay per put.

Oh I also doubt we will see a lack of PUTs. The data got has to be PUT.
APPs will be causing PUTs by their normal actions
Old data is rarely got, so its not like all chunks will be got all the time
A lot of PUTs will be for rarely if ever read data - backups, uninteresting vids etc
New data gets old quickly and if popular people will upload many times (pure profit for SAFE)
The data being uploaded to the current net is increasing every data (and a lot of duplication)
NNTP has like 5TB every day being added, a lot of duplication too

Depends on the PUT price.

If SAFE becomes the new “Free Netflix” then the revenue needs to be enough to cover bandwidth costs, and there is only one bill payer (The Uploading party) Prices would need to be very high. The burden on the network would be coming from the GETS, but there is no way to charge that end… Either the network collapses, or the price per put goes up to the point where the bad behavior on the GET end is dissuaded by PUT prices being high enough nobody can stomach uploading anything not “VERY important”

1 Like

I agree with @jreighley it will depend on the PUT cost. But then in your very next sentence, you hit on the heart of the problem:

APPs will be causing PUTs by their normal actions

Not necessarily. I’ve already seen those who would apply the Put Incentive Model to those apps who just GET. Which, if you follow the thread here, is ludicrous.

What we’re incentivising with this model is the exact opposite of the “free Netflix” example above.

And we will find out too :stuck_out_tongue_closed_eyes: But thankfully this is easier to fix than a blockchains difficulty.

Interesting example. You nailed it with being bandwidth “costs” since netflix traffic now is all about caching.

Netflix installed “caching” servers in all the major ISPs connect points in Australia to handle the traffic.

And I’d expect on SAFE that most of the netflix traffic will be cached all over the place.

So on the current economics proposal we would see

  • no one being paid for the bandwidth consumed (potential problem)
  • Nigh on all cached in SAFE & the farmers getting very little GETs for the amount of netflix traffic. (maybe < 0.01% based on AU statistics since most is cached)
  • Most content will be uploaded multiple times to cater for the various formats/resolutions that netflix provide. So that latest James Bond movie might see 4 to 8 or so uploads in the various resolutions & quality.

What does this mean

  • The people running the nodes end up with maybe 50% of their cache being netflix type content
  • The farmers only get the occasional GET for those services
  • The content is delivered with only 1 or 2 hops (reducing overall bandwidth across network)
  • Most of what netflix pays takes a long time before it is used up paying farmers because their content is rarely farmed being cached because of the worldwide demand

Will this mean their PUTs payments don’t cover farming rewards? Hard to say if and by how much.

After, in my rough analysis/view, the cost not being as bad as it first seems, netflix is a bad example. Why? Because

  • the licenses they have with the media companies are very restrictive and do not allow cross border supply of content. Even if the same content is licensed for viewing within the USA and licensed for viewing in Australia. And that is because they charge different rates for different countries.
  • thus netflix is not using SAFE anytime soon because they have no knowledge of where in the world their customers are. IP addresses/payment systems cannot resolve this accurately enough which is why netflix does not use them now. They rely on identifying VPN exit points.

As I said a “netflix” APP will get very little because it will be all cached (nearly) based on the current implementation netflix use. They are very decentralized now and use caching at the ISP connect points for everything

So very difficult to model netflix and it does not work as it appears on the surface

What about torrents instead of Netflix? It’s not necessarily popular nor limited in it’s library size.

torrents are not so bad and hard to model too

torrents are more a once download by everyone. Netflix sees households playing that kid’s movie many times for the kids over a couple of days. IE a download 1 to many times.

Torrents see a ton of stuff that is rarely downloaded and a ton that is popular. People, unlike netflix will end up uploading the exact same copy many times if it is going to be popular. Netflix will only upload once any particular content/version/quality

Both are going to be hard to predict and will be quite surprising one way or another.

Caching is our friend in the put/get economics. If its really popular then relief occurs in the form of caching.

If only we had a good way to actually model what millions and millions of people will do and their download habits.

Caching really doesn’t solve the bandwidth issue. It makes data available faster, but it still has to travel down a lot of pipes to fill the caches. Netflix uses a ton of caching, and 37 percent of the internet’s pipe… Chances are netflix caching is seriously engineered and planned… SAFE’s engineering is mostly about Privacy and security - Caching is a side effect, but only due to excessive relaying… You win some, you lose some.

How many more people would us it if Netflix was free and unlimited?

Nobody needs permission to upload a movie on SAFE. They need to shell out some coin for a PUT.

It isn’t that easy. Value needs to flow into the network for the currency to have value. SAFE is like a bucket. We charge people to PUT money in… But without a charge for outgoing, The value will leak pretty fast.

Caching though will quickly fill and you will end up with the number of hops from the cache to the user dropping as time goes on. Also caching will not occur all in one hit. As the new releases come out at around 2-5Mbits/sec each will fill many caches and even out bandwidth a lot. Many times the cache will be 1 or 2 hops away. Oh and the 36.5% is during peak times in USA.

Anyhow that may sound like I disagreed.

No not disagreeing so much as the dynamics of network will not quite have the effect that its seems on the face of it.

It is of concern and I’d say that everybody will be watching with baited breath as to see what happens.

So then the safecoin dispenser algorithm should not only take space, but also bandwidth into account. Is that hard to do?
Anyways, would that be enough?

The devs will have a much better idea once they have a network live and can see what is happening. At the moment it is more guesstimation .