File Transfer, Access, and Management

106 Communication Networks Copyright © 2005 PragSoft FTAM services are defined using service primitives, which operate on FADUs, DUs, and file attributes, as well as managing the initiation and termination of FTAM associations. FTAM defines many primitives, a sample of which is provided in Figure 8.11. FTAM uses ACSE for its operation. Figure 8.11 Sample FTAM service primitives. Primitive Types Purpose F-INITIALIZE request, indicate response, confirm Used by an initiator-responder pair to establish an association. F-TERMINATE request, indicate response, confirm Used by the initiator-responder pair to terminate their association. F-U-ABORT request, indicate Used by an initiator-responder pair to report errors. F-P-ABORT indicate Used by the service provider to report errors. F-CREATE request, indicate response, confirm Used for creating a remote file. F-DELETE request, indicate response, confirm Used for deleting a remote file. F-SELECT request, indicate response, confirm Used for choosing a remote file to work with. F-DESELECT request, indicate response, confirm Used for releasing control over a selected remote file. F-COPY request, indicate response, confirm Used for making a copy of a remote file. The copy will remain on the remote system. F-MOVE request, indicate response, confirm Used for moving a remote file within its filestore. F-OPEN request, indicate response, confirm Used for opening a remote file so that operations can be applied to its contents. F-CLOSE request, indicate response, confirm Used for closing an open remote file. F-LOCATE request, indicate response, confirm Used for locating an FADU of an open remote file. F-ERASE request, indicate response, confirm Used for erasing an FADU of an open remote file. F-READ request, indicate Commences the reading of an open remote file or part thereof. F-WRITE request, indicate Commences the writing of an open remote file or part thereof. F-DATA request, indicate Used for transferring an open remote file or part thereof. F-DATA-END request, indicate Finalizes one or more data transfer with F-DATA. F-TRANSFER-END request, indicate response, confirm Finalizes an F-READ or F-WRITE operation in progress. F-GROUP-primitive request, indicate response, confirm A set of primitives used for collectively working on groups of files e.g., F-GROUP-DELETE. FTAM service primitives are organized into four regimes. The regimes denote successive stages in an FTAM association which progressively narrow down the scope of the primitives. Figure 8.12. outlines the FTAM regimes and how they are www.pragsoft.com Chapter 8: The Application Layer 107 related to FTAM service primitives. Each regime comes into effect from the previous regime by certain primitives denoted by the Begin column, and returns to the previous regime by another set of primitives denoted by the End column. The Do column denotes the primitives that can occur while a regime is in effect. Figure 8.12 FTAM regimes. Regime Begin Do End Purpose Application Association F-INITIALIZE F-GROUP- primitive F-TERMINATE F-U-ABORT F-P-ABORT This is the top-level regime and exists for the duration of FTAM association. Object Selection F-CREATE F-SELECT F-COPY F-MOVE F-DELETE F-DESELECT Effective while the scope of association is a single file. File Open F-OPEN F-LOCATE F-ERASE F-CLOSE Effective while a file is open for manipulation. Data Transfer F-READ F-WRITE F-DATA F-DATA-END F-CANCEL F-TRANSFER-END Effective while a read or write operation is in progress. FTAM services are also organized into related groups so that their selection can be negotiated when an association is being established. This grouping is done at two levels. The first level organizes the services into functional units similar to functional units for earlier OSI layers. The second level organizes the functional units into service classes . FTAM defines five service classes: • The file transfer class supports association management and the transfer of files between an application and a remote file system. • The file management class supports association management and the remote management of files e.g., creation, deletion, attribute manipulation from an application. • The file access class supports association management and the remote manipulation of file contents from an application. • The file transfer and management class is the combination of services from the first two classes. • The unrestricted class support user-selected functional units in an arbitrary fashion. The ISO 8571 series of standards which describe all aspects of FTAM consist of a number of parts, four of which were touched upon in this section: ISO 8571 .1 FTAM General Introduction ISO 8571 .2 FTAM Virtual Filestore ISO 8571 .3 FTAM File Service Definition 108 Communication Networks Copyright © 2005 PragSoft ISO 8571 .4 File Protocol Specification

8.4. Other Standards

