Compute to Play; a caloric internet

[These are some preliminary thoughts subject to change — looking at ways to change the physics of the Internet in light of todays FCC decision to end net neutrality]

Anselm Hook
Kip Gilbert

Today the FCC was captured by Verizon and used to end net neutrality — using a public agency against the public benefit in a boldfaced maneuver that is obvious to all stakeholders. In matters like this the public is playing against AlphaZero; on a long enough timeline corporations always win. Longer lived players capture markets not by competition but by corrupting the physics or rules which guide the market. In the book The Master Switch by Tim Wu reviews the last 100 years of similar kinds of regulatory capture, looking at everything from the telegraph to radio to telephone to television and this is highly recommended reading if you want to understand the historical context.

There has been much wringing of hands and pulling of hair over the expected FCC decision but in fact our beloved Internet faces several monsters not just one. This is a golden opportunity to fix deeper issues and rewrite the physics of the Internet back in our favor again.

Our infrastructure is aging. It was designed in an academic setting, somewhat insulated from banal day to day issues such as money. It was designed to be a network, where data could be dynamically routed around obstacles — not to deal with antagonistic activity within its boundaries.

In our current design we build monetization on top — we collect user account information, we do KYC (know your customer) tests in some cases and we then bill them. It’s not quite turtles all the way down, but from a technical viewpoint we can characterize the internet as a seven layer diagram:

The thesis of this essay is that in fact it should be the other way around — monetization should be built into the fabric of the Internet at the UDP level such that rewards can be paid to service providers directly. On initiating a connection to a service a small amount of money could be sent. This could pay for the cost of connection, help solve distributed denial of service attacks, and change the incentives which have led to Verizon attempting to capture the market.

Many massively multiplayer online video games already require new connections to do a small ‘proof of work’ to connect. In a sense requiring the expending of energy. Although this is not a formally monetized pattern yet we see how already existing strategies can merge with new technologies such as the blockchain and cryptocurrencies to solve some of our planetary communities growing pains.

The Grand Challenges

Let’s look at the big problems that we all ‘kind of put up with’ and see how adding a payments layer to the bottom of our protocols could help. What are some of the ‘grand challenges’ that the Internet faces?:

Playing to Win

There’s a business process called ‘playing to win’. It’s an idea of how to formalize a vision as opposed to merely a strategy or a technique. The idea posits that one should throw away goals that are incidental or not as close to final outcomes, and in a sense it is a business version of Occam’s Razor. The idea suggests that to the degree that one can actually afford it, one should pursue the longest term outcomes one can. This isn’t entirely different from Buckminster Fuller’s vision of maximizing system benefit, and at some level it is a systems perspective; similar to Finite and Infinite Games — that all boats rise when we help the world around us.

If our goal is to fix the Internet then we should fix it. We shouldn’t attempt to encode our policy in human laws but actually fix the fabric at the bottom.

True signals

Many of the challenges enumerated above are related by an issue of discriminating between signals and noise. In our creaky old internet we never designed any way to discriminate between truth or falsehood at a granular level or at a protocol level. Or rather at least, the cost to produce fake signals is the same as the cost to produce true signals.

The real world is fair because calorie consumption cannot be circumvented. All players must expend calories to play. But in the virtual world the physics are arranged such that bad actors can use the calories of good actors.

In natural systems, such as say a bird in a jungle, a bird expends energy to signal across that landscape. Other birds listening to bird call have some confidence that the signal is real — that it reflects a participant, that that participant is not lying. When the costs to utter a signal are non-zero then participants can’t afford to lie. When signaling is free a participant can utter any statements to manipulate the group. If costs are zero, or asymmetrical, then a bird could falsely signal a predator to scare other birds away, or signal fitness to attract more than a system healthy share of attention.

On the net we discriminate between signals ineffectively. Bad actors can form clusters on twitter and create disproportionate visibility for themselves through sheer volume of transactions — even though they are largely disconnected from the network graph of other actors as a whole. At almost every layer of our protocols we have serious problems because signaling is free. And while a multiplicity of solutions are required (to protect anonymity, whistle-blowers and the like) when people signal then their labor could energetically enrich the system rather than burden the system.

Proof of Work

We’re familiar with the idea of ‘proof of work’ as a way to allow independent miners to create bitcoin or other crypto-currencies without centralization. The idea of proof of work is that it forces a participant to expend some energy to participate. This makes it expensive for bad actors to hack the network and bias outcomes in their own favor.

Techniques like this are used in many places but have flaws:

A UDPCoin

The proposition is to create a new cryptocurrency token type such as a UDPCoin or a DNSCoin which can be spent in initiating connections. In the way that we have entropy servers on the Internet, we should also be able to accumulate and spend trust. In a sense a currency backed attention economy is built — and there’s a lot of infrastructure to be built here to accomplish this.

The implementation is that we extend TCP handshaking with the initial datagram encoding an amount of money and one or more recipients of that money.

At this point the following behavior emerges by itself:

Changing cost relationships is a way to solve some of the challenges we’re facing today, but there are several issues with existing crypto currencies — they just are not suited for low level transactions like this:

Applications

Some of the challenges we face can now be rephrased in terms of a compute to play outcome:

Making this happen

It feels like the right thing to do is to build some examples and then foster a community of services around this concept. Building and testing a calorie based internet where every connection has a cost will itself have a non-zero cost and will need funding. To interoperate with existing services load balancers that sit in front of services will need to exist. Developers of services do not want to deal with a connection token inside their game or product — they want to focus on their business. To foster these new protocols to a wider community the currency would need to be on major crypto exchanges and fungible so that people can earn tokens and then spend them later when they want to use a service.

It’s worth noting that a solution like this is only part of the answer. Bad actors can muster tremendous computational resources. It is outside the scope of this discussion but it looks like good actors that participate in the network probably need to be filtered by a contextual network graph of trust as well. Actors can only participate if a plurality of other actors agree that they are acting in the networks best interest.

As well we can see an ecosystem of proof of work emerging — where institutions pay users to access their computation (such as RenderCoin) or storage (such as IPFS). This will likely emerge anyway and it’s important to have inter token trading.

We can also see new ways of identifying popular services (where is all the money going?) and of establishing market prices (what does this service charge to connect to it?).

Here are a few other links that I’ve collected while writing these thoughts:

SFO Hacker Dad Artist Canuck @mozilla formerly at @parcinc @meedan @makerlab