James's Ramblings

Networking

Created: December 19, 2024

OSI Model

Definition

The Open Systems Interconnection (OSI) model is a reference model from the International Organization for Standardization (ISO) that “provides a common basis for the coordination of standards development for the purpose of systems interconnection.”

As the OSI model is a theoretical model, protocols and protocols suites may not map to it exactly. For example, protocols may sit on multiple layers.

The OSI model consists of seven layers: Application, Presentation, Session, Transport, Network, Data Link, and Physical.

To transmit data from one node to another, the data is passed down through the layers of the sending node, across the physical medium, and then back up through the layers of the receiving node.

Encapsulation is the process of adding headers and trailers to data as it passes down through the layers of the sending node. The headers and trailers are removed as the data passes up through the layers of the receiving node. Encapsulation occurs between the application and physical layers.

De-encapsulation is the process of removing headers and trailers from data as it passes up through the layers of the receiving node. De-encapsulation occurs between the physical and application layers.

Protocol Data Unit (PDU)

The general term for a unit of data at any layer of the OSI model is a Protocol Data Unit (PDU). This is the same data that is encapsulated as it passes down through the layers of the sending node.

Data may include a header, body or payload, and trailer. The header and trailer are added and removed as the data passes down and up through the layers.

Layers 7 through 5 only have data. Layers 4 and 3 add a header at the beginning of the data. Layer 2 adds a header and trailer. Layer 1 only has bits.

Layers

Acronym: Please Do Not Throw Sausage Pizza Away.

7. Application Layer

PDU: Data

High-level protocols such as for resource sharing or remote file access, e.g. HTTP.

6. Presentation Layer

PDU: Data

Translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption.

5. Session Layer

PDU: Data

Managing communication sessions, i.e., continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes.

4. Transport Layer

PDU: Segment or Datagram

Reliable transmission of data segments between points on a network, including segmentation, acknowledgement and multiplexing.

3. Network Layer

PDU: Packet

Structuring and managing a multi-node network, including addressing, routing and traffic control.

2. Data Link Layer

PDU: Frame

Transmission of data frames between two nodes connected by a physical layer.

1. Physical Layer

PDU: Bit or Symbol

Transmission and reception of raw bit streams over a physical medium.

Internet protocol suite (TCP/IP)

Definition

The Internet protocol suite (also called TCP/IP) is the conceptual model and set of communications protocols used on the Internet and similar computer networks.

The TCP/IP model consists of four layers: Application, Transport, Internet (or Network), and Link (or Network Access).

TCP/IP does not strictly adhere to the OSI model, but can be mapped roughly as follows:

  • Application: Application, Presentation, Session
  • Transport: Transport
  • Internet: Network
  • Link: Data Link, Physical

The TCP/IP model, in general, does not consider physical specifications, rather it assumes a working network infrastructure that can deliver media-level frames on the link.

TCP/IP is designed to be hardware independent and may be implemented on top of virtually any link-layer technology.

TCP/IP only concerns itself with the software aspects of networking - primarily mapping of IP addresses to link-layer addresses (e.g. MAC addresses).

The core protocols specified by the Internet Engineering Task Force (IETF) in this layer are the Address Resolution Protocol (ARP), the Reverse Address Resolution Protocol (RARP), and the Neighbor Discovery Protocol (NDP).

Protocols

Transport Layer Security (TLS)

Transport Layer Security (TLS) is a cryptographic protocol that provides secure communication over a computer network.

TLS does not fit neatly into the OSI model. Most applications use it like it is a layer 4 (Transport Layer) protocol, but in theory it is a layer 6 (Presentation Layer) protocol.

TLS itself has two layers: the TLS record and the TLS handshake protocols.

SSL/TLS Versions and Status

Version Release Year Status
SSL 1.0 Unpublished Unpublished
SSL 2.0 1995 Deprecated in 2011 (RFC 6176)
SSL 3.0 1996 Deprecated in 2015 (RFC 7568)
TLS 1.0 1999 Deprecated in 2021 (RFC 8996)
TLS 1.1 2006 Deprecated in 2021 (RFC 8996)
TLS 1.2 2008 In use since 2008
TLS 1.3 2018 In use since 2018