A number of application layer standards have been discussed so far in this chapter. Many more exist, including the following: • The CCITT X.700 series of recommendations and their corresponding ISO series for System Management describe standards for coordinating resource utilization in networked information systems. • The CCITT X.500 series of recommendations and their corresponding ISO series for Electronic Directory define standards for providing a global directory service with entries for network users as well as network components. • The ISO 10026 standard for Distributed Transaction Processing is aimed at providing standard capabilities for distributed applications to simultaneously perform transactions on multiple systems. • The ISO 8831 and ISO 8832 standards for Job Transfer Manipulation address remote job submission in distributed systems.

8.5. Further Reading

General descriptions of the application layer and related protocols can be found in Tanenbaum 1989, Black 1989, Stamper 1991, and Stallings 1994. Chilton 1989, Plattner et al 1991, and Radicati 1992 are two highly readable introductions to MHS and X.400. www.pragsoft.com Chapter 9: Local Area Networks 109

9. Local Area Networks

Local Area Networks LANs have become an important part of most computer installations. Personal computers have been the main driving force behind the LAN proliferation. As personal computers became more widely used in office environments, so it became desirable to interconnect them to achieve two aims: to enable them to exchange information e.g., e-mail, and to enable them to share scarce and expensive resources e.g., printers. LANs have been so successful in realizing these aims that their cost is well justified even when there are only a handful of participating computers. Figure 9.93 illustrates the main characteristics of LANs. Current LANs are used for interconnecting almost any type of computing devices imaginable, including mainframes, workstations, personal computers, file servers, and numerous types of peripheral devices. Many LANs are further connected to other LANs or WANs via bridges and gateways, hence increasing the reach of their users. In this chapter we will first look at some basic LAN concepts, and then discuss a number of widely-adopted LAN standards. As before, our aim will be to concentrate on general principles and protocols of importance rather than to get involved in the details of vendor-specific products. Figure 9.93 LAN characteristics. Low End Typically High End Number of Users 10s of users 20-100 users 1000s of users Geographic Coverage 100s of meters 100-1000 meters 10s of kms Data Rates 10s of kbps 1-10 mbps 100s of mbps Raw Error Rates 1 bit in 100 million 1 bit in 1-10 billion 1 bit in 100 billion

9.1. Basic Concepts

A LAN consists of four general types of components: • User station . This provides the user with access to the LAN. The most common example is a personal computer. The user station runs special network software usually in form of a driver for accessing the LAN. 110 Communication Networks Copyright © 2005 PragSoft • LAN protocol stack . This implements the LAN protocol layers. This usually takes the form of a hardware card inside the user station, containing a microprocessor and firmware which implements the non-physical protocols. • Physical Interface Unit . This directly interfaces the user station-based LAN hardware to the LAN physical medium. The exact form of the PIU is highly dependent on the LAN physical medium. Coaxial cable connectors and cable TV taps are common examples. • Physical Medium . This provides a physical path for signals to travel between stations. Coaxial cable, optical fiber, and infra red light are examples. The LAN protocol stack will be the main focus of our attention in this chapter.

9.1.1. Topologies and Access Protocols

There are two general categories of LAN topologies: bus and ring see Figure 9.94. The bus topology uses a broadcast technique, hence only one station at a time can send messages and all other station listen to the message. A listening station examines the recipient address of the message and if it matches its own address, copies the message; otherwise, it ignores the message. The ring topology uses a closed, point-to-point-connected loop of stations. Data flows in one direction only, from one station to the next. As with the bus topology, transmission is restricted to one user at a time. When a station gains control and sends a message, the message is sent to the next station in the ring. Each receiving station in the ring examines the recipient address of the message and if it matches its own address, copies the message. The message is passed around the ring until it reaches the originator which removes the message by not sending it to the next station. Figure 9.94 LAN topologies. PIU Bus Ring PIU PIU PIU PIU PIU PIU PIU Given that access to the bus or ring is restricted to one station at a time, some form of arbitration is needed to ensure equitable access by all stations. Arbitration is imposed by access protocols. A number of such protocols have been devised: • Carrier Sense . This protocol is applicable to a bus topology. Before a station can transmit, it listens to the channel to see if any other station is already