1. Trang chủ
  2. » Công Nghệ Thông Tin

Data And Computer Communications

291 714 2
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 291
Dung lượng 10,06 MB

Nội dung

Data And Computer Communications

Trang 1

DAIA AND COMPUTER

COMMUNICATIONS &

Trang 4

aia (verview “ISSUES FOR PART ONE

The purpose of Part One is to provide a background and context for the remainder of this book The broad range of topics that are encompassed in the field of data and computer communications is introduced, and the funda- mental concepts of protocols and protocol architectures are examined -ROAD MAP FOR PART ONE

Chapter 1 Introduction

Chapter 1 provides an overview of Parts Two through Four of the book, giving the “big picture.” In essence, the book deals with four topics: data communi- cations over a transmission link; wide area networks; local area networks; and protocols and the TCP/IP protocol architecture Chapter 1 provides a preview of the first three of these topics

Chapter 2 Protocols and Architecture

Chapter 2 discusses the concept protocol architectures This chapter can be read immediately following Chapter 1 or deferred until the beginning of Part Three, Four, or Five

Trang 6

CHAPTER 1 DaTA COMMUNICATIONS AND NETWORKING OVERVIEW 1.1 A Communications Model 1.2 Data Communications

13 Data Communication Networking Wide Area Networks Local Area Networks Wireless Networks

Trang 7

10 CliaPreR ft / DATA COMMUNICATIONS AND NEEWORKING OVERVEEN'

AL

KEY POINTS

* The scope of this book is broad, covering three general areas: data communi- cations, networking, and protocols; the first two are introduced in this chapter « Data communications deals with the transmission of signals in a reliable and efficient manner Topics covered include signal transmission, transmission media, signal encoding, interfacing, data link control, and multiplexing « Networking deals with the technology and architecture of the communica-

tions networks used to interconnect communicating devices This field is gen- erally divided into the topics of local area networks (LANs) and wide area networks (WANS)

The 1970s and 1980s saw a merger of the fields of computer science and data com- munications that profoundly changed the technology, products, and companies of the now combined computer-communications industry The computer-communications revolution has produced several remarkable facts:

+ There is no fundamental difference between data processing (computers) and data communications (transmission and switching equipment)

« There are no fundamental differences among data, voice, and video communications

« The distinction among single-processor computer, multiprocessor computer, local network, metropolitan network, and long-haul network has blurred One effect of these trends has been a growing overlap of the computer and communications industries, {rom component fabrication to system integration An- other result is the development of integrated systems that transmit and process all types of data and information Both the technology and the technical standards or- ganizations are driving toward integrated public systems that make virtually all data and information sources around the world easily and uniformly accessible

This book aims to provide a unified view of the broad field of data and com- puter communications The organization of the book reflects an attempt to break this massive subject into comprehensible parts and to build, piece by piece, a survey of the state of the art This introductory chapter begins with a general model of com- munications Then, a brief discussion introduces each of the Parts Two through Four

of this book Chapter 2 provides an overview to Part Five

A COMMUNICATIONS MODEL

We begin our study with a simple model of communications, illustrated by the block diagram in Figure 11a

Trang 8

L1 /A COMMUNICATIONS MODEL 11 Source system Destination system aay, or OO OO aa, Trans- Trans- Source mitter mission Receiver Destination! , system (a) General block diagram Workstation Modem ” — ° Public telephone network (b) Example

Figure 1.1 Simplified Communications Model

Another example is the exchange of voice signals between two telephones over the same network The key elements of the model are as follows:

« Source This device generates the data to be transmitted; examples are tele- phones and personal computers

¢ Transmitter: Usually, the data generated by a source system are not transmit- ted directly in the form in which they were generated Rather, a transmitter transforms and encodes the information in such a way as to produce electro- magnetic signals that can be transmitted across some sort of transmission sys- tem For example, a modem takes a digital bit stream from an attached device such as a personal computer and transforms that bit stream into an analog sig- nal that can be handled by the telephone network

¢ Transmission system: This can be a single transmission line or a complex net- work connecting source and destination

* Receiver: The receiver accepts the signal from the transmi

converts it into a form that can be handled by the destination device For exam- ple, a modem will accept an analog signal coming from a network or trans- mission line and convert it into a digital bit stream

¢ Destination: Takes the incoming data from the receiver

This simple narrative conceals a wealth of technical complexity To get some idea of the scope of this complexity, Table 1.1 lists some of the key tasks that must be performed in a data communications system The list is somewhat arbitrary: Elements could be added; items on the list could be merged; and some items repre- sent several tasks that are performed at different “levels” of the system However, the list as it stands is suggestive of the scope of this book

Trang 9

12 CHAPTER 1 / DATA COMMUNICATIONS AND NETWORKING OVERVIEW

Table 1.40 Communications Tasks Transmission system utilization Addressing Interfacing Routing

Signal generation Recovery

Synchronization Message formatting

Exchange management Security

Error detectian and correction Network management Flow control ì

allocate the total capacity of a transmission medium among a number of users Con- gestion control techniques may be required to assure that the system is not over- whelmed by excessive demand for transmission services,

To communicate, a device must interface with the transmission system All the forms of communication discussed in this book depend on the use of electromagnet- ic signals propagated over a transmission medium Thus, once an interface is estab- lished, signal generation is required for communication The properties of the signal, such as form and intensity, must be such that the signal is (1) capable of being prop- agated through the transmission system, and (2) interpretable as data at the receiver Not only must the signals be generated to conform to the requirements of the transmission system and receiver, but also there must be some form of synchronization between transmitter and receiver The receiver must be able to determine when a signal begins to arrive and when it ends It must also know the duration of each signal element Beyond the basic matter of deciding on the nature and timing of signals, there is a variety of requirements for communication between two parties that might be col- lected under the term exchange management If data are to be exchanged in both di- rections over a period of time, the two parties must cooperate For example, for two parties to engage in a telephone conversation, one party must dial the number of the other, causing signals to be generated that result in the ringing of the called phone The called party completes a connection by lifting the receiver For data processing de- vices, more will be needed than simply establishing a connection; certain conventions must be decided on These conventions may include whether both devices may trans- mit simultaneously or must take turns, the amount of data to be sent at one time, the format of the data, and what to do if certain contingencies such as an error arise

The next two items might have been included under exchange management, but they seem important enough to list separately In all communications systems, there is a potential for error; transmitted signals are distorted to some extent before reaching their destination Error detection and correction are required in circum- stances where errors cannot be tolerated This is usuaily the case with data process- ing systems For example, in transferring a file from one computer to another, it is simply not acceptable for the contents of the file to be accidentally altered Flew control is required to assure that the source does not overwhelm the destination by sending data faster than they can be processed and absorbed

Next are the related but distinct concepts of addressing and routing When more than two devices share a transmission facility, a source system must indicate the identity of the intended destination The transmission system must assure that the destination system, and only that system, receives the data Further, the trans- mission system may itself be a network through which various paths may be taken A specific route through this network must be chosen

Trang 10

1.2/7 DATA COMMUNICATIONS 13

Recovery is a concept distinct from that of error correction Recovery tech- niques are needed in situations in which an information exchange, such as a data- base transaction or file transfer, is interrupted due to a fault somewhere in the system The objective is either to be able to resume activity at the point of interrup- tion or at least to restore the state of the systems involved to the condition prior to the beginning of the exchange

Message formatting has to do with an agreement between two parties as to the form of the data to be exchanged or transmitted, such as the binary code for characters Frequently, it is important to provide some measure of security in a data com- munications system The sender of data may wish to be assured that only the intend- ed receiver actually receives the data And the receiver of data may wish to be assured that the received data have not been altered in transit and that the data actually come from the purported sender

Finally, a data communications facility is a complex system that cannot create or run itself Network management capabilities are needed to configure the system, mon- itor its status, react to failures and overloads, and plan intelligently for future growth -

Thus, we have gone from the simple idea of data communication between source and destination to a rather formidable list of data communications tasks, In this book, we elaborate this list of tasks to describe and encompass the entire set of activities that can be classified under data and computer communications

1.2, DATA COMMUNICATIONS

Following Part One, this book is organized into four parts Part Two deals with the must fundamental aspects of the communications function, focusing on the trans- mission of signals in a reliable and efficient manner For want of a better name, we have given Part Two the title “Data Communications,” although that term arguably encompasses some or even all of the topics of Parts Three through Five

To get some flavor for the focus of Part Two, Figure 1.2 provides a new per- spective on the communications modef of Figure 1.la We trace the details of this figure using electronic mail as an example

Digital bit Analog Analog Digital bit stream signal signal Stream

Text -l LÍ WU A/WV LU Text Source Receiver [Destination @ @ @ © ©

Input Input data Transmitted Received Output data Output

information a) signal signal 2 information

m sự) rt) mề

