Incentivize what matters (APIs) to build Web3's Public Cloud

ETHCC 6 · July 2023 · 26:15

Robert Drost examines APIs as a layer connecting open-source software and middleware. The speaker argues for incentivized, decentralized APIs as an alternative to access controlled by conventional cloud billing systems.

Speakers

Topics

From ETHCC 6, hosted by Ethereum France.

Transcript

[Music] foreign [Music] here how are people doing having a good time so far yeah did everybody go to see vitalik's talk just before this yeah okay I missed it because I had something else to do was it good it's pretty good as usual he was talking about account obstruction right yeah all right look forward to seeing

that tonight all right well anyway so we're going to talk about something else which I think is equally interesting to what vitalik was just talking about and hopefully by the end of me talking here you will see why as well I do realize that for a lot of people I think one of the most useful things out of a presentation like this is to get an understanding of like where's the technologies have evolved and like what are some big themes that we should know about in the space and I'm going to be talking about one that has been around for a long time I think it's very relevant and hopefully if I've done my job well at the end all of you will have learned a bunch of useful things and uh will at least understand my point of view even if you would disagree with it

so there's three main things I'm just trying to cover three things in this talk I've got enough time that we'll probably have time hopefully at the end for Q a if you people have questions but um I'm very interested my early career was a lot around public clouds around infrastructure other stuff and you know there's a question that I've kind of asked myself a number of times which is like what is the reason why we have these centralized public clouds how did we end up in this state where there's you know dominant couple dominant companies and you know we hear a lot of times this idea that somebody's going to bring you know the AWS of web3 they're going to do this what does that mean you know what does it mean for blockchain Technologies to allow us to

actually have decentralized public clouds for both software vendors for I mean for people writing software for people consuming software and so forth and then when I talk about the specific technologies that enable all of this there's actually pretty good status and pretty good news that's happening in the front so I want to make sure everybody knows like the current status and what's next in case especially in case you're interested in getting plugged in because there's active people working in the space and just like regular blockchain everybody can get involved so let's cover the first topic the centralizing force um and you know just to set the framework of like how strong the centralization has been happening here um if you look at the overall Market the

big number that should stick out at the bottom of the page is the you know Global amount of Revenue in it that's being spent on infrastructure so server storage bandwidth for platform as a service which your os's load balancers database and then SAS things like salesforce.com netsuite um you know higher level things confluent uh data bricks so forth all of those revenues add up to over a third of a trillion dollars and it's not distributed across the space across 100 different companies it's not even distributed across 10 different companies it's dominantly spread across just a very small handful of companies um and you know there usually is when

there's this strong of a thing happening some reason why this doesn't just happen autumn dramatically so that's what we're going to cover here and um I do want to set the stage here that people keep in mind that when we talk about the decentralized public Cloud for web3 just a lot of times we're in talk after talk and we're seeing protocols and we think that like that is all that's needed to run software so I just pulled up a diagram this is one you know that predates blockchain it's really showing the transition from like on-site hardware and software and how applications were delivered before Amazon created the public cloud and then the three categories um you know so later if you haven't seen this before it's it's a helpful way to

think about it because each of these refers to apis each of these refers to software that somehow represents the thing below it and then advertises and allows it to be metered and billed and sold to people and that's really what the clouds have done is allowed successive layers of like stacking up packages kind of like how we think about defy as Legos like infrastructure as Legos is what Amazon created that previously had been something you had to like buy and rack and stack your own servers and storage and stuff to do so um the other thing that I think is a little bit on the um background education side that I want to remind people about which is what is decentralization and centralization anyway because it can be a very nebulous other topic and thankfully our spiritual

leader um vitalik early on wrote a really good post that if you ever want to go back if you're giving a talk if you want to see you know what does centralization decentralization mean it's a good three four page article and he really explains well this concept that there's three fundamental axes and I have them kind of written up here this is just straight out of his talk actually that there's architectural centralization there's um uh logical centralization logical decentralization and then there is what he called political decentralization political uh uh centralization and two modifications I'm going to do to his talk because I think

the political gets a little abstract for people and vitalik's mind everything's Game Theory everything's incentives and so it's very easy to just throw the word political what political really means is financial who controls the right to be able to express your value and then who allows to capture that value who's allowed to be rent seeking take taxes out who's able to actually make the money in the space that's the financial centralization that's referred to in political and it's very much politics is about who controls resources who controls money so that shouldn't be too surprising the other simplification thing the change that I do which is really a simplification and if you read his article he'll kind of cover this logical centralization decentralization it's not that's not a black and white good or bad

