Skip to content

OSI Model

The Open Systems Interconnect model is a conceptual framework for understanding the various layers of abstraction involved in networked communication.

Layer 2 Protocols

Data Link Layer

LLDP

ARP

The Address Resolution Protocol allows computers within a switched network to resolve IP addresses to MAC addresses. This is done by simply broadcasting a request on the subnet that asks who owns a particular IP address. A response will arrive that contains the MAC address of the interface that is configured to listen to that address. It is certainly possible for multiple devices to respond to the same IP address, although this typically is not desired for obvious reasons.(1)

  1. In cases like where you configure a VIP (meaning, two devices are configured for the same IP address), only one of the devices would typically be "active" and respond to such requests. The VIP active/passive configuration is controlled by device-side applications like VRRP.

Layer 3 Protocols

Network Layer

ICMP

Internet Control Message Protocol is used to diagnose issues in a network. The traceroute and ping commands use ICMP.

Layer 4 Protocols

Transport Layer

QUIC

QUIC is a transport-layer protocol that aims to be effectively equivalent to TCP but with much reduced latency. This is achieved primarily through an abbreviated handshake protocol that only requires 1 round trip, whereas TCP requires 3. It can be thought of as a TCP-like protocol with the efficiencies of UDP.

QUIC Handshake diagram

Congestion control algorithms are handled in userspace instead of kernel space (like TCP) which is claimed to allow the algorithms to rapidly evolve and improve.

TCP

UDP

Layer 7 Protocols

HTTP

Obviously this has to be mentioned. It's the most common protocol of them all! 🥳

Websocket

Websocket diagram

gRPC

Google Remote Procedure Call.

Video Streaming

There are various standardized protocols for video streaming.

MPEG-DASH

MPEG stands for "Moving Picture Experts Group." DASH stands for "Dynamic Adaptive Streaming over HTTP". This protocol is used by YouTube and Netflix.

Apple HLS

HLS stands for "HTTP Live Streaming"

Microsoft Smooth Streaming

Seems to be exclusively used by Microsoft's products

Adobe HTTP Dynamic Streaming (HDS)

Mainly used for flash.