OSI MODEL
Network Protocols
❉ In computing, a protocol is referred to as a convention or standard that controls or enables the connection, communication and data transfer between two end points.
❉ Protocols can be implemented by hardware, software or a combination of both software and hardware.
What is OSI Model?
❉ OSI stands for Open Systems Interconnection, a logical and conceptual seven layer architecture developed by the International Organization for Standardization (ISO) in 1984.
❉ This model focuses on standardizing network protocols used by different organizations and product vendors.
Why we need layering?
☞ Data hiding and encapsulation — Data structures and algorithms used in one layer are not visible to others.
☞ Increased Evolution — Layers can change while integrating with the existing system.
☞ Reduced Complexity — Complex systems can be decomposed into pieces that can be understood easily.
☞ Easy Testing — Each layer can be tested independently without affecting others.
☞ Multi-Vendor Integration — Alternate implementation of layers can exist at the same time.
Concepts related to OSI Layers
1. Protocol Data Unit
✦ Data exists at each layer in units called Protocol Data Units (PDU)
2. Data Encapsulation
✦ Data Encapsulation is a process by which data moves between different PDU types.
✦ Each layer accepts a message from a layer above it and places its own header.
✦ Encapsulation occurs as data moves from higher to lower layers.
Data Decapsulation
✦ This is the reverse of encapsulation.
✦ Decapsulation happens when data moves from lower layer to higher layer.
OSI Model Layers
Physical Layer
🔰 Physical Layer provides the electrical, functional and procedural characteristics to activate, maintain and deactivate physical links that transparently send the bitstream.
🔰 This layer only recognizes individual bits.
🔰 The relationship between a device and a physical transmission medium is established through this level.
Ex: Types of cables, Connecting devices
🔰 Functionalities of physical layer include data transmission, topology, line configurations, signals etc.
Data Link Layer
🔰 Data Link layer provides procedural and functional means to transfer data between entities and to correct transmission errors.
🔰 It provides activation, maintenance and deactivation of data link connections.
🔰 Functionalities of data link layer include grouping of bits into characters, message frames, character and frame synchronization, error control, media access control and flow control.
🔰 Data Link layer is divided into 2 sub layers;
- Medium Access Control (MAC)
- Logical Link Control (LLC)
Network Layer
🔰 The Network layer describes the network addresses that differs from MAC addresses.
🔰 Routers operate from this layer sending data throughout the extended network.
🔰 Functionalities of Network layer include internetworking, addressing, routing etc.
☞ Protocols : IP, IPX, NetBEUI, ICMP
☞ Devices : Routers, Layer 3 Switches
☞ Data Unit : Packets
Transport Layer
🔰 The main responsibility of this layer is to provide transparent transfer of data between systems.
🔰 It provides upper layers with reliable data transfer.
🔰 Transport layer provides end-to-end error free transmission with quality of service required by the application program.
🔰 Functionalities include service point addressing, connection control, segmentation and reassembly.
🔰 Protocols used in this layer are;
- TCP — Transmission Control Protocol
- It is a standard protocol that establishes and maintains a connection between hosts while allowing the systems to communicate over the internet.
2. UDP — User Datagram Protocol
- It is a communication protocol that is utilized across the Internet for time-sensitive transmissions.
Session Layer
🔰 Session Layer establishes , manages and terminates communication sessions that include service requests and service responses that occur between applications located in different network devices.
🔰 Functionalities of Session layer include dialog control, synchronization etc.
Presentation Layer
🔰 The presentation layer is responsible for performing any necessary data transformation or formatting required by the end applications.
🔰 The main activities are mainly concerned with;
☞ Data Compression
☞ File Formatting
☞ Encryption
🔰 These functions assure that information sent from the application layer of one system would be readable by the application of another system.
Ex: Common Data Representation Formats (EBCDIC & ASCII)
Common Data Compression Schemes (Apple QuickTime, mpeg, jpeg, gif, tiff)
Application Layer
🔰 This is the closest layer to the end user.
🔰 Application layer interacts with software applications that implement a communication component.
🔰 Functionalities include identifying communication partners, determine resource availability and synchronizing communication.
Ex: FTP, SMTP, DNS, Telnet, WWW