situation in reality there are times that logical centralization is the right kind of API other times decentralization is the right API so for the point of my talk it's kind of not necessary to talk about The Logical representation and I instead collapse it down to a simpler two by two Matrix just architecturally centralized decentralized and financially and um you know you can look here at the examples you know traditional corporations and direct democracy they're both architecturally centralized you can see that from their structure but you see you know corporations are financially centralized there's one set of stockholders one board direct democracy pushes the votes out to the edge and so we call it decentralized and down at this bottom quadrant this is the

one where you know uh not a big surprise is where BitTorrent and blockchains and a lot of us operate in and there's a lot of advantages to that so um where did today's public clouds fit in and so I wrote down four categories that I think are really important here architecture Billing System and you see the others here as well and you know one thing that's sort of interesting is that when you look at public clouds right now they feel very decentralized the reason they feel decentralized is as a software provider or someone using it they physically and kind of logically spread everything around the world have redundant zones they have a lot of architectural decentralization so sometimes when

people say oh we're going to make a decentralized public Cloud they're like we already have it you know we don't need another one like you know Amazon is it but that's why I highlight these other three categories here because if you look at billing systems if you look at who sets the pricing who sets the provider how does Amazon decide that bandwidth should be four cents a gigabyte or CPU hours should be this or that it's their setting it and that's fundamentally set by stockholders voting in a board who votes in a scene who hires the chief marketing and revenue officer and they figure out what they can price and so forth so it's very centralized in that sense and then when the earnings come in if you're a software provider and you're selling your stuff through Amazon um Amazon is the person in the middle so

no surprise they're going to be able to take a cut and dictate the terms um you know that's sort of what it means and so for I don't know if this applies for everybody in the world for for people who are familiar with Sesame Street one of my favorite characters from there was Count Dracula and you know I put him as a representation here we should just think about it you know that is really the reason why there's this fundamental centralization in today's public clouds there's Count Dracula in the middle he's able to meter all the bits that are being stored that are being sent the CPUs that are being used and so forth and I just put at the bottom you know the one for you 10 for me and I'll show you some numbers later there are some parts in the public Cloud

where the rent seeking actually gets really high and it's actually one one for you 99 for me so um it all sort of uh but it's you know it's it's an essentialized system um uh that's what you end up having and so just to tie it all back together from these various things this is the end of this kind of build up part of the presentation if we look at that two by two centralization decentralization you know our favorite Count Dracula he's very happy where he is because it's like hey this is an architecturally decentralized the technology people are happy but I get to count everything and I love to count and that's today's public Cloud but you know our spiritual leader vitalik is on the other side and

he's saying hmm I'd like the more public goods approach here and that's where the decentralized public Cloud should be so what would it take for us to actually be able to move those billing systems over and the metering system is over that's sort of that's the you know the point of what we're going to get to in the second part and you know kind of uh the other thing I want to say about this is when I talk about it uh there's two sides there's one side which is like using the SAS and the other side is actually making the SAS or making the things that are getting sold through the cloud and I wanted to make a point here that there is sort of a secondary negative effect I don't know did anybody here go to like funding the commons over the

weekend uh Juan binay and uh filecoin put that together all the time well one of the questions always is like you know how do we actually allow the right money to go to the right people at the right times and so forth and so open source software is one of these great Commons like you know open source software it's always a challenge of how do you fund it um so that uh really good work is being done and the right people are actually getting rewarded for that work and I gave a couple examples of a few open source companies down here the reason why is if you were to actually search redis Labs Amazon or databricks Amazon or confluent Amazon you will see a fair amount of struggles between those two in terms of who gets the value out of the

open core that they built and what I mean there from an open source perspective this is the dark underbelly of Open Source in the public Cloud the original vision of opens sources that you build great open source the technical team then makes a business and monetizes it and all of the money from that monetization or significant amount goes back into the r d and what's happened with the public Cloud for open source is we've gotten this Fork method where the open core model as it's being delivered and shown on the clouds the cloud providers look and say hmm if I just take the open core and wrap it up into Amazon elastic DB or Amazon this service then I can make all the money and so there's been a lot of open core model which is not invested in by the

big three Cloud providers they utilize it they sell a service against it and then they're competing with the actual team that you would like to be getting to Value capture and that's again where I go back to the Count Dracula Count Dracula is very happy to be in the middle because he can insert himself uncomfortably where you would not want him to be so um and I just gave an example here if you look on Amazon or others you'll see these long lists of all these staff services if you go through these line by line quite a few of these are actually open core open source projects that are being delivered by the vendor and sold directly and cutting out the actual team that did the work so for those those of us who are like entrepreneurs and startups and others you know this is a