Trang 11

14

CHAPTER U / DATA COMAMIUNICAVTIONS AND NED WORKING OV LRU

Suppose that the input device and transmilter are components of a personal computer The user of the PC wishes to send a message m to another user, The user activates the electronic mail package on the PC and enters the message via the key- board (input device) The character string is briefly buffered in main memory We can view it as a sequence of bits (g) in memory The personal computer is connected to some transmission medium, such as a local network or a telephone line, by an /O device (transmitter), such as a local network transceiver or a modem The input data are transferred to the transmitter as a sequence of voltage shifts [g(t)] representing bits on some communications bus or cable The transmitter is connected directly to the medium and converts the incoming stream [g(+)] into a signal [s(¢)] suitable for transmission; specific alternatives will be described in Chapter 5

The transmitted signal s(¢) presented to the medium is subject to a number of impairments, discussed in Chapter 3, before it reaches the receiver Thus, the received signal r(t) may differ from s(t) The receiver will attempt to estimate the original s(t), based on r(s) and its knowledge of the medium, producing a sequence of bits g'(t) These bits are sent to the output personal computer, where they are briefly buffered in memory as a block of bits (g') In many cases, the destination system will attempt to determine if an error has occurred and, if so, cooperate with the source system to eventually obtain a complete, error-free block of data These data are then presented to the user via an output device, such as a printer or screen The message (m’) as viewed by the user will usually be an exact copy of the original message (m) Now consider a telephone conversation In this case the input to the telephone is a message (7m) in the form of sound waves The sound waves are converted by the telephone into electrical signals of the same frequency These signals are transmitted without modification over the telephone line Hence the input signal g(#) and the transmitted signal s(t) are identical The signal s(¢) will suffer some distortion over the medium, so that r(r) wilt not be identical to s(1) Nevertheless, the signal r(t) is converted back into a sound wave with no attempt at correction or improvement of signal quality Thus, mm’ is not an exact replica of m However, the received sound message is generally comprehensible to the listener

The discussion so far does not touch on other key aspects of data communica- tions, including data link control techniques for controlling the flow of data and de- tecting and correcting errors, and multiplexing techniques for transmission efficiency All of these topics are explored in Part Two

“OMMUNICATION NETWORKING =

It is often impractical for two communicating devices to be directly, point-to-point connected This is so for one (or both) of the following contingencies:

The devices are very far apart It would be inordinately expensive, for example, to string a dedicated link between two devices thousands of kilometers apart * There is a set of devices, each of which may require a link to many of the oth-

Trang 12

U3 / DATA COMMUNICATION NETWORKING 15

The solution to this probiem is to attach each device to a communication network There are two major categories into which communications networks are traditionally classified: wide area networks (WANs) and focal area networks (LANs) The distinction between the two, both in terms of technology and application, has become somewhat blurred in recent years, but it remains a useful way of organizing the discussion

Wide Area Networks

Wide area networks generally cover a large geographical area, require the crossing of public right-of-ways, and rely at least in part on circuits provided by a common carrier Typically, a WAN consists of a number of interconnected switching nodes A transmission from any one device is routed through these internal nodes to the spec- ified destination device These nodes (including the boundary nodes) are not con- cerned with the content of the data; rather, their purpose is to provide a switching facility that will move the data from node to node until they reach their destination Traditionally, WANs have been implemented using one of two technologies: circuit switching and packet switching More recently, frame relay and ATM net- works have assumed major roles

Circuit Switching

In a circuit-switching network, a dedicated communications path is established between two stations through the nodes of the network That path is a connected se- quence of physical links between nodes On each link, a logical channel is dedicated to the connection Data generated by the source station are transmitted along the dedicated path as rapidly as possible At each node, incoming data are routed or switched to the appropriate outgoing channel without delay The most common example of circuit switching is the telephone network

Packet Switching

A quite different approach is used in a packet-switching network In this case, it is not necessary to dedicate transmission capacity along a path through the net- work Rather, data are sent out in a sequence of small chunks, called packets Each packet is passed through the network from node to nede along some path leading from source to destination At each node, the entire packet is received, stored briefly, and then transmitted to the next node, Packet-switching networks are com- monly used for terminal-to-computer and computer-to-computer communications

Frame Relay

Packet switching was developed at a time when digital long-distance transmis- sion facilities exhibited a relatively high error rate compared to today’s facilities As a result, there is a considerable amount of overhead built into packet-switching schemes to compensate for errors The overhead includes additional bits added to each packet to introduce redundancy and additional processing at the end stations and the intermediate switching nodes to detect and recover from errors

Trang 13

16 CHAPTER 1 / DATA COMMUNICATIONS AND NETWORKING OVERVIEW

counterproductive because the overhead involved soaks up a significant fraction of the high capacity provided by the network :

Frame relay was developed to take advantage of these high data rates and low error rates, Whereas the original packet-switching networks were designed with a data rate to the end user of about 64 kbps, frame relay networks are designed to op- erate efficiently at user data rates of up to 2 Mbps The key to achieving these high data rates is to strip out most of the overhead involved with error control

ATM

Asynchronous transfer mode (ATM), sometimes referred to as cell relay, is a culmination of developments in circuit switching and packet switching ATM can be viewed as an evolution from frame relay The most obvious difference between frame relay and ATM is that frame relay uses variable-length packets, called frames, and ATM uses fixed-length packets, called cells As with frame relay, ATM provides little overhead for error control, depending on the inherent reliability of the trans- mission system and on higher layers of logic in the end systems to catch and correct errors By using a fixed packet length, the processing overhead is reduced even fur- ther for ATM compared to frame relay The result is that ATM is designed to work in the range of 10s and 100s of Mbps, and in the Gbps range

ATM can also be viewed as an evolution from circuit switching With circuit switching, only fixed-data-rate circuits are available to the end system ATM allows the definition of multiple virtual channels with data rates that are dynamically de- fined at the time the virtual channel is created By using small, fixed-size cells, ATM is so efficient that it can offer a constant-data-rate channel even though it is using a packet-switching technique Thus, ATM extends circuit switching to allow multiple channels with the data rate on each channel dynamically set on demand

Local Area Networks

As with WANs, a LAN is a communications network that interconnects a variety of devices and provides a means for information exchange among those devices There are several key distinctions between LANs and WANs:

1 The scope of the LAN is small, typically a single building or a cluster of build- ings This difference in geographic scope leads to different technical solutions, as we shail see

2 It is usually the case that the LAN is owned by the same organization that owns the attached devices For WANS, this is less often the case, or at least a significant fraction of the network assets are not owned This has two implica- tions First, care must be taken in the choice of LAN, because there may be a substantial capital investment (compared to dial-up or leased charges for WANs) for both purchase and maintenance Second, the network management responsibility for a LAN falls solely on the user

Trang 14

PU AO eBay Que a een cewire —— —————ễ— GG rẻ 8: _ 1980 is @ \.4/ AN EXAMPLE CONFIGURATION 17

devices, or a number of interconnected switches, Two other prominent examples are ATM LANs, which simply use an ATM network ina local area, and Fibre Channel Wireless LANs use a variety of wireless transmission technologies and organiza- tions LANs are examined in depth in Part Four

Wireless Networks

As was just mentioned, wireless LANs are common, being widely used in business environments Wireless technology is also common for both wide area voice and data networks Wireless networks provide advantages in the areas of mobility and ease of installation and configuration Chapters 14 and 17 deal with wireless WANs and LANs, respectively

Metropolitan Area Networks

As the name suggests,a MAN occupies a middle ground between LANs and WANs Interest in MANs has come about as a result of a recognition that the traditional point-to-point and switched network techniques used in WANs may be inadequate for the growing needs of organizations While frame relay and ATM promise to meet a wide range of high-speed needs, there is a requirement now for both private and public networks that provide high capacity at low costs over a large area A number of approaches have been implemented, including wireless networks and metropolitan extensions to Ethernet

The primary market for MANs is the customer that has high-capacity needs in a metropolitan area A MAN is intended to provide the required capacity at lower cost and greater efficiency than obtaining an equivalent service from the local tele- phone company

N EXAMPLE CONFIGURATION

To give some feel for the scope of concerns of Parts Two through Four, Figure 1.3 illustrates some of the typical communications and network elements in use today In the upper left-hand portion of the figure, we see an individual residential user connected to an Internet service provider (ISP) through some sort of subscriber connection Common examples of such a connection are the public telephone net- work, for which the user requires a dial-up modem (e.g.,a 56-kbps modem); a digital subscriber linc (DSL), which provides a high-speed link over telephone lines and requires a special DSL modem; and a cable TV facility, which requires a cable modem In each case, there are separate issues concerning signal encoding, error control, and the internal structure of the subscriber network

Typically, an ISP will consist of a number of interconnected servers (only a single server is shown) connected to the Internet through a high-speed link One example of such a link is a SONET (synchronous optical network) line, described in Chapter 8 The Internet consists of a number of interconnected routers that span the globe The routers forward packets of data from source to destination through the Internet

Trang 15

18 CHAPTER 1 / DATA COMMUNICATIONS AND NETWORKING OVERVIEW Subscriber:

connection High-speed link

Residential (e.g., SONET)

user Internet service provider (ISP} Firewall host gi LAN PCs and workstations Private

WAN Information server

Figure 13 A Networking Configuration

organization The LAN is connected to the Internet through a firewall host that pro- vides security services In this example the firewall connects to the Internet through an ATM network There is also a router off of the LAN hooked into a private WAN, which might be a private ATM or frame relay network

A variety of design issues, such as signal encoding and error control, relate to the links between adjacent elements, such as between routers on the Internet or between switches in the ATM network, or between a subscriber and an ISP The internal structure of the various networks (telephone, ATM, Ethernet) raises additional issues We will be

Trang 16

CHAPTER 2

PROTOCOL ARCHITECTURE

2.1 The Need for a Protocol Architecture 2.2 A Simple Protocol Architecture

A Three-Layer Model

Standardized Protocol Architectures 2.3 OSI

The Model

Standardization within the OSI Framework Service Primitives and Parameters

The OSI Layers

2.4 The TCP/IP Protocol Architecture The TCP/IP Layers

TCP and UDP

Operation of TCP and IP TCP/IP Applications

Protocol Interfaces

2.5 Recommended Reading and Web Site 2.6 Key Terms, Review Questions, and Problems Key Terms Review Questions Problems Appendix 2A The Trivial File Transfer Protocol Introduction to TFTP TFTP Packets Overview of a Transfer Errors and Delays

Trang 17

20

CHAPTER 2 / PROTOCOL ARCHPPEC TURE

KEY POINTS

A protocol} architecture is the layered structure of hardware and software that supports the exchange of data between systems and supports distrib- uted applications, such as electronic mail and file transfer

