3.1 Layer-Based Communication Models

   


Telecommunication systems bridge the spatial distance between distributed computers. The implementation of this task is extremely complex for a number of reasons, so it is not recommended to use a monolithic architecture, which could prove very inflexible and difficult to maintain. This is the reason why communication systems are normally developed as layered architectures, where each layer assumes a specific task, offering it in the form of services. The ISO/OSI reference model is probably the best known example of such a layered architecture.

To solve its task, a layer, N, must use only the services provided by the next lower layer (N ?1). More specifically, layer N expands the properties of layer N ?1 and abstracts from its weaknesses. For this purpose, the instance of layer N communicates with the instances of the same layer on other computers. This means that the entire functionality of the communication system is available in the top layer. In contrast to a monolithic structure, layering a communication system means a more expensive implementation, but it offers invaluable benefits, such as the independent development of single partial components, easy exchange of single instances, better maintainability, and higher flexibility. Figure 3-1 shows the principles of communication in a layered system.

Figure 3-1. Communication in layered systems.

graphics/03fig01.gif


We can deduce two central terms for layer-oriented communication models from the current section, which will be discussed in more detail in Section 3.2:

  • Communication between two instances of the same layer on different computers is governed by predefined rules. These rules are called protocols.

  • The set of functions offered by a layer, N, to its higher-order layer (N + 1), is called its service. The interface through which this service is offered is called service interface.

This means that an instance is the implementation of a communication protocol and the service provided within one layer on a computer. The theoretical basis of services and protocols are discussed in Section 3.2.

3.1.1 The ISO/OSI Reference Model

At the end of the seventies, experts observed increasingly that the interconnection of several computer networks was difficult (because of vendor-specific properties of these networks), if not impossible, so it was found hard to ensure interoperability between the large number of networks in place. This situation led to the proposal to create a uniform and standardized platform for computer-based communication networks.

Open vendor-independent communication required the definition and observance of general standards. The ISO/OSI reference model (in short, ISO/OSI model) proposed by the International Organization for Standardization (ISO) for open systems communication (OSI) [ITU-94] describes a general abstract model for communication between computer-assisted systems based on digital data. It serves as a framework for the development of communication standards to achieve open communication systems. This reference model has the character of a functional standard for other standards, i.e., it does not represent a specification for implementation, but refers merely to the mutual use of standardized methods for the exchange of data.

The ISO/OSI model consists of seven layers (see Figure 3-2), where one layer offers specific services to its higher-order layer. The ISO/OSI model does not describe a real implementation of a specific system, but merely defines the tasks of each layer. For this reason, it has become the basic model for telecommunication systems during the past decade. That's why the ISO/OSI model is often referred to as the basic reference model. In fact, knowledge of the ISO/OSI is normally the basis for the design and structuring of modern computer networks, although it is not a perfect model. It has certain strengths and weaknesses, as we will see later when comparing it to the more streamlined TCP/IP model.

Figure 3-2. The ISO/OSI basic reference model.

graphics/03fig02.gif