sort of a negative effect of the centralized public Cloud which I just want to highlight to people is a really good reason for us to have a decentralized public cloud because it means that we'll put more money into the good parts of the system the other thing if you don't believe me in terms of the fees I pulled up some exact kind of numbers here it's maybe a little bit of like one of the worst parts of Amazon but the egress bandwidth fees are one of the most ridiculously priced ones that are out there in the US or Canada when you're paying to get your data out of Amazon you're paying 80 times what it costs for them to actually set up and run those communication links so there are some parts of the centralized public Cloud where the pricing becomes really really skewed you

will see at the bottom that there are other GEOS where it's not quite so bad in South Korea it's only three and a half times of a premium but part of the reason why is this is actually a map of less mature to more mature markets so it actually shows you the typical rent-seeking Behavior which is that when you have a complete control of a market you start off with relatively good pricing and then as you lock in the market and you sort of kill off the competition and get a dominant position then you increase your prices to this adx markup means actually 90 98 plus margin if you work in sales which is you know I've never been in a place where I've been able to get 98 margin on something I sell so um okay so now let's get to the third

part of the talk and this is the one that I think is uh the most interesting here because you know uh when you think about doing the meteoring and billing what does that mean for us to actually have a decentralized public Cloud if we try to have SAS software that was able to uh you know sell it software obviously there are people like filecoin and others who have done it with a whole you know protocol but I'm I'm talking more abstractly about any general kind of software service what would we need in order to do this right now because right now they're able to do you know thousands of uh API calls per second per server and you know what do these numbers add up to and the numbers are really large if you want to have similar

metering billing infrastructure to Amazon these are the kind of numbers you have to hit you you're not talking about going from tens to thousands or even Millions you're getting into the billions and probably even trillions of transactions per second and um the reason why is there's just so many software instances running on so many cores I mean think about it you know 80 cores and one rack unit 20 of those inside of a rack Plus Storage a thousand of those in a data center hundreds of data centers around the world the numbers are just really huge there's a lot of software that needs to actually be metered and build if you wanted to have a decentralized public Cloud that was running at that scale of 300 plus billion dollars worth of

Revenue being captured per year and the latencies have to be microseconds obviously if I'm in Paris and I'm doing an API call to a server in New York microseconds doesn't matter I've got 100 plus milliseconds transatlantic anyway okay but the latencies have to be really low because a lot of software runs East-West inside of inside of one data center instance and fundamental networking bandwidth inside of a data center is at the scale of microseconds and Amazon and other things when they meter the traffic between servers they're not inserting milliseconds of DeLay So the latency for these types of transactions has to be extremely low and the cost has to be really low because if

the cost is cents or even milliseconds you're not going to be able to have very fine granularity ideally you would like to be able to have as small of a unit as possible for what kind of API calls what kind of compute Transformations over data what kind of data storage Transformations what kind of communications you would like to be able to transact and um so in terms of blockchain technology and scaling we know right away layer one blockchains aren't going to cut it I would argue strongly I mean layer 2 Roll-Ups and side chains you can get more aggressive and more aggressive with what you're wanting to do with layer 2 Roll-Ups and side chains you can push into the thousands if you're willing to give up more decentralized assumptions

maybe you could even get into the Millions on Roll-Ups and side chains but fundamentally it it's not even the right technology fit because for doing this metering and payment you're not needing to run full smart contracts you're actually needing to run something that's a much smaller functionality so here's where you know a lot of us I mean how many people have heard of State channels before how many have heard of it being used anywhere recently yeah nobody raised their hands in the room because they haven't been used anywhere there was a period of time we thought State channels were going to be like Bitcoin lightning for ethereum we thought we were going to scale transactions with uh State channels and that went away with Roll-Ups because Roll-Ups are way better for scaling

transactions from layer one to layer two but as it ends up State channels are actually exactly the right fit I'm going to go through some of it here for what we need for payment channels so um the the granddaddy of State channels are hash time lack dash time lock lock contracts and um time lock contracts were made famous of course with Bitcoin lightning and they're extending them massively now they're even building lightning apps and other things on top of them so they're doing great jobs with them um but the reason I call them first generation is Hash time lock contracts require uh peer-to-peer relationship between me and this dude over here in the black shirt

and if I want to communicate through the guy in the yellow shirt to somebody in the back of the room and I want to send something I have to hop the funds to him he hops it to that person they hop it to there everybody's involved in all of the steps inside of the state Channel relationships so the reason they're first generation and they have a limitation for what we need to accomplish you can't have a network where you're inserting two or three or four hops worth of additional people in something that you're trying to meter which is just a direct relationship between one piece of middleware software calling another one you know one part of your application you know using one service to another service so second generation State

