#KiloByteSizedCrypto Layer 2 Solutions: Network Stacks and Data Stacks
This one will seem like a tangent for a while, but let's discuss "Layer 2" solutions. I’ll bring it back around after the tangent. Let’s discuss OSI - that stands for the Open Systems Interconnection Networking Model. This is the most popular framework for how people understand networking. It is a theoretical model, so sometimes it can get difficult to understand. It’s ok.
We'll start off easy - the first layer is the Physical Layer. This is the physical hardware of your computer, and physical wires that link devices you can touch. Or, your wireless card.
Layer two of the OSI is the Data Link Layer. This is where two nodes (computers or devices) send and receive data over a physical connection (layer 1).
Layer three of the OSI is the Networking Layer; let’s say you have a few more than two computers. Let’s say you have thirteen or thirty… How do you send and receive data to the correct location, reliably? Computers need to have addresses and a method of sending and receiving data. This is where the Network Layer comes in. You can set up a network at home of a few devices and structure it in such a way as to reduce data loss. Or, this could be the gigantic network we know as the Internet. Either way, you have a network of data links over a physical connection.
Layer four of the OSI is the Transport Layer. This layer concerns itself with more complex methods of data transport and with the actual data that is transported over the architecture laid down in layer three. So, you’ll have the transport of data through a network of data links over a physical connection.
Layer five is the Session Layer. In the session layer, two nodes can open a session and communicate continuously back and forth, using data transport over a network that connects devices through a physical connection (or a wireless card).
Layer six of the OSI framework is the Presentation Layer. In this layer, data is presented and worked with. Some applications live entirely at this level - a good example: many web pages are coded at this level. This is where you start working with data and performing programming functions. It’s less about transport, more about content. This is also where encryption and decryption usually takes place, though security should be occurring at every point in this framework. The easiest way to explain the presentation layer is “it is the ‘back end’ of your system”. So, you are (or more likely your program is) working with data that is communicated continuously using data transport over a network that connects devices through a physical connection.
Finally, Layer Seven is the Application Layer. This is where you are interacting with the program and manipulating things. The user interface. So, you are interacting with a program that is working with data that is communicated continuously using data transport over a network that connects devices through a physical connection. That, my friends, is a quick technical overview of the internet. Also called a “Network Stack”.
Some cryptoassets are finding unique ways to interact with the existing network and some theorists are arguing for a change in our current concept of the network stack. Currently, the blockchain exists in Layer 6 (where you’re programming and working with data). The problem with saying that crypto will change the existing model is that it is a misunderstanding of the model. The networking model concerns itself with how the network of physical infrastructure supports the transmission of data from one machine and user to another user and machine. It does not concern itself with the structure of the data that is sent. Blockchains are intricate structures of data, but they are not a fundamental change to the infrastructure. Think of it like this: I can, assuming my cat is compliant, dress my cat up in intricate, gorgeous kitty cat ball gowns. She’s still a cat. Her fundamental cat-ness has not changed.
That said, the blockchain is making the case that our existant data structures may be relatively flat. We may wind up with intricate, vertically scaled data structures in the very near future. But this world, to the existing model, is more than likely happening at layers 5-7. So when we discuss layers of a cryptoasset, it is not a Network Stack (though many assets follow a similar structural framework). It is a Data Stack.
A “Layer 2 Platform” is a platform built off of a blockchain. Currently, this is popular with the ETH blockchain, with examples including MATIC.
One way to build a layer 2 platform is a Rollup, which comes in two flavors: a “zk-Rollup”, or zero-knowledge rollup, which bundles a lot of different smaller moves into one big move. Think of it like if 100 people want to buy 1% of an ETH; you can bundle all that up, and just buy 1 ETH.
Another way to build a layer 2 platform Rollup is an Optimistic Rollup. This solves a problem of a zk-Rollup; a zk-Rollup cannot work with smart contracts.
The big contrast between zk-Rollups and Optimistic Rollups is where the computation is taking place. Optimistic Rollups do the computation then submit to the blockchain, whereas zk-Rollups bundle things up and let the blockchain do the computing.
A “Virtual Machine” is a way to use software to make one computer behave like it is two computers. Perhaps you want to use a different operating system, or you’re a company and you have vast amounts of computing resources that you know you’ll need as you scale, but you aren’t using right now, so you’d like to rent out some of those resources and make some extra revenue. Or you have one nicer computer and two monitors and you want to play a game against a precocious young child. All these things can be accomplished with a virtual machine.
Let's say that you have zero resources and you want to make a computer. You could ask a bunch of different computer users if you could use a small piece of their computer's power, and cobble together an entire computer, provided you had enough people willing to share resources. Well, that is the “EVM” - the Ethereum Virtual Machine. Several projects use an EVM, including BSC, MATIC, and FTM.
Rather than going up for a layer 2 solution, you can go over, with a sidechain, which branches off of the main blockchain, uses a virtual computer to perform functions and smart contracts; and then sends information back to the blockchain through a bridge contract.
Another layer 2 solution is plasma. Also known as a “commit chain”. Plasma uses parent-child chains. In some coding languages, there are parents and children. Children have some qualities of the parent, but are distinct things themselves. Just like your kids, if you have them. Apples and Bananas are both fruit; they’re both sweet and contain fructose and fiber but they are not the same things. Sometimes, there are things that affect the parent chain and get broadcast back to it; like perhaps a virus that’s killing all the fruit in the area. But mostly, they operate independently.
Last, the Lightning Network is a channel (another layer 2 solution), designed to work with BTC. The downside is that it can only be used for transactions, not for smart contracts. Channels work by locking up the cryptoasset and then making transactions off-chain before committing them back to the chain.
This isn't meant to be fully exhaustive, but my goal is that now that you've reached the end, you have a better understanding of the data stack that is emerging, and where it fits in with the network stack that we all know and love. It is important to note that again, all this data is not the highest level of the data stack. Apps will be built on top of this data, giving it a third layer, where it finds common ground again with the Network Stack. But hopefully, when you have a discussion about Layer 2, or about the "changing infrastructure of the internet", this gives some context for what is actually being discussed.
0
0