The seven layers of the ISO/OSI reference model and their purposes are as follows:

  • Physical layer: The physical layer handles the transmission of single bits over a physical medium. More specifically, (unstructured) bit sequences are converted to physical signals and transmitted over a physical medium (copper cables, fiber glass, wireless, etc.). The physical layer defines special coding methods, hardware connections, and media types.

  • Data link layer: This layer specifies how data should be transmitted between two stations directly connected over a medium. The sending system organizes the data in frames and transmits them back to back. If errors occur, then the data link layer is responsible for detecting such errors and retransmitting the data frames. Moreover, the data flow between the two systems should be regulated so that the receiver does not get overloaded (flow control). Examples of data-link-layer protocols are HDLC (High-level Data Link Control), SLIP (Serial Line IP), and PPP (Point-to-Point Protocol); the latter two offer the described functions to only a limited extent.

    In local networks, the data link layer often assumes the task to regulate access to a shared medium. In such cases, the data link layer is divided into the Medium Access Control (MAC) layer and the Logical Link Control (LLC) layer.

  • Network layer: The network layer is responsible for establishing connectivity between all systems of a telecommunication network. For this reason, the network layer deals mainly with switching and forwarding of data (e.g., routing, adapting data units to the admissible size of the respective data link layer (fragmenting), or ensuring various service qualities). Within the scope of this book, we will mainly discuss the Internet protocols Versions 4 and 6.

  • Transport layer: The transport layer regulates the transport of data between applications (i.e., between the sender and the receiver application). Among other things, it is responsible for addressing applications, for controlling the data flow between the end systems, and for securing both the correctness and the order of data.

  • Session layer: The session layer handles the structured exchange of messages over transport links. For example, it can control within a session whether the transfer of data should be concurrently in both directions or only one of the communicating partners should have the right to transmit. In the latter case, the session layer manages the right to transmit.

  • Presentation layer: The presentation layer regulates the presentation of transmitted data in a form independent of the communicating computer systems. Many operating systems use different forms of representation for characters (e.g., ASCII, Unicode), numbers (big-endian, little-endian), and so on. To ensure that this data can be exchanged between the systems involved, the representation layer transmits it in a standardized form (e.g., by using Abstract Syntax Notation (ASN.1) or Basic Encoding Rules (BER)).

  • Application layer: This layer uses specific protocols for different applications, using the lower-level layers to fulfill their tasks for example, the application layer includes protocols for electronic mail, file transferred, and remote procedure call.

3.1.2 The TCP/IP Reference Model

The naming convention for the Internet reference model is based on the two most important Internet protocols the Transmission Control Protocol (TCP) and the Internet Protocol (IP). The 7-layer ISO/OSI reference model described earlier was devised before internetworking was invented. Furthermore, the 7-layer reference model devotes an entire layer to session protocols, which have become much less important as computer systems have changed from large mainframe systems to private workstations. As a result, researchers who developed TCP/IP invented a new layering model. This section describes the new layering model briefly.

The TCP/IP layering model, which is also called Internet Reference Model, contains the following layers (shown in Figure 3-3):

  • Application layer: The application layer combines all application-specific tasks (i.e., the properties of layers 5 to 7 of the ISO/OSI model). The protocols of the application layer include Telnet (for virtual terminals), FTP (file transfer), and SMTP (to transmit e-mail). More recent protocols include DNS (Domain Name System) and HTTP (Hypertext Transfer Protocol).

  • Transport layer: As in the ISO/OSI model, the transport layer of the TCP/IP reference model allows end-system applications to communicate. The TCP/IP reference model defines two basic protocols for this purpose: the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). TCP is a reliable connection-oriented protocol and can transmit a byte stream without errors over the Internet to another computer. UDP is unreliable and connectionless, but is preferred over the more complex TCP in many situations (e.g., to transmit multimedia data).

  • Internet layer: The Internet layer of the TCP/IP reference model defines the Internet Protocol (IP), including two auxiliary protocols, the Internet Control Message Protocol (ICMP) and the Internet Group Management Protocol (IGMP). The main purpose of the Internet layer is to forward IP packets from the sender to the receiver over the network, where routing of the packets plays an important role. The Internet Control Message Protocol (ICMP) is an integral part of each IP implementation; it serves to transmit diagnostics and error information for the Internet Protocol. The Internet Group Management Protocol (IGMP) is used to manage communication groups.

  • Interface layer: This layer combines the two lower layers of the ISO/OSI reference model. It handles network adapters and their drivers, which are used to exchange data packets in a specific maximum length over a local area network (Ethernet, Token Ring, etc.) or over a wide area network (ISDN, ATM).

Figure 3-3. Comparing the ISO/OSI reference model and the TCP/IP reference model.

graphics/03fig03.gif



       


    Linux Network Architecture
    Linux Network Architecture
    ISBN: 131777203
    EAN: N/A
    Year: 2004
    Pages: 187

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net