Networking Fundamentals: OSI vs TCP/IP (DOD) Model
Tags: networking, fundamentals, beginners
Published: 2023-03-19 15:50:05

The OSI Model is a conceptual model, 'providing a common basis for the coordination of standards development for the purpose of systems interconnection'{[ISO/IEC7498-1:1998](https://www.iso.org/obp/ui/#iso:std:iso-iec:7498:-1:ed-1:v2:en)}. Numerous models have been tried, but none were as successful at clarifying networking concepts as the OSI Model. This commonly accepted user-friendly framework is an important piece among professionals and non-professionals alike.   

The model was first developed in the 1970s to support the diverse computer networks that were emerging and competing for application in the world. This period is known as the [Protocol Wars](https://tinyurl.com/53zw8jdn), which culminated in the - Internet-OSI Standards War, ultimately "won" by the - Internet Protocol Suite (TCP/IP). The OSI Model consists of 7 layers (mnemonically known as 'All people Seem To Need Data Processing'): Application, Presentation, Session, Transport, Network, Data Link, and Physical. Each layer has a separate function, which, when combined, allows for the interconnection of systems and the transmission of information between them. 

- Physical Layer - This layer is responsible for the transmission and reception of unstructured raw data between a device (router, switch, Network Interface Card, etc.) and the physical transmission medium. Transmission is achieved by converting digital 'bits' into Electrical, radio, or optical signals and the layer specifications define the characteristics--such as voltage levels, maximum transmission distances or physical connections.
- Data Layer -  This layer is responsible for node-to-node transfer; it is the link between connected nodes. It detects and corrects errors if they occur in the physical layer. IEE-802 divides the layer into two sublayers: MAC Layer and Logical Link Controller layer. 
- Network Layer - this layer provides the functional and procedural means of transferring the packets from one node to another in connected networks. A 'network' is the medium to which many nodes can be connected, and each node will have an address. If the message is too large, then the Network Layer will split the packet into multiple messages, commonly called fragments, which will be reassembled at the destination node in order.
- Transport Layer - this layer is responsible for provided the means by which variable-length data sequences are transmitted from one node to another, while also maintaining Quality of Service. 
- Session Layer - This layer creates the setup, controls the connection and ends the teardown between two or more computers, which is called a 'Session'. DNS and other name-resolution protocols operate at this layer as well. 
- Presentation Layer - This layer establishes data formatting and data translation into the format specified by the application layer. 
- Application Layer - this is the layer closest to the End User. The Application Layer interacts directly with software applications that implement a component of communication between the client and server. 

As data is passed down from the Application to the Data Layer, it is 'encapsulated' into what is called a Protocol Data Unit (PDU). Each layer adds a 'header' to the Data from the previous layer (which will contain both a header and data from that layer), and passes it down to the next layer, who then adds a header, and passes the new data to the next layer. At Layer 2, the Data Layer, a trailer is also added before passing the data to Layer 1, the Physical layer, who adds its own header, before handing it off to the transmission medium. 
  
The Design of the TCP/IP Model of the Internet does not concern itself with any sort of 'strict hierarchy of encapsulation' or layering. It does, however, recognize four broad layers of functionality, derived from the scope of operation of the protocols contained within each layer. The TCP/IP (or DOD) model condenses these 7 layers into four. The top three layers (Application, Presentation and Session) into a single layer, called the Application Layer. The Transport layer is next, followed by the Internet Layer (which corresponds directly to the Network Layer). Finally, we have the Link Layer, which combines both the Data and Physical layer. 
  
The Internet Protocol Suite has become the standard for networking. As a pragmatic approach to computer networking and to simplified, independent implementations of the protocols, it is the more practical methodology. The Foundational Protocols are TCP (Transmission Control Protocol), IP (Internet Protocol) and UDP (User Datagram Protocol). The Technical Standards are maintained by the Internet Engineering Task Force, and the Internet Protocol Suite actually pre-dates the OSI model. As a result, the OSI Model has become a more theoretical, rather than practical application.