Networking Models

On networking models, for theory and practice.

OSI Model

From wikipedia: OSI model:

"The Open Systems Interconnection model (OSI model) is a conceptual model that characterizes and standardizes the communication functions of a telecommunication or computing system without regard to their underlying internal structure and technology. Its goal is the interoperability of diverse communication systems with standard protocols. The model partitions a communication system into abstraction layers. The original version of the model defined seven layers."

...

"In the late 1970s, one project was administered by the International Organization for Standardization (ISO), while another was undertaken by the International Telegraph and Telephone Consultative Committee, or CCITT (the abbreviation is from the French version of the name). These two international standards bodies each developed a document that defined similar networking models.

In 1983, these two documents were merged to form a standard called The Basic Reference Model for Open Systems Interconnection. The standard is usually referred to as the Open Systems Interconnection Reference Model, the OSI Reference Model, or simply the OSI model. It was published in 1984 by both the ISO, as standard ISO 7498, and the renamed CCITT (now called the Telecommunications Standardization Sector of the International Telecommunication Union or ITU-T) as standard X.200.

OSI had two major components, an abstract model of networking, called the Basic Reference Model or seven-layer model, and a set of specific protocols."

OSI Model
Layer Protocol data unit (PDU) Function[3]
Host
layers
7. Application Data High-level APIs, including resource sharing, remote file access
6. Presentation Translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption
5. Session Managing communication sessions, i.e. continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes
4. Transport Segment (TCP) / Datagram (UDP) Reliable transmission of data segments between points on a network, including segmentation, acknowledgement and multiplexing
Media
layers
3. Network Packet Structuring and managing a multi-node network, including addressing, routing and traffic control
2. Data link Frame Reliable transmission of data frames between two nodes connected by a physical layer
1. Physical Bit Transmission and reception of raw bit streams over a physical medium

 

TCP/IP Model and Family

Model - the theory, framework, model with four layers

Family - the set of actual protocols enabling communications designed within the framework (e.g. TCP, IP, DNS, FTP, and HTTP).

"The Internet protocol suite is the computer networking model and set of communications protocols used on the Internet and similar computer networks. It is commonly known as TCP/IP, because its most commonly used protocols, the Transmission Control Protocol (TCP) and the Internet Protocol (IP) were the first networking protocols defined during its development. It is occasionally known as the Department of Defense (DoD) model, because the development of the networking model was funded by DARPA, an agency of the United States Department of Defense." [wikipedia]

1982: the US Department of Defense declared TCP/IP as the standard for all military computer networking.

1985: In 1985, the Internet Advisory Board (later renamed theInternet Architecture Board) held a three-day workshop on TCP/IP for the computer industry, attended by 250 vendor representatives, promoting the protocol and leading to its increasing commercial use.

In 1985, the first Interop conference focused on network interoperability by broader adoption of TCP/IP. 

Two RFCs in 1989:

  1. RFC1122 - Requirements for Internet Hosts -- Communication Layers (Oct 1989), covers the communications protocol layers: link layer, IP layer, and transport layer;
  2. RFC1123 - Requirements for Internet Hosts -- Application and Support (Oct 1989), covers the application and support protocols.

The TCP/IP Model uses four layers, as exemplified in figure below (w UDP transport protocol):

From wikipedia: OSI model:

"Despite using a different concept for layering than the OSI model, these layers are often compared with the OSI layering scheme in the following way:
  • The Internet application layer includes the OSI application layer, presentation layer, and most of the session layer.
  • Its end-to-end transport layer includes the graceful close function of the OSI session layer as well as the OSI transport layer.
  • The internetworking layer (Internet layer) is a subset of the OSI network layer.
  • The link layer includes the OSI data link layer and sometimes the physical layers, as well as some protocols of the OSI's network layer.

These comparisons are based on the original seven-layer protocol model as defined in ISO 7498, rather than refinements in such things as the internal organization of the network layer document.[citation needed]

The presumably strict layering of the OSI model as it is usually described does not present contradictions in TCP/IP, as it is permissible that protocol usage does not follow the hierarchy implied in a layered model. Such examples exist in some routing protocols (e.g., OSPF), or in the description of tunneling protocols, which provide a link layer for an application, although the tunnel host protocol might well be a transport or even an application-layer protocol in its own right.[citation needed]"

 

Models Compared

General note: the layers in the different models does NOT correlate and should NOT be viewed as strict to any degree. The side-by-side below is only to provide some indications on how the models compare.

  OSI Model   TCP/IP Model
Briefly "a conceptual model that characterizes and standardizes the communication functions of a telecommunication or computing system without regard to their underlying internal structure and technology." [wikipedia]   The Internet protocol suite is the computer networking model and set of communications protocols used on the Internet and similar computer networks. [wikipedia]
I.e. More theoretical and useful for learning and discussions   More practical and useful for using data networks.
History First official publication in 1984, as ISO 7498 and CCITT - now ITU-T - X.200.   Two RFCs in 1989: RFC1122 and RFC1123.
  OSI Model Layers (7)   TCP/IP Model Layers (4)
Host
layers
7. Application - High-level APIs, including resource sharing, remote file access   (4) The Internet application layer includes the OSI application layer, presentation layer, and most of the session layer.
6. Presentation - Translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption  
5. Session - Managing communication sessions, i.e. continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes  
 
 
  (3) Its end-to-end transport layer includes the graceful close function of the OSI session layer as well as the OSI transport layer.
4. Transport - Reliable transmission of data segments between points on a network, including segmentation, acknowledgement and multiplexing  
Media
layers
3. Network - Structuring and managing a multi-node network, including addressing, routing and traffic control   (2) The internetworking layer (Internet layer) is a subset of the OSI network layer.
  (1) The link layer includes the OSI data link layer and sometimes the physical layers, as well as some protocols of the OSI's network layer.