© Ateach layer of a protocol architecture, one or more common protocols are : implemented in communicating systems Each protocol provides a set of

rules for the exchange of data between systems

© The most widely used protocol architecture is the TCP/IP protocol suite, which consists of the following layers: physical, network access, internet, transport, and application : : Loss ¢ Another important protocol architecture is the seven-layer Open Systems

Interconnection (OSI) model "

This chapter provides a context for the detailed material that follows It shows how the concepts of Parts Two through Five fit into the broader area of computer net- works and computer communications This chapter may be read in its proper se- quence or it may be deferred until the beginning of Part Three, Four, or Five.!

We begin this chapter by introducing the concept of a layered protocol archi- tecture and looking at a simple cxample Next, the chapter introduces the Open Systems Interconnection (OSI) reference model OS] is a standardized architecture that is often used to describe communications functions but that is now rarely im- plemented We then examine the most important protocol architecture, the TCP/IP protocol suite TCP/IP is an Internet-based concept and is the framework for devel- oping a complete range of computer communications standards Virtually all com- puter vendors now provide support for this architecture

When computers, terminals, and/or other data processing devices exchange data, the procedures involved can be quite complex Consider, for example, the transfer of a file between two computers There must be a data path between the two computers, either directly or via a communication network But more is needed Typical tasks to be performed include the following:

1 The source system must either activate the direct data communication path or inform the communication network of the identity of the desired destina- tion system

2 The source system must ascertain that the destination system is prepared to receive data

3 The file transfer application on the source system must ascertain that the file management program on the destination system is prepared to accept and store the file for this particular user

Trang 18

2.2.7 A SIMPLE PROTOCOL ARCHITECTURE 21

4, If the file formats used on the two systems are incompatible, one or the other system must perform a format translation function

