As web developers, we depend on network protocols to ensure the products we build are available and accessible to our users. Despite this, many of us are poorly aware of how the layers of the network stack actually work, or why they are there.
Understanding the things that happen between physical signals on the wire and your web application will help you hone your craft and level you up. Fortunately, the basic concepts of network protocols are easy to grasp, with a little guidance. So let's walk together through these concepts, and peel away the layers of the network stack one by one.
RailsConf 2020 CE Video
1. IntroductionWhat can we learn from human communication? What are some of the concepts that enable us to communicate effectively?
2. The StackHow can we build a layered network model that utilizes packet switching? A first look at the OSI model and the network stack.
3. Physical and Data-LinkA look at the first two layers of the network stack. How can we physically make computers talk to each other and how can we make them address each other?
4. NetworkA look at layer 3 of the network stack. How can we communicate over networks of networks where each networks independently?
5. TransportA look at layer 4 of the network stack. How can we transmit data between computers with different delivery guarantees?
6. ApplicationA look at the top layers of the network stack. How can we encode our application concerns inside the data packets that we send over the network?