> For the complete documentation index, see [llms.txt](https://aloy.gitbook.io/notes/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aloy.gitbook.io/notes/computer-networking/osi-model.md).

# osi-model

**Introduction:**

* The OSI (Open Systems Interconnection) model is a conceptual framework used to understand and standardize how different networking protocols and technologies communicate in a network.
* It consists of seven distinct layers, each with its own unique function and purpose.
* The OSI model was developed by the International Organization for Standardization (ISO) to facilitate interoperability and communication between different network devices and systems.
* The OSI model *describes 7 layers that computer systems use to communicate over a network , Conceptual model , not in use (Theoretical)*

**Seven Layers of the OSI Model:**

Acronym for OSI model:*Please do not take sausage pizza away*

1. **Physical Layer:**
   * This layer deals with the physical medium and transmission of raw bits over a physical link.
   * It specifies the hardware characteristics, such as cables, connectors, and network interface cards.
   * Key components: voltage levels, cable types, and bit rate.
2. **Data Link Layer:**
   * Responsible for framing, addressing, and error detection on the physical layer.
   * It organizes data into frames and ensures reliable data transfer between adjacent nodes.
   * Key components: MAC (Media Access Control) addresses, Ethernet, and framing.
3. **Network Layer:**
   * Focuses on routing and forwarding data between different networks and subnets.
   * It uses logical addressing (e.g., IP addresses) to determine the best path for data packets.
   * Key components: IP addresses, routers, and routing protocols (e.g., OSPF, BGP).
4. **Transport Layer:**
   * Manages end-to-end communication and data segmentation.
   * It provides error detection, flow control, and data reassembly.
   * Key components: TCP (Transmission Control Protocol) and UDP (User Datagram Protocol).
5. **Session Layer:**
   * Establishes, maintains, and terminates communication sessions between devices.
   * It controls the dialogue and ensures data synchronization between applications.
   * Key components: Session initiation, termination, and management.
6. **Presentation Layer:**
   * Responsible for data translation, encryption, and compression.
   * It ensures that data is presented in a readable format for the application layer.
   * Key components: Data encryption, character encoding, and data compression.
   * Data format : HTML , XML , jpg
   * Encryption : SSL
7. **Application Layer:**
   * This is the topmost layer that interacts directly with end-user applications.
   * It provides services and protocols that allow applications to communicate over the network.
   * Key components: HTTP, FTP, SMTP, and application-specific protocols.