It is clear that there must be a high degree of cooperation between the two computer systems Instead of implementing the logic for this as a single module, the task is broken up into subtasks, each of which is implemented separately In a proto- col architecture, the modules are arranged in a vertical stack Each layer in the stack performs a related subset of the functions required to communicate with another system It relies on the next lower layer to perform more primitive functions and to conceal the details of those functions It provides services to the next higher layer Ideally, layers should be defined so that changes in one layer do not require changes in other layers

Of course, it takes two to communicate, so the same set of layered functions must exist in two systems Communication is achieved by having the corresponding, or peer, layers in two systems communicate The peer layers communicate by means of formatted blocks of data that obey a set of rules or conventions known as a protocol The key features of a protocol are as follows:

¢ Syntax: Concerns the format of the data blocks

¢ Semantics: Includes control information for coordination and error handling * Timing: Includes speed matching and sequencing

Appendix 2A provides a specific example of a protocol, the Internet standard Trivial File Transfer Protocol (TFTP)

"A SIMPLE PROTOCOL ARCHITECTURE

Having introduced the concept of a protocol, we can now introduce the concept of a protocol architecture As an example, Figure 2.1 suggests the way in which a file transfer facility could be implemented Three modules are used A file transfer module could perform tasks 3 and 4 in the preceding list The two modules on the two systems exchange files and commands However, rather than requiring the file transfer module to deal with the details of actually transferring data and com- mands, the file transfer modules each rely on a communications service module This module is responsible for making sure that the file transfer commands and data are reliably exchanged between systems Among other things, this module would perform task 2 We observe that the nature of the exchange between systems is independent of the nature of the network that interconnects them Therefore, rather than building details of the network interface into the communications ser- vice module, it makes sense to have a third module, a network access module, that performs task [ by interacting with the network

Trang 19

22 CHAPTER 2 / PROTOCOL ARCHFFECTURE Computer X Computer Y File transfer | | _ Files and file transfer commands >| File transfer ị application 4 application Ệ , i

Communications | een Communications-related messages Woe »| Communications i

service module service module Network access Network module interface logic Communications network Network access module Network interface logic

Figure 2.1 A Simplified Architecture for File Trasfer

(e.g., electronic mail, document transfer) Therefore, a separate communications service module that can be used by a variety of applications meets these require- ments The communications service module is concerned with assuring that the two computer systems are active and ready for data transfer and for keeping track of the data that are being exchanged to assure delivery However, these tasks are independent of the type of network that is being used Therefore, the logic for ac-

tually dealing with the network is placed in a separate network access module Ị That way, if the network to be used is changed, only the network access module is

affected

Thus, instead of a single module for performing communications there is a structured set of modules that implements the communications function That struc- ture is referred to as a protocol architecture An analogy might be useful at this point Suppose an executive in office X wishes to send a document to an executive in office Y The executive in X prepares the document and perhaps attaches a note This corresponds to the actions of the file transfer application in Figure 2.1 Then the executive in X hands the document to a secretary or administrative assistant (AA) The AA in X puts the document in an envelope and puts Y’s address and X’s return address on the outside Perhaps the envelope is also marked “confidential.” The AA’s actions correspond to the communications service module in Figure 2.1 The AA in X then gives the package to the shipping department Someone in the ship- ping department decides how to send the package: mail, UPS, or express courier The shipping department attaches the appropriate postage or shipping documents to the package and ships it out The shipping department corresponds to the net- work access module of Figure 2.1 When the package arrives at Y, a similar layered set of actions occurs The shipping department at Y receives the package and deliv- ers it to the appropriate AA or secretary based on the name on the package The AA opens the package and hands the enclosed document to the executive to whom it is addressed

In the remainder of this section, we generalize the preceding example to pre- sent a simplified protocol architecture Following that, we look at more complex, real-world examples: OSI and TCP/IP

Trang 20

2.2 / A SIMPLE PROTOCOL ARCHITECTURE 23 A Three-Layer Model

In very general terms, communications can be said to involve three agents: applica- tions, computers, and networks Applications execute on computers that typically support multiple simultaneous applications Computers are connected to networks, and the data to be exchanged are transferred by the network from one computer to another Thus, the transfer of data from one application to another involves first get- ting the data to the computer in which the application resides and then getting it to the intended application within the computer

With these concepts in mind, it appears natural to organize the communica- tion task into three relatively independent layers: network access layer, transport layer, and application layer

The network access layer is concerned with the exchange of data between a computer and the network to which it is attached The sending computer must pro- vide the network with the address of the destination computer, so that the network may route the data to the appropriate destination The sending computer may wish to invoke certain services, such as priority, that might be provided by the network, The specific software used at this layer depends on the type of network to be used; different standards have been developed for circuit switching, packet switching, LANs, and others Thus, it makes sense to separate those functions having to do with network access into a separate layer By doing this, the remainder of the communi- cations software, above the network access layer, need not be concerned about the specifics of the network to be used The same higher-layer software should function properly regardless of the particular network to which the computer is attached

Regardless of the nature of the applications that are exchanging data, there is usually a requirement that data be exchanged reliably That is, we would like to be assured that all of the data arrive at the destination application and that the data ar- rive in the same order in which they were sent As we shall see, the mechanisms for providing reliability are essentially independent of the nature of the applications Thus, it makes sense to collect those mechanisms in a common layer shared by alf applications; this is referred to as the transport layer

Finally, the application layer contains the logic needed to support the various user applications For each different type of application, such as file transfer, a sepa- rate module is needed that is peculiar to that application

Figures 2.2 and 2.3 illustrate this simple architecture Figure 2.2 shows three computers connected to a network Each computer contains software at the net- work access and transport layers and software at the application layer for one or more applications For successful communication, every entity in the overall system must have a unique address Actually, two levels of addressing are needed Each computer on the network must have a unique network address; this allows the net- work to deliver data to the proper computer Each application on a computer must have an address that is unique within that computer; this allows the transport layer to support multiple applications at each computer These latter addresses are known as service access points (SAPs), or ports, connoting the fact that each application is individually accessing the services of the transport layer

Trang 21

24) CHAPTER 2 / PROTOCOI ARCHITECTURE 7 Applications 1-2 3 4 — S€rvice access poinL tH 4 Transport Network address Network access ơn Computer A .n ị _ “Transport.” | Communications ST ’ network Network ‘access 2 Computer C : - Computer B i ` Figure 2.2 Protocol Architectures and Networks i : Ệ Computer X Computer Y Application protocol Network access protocol Network access protocol

Figure 2.3 Protocols in a Simplified Architecture

to send a message to another application, associated with SAP 2 at computer Y The application at X hands the message over to its transport layer with instructions to send it to SAP 2 on computer Y The transport layer hands the message over to the network access layer, which instructs the network to send the message to computer Y Note that the network need not be told the identity of the destination service access point All that it needs to know is that the data are intended for computer Y

Trang 22

2.2 / A SIMPLE PROTOCOL ARCHITECTURE 25 [ Application data | ¡ nN \ rN ` ! iN ` { i ` ' } ` ` Transport ¿ ! ` X header ị t N \ ` SK Ị Ik I - | Transport | ‘1 | protocol data units 1 Ị 1 ' | Transport ! ' h | header Ị i † ! ' 1 1 i t 1 1 Ị 1 1 1 1 1 l i 1 1 Network { x Ỉ Ì | » L ` ] protocol data units (packets) Network Network header header

Figure 2.4 Protocol Data Units

To control this operation, controt information, as well as user data, must be transmitted, as suggested in Figure 2.4 Let us say that the sending application gen- erates a block of data and passes this to the transport layer The transport layer may break this block into two smaller pieces to make it more manageable To each of these pieces the transport layer appends a transport header, containing protocol control information The combination of data from the next higher tayer and control information is known as a protocol data unit (PDU); in this case, it is referred to as a transport PDU The header in each transport PDU contains control information to be used by the peer transport protocol at computer B Examples of items that may be stored in this header include the following:

* Destination SAP: When the destination transport layer receives the transport PDU, it must know to whom the data are to be delivered

* Sequence number: Because the transport protocol is sending a sequence of PDUs, it numbers them sequentially so that if they arrive out of order, the des- tination transport entity may reorder them

* Error-detection code: The sending transport entity may include a code that is a function of the contents of the remainder of the PDU The receiving trans- port protocol performs the same calculation and compares the result with the incoming code A discrepancy results if there has been some error in trans- mission In that case, the receiver can discard the PDU and take corrective action

Trang 23

26 CHAPTER 2 / PROTOCOL ARCHITECTURE Source X Destination Y | Application Ạ Application tre | |, ~——— Pa | re 1" Transport PDU I x t sd I 4 1 Network & access Host] Packet

Figure 2.5 Operation of a Protocol Architecture

to the data it receives from the transport layer, creating a network access PDU Ex- amples of the items that may be stored in the header include the following:

* Destination computer address: The network must know to whom (which com- puter on the network) the data are to be delivered

* Facilities requests: The network access protocol might want the network to make use of certain facilities, such as priority

Figure 2.5 puts all of these concepts together, showing the interaction be- tween modules to transfer one block of data Let us say that the file transfer mod- ule in computer X is transferring a file one record at a time to computer Y Each record is handed over to the transport layer module We can picture this action as being in the form of a command or procedure call The arguments of this procedure call include the destination computer address, the destination service access point, and the record The transport layer appends the destination service access point and other control information to the record to create a transport PDU This is then handed down to the network access layer by another procedure call In this case, the arguments for the command are the destination computer address and the transport PDU The network access layer uses this information to construct a net- work PDU The transport PDU is the data field of the network PDU, and the network PDU header includes information concerning the source and destination computer addresses Note that the transport header is not “visible” at the network access layer; the network access layer is not concerned with the contents of the transport PDU

Trang 24

OSI

2.3 / OS! 27 Standardized Protocol Architectures

When communication is desired among computers from different vendors, the soft- ware development effort can be a nightmare Different vendors use different data formats and data exchange protocols Even within one vendor's product line, differ- ent model computers may communicate in unique ways

As the use of computer communications and computer networking prolifer- ates, a one-at-a-time special-purpose approach to communications software devel- opment is too costly to be acceptable The only alternative is for computer vendors to adopt and implement a common set of conventions For this to happen, standards are needed Such standards would have two benefits:

* Vendors feel encouraged to implement the standards because of an expecta- tion that, because of wide usage of the standards, their products would be less marketable without them

« Customers are in a position to require that any vendor wishing to propose equipment to them implement the standards :

Two protocol architectures have served as the basis for the development of in- teropéerable protocol standards: the TCP/IP protocol suite and the OST reference model TCP/IP is by far the most widely used interoperable architecture OSI, though well known, has never lived up to its early promise There is also a widely used proprietary scheme: IBM’s System Network Architecture (SNA) The remain- der of this chapter looks at OSI and TCP/IP

Standards are needed to promote interoperability among vendor equipment and to encourage economies of scale Because of the complexity of the communications task, no single standard will suffice Rather, the functions should be broken down into more manageable parts and organized as a communications architecture The architecture would then form the framework for standardization This line of rea- soning led the International Organization for Standardization (ISO) in 1977 to es- tablish a subcommittee to develop such an architecture The result was the Open Systems Interconnection (OSI) reference model Although the essential elements of the model were in place quickly the final ISO standard, ISO 7498, was not pub- lished until 1984 A technically compatible version was issued by CCITT (now ITU-T) as X.200

The Model

Trang 25

28 CHAPTER 2 / PROTOCOL ARCHFEECTURE

layer Ideally, the layers should be defined so that changes in one layer do not re- quire changes in the other layers Thus, we have decomposed one problem into a number of more manageable subproblems

The task of ISO was to define a set of layers and the services performed by each layer The partitioning should group functions logically and should have enough layers to make each layer manageably small, but should not have so many layers that the processing overhead imposed by the collection of layers is burden- some The principles that guided the design effort are summarized in Table 2.1 The resulting reference model has seven layers, which are listed with a brief defin- ition in Figure 2.6, Table 2.2 provides 1SO’s justification for the selection of these layers

Figure 2.7 illustrates the OSI architecture Each system contains the seven lay- ers Communication is between applications in the two computers, labeled applica- tion X and application Y in the figure if application X wishes to send a message to application Y, it invokes the application layer (layer 7) Layer 7 establishes a peer re- lationship with layer 7 of the target computer, using a layer-7 protocol (application protocol) This protocol requires services from layer 6, so the two layer-6 entities use Table 2.1 Principles Used in Defining the OSI Payers {X 200)

1 Do nọt create so many layers as to mak _ erating the layers more difficult than

Trang 26

23/081 29

Provides upper layers with independence from the dat transmission and switching technologies tụ

systems; responsible for establ

Figure 2.6 The OSI Layers

a protocol of their own, and so on down to the physical layer, which actually trans- mits bits over a transmission medium

Note that there is no direct communication between peer layers except at the physical layer That is, above the physical layer, each protocol entity sends data down to the next lower layer to get the data across to its peer entity Even at the physical layer, the OS{ model does not stipulate that two systems be directly con- nected For example, a packet-switched or circuit-switched network may be used to provide the communication link

Trang 27

30) CHAPTER 2 / PROTOCOL ARCHEPEC “TURE i

Table 2.2 Justification of the OSE Layers (X.200) i

1 It is essential that the architecture permits usage of a realistic varicty of physical media for interconnection with different contro! procedures (for example, V.24, V.25, etc.) Ap- Plication of principles 3, 5, and 8 (Table 2.1) teads to identification of a physical layer as the lowest layer in the architecture

2 Some physical communication media (for example, telephone line) Tequire.specific tech- : niques to be used in order to transmit data between systems despite a relatively high error Ệ rate (i.¢., an error rate not acceptable for the great majority of applications) These specific 2 techniques are used in data link control procedures, which have been studied and standard: i ized for a number of years It must also be recognized that new physical communication

media (for example, fiber optics) will require different data link control procedures Applica- tion of principles 3, 5, and 8 leads to identification of a data tink layer on top.of the physical

layer in the architecture :

3 In the open systems architecture, some open systems will act as the final destination of data, Some open systems may act only as intermediate nodes (forwarding data to other systems) Application of principles 3,5, and 7 leads to identification of a network layer on top of the data © | link layer Network-oriented protocols such as routing, for examiple, wit! be grouped in this ` layer Thus, the network layer will provide a connection path (network connection) b : a pair of transport entities, including the case where intermediate © nodes are involved : part’ of the architecture is the transport layer, on n top of the network

: ‘Telieves higher-layer entities from any concer with the transport

need to organize and synchronize dialogue: and:to manage the Application of principles’ 3 and 4 leads to the identifi ication ofa session

transport layet ` “

6 The remaining set of general interest functions are those = reinted to representation and ma- , nipulation of structured data for the benefit of application programs Application of princi- ¿ ples3 and Aleads to the identification af a presentation layer on ton of the.session layer

Finally, there are applications consisting of application processes that processing, An aspect of these application processes and thể protdcol š ¡ mahicate, comprise the application layer as the highest layer of the:

contains the required information for the peer layer 7 protocol (encapsulation) The original data plus the header are now passed as a unit to layer 6 The presen- tation entity treats the whole unit as data and appends its own header (a second encapsulation) This process continues down through layer 2, which generally adds both a header and a trailer This layer 2 unit, called a frame, is then passed onto the transmission medium by the physical layer When the frame is received by the target system, the reverse process occurs As the data ascend, each layer strips off the out- ermost header, acts on the protocol information contained therein, and passes the remainder up to the next layer

At each stage of the process, a layer may segment the data unit it receives from the next higher layer into several parts, to accommodate its own requirements These data units must then be reassembled by the corresponding peer layer before being passed up

Trang 28

23/OSL 31 Outgoing n Ấgicmon 39 — đấmaum PDU construction Incoming PDU construction piece | oem | Aten prea] 1 1 1 — Penton mÌ— Amu 6 ¡ 1 % ` 1 4 Sess Sessic ple | *m | ™ 1 + 3 4 1 1 1 1 #?pU Transport ‘Transport [foo 1 Network Network fe mu —] mee ™ 1 1 1 1 7 ì woe THỊ Thnnnt Paik (cxf Nụ TI ‡ ) 1 Communications path (e.g., point- to-point link, network)

Figure 2.7 The OS! Environment

Standardization within the OSI Framework’

The principal motivation for the development of the OSI model was to provide a framework for standardization Within the model, one or more protocol stan- dards can be developed at each Jayer The model defines in general terms the functions to be performed at that layer and facilitates the standards-making process in two ways:

* Because the functions of each layer are well defined, standards can be devel-

oped independently and simultaneously for each layer This speeds up the standards-making process

* Because the boundaries between layers are well defined, changes in standards in one layer need not affect already existing software in another layer This makes it easier to introduce new standards

Trang 29

32 CHAPTER 2 / PROTOCOL ARCHITECTURE Layer 7 (Application) Service to layer N+ 1 Total L N Protocol “

commuiication == số Layer N oot ‘ ~—‡—> with peer

function Decompose es ý layer N (modularity, fs Pa information hiding) Ï'- * * Service from ị layer N — 1 Ệ Layer 1 : (physical) í OSI-wide standards (e.g., network management, security)

Figure 2.8 The OSI] Architecture as a Framework for Standardization

