partitioned from the network that carries the user traffic. This principle is incorporated into the concept of tegrated services digital networks(ISDNs), which is described thoroughly in Helgert [1991]. The basic idea of ISdn is to offer to the user some number of 64-kbps access lines plus a 16-kbps access line through which the user can describe to an ISdn how the user wishes to use each of the 64-kbps circuits at any given time The channels formed by concatenating the access lines with the network interswitch trunks having the requested characteristics are established using an out-of-band signaling system, the most modern of which is signaling system #7(SS#7) In either virtual circuit or datagram networks, packets from a large number of users may simultaneously need transmission services between nodes. Packets arrive at a given node at random times. The switching node determines the next node in the transmission path, and then places the packet in a queue for transmission over ty to node Packet arrival the number of packet arrivals over fixed-length intervals of time has a large variance. Because of the burstiness of the arrival process, packets may experience significant delays at the trunks. Queues may also build due to the difference in transmission capacities of the various trunks and access lines. Combining of packets that arrive at random times from different users onto the same line, in this case a trunk, is called statistical multiplex In addition to the delays experienced at the input to trunks, packets may also experience queueing delays within the switching nodes. In particular, the functions required for packet switching are effected by executing various software processes within the nodes, and packets must queue while awaiting execution of the various processes on their behalf. Both transmission capacities and nodal processing capabilities are available over a wide range of values. If the trunk capacities are relatively low compared to nodal processing capability, then delays at switching nodes may be relatively small. If line capacities are large compared to nodal processing capabilities, however, delays due to nodal processing may be significant. In the general case, all possible sources of delay should be examined to determine where bottlenecks, and consequently delay, occur It is often the case that a particular point in the communication network, either a processing node or a the primary source of delay. In this case, this point is usually singled out for analysis, and a simpl model is invoked to analyze the performance at that point. The results of this analysis, combined with results of other analyses, result in a profile of overall system performance. In this case, the key aspect of the analysis is to choose an appropriate model for the isolated analysis. In this way, a simplified analysis leading to useful results can be performed, and this can lead to an improved network design. Protocol design and performance issues are frequent topics of discussion at both general conferences in ommunications and those specialized to networking. The reader is encouraged to consult the proceedings of the conferences mentioned earlier for a better appreciation of the range of issues and the diversity of the proposed solutions to the issu Computer Communication Network Architecture In this section, we will begin with a brief, high-level definition of the ISORM. The reference model has seven layers, none of which can be bypassed conceptually. In general, a layer is defined by the types of services it provides to its users and the quality of those services. For each layer in the ISO/OSI architecture, the user of a layer is the next layer up in the hierarchy, except for the highest layer for which the user is an application Clearly, when a layered architecture is implemented under this philosophy, then the quality of service obtained by the end user, the application, is a function of the quality of service provided by all of the layers. In order to clarify the communications strategy of the ISO/OSI architecture, we will provide a discussion of the layer 2 services in some detail There is significant debate over whether the efforts of the ISO/OSI community are leading to the best standards(or even standards that have any merit whatever! ) Limiting our discussion to the ISORM is, by no leans, an endorsement of the actual protocols that have been developed in the ISO arena; there are actually more widely deployed and successful standards in other arenas. On the other hand, the iSORM is very useful for discussing network architecture principles, and these principles apply across the board. Thus, we choose e 2000 by CRC Press LLC
© 2000 by CRC Press LLC partitioned from the network that carries the user traffic. This principle is incorporated into the concept of integrated services digital networks (ISDNs), which is described thoroughly in Helgert [1991]. The basic idea of ISDN is to offer to the user some number of 64-kbps access lines plus a 16-kbps access line through which the user can describe to an ISDN how the user wishes to use each of the 64-kbps circuits at any given time. The channels formed by concatenating the access lines with the network interswitch trunks having the requested characteristics are established using an out-of-band signaling system, the most modern of which is signaling system #7 (SS#7). In either virtual circuit or datagram networks, packets from a large number of users may simultaneously need transmission services between nodes. Packets arrive at a given node at random times. The switching node determines the next node in the transmission path, and then places the packet in a queue for transmission over a trunk facility to the next node. Packet arrival processes tend to be bursty, that is, the number of packet arrivals over fixed-length intervals of time has a large variance. Because of the burstiness of the arrival process, packets may experience significant delays at the trunks. Queues may also build due to the difference in transmission capacities of the various trunks and access lines. Combining of packets that arrive at random times from different users onto the same line, in this case a trunk, is called statistical multiplexing. In addition to the delays experienced at the input to trunks, packets may also experience queueing delays within the switching nodes. In particular, the functions required for packet switching are effected by executing various software processes within the nodes, and packets must queue while awaiting execution of the various processes on their behalf. Both transmission capacities and nodal processing capabilities are available over a wide range of values. If the trunk capacities are relatively low compared to nodal processing capability, then delays at switching nodes may be relatively small. If line capacities are large compared to nodal processing capabilities, however, delays due to nodal processing may be significant. In the general case, all possible sources of delay should be examined to determine where bottlenecks, and consequently delay, occur. It is often the case that a particular point in the communication network, either a processing node or a trunk, is the primary source of delay. In this case, this point is usually singled out for analysis, and a simple model is invoked to analyze the performance at that point. The results of this analysis, combined with results of other analyses, result in a profile of overall system performance. In this case, the key aspect of the analysis is to choose an appropriate model for the isolated analysis. In this way, a simplified analysis leading to useful results can be performed, and this can lead to an improved network design. Protocol design and performance issues are frequent topics of discussion at both general conferences in communications and those specialized to networking. The reader is encouraged to consult the proceedings of the conferences mentioned earlier for a better appreciation of the range of issues and the diversity of the proposed solutions to the issues. Computer Communication Network Architecture In this section, we will begin with a brief, high-level definition of the ISORM. The reference model has seven layers, none of which can be bypassed conceptually. In general, a layer is defined by the types of services it provides to its users and the quality of those services. For each layer in the ISO/OSI architecture, the user of a layer is the next layer up in the hierarchy, except for the highest layer for which the user is an application. Clearly, when a layered architecture is implemented under this philosophy, then the quality of service obtained by the end user, the application, is a function of the quality of service provided by all of the layers. In order to clarify the communications strategy of the ISO/OSI architecture, we will provide a discussion of the layer 2 services in some detail. There is significant debate over whether the efforts of the ISO/OSI community are leading to the best standards (or even standards that have any merit whatever!). Limiting our discussion to the ISORM is, by no means, an endorsement of the actual protocols that have been developed in the ISO arena; there are actually more widely deployed and successful standards in other arenas. On the other hand, the ISORM is very useful for discussing network architecture principles, and these principles apply across the board. Thus, we choose to base our discussion on the ISORM
7. Application Layer Peer-to-peer Communications 7. Application Layer 6. Presenta bion Lay 5. Session 5. Session Layer 4. Transport Layer 3. Network Layer 3. Notwork Layer 2. Data Link Layer 2. Data Link Layer 2. Data Link Layer 1. Physical Layer 1. Physical Layer 1. Physical Layer End-to-end Communications path FIGURE 72.6 Layered architecture for ISO/OSI reference model n Figure 72.6, adopted from Spragins [1991], shows the basic structure of the OSI architecture and how this chitecture is envisaged to provide for exchange of information between applications. As shown in the figure, there are seven layers: application, presentation, session, transport, network, data link, and physical. Brief definitions of the layers follow, but the reader should bear in mind that substantial further study will be required to develop an understanding of the practical implications of the definitions Physical layer: Provides electrical, functional, and procedural characteristics to activate, maintain, and deactivate physical data links that transparently pass the bit stream for communication between data link entities Data link layer: Provides functional and procedural means to transfer data between network entities provides for activation, maintenance, and deactivation of data link connections, character and frame synchronization, grouping of bits into characters and frames, error control, media access control, and Network layer: Provides switching and routing functions to establish, maintain, and terminate network layer connections, and transfer data between transport layers Transport layer: Provides host-to-host, cost-effective, transparent transfer of data, end-to-end flow control, and end-to-end quality of service as required by applications Session layer: Provides mechanisms for organizing and structuring dialogues between application pre Presentation layer: Provides for independent data representation and syntax selection by nicating application and conversion between selected contexts and the internal architecture standard Application layer: Provides applications with access to the ISo/OSI communication stack and certain distributed information services As we have mentioned previously, a layer is defined by the types of services it provides to its users. In the case of a request or a response, these services are provided via invocation of service primitives of the layer in question by the layer that wants the service performed. In the case of an indication or a confirm, these services are provided via invocation of service primitives of the layer in question by the same layer that wants the service This process is not unlike a user of a programming system calling a subroutine from a scientific subroutine package in order to obtain a service, say, matrix inversion or memory allocation. For example, a request is analogous to a CAll statement in a ForTRan program, and a response is analogous to the return statement in the subroutine that has been CALLed. The requests for services are generated asynchronously by all of the e 2000 by CRC Press LLC
© 2000 by CRC Press LLC Figure 72.6, adopted from Spragins [1991], shows the basic structure of the OSI architecture and how this architecture is envisaged to provide for exchange of information between applications. As shown in the figure, there are seven layers: application, presentation, session, transport, network, data link, and physical. Brief definitions of the layers follow, but the reader should bear in mind that substantial further study will be required to develop an understanding of the practical implications of the definitions: • Physical layer: Provides electrical, functional, and procedural characteristics to activate, maintain, and deactivate physical data links that transparently pass the bit stream for communication between data link entities. • Data link layer: Provides functional and procedural means to transfer data between network entities; provides for activation, maintenance, and deactivation of data link connections, character and frame synchronization, grouping of bits into characters and frames, error control, media access control, and flow control. • Network layer: Provides switching and routing functions to establish, maintain, and terminate network layer connections, and transfer data between transport layers. • Transport layer: Provides host-to-host, cost-effective, transparent transfer of data, end-to-end flow control, and end-to-end quality of service as required by applications. • Session layer: Provides mechanisms for organizing and structuring dialogues between application processes. • Presentation layer: Provides for independent data representation and syntax selection by each communicating application and conversion between selected contexts and the internal architecture standard. • Application layer: Provides applications with access to the ISO/OSI communication stack and certain distributed information services. As we have mentioned previously, a layer is defined by the types of services it provides to its users. In the case of a request or a response, these services are provided via invocation of service primitives of the layer in question by the layer that wants the service performed. In the case of an indication or a confirm, these services are provided via invocation of service primitives of the layer in question by the same layer that wants the service performed. This process is not unlike a user of a programming system calling a subroutine from a scientific subroutine package in order to obtain a service, say, matrix inversion or memory allocation. For example, a request is analogous to a CALL statement in a FORTRAN program, and a response is analogous to the RETURN statement in the subroutine that has been CALLed. The requests for services are generated asynchronously by all of the FIGURE 72.6 Layered architecture for ISO/OSI reference model