2. Data link - Reliable transmission of data frames between two nodes connected by a physical layer  
1. Physical - Transmission and reception of raw bit streams over a physical medium  
  (Sometimes outside TCP/IP Model)

 

 

Details on Layers

  Layer Protocol data unit (PDU) Addressing1 (TCP/IP Family) Speed Encryption
Host
layers
7. Application Data As per layer 4 plus hostname (through DNS) Measurements are of more practical and real use.2 (Yes)
6. Presentation     OSI model
5. Session     (Yes)
4. Transport Segment (TCP) / Datagram (UDP) Network socket (host adress, port number, and which transport protocol)   (Yes)
Media
layers
3. Network Packet Host address (e.g. IP address) (Packet rate, packets/time unit) (Yes)
2. Data link Frame Physical address (e.g. MAC address) (Frame rate, frames/time unit)  
1. Physical Bit Not applicable3 Bitrate, bits per second  
1 I.e., the level on which address format is defined. Address in new format is then available for layer(s) above.
2 Actually transmitted pages, parts of big files, etc
3 First layer actually concerned with any form of deciding which interface/similar is Data link, layer 2.

 

What more specifically is handled in each layer, at least theoretically:

  • 7) Application
  • 6) Presentation
    • The presentation layer is responsible for the delivery and formatting of information to the application layer for further processing or display.[4] It relieves the application layer of concern regarding syntactical differences in data representation within the end-user systems. An example of a presentation service would be the conversion of an EBCDIC-coded text computer file to an ASCII-coded file.
    • Data conversion[2]
    • Character code translation[2]
    • Compression[2]
    • Encryption and Decryption[2]
  • 5) Session
  • 4) Transport
    • Connection-oriented communication: It is normally easier for an application to interpret a connection as a data stream rather than having to deal with the underlying connection-less models, such as the datagram model of the User Datagram Protocol (UDP) and of the Internet Protocol (IP).
    • Same order delivery: The network layer doesn't generally guarantee that packets of data will arrive in the same order that they were sent, but often this is a desirable feature. This is usually done through the use of segment numbering, with the receiver passing them to the application in order. This can cause head-of-line blocking.
    • Reliability: Packets may be lost during transport due to network congestion and errors. By means of an error detection code, such as a checksum, the transport protocol may check that the data is not corrupted, and verify correct receipt by sending an ACK or NACK message to the sender. Automatic repeat request schemes may be used to retransmit lost or corrupted data.
    • Flow control: The rate of data transmission between two nodes must sometimes be managed to prevent a fast sender from transmitting more data than can be supported by the receiving data buffer, causing a buffer overrun. This can also be used to improve efficiency by reducing buffer underrun.
    • Congestion avoidanceCongestion control can control traffic entry into a telecommunications network, so as to avoid congestive collapse by attempting to avoid oversubscription of any of the processing or link capabilities of the intermediate nodes and networks and taking resource reducing steps, such as reducing the rate of sending packets. For example, automatic repeat requests may keep the network in a congested state; this situation can be avoided by adding congestion avoidance to the flow control, including slow-start. This keeps the bandwidth consumption at a low level in the beginning of the transmission, or after packet retransmission.
    • MultiplexingPorts can provide multiple endpoints on a single node. For example, the name on a postal address is a kind of multiplexing, and distinguishes between different recipients of the same location. Computer applications will each listen for information on their own ports, which enables the use of more than one network serviceat the same time. It is part of the transport layer in the TCP/IP model, but of the session layer in the OSI model.
  • 3) Network
    For example, IP is connectionless, in that a datagram can travel from a sender to a recipient without the recipient having to send an acknowledgement. Connection-oriented protocols exist at other, higher layers of the OSI model.
    • Host addressing
    Every host in the network must have a unique address that determines where it is. This address is normally assigned from a hierarchical system. For example, you can be "Fred Murphy" to people in your house, "Fred Murphy, 1 Main Street" to Dubliners, or "Fred Murphy, 1 Main Street, Dublin" to people in Ireland, or "Fred Murphy, 1 Main Street, Dublin, Ireland" to people anywhere in the world. On the Internet, addresses are known as Internet Protocol (IP) addresses.
    • Message forwarding
    Since many networks are partitioned into subnetworks and connect to other networks for wide-area communications, networks use specialized hosts, called gateways orrouters, to forward packets between networks. This is also of interest to mobile applications, where a user may move from one location to another, and it must be arranged that his messages follow him. Version 4 of the Internet Protocol (IPv4) was not designed with this feature in mind, although mobility extensions exist. IPv6 has a better designed solution.
  • 2) Data link
  • 1) Physical
    • Physical media
      The physical layer defines the means of transmitting raw bits rather than logical data packets over a physical link connecting network nodes. The bit stream may be grouped into code words or symbols and converted to a physical signal that is transmitted over a hardware transmission medium. The physical layer provides an electrical, mechanical, and procedural interface to the transmission medium. The shapes and properties of the electrical connectors, the frequencies to broadcast on, the modulation scheme to use and similar low-level parameters, are specified here.
    • wikipedia: Transmission_medium:
      • Guided - Wired
        • Mechanical
          • Type of cable
            • Copper
              • Un-shielded Twisted Pair (UTP)
              • Shielded Twisted Pair
            • Coaxial cable
            • Optical fiber
            • etc
          • Connectors
        • Electrical
          • voltage levels, ...
      • Unguided - Wireless; radio, microwave, infrared
        • Frequency specficiations ()
    • Distance limitations
    • Modulation technology/ies, wikipedia.org/wiki/Modulation
    • Speed limitations, measured in bitrate, bits/second
  •