fe

Snape

Figure 2.8 illustrates the use of the OSI model as such a framework The over- all communications function is decomposed into seven distinct layers, using the principles outlined in Table 2.1 These principles essentially amount to using modu- lar design That is, the overall function is broken up into a number of modules, mak- ing the interfaces between modules as simple as possible In addition, the design principle of information hiding is used: Lower layers are concerned with greater levels of detail; upper layers are independent of these details Each layer provides services to the next higher layer and implements a protocol to the peer layer in other systems

Figure 2.9 shows more specifically the nature of the standardization required at each layer Three elements are Key:

* Protocol specification: Two entities at the same layer in different systems cooperate and interact by means of a protocol Because two different open sys- tems are involved, the protocol must be specified precisely This includes

the format of the protocol data units exchanged, the semantics of all fields, and

the allowable sequence of PDUs

* Service definition: In addition to the protocol or protocols that operate at a given layer, standards are needed for the services that each layer provides to the next higher layer Typically, the definition of services is equivalent to a functional description that defines what services are provided, but not how the

Trang 30

2.3/7 O8t 33

Service definition (functional description

for internal use) Addressing

(service access point) ————— Protocol specification {precise syntax and semantics for interoperability)

Figure 2.9 Layer-Specific Standards

* Addressing: Each layer provides services to entities at the next higher layer These entities are referenced by means of a service access point (SAP) Thus, a network service access point (NSAP) indicates a transport entity that is a user of the network service

