Networks are everywhere these days. Cars, phones, watches, even fridges1 have connections to a network. Understanding networking is a fundamental aspect of computer science, and better understanding the world we operate in today. This section will cover various aspects of networking as well as some web-development specific topics.

OSI

The OSI model is a conceptual model that people use when talking about networking. In general network protocols are built on top of other protocols beneath them. There are 2 popular models for this, the 5 and 7 layer OSI models. In reality the 7 layer model has 2 extra layers that don’t often have any implementation, or are so closely linked they can be considered one layer. Most real-world (simple) analysis takes place using the 5 layer model. Those layers are:

  1. Physical: The physical connections between machines, and the bits of data sent
  2. Link: This layer concerns how devices connect to one another, in particular link-layer standards are concerned with devices on the same network
  3. Network: Handles the routing between networks
  4. Transport: This layer primarily exists to verify that data arrived correctly (error checking, data encapsulation, etc.)
  5. Application: Protocols that are typically interacted with by application developers

Please note that in other files in this section I will use this color scheme to indicate the different layers. So if I talk about Messages you will notice it is red like it is in this diagram.

*Every layer on host, talks to corresponding Layer on the client (i.e. the datagram from the host is parsed by the network layer on the client) as seen below:

However starting from the upper layers (application), the data is encapsulated by the other layers (i.e. the frame contains the datagram, which contains the segment, which contains the messages). All of these are wrapped up into network packets, which are then the thing actually sent across the network.

It’s important to keep in mind that this model is conceptual, and there are many blurred lines when talking about real technologies. The OSI model is best utilized by understanding how each layer contributes to the final packets being sent in a network more so than trying to rigidly categorize everything.

TCP/IP Model

The TCP/IP model is a simplified version of the OSI model. In this model there are 4 layers:

  1. Network access: A combination of the link and physical layers of OSI
  2. Internet Layer: Corresponds to the network layer
  3. Transport layer: Corresponds to the transport layer in the OSI model
  4. Application layer: Corresponds to the session-application layers in the OSI model

Similar to the OSI model, the TCP/IP model is conceptual, and there are many blurred lines when talking about real technologies.

Additional resources

Footnotes

  1. Samsung Family Hub™️ | Samsung US | Samsung USA