channels uh given that uh you know people here I mean it's spend a little bit of time on this slide so just bear with me but virtual channels are probably the coolest thing that happens to State channels that most people never learned about because they happened around the time that Roll-Ups happened and so right around the time that this great technology came around State channels weren't needed to scale transactions in ethereum anymore virtual channels are an amazing setup where you know you split things into two different types of channels Ledger channels are called Ledger channels because you withdrawn deposit money from The Ledger like ethereum layer one or a layer 2 roll-up virtual channels are something that are set up inside of the state channels between participants so they

would actually allow you if you have these two green nodes in the middle to set up a virtual Channel which is this dotted line here between the left red rectangle and the top blue circle and once that relationship is set up between those two there's some initial setup like a TCP setup or a setting up a new socket or you know setting up an https session or something but once you've set that up after that all of the communication from that point on you're able to do cryptographic token exchanges thank you cryptographic token exchanges between those two endpoint participants directly and those exchanges are as secure as a layer one transaction so that's the important point they're

finalized instantly once you've received that packet that gave you value from the other person you instantly know that you've gone it from that so and it you know that would be I'm sorry I actually said it right there but uh that's the critical point so it's on the slide if you see it later um and I'll just kind of jump to the next picture here and you know of course it gets a lot more complicated to get to that level of billions of transactions per second decentralized uh public Cloud we're going to be talking about having millions of participants here in the middle there's a lot of portions of it and so forth but you know I hope you see just from you know me talking about both the importance of the problem and there's engineering wise and research-wise there's no fundamental you

know vitalik has to come in and figure out execution environments or fundamental sharding or some new security model like we actually have the pieces that we need and it's more of a development and business problem it's no longer is it possible to do or not for us to be able to get these types of performance and the final model I just drawed up here but so the final end result after all of that complexity down there is the idea is that anybody who's over here on the left side who sets up an open source software project should be able to very easily download libraries that allow them to plug into this network advertise and offer services that they're doing on the computation bandwidth you know doing onion routing other stuff storage front

and then have people on the other side come in and again just you know link their rust Library into their clients or whatever and the users on that other side the microservices side are able to then go ahead and put in these uh you know uh micro token payments to the other parties so uh just to kind of wet people's appetite there is a team at consensus mesh and the consensus mesh r d group I'll just flash their pictures so you see they are real people and they are not me um there are these five gentlemen over here they're building um they're building out this actual infrastructure for one of the first sort of decentralized cloud services one of

the most important which is the content delivery Network that's going to sit in front of the filecoin storage Network so you know think of cloudflare fastly others this is a network that allows people who have ssds and good bandwidth servers to front the filecoin network and to make money directly by offering low latency high bandwidth availability of filecoin data and this to me is sort of the first example uh I think it's like a beachhead we're expecting status wise you know this one to be demonstrated there but it's also getting generalized there's some generous grants from filecoin Foundation that's helping to support it as well but um you know for people who are interested either here or virtually later who are watching

this one please do reach out to us I think there's a lot of interest here and if you look back at the numbers as much as like it is exciting to see uniswap doing 60 billion dollars and seeing these other numbers but you know there's actually hundreds of billions of dollars of Revenue going through the decentralized public cloud and so there's a lot of money to be made in these spaces if we can actually move this architecture over and get some of these networks and other things set up so right now it's you know r d project public goods funding but there's going to be a lot of steps that we have to go through where these types of networks are more available and others and ultimately someone doing an open core open source model we want to get to the point where they say okay I'm going to

apply on Amazon I'm going to deploy engineer and I'm also going to deploy on this payment Channel system that settles onto ethereum and that allows me to sell my software and it allows me to plug into all of these other great decentralized core service services but I'm able to just write some additional software on top and deliver it that way so thank you all right we have one minute so I will just ask if somebody has a question right at their mind I'm happy to answer one question okay gentleman over there in the blue shirt on the right side hi thank you for the dog um I just have a quick question are you aware of Akash

Network have we like looked at it before yeah no there are definitely uh there's a Cosh Network there's uh I'm sorry I didn't actually put up some other things that are being kind of tried here so there's uh internet computer platform ICP um Xerox cord is another one that's doing it there's something and I'm happy to talk with you afterwards there's kind of different approaches here and I want all of them to be tried out there are some that are going to be kind of more inside of particular networks and then there are others that are going to be more like the Linux Bazaar method where you just have a completely free no non-tokenized piece of software that you download and you then are able to use that and plug into any one of a number

of different networks so it's much more free form self-organizing and that's what this talk is trying to address because I feel like that one's important yeah thank you for the answer I think it's going to be a longer conversation so I like find you after this Yes sounds good all right thank you but yeah thanks for pointing that out yes there are some good providers all right I'm all done thank you foreign [Music]