The need to provide a precise protocol specification for open systems is self- evident The other two items listed warrant further comment With respect to service definitions, the motivation for providing only a functional definition is as follows First, the interaction between two adjacent layers takes place within the confines of a single open system and is not the concern of any other open system Thus, as long as peer layers in different systems provide the same services to their next higher layers, the details of how the services are provided may differ from one system to another without loss of interoperability Second, it will usuaily be the case that adja- cent layers are implemented on the same processor In that case, we would like to leave the system programmer free to exploit the hardware and operating system to provide an interface that is as efficient as possible

With respect to addressing, the use of an address mechanism at each layer, im- plemented as a service access point, allows each layer to multiplex multiple users from the next higher layer Multiplexing may not occur at each layer, but the model allows for that possibility

Service Primitives and Paraineters

Trang 31

34) CHAPTER 2 / PROTOCOL ARCHIFECTURE ị

Table 2.3 Service Primitive Types

REQUEST A primitive issued by a service uscr to invoke some service and to pass the para- ⁄ meters needed to specify fully the requested service

INDICATION _ A primitive issued by a service provider cither to

1 indicate that a procedure has been invoked by the peer service user on the connection and to provide the associated parameters, or

2 notify the service user of a provider-initiated action

“RESPONSE A primitive issued by a service user to acknowledge or complete some procedure " 5; ”.:`_ p£eviousty invoked by an indication to that user

CONFIRM A primitive issued by a service provider to acknowledge or complete some proce- : : dure previously invoked by a request by the service user’

Four types of primitives are used in standards to define the interaction be- tween adjacent layers in the architecture (X.210) These are defined in Table 2.3 The layout of Figure 2.10a suggests the time ordering of these events For example, consider the transfer of data from an (N) entity to a peer (N) entity in another sys- tem The following steps occur:

1, The source (N) entity invokes its (N — 1) entity with a request primitive Associated with the primitive are the parameters needed, such as the data to be transmitted and the destination address

2 The source (N — 1) entity prepares an (N — 1) PDU to be sent to its peer (N — 1) entity

3 The destination (N — 1) entity delivers the data to the appropriate destina- : tion (N) entity via an indication primitive, which includes the data and source

address as parameters

Trang 32

23/081 35 5 The (N — 1) entity conveys the acknowledgment in an (N — 1) PDU 6 The acknowledgment is delivered to the (N) entity as a confirm primitive

This sequence of events is referred to as a confirmed service, as the initiator receives confirmation that the requested service has had the desired effect at the other end If only request and indication primitives are involved (corresponding to steps 1 through 3), then the service dialogue is a nonconfirmed service; the initiator receives no confirmation that the requested action has taken place (Figure 2.10b)

The OSI Layers

In this section we discuss briefly each of the layers and, where appropriate, give ex- amples of standards for protocols at those layers

Physical Layer

The physical layer covers the physical interface between devices and the rules by which bits are passed from one to another The physical layer has four important characteristics:

¢ Mechanical: Relates to the physical properties of the interface to a transmis- sion medium Typically, the specification is of a pluggable connector that joins one or more signal conductors, called circuits

* Electrical: Relates to the representation of bits (e.g., in terms of voltage levels) and the data transmission rate of bits

¢ Functional: Specifies the functions performed by individual circuits of the physical interface between a system and the transmission medium

* Procedural: Specifies the sequence of events by which bit streams are exchanged across the physical medium

Physical layer protocols are discussed in some detail in Chapter 6 Examples of standards at this layer are ELA-232-F and portions of wireless and LAN standards

Data Link Layer

Whereas the physical layer provides only a raw bit siream service, the data link layer attempts to make the physical link reliable and provides the means to activate, maintain, and deactivate the link The principal service provided by the data link layer to higher layers is that of error detection and control Thus, with a fully functional data link layer protocol, the next higher layer may assume error-free transmission over the link However, if communication is between two systems that are not directly connect- ed, the connection will comprise a number of data links in tandem, each functioning in- dependently Thus, the higher layers are not relieved of an error control responsibility Chapter 7 is devoted to data link protocols, Examples of standards at this layer are HDLC and LLC

Network Layer

Trang 33

36 CHAPTER 26 PROPOCOL ARCIN TLC EUR

technologies used to connect systems At this layer, the computer system engages in a dialogue with the network to specify the destination address and to request certain network facilities, such as priority

There is a spectrum of possibilities for intervening communications facilities ‘ to be managed by the network layer At one extreme, there is a direct point-to-point i link between stations In this case, there may be no need for a network layer because

the data tink layer can perform the necessary tunction of managing the link Next, the systems could be connected across a single network, such as a cir- cuit-switching or packet-switching network As an example, the packet level of the X.25 standard is a network layer standard for this situation Figure 2.11 shows how the OSI architecture accommodates the presence of a network The lower three layers are concerned with attaching to and communicating with the network The packets that are created by the end system pass through one or more network nodes that act as relays between the two end systems The network nodes imple- ment layers 1 through 3 of the architecture In the figure, two end systems are con- nected through a single network node Layer 3 in the node performs a switching and routing function Within the node, there are two data tink layers and two phys- ical layers, corresponding to the links to the two end systems Each data link (and physical) layer operates independently to provide service to the network layer over its respective link The upper four layers are “end-to-end” protocols between the attached end systems

At the other extreme, two end systems might wish to communicate but are not even connected to the same network Rather, they are connected to networks that,

End Relay End

system system system

Trang 34

23/ 0st 37 directly or indirectly, are connected to each other This case requires the use of some sort of internetworking technique; we explore this approach in Chapter 18

Transport Layer

The transport layer provides a mechanism for the exchange of data between end systems The connection-oriented transport service ensures that data are deliv- ered error free, in sequence, with no losses or duplications The transport layer may also be concerned with optimizing the use of network services and providing a re- quested quality of service to session entities For example, the session entity may specify acceptable error rates, maximum delay, priority, and security

The size and complexity of a transport protocol depend on how reliable or un- reliable the underlying network and network layer services are Accordingly, ISO has developed a family of five transport protocol standards, each oriented toward a different underlying service In the TCP/IP protocol suite, there are two common transport-layer protocols: the connection-oriented TCP (Transmission Control Protocol) and the connectionless UDP (User Datagram Protocol)

Session Layer

The lowest four layers of the OSI model provide the means for the reliable ex- change of data and may provide various quality of service options For some appli- cations, this basic service is insufficient For example, a remote terminal access application might require a half-duplex dialogue A transaction-processing applica- tion might require checkpoints in the data transfer stream to permit backup and re- covery A message-processing application might require the ability to interrupt a dialogue to prepare a new portion of a message and later to resume the dialogue where it was left off

All these capabilities could be embedded in specific applications at layer 7 However, because these types of dialogue-structuring tools have widespread ap- plicability, it makes sense to organize them into a separate layer: the session layer

The session layer provides the mechanism for controlling the dialogue be- tween applications in end systems In many cases, there will be little or no need for session-layer services, but for some applications, such services are used The key ser- vices provided by the session layer include the following:

» Dialogue discipline: This can be two-way simultancous (full duplex) or two- way alternate (half duplex)

* Grouping: The flow of data can be marked to define groups of data For exam- ple, if a retail store is transmitting sales data to a regional office, the data can be marked to indicate the end of the sales data for each department This would signal the host computer to finalize running totals for that department and start new running counts for the next department

Trang 35

38

CHAPTER 2 / PROTOCOL ARCHTFECEURA

ISO has issued a standard for the session layer that includes, as options, services such as those just described

Presentation Layer

The presentation layer defines the format of the data to be exchanged be- tween applications and offers application programs a set of data transformation ser- vices The presentation layer defines the syntax used between application entities and provides for the selection and subsequent modification of the representation used Examples of specific services that may be performed at this layer include data compression and encryption

Application Layer

The application layer provides a means for application programs to access the OSI environment This layer contains management functions and generally useful mechanisms to support distributed applications In addition, general-purpose appli- cations such as file transfer, electronic mail, and terminal access to remote comput- ers are considered to reside at this layer

THE TCP/IP PROTOCOL ARCHITECTURE

The TCP/IP protocol architecture is a result of protocol research and development conducted on the experimental packet-switched network, ARPANET, funded by the Defense Advanced Research Projects Agency (DARPA) and is generally re- ferred to as the TCP/IP protocol suite This protocol suite consists of a large collec- tion of protocols that have been issued as Internet standards by the Internet Architecture Board (IAB)

The TCP/IP Layers

The TCP/IP model organizes the communication task into five relatively indepen- dent layers: Physical layer Network access layer Internet layer Host-to-host, or transport layer * Application layer

The physical layer covers the physical interface between a data transmission device (e.g., workstation, computer) and a transmission medium or network This layer is concerned with specifying the characteristics of the transmission medium,

Trang 36

2.4 / THE TCP/IP PROTOCOL ARCHITECTURE 39

The network access layer is concerned with the exchange of data between an end system (server, workstation, etc.) and the network to which it is attached The sending computer must provide the network with the address of the destination computer, so that the network may route the data to the appropriate destination The sending computer may wish to invoke certain services, such as priority, that might be provided by the network The specific software used at this layer de- pends on the type of network to be used; different standards have been developed for circuit switching, packet switching (e.g., frame relay), LANs (e.g., Ethernet), and others Thus it makes sense to separate those functions having to do with net- work access into a separate layer By doing this, the remainder of the communica- tions software, above the network access layer, need not be concerned about the specifics of the network to be used The same higher-layer software should func- tion properly regardless of the particular network to which the computer is attached

The network access layer is concerned with access to and routing data across a network for two end systems attached to the same network In those cases where two devices are attached to different networks, procedures are needed to allow data to traverse multiple interconnected networks This is the function of the internet layer The Internet Protocol (TP) is used at this layer to provide the routing function across multiple networks This protocol is implemented not only in the end systems but also in routers A router is a processor that connects two networks and whose primary function is to relay data from one network to the other on its route from the source to the destination end system

Regardless of the nature of the applications that are exchanging data, there is usually a requirement that data be exchanged reliably That is, we would like to be assured that all of the data arrive at the destination application and that the data ar- rive in the same order in which they were sent As we shall see, the mechanisms for providing reliability are essentially independent of the nature of the applications Thus, it makes sense to collect those mechanisms in a common layer shared by all applications; this is referred to as the host-to-host layer, or transport layer The Transmission Control Protocol (TCP) is the most commonly used protocol to pro- vide this functionality

Finally, the application layer contains the logic needed to support the various user applications For cach different type of application, such as file transfer, a sepa- rate module is needed that is peculiar to that application

Figure 2.12 illustrates the layers of the TCP/IP and OSI architectures, showing roughly the correspondence in functionality between the two

TCP and UDP

Trang 37

40 CHAPYPER 2 7 PROPOCOE ARCTHERCTOURE OSI TCPAP Application b Presentation f š Ề $ Figure 2.12 A Comparison of the OSI and TCP/IP Protocol Architectures

TCP entities A logical connection refers to a given pair of port values For the du- ration of the connection each entity keeps track of TCP segments coming and going to the other entity, in order to regulate the flow of segments and to recover from lost or damaged segments

{n addition to TCP, there is one other transport-level protocol that is in com- mon use as part of the TCP/IP protocol suite: the User Datagram Protocol (UDP) UDP does not guarantee delivery, preservation of sequence, or protection against duplication UDP enables a procedure to send messages to other procedures with a minimum of protocol mechanism Some transaction-oriented applications make use of UDP; one example is SNMP (Simple Network Management Protocol), the stan- dard network management protocol for TCP/IP networks Because it is connection-

less, UDP has very little to do Essentially, it adds a port addressing capability to IP Operation of TCP and IP

Trang 38

24 / THE TOPFIP PROTOCOL ARCHITECTURE 44 Port or service access point (SAP) Logical connection 2 Global network FT” address Network access Network access protocol #1 protocol #2 3 z : Physical Logical connection ¿ Physical Network attachment point address a Router (e.g virtual circuit) -“ NAP 1

Figure 2.13 TCP/IP Concepts

For successful communication, every entity in the overall system must have a unique address Actually, two levels of addressing are needed Each host on a sub- network must have a unique global internet address; this allows the data to be deliv- ered to the proper host Each process with a host must have an address that is unique within the host; this allows the host-to-host protocol (TCP) to deliver data to the proper process These latter addresses are known as ports

Let us trace a simple operation Suppose that a process, associated with port 1 at host A, wishes to send a message to another process, associated with port 3 at host B The process at A hands the message down to TCP with instructions to send it to host B, port 2 TCP hands the message down to IP with instructions to send it to host B Note that IP need not be told the identity of the destination port All it needs to know is that the data are intended for host B Next, IP hands the message down to the network access layer (e.g., Ethernet logic) with instructions to send it to router J (the first hop on the way to B)

Trang 39

42 CHAPTER 2 / PROTOCOL ARCHITECTURE Application User data byte stream TCP TCP header segment IP IP header datagram Network-level packet Network header

Figure 2.14 Protocol Data Units in the TCP/IP Architecture

¢ Destination port: When the TCP entity at B receives the segment, it must know to whom the data are to be delivered

* Sequence number: TCP numbers the segments that it sends to a particular destination port sequentially, so that if they arrive out of order, the TCP entity at B can reorder them

* Checksum: The sending TCP includes a code that is a function of the contents of the remainder of the segment The receiving TCP performs the same calcu- lation and compares the result with the incoming code A discrepancy results if there has been some error in transmission

Next, TCP hands each segment over to IP, with instructions to transmit it to B These segments must be transmitted across one or more subnetworks and relayed through one or more intermediate routers This operation, too, requires the use of control information Thus IP appends a header of control information to each seg- ment to form an IP datagram An example of an item stored in the IP header is the destination host address (in this example, B)

Finally, each IP datagram is presented to the network access layer for trans- mission across the first subnetwork in its journey to the destination The network ac- cess layer appends its own header, creating a packet, or frame The packet is transmitted across the subnetwork to router J The packet header contains the infor- mation that the subnetwork needs to transfer the data across the subnetwork Ex- amples of items that may be contained in this header include the following:

* Destination subnetwork address: The subnetwork must know to which attached device the packet is to be delivered

Trang 40

2.4 / THE TCP/IP PROTOCOL ARCHITECTURE 43 At router J, the packet header is stripped off and the IP header examined On the basis of the destination address information in the IP header, the IP module in the router directs the datagram out across subnetwork 2 to B To do this, the data- gram is again augmented with a network access header

When the data are received at B, the reverse process occurs At each layer, the corresponding header is removed, and the remainder is passed on to the next high- er layer, until the original user data are delivered to the destination process

As an aside, the generic name for a block of data exchanged at any protocol level is referred to as a protocol data unit (PDU) Thus, a TCP segment is a TCP PDU

TCP/IP Applications

A number of applications have been standardized to operate on top of TCP We mention three of the most common here

The Simple Mail Transfer Protocol (SMTP) provides a basic electronic mail facility It provides a mechanism for transferring messages among separate hosts Features of SMTP include mailing lists, return receipts, and forwarding The SMTP protocol does not specify the way in which messages are to be created; some local editing or native electronic mail facility is required Once a message is created, SMTP accepts the message and makes use of TCP to send it to an SMTP module on another host The target SMTP module will make use of a local electronic mail package to store the incoming message in a user’s mailbox

The File Transfer Protocol (FTP) is used to send files from one system to an- other under user command Both text and binary files are accommodated, and the protocol provides features for controlling user access When a user wishes to engage in file transfer, FTP sets up a TCP connection to the target system for the exchange of control messages This connection allows user ID and password to be transmitted and allows the user to specify the file and file actions desired Once a file transfer is ap- proved, a second TCP connection is set up for the data transfer The file is transferred over the data connection, without the overhead of any headers or control informa- tion at the application level When the transfer is complete, the control connection is used to signal the completion and to accept new file transfer commands

TELNET provides a remote logon capability, which enables a user at a termi- nal or personal computer to logon to a remote computer and function as if directly connected to that computer The protocol was designed to work with simple scroll- mode terminals TELNET is actually implemented in two modules: User TELNET interacts with the terminal I/O module to communicate with a local terminal It con- verts the characteristics of real terminals to the network standard and vice versa Server TELNET interacts with an application, acting as a surrogate terminal han- dier so that remote terminals appear as local to the application Terminal traffic between User and Server TELNET is carried on a TCP connection

Protocol Interfaces

Ngày đăng: 13/09/2012, 10:21

TỪ KHÓA LIÊN QUAN

w