The International Standards Organization (ISO) is a multinational body dedicated to worldwide agreement on international standards. An ISO standard that covers all aspects of networ communications is the Open Systems Interconnection Model. It was first introduced in the late !"#$s. An open system is a set of protocols that allows any two different systems to communicate regardless of their underlying architecture. The purpose of the OSI model is to show how to facilitate communication between different systems without re%uiring changes to the logic of the underlying hardware and software. The OSI model is not a protocol& it is a model for understanding and designing a networ architecture that is fle'ible( robust( and interoperable. The OSI model is a layered framewor for the design of networ systems that allows communication between all types of computer systems. It consists of seven separate but related layers( each of which defines a part of the process of moving information across a networ. An understanding of the fundamentals of the OSI model provides a solid basis for e'ploring data communications. !.!. Seven layers of the OSI model LAYERED ARCHITECTURE: The OSI model is composed of seven ordered layers) physical (layer !)( data lin (layer *)( networ (layer +)( transport (layer ,)( session (layer -)( presentation (layer .)( and application (layer #). /igure *.+ shows the layers involved when a message is sent from device A to device 0. As the message travels from A to 0( it may pass through many intermediate nodes. These intermediate nodes usually involve only the first three layers of the OSI model. PEER-TO-PEER PROCESSES: At the physical layer( communication is direct) In /igure *.+( device A sends a stream of bits to device 0 (through intermediate nodes). At the higher layers( however( communication must move down through the layers on device A( over to device 0( and then bac up through the layers. 1ach layer in the sending device adds its own information to the message it receives from the layer 2ust above it and passes the whole pacage to the layer 2ust below it. !.*. The interaction between layers in the OSI model INTERFACES BETWEEN LAYERS: The passing of the data and networ information down through the layers of the sending device and bac up through the layers of the receiving device is made possible by an interface between each pair of ad2acent layers. 1ach interface defines the information and services a layer must provide for the layer above it. 3ell4defined interfaces and layer functions provide modularity to a networ. As long as a layer provides the e'pected services to the layer above it( the specific implementation of its functions can be modified or replaced without re%uiring changes to the surrounding layers. ORGANIZATION OFTHE LAYERS: The seven layers can be thought of as belonging to three subgroups. 5ayers I( *( and +4physical( data lin( and networ4are the networ support layers& they deal with the physical aspects of moving data from one device to another. 5ayers -( .( and #4session( presentation( and application4can be thought of as the user support layers& they allow interoperability among unrelated software systems. The upper OSI layers are almost always implemented in software& lower layers are a combination of hardware and software( e'cept for the physical layer( which is mostly hardware. !.+. An e'change using the OSI 6odel LAYERS IN THE OSI MODEL: 1. PHYSICAL LAYER: The physical layer coordinates the functions re%uired to carry a bit stream over a physical medium. It deals with the mechanical and electrical specifications of the interface and transmission medium. It also defines the procedures and functions that physical devices and interfaces have to perform for transmission to Occur. !.,. 7hysical 5ayer The physical layer is also concerned with the following) Ph!"#$l #h$%$#&e%"!&"#! o' "(&e%'$#e! $(d )ed"*). The physical layer defines the characteristics of the interface between the devices and the transmission medium. It also defines the type of transmission medium. Re+%e!e(&$&"o( o' ,"&!. The physical layer data consists of a stream of bits (se%uence of Os or !s) with no interpretation. To be transmitted( bits must been coded into signals44electrical or optical. The physical layer defines the type of encoding (how Os and I s are changed to signals). D$&$ %$&e. The transmission rate4the number of bits sent each second4is also defined by the physical layer. In other words( the physical layer defines the duration of a bit( which is how long it lasts. Synchronization of bits. The sender and receiver not only must use the same bit rate but also must be synchronized at the bit level. In other words( the sender and the receiver clocs must be synchronized. L"(e #o('"-*%$&"o(. The physical layer is concerned with the connection of devices to the media. In a point4to4point configuration( two devices are connected through a dedicated lin. In a multipoint configuration( a lin is shared among several devices. Ph!"#$l &o+olo-. The physical topology defines how devices are connected to mae a networ. 8evices can be connected by using a mesh topology (every device is connected to every other device)( a star topology (devices are connected through a central device)( a ring topology (each device is connected to the ne't( forming a ring)( a bus topology (every device is on a common lin)( or a hybrid topology (this is a combination of two or more topologies). T%$(!)"!!"o( )ode. The physical layer also defines the direction of transmission between two devices) simple'( half4duple'( or full4duple'. In simple' mode( only one device can send& the other can only receive. The simple' mode is a one4way communication. In the half4duple' mode( two devices can send and receive( but not at the same time. In a full4duple' (or simply duple') mode( two devices can send and receive at the same time. 2. DATA LIN. LAYER: The data lin layer transforms the physical layer( a raw transmission facility( to a reliable lin. It maes the physical layer appear error4free to the upper layer (networ layer). !.-. 8ata 5in 5ayer Other responsibilities of the data lin layer include the following) F%$)"(-. The data lin layer divides the stream of bits received from the networ layer into manageable data units called frames. Ph!"#$l $dd%e!!"(-. If frames are to be distributed to different systems on the networ( the data lin layer adds a header to the frame to define the sender and9or receiver of the frame. If the frame is intended for a system outside the sender:s networ( the receiver address is the address of the device that connects the networ to the ne't one. Flo/ #o(&%ol. If the rate at which the data are absorbed by the receiver is less than the rate at which data are produced in the sender( the data lin layer imposes a flow control mechanism to avoid overwhelming the receiver. E%%o% #o(&%ol. The data lin layer adds reliability to the physical layer by adding mechanisms to detect and retransmit damaged or lost frames. It also uses a mechanism to recognize duplicate frames. 1rror control is normally achieved through a trailer added to the end of the frame. A##e!! #o(&%ol. 3hen two or more devices are connected to the same lin( data lin layer protocols are necessary to determine which device has control over the lin at any given time. !... ;op4to4;op 8elivery 3. NETWOR. LAYER: The networ layer is responsible for the source4to4destination delivery of a pacet( possibly across multiple networs (lins). 3hereas the data lin layer oversees the delivery of the pacet between two systems on the same networ (lins)( the networ layer ensures that each pacet gets from its point of origin to its final destination. If two systems are connected to the same lin( there is usually no need for a networ layer. ;owever( if the two systems are attached to different networs (lins) with connecting devices between the networs (lins)( there is often a need for the networ layer to accomplish source4to4 destination delivery. Other responsibilities of the networ layer include the following) Lo-"#$l $dd%e!!"(-. The physical addressing implemented by the data lin layer handles the addressing problem locally. If a pacet passes the networ boundary( we need another addressing system to help distinguish the source and destination systems. The networ layer adds a header to the pacet coming from the upper layer that( among other things( includes the logical addresses of the sender and receiver. Ro*&"(-. 3hen independent networs or lins are connected to create internetwors (networ of networs) or a large networ( the connecting devices (called routers or switches) route or switch the pacets to their final destination. One of the functions of the networ layer is to provide this mechanism. !.#. Source4to4destination delivery 4. TRANSPOR LAYER: The transport layer is responsible for process4to4process delivery of the entire message. A process is an application program running on a host. 3hereas the networ layer oversees source4to4 destination delivery of individual pacets( it does not recognize any relationship between those pacets. It treats each one independently( as though each piece belonged to a separate message( whether or not it does. The transport layer( on the other hand( ensures that the whole message arrives intact and in order( overseeing both error control and flow control at the source4to4destination level. !.<. Transport layer Other responsibilities of the transport layer include the following) Se%0"#e-+o"(& $dd%e!!"(-. =omputers often run several programs at the same time. /or this reason( source4to4destination delivery means delivery not only from one computer to the ne't but also from a specific process (running program) on one computer to a specific process (running program) on the other. The transport layer header must therefore include a type of address called a service-point address (or port address). The networ layer gets each pacet to the correct computer& the transport layer gets the entire message to the correct process on that computer. Se-)e(&$&"o( $(d %e$!!e),l. A message is divided into transmittable segments( with each segment containing a se%uence number. These numbers enable the transport layer to reassemble the message correctly upon arriving at the destination and to identify and replace pacets that were lost in transmission. Co((e#&"o( #o(&%ol. The transport layer can be either connectionless or connection oriented. A connectionless transport layer treats each segment as an independent pacet and delivers it to the transport layer at the destination machine. A connection oriented transport layer maes a connection with the transport layer at the destination machine first before delivering the pacets. After all the data are transferred( the connection is terminated. Flo/ #o(&%ol. 5ie the data lin layer( the transport layer is responsible for flow control. ;owever( flow control at this layer is performed end to end rather than across a single lin. E%%o% #o(&%ol. 5ie the data lin layer( the transport layer is responsible for error control. ;owever( error control at this layer is performed process4to4process rather than across a single lin. The sending transport layer maes sure that the entire message arrives at the receiving transport layer without error (damage( loss( or duplication). 1rror correction is usually achieved through retransmission. !.". >eliable process4to4process delivery of a message 1. SESSION LAYER: The services provided by the first three layers (physical( data lin( and networ) are not sufficient for some processes. The session layer is the networ dialog controller. It establishes( maintains( and synchronizes the interaction among communicating systems. Specific responsibilities of the session layer include the following) 8ialog control. The session layer allows two systems to enter into a dialog. It allows the communication between two processes to tae place in either halfduple' (one way at a time) or full4duple' (two ways at a time) mode. Synchronization. The session layer allows a process to add checpoints( or synchronization points( to a stream of data. /or e'ample( if a system is sending a file of *$$$ pages( it is advisable to insert checpoints after every !$$ pages to ensure that each !$$4page unit is received and acnowledged independently. In this case( if a crash happens during the transmission of page -*+( the only pages that need to be resent after system recovery are pages -$! to -*+. 7ages previous to -$! need not be resent. !.!$. Session 5ayer 2. PRESENTAION LAYER: The presentation layer is concerned with the synta' and semantics of the information e'changed between two systems. !.!!. 7resentation 5ayer Specific responsibilities of the presentation layer include the following) T%$(!l$&"o(. The processes (running programs) in two systems are usually e'changing information in the form of character strings( numbers( and so on. The information must be changed to bit streams before being transmitted. 0ecause different computers use different encoding systems( the presentation layer is responsible for interoperability between these different encoding methods. The presentation layer at the sender changes the information from its sender4dependent format into a common format. The presentation layer at the receiving machine changes the common format into its receiver4dependent format. E(#%+&"o(. To carry sensitive information( a system must be able to ensure privacy. 1ncryption means that the sender transforms the original information to another form and sends the resulting message out over the networ. 8ecryption reverses the original process to transform the message bac to its original form. Co)+%e!!"o(. 8ata compression reduces the number of bits contained in the information. 8ata compression becomes particularly important in the transmission of multimedia such as te't( audio( and video. 7. APPLICATION LAYER: The application layer enables the user( whether human or software( to access the networ. It provides user interfaces and support for services such as electronic mail( remote file access and transfer( shared database management( and other types of distributed information services. !.!*. Application 5ayer Specific services provided by the application layer include the following) Ne&/o%3 0"%&*$l &e%)"($l. A networ virtual terminal is a software version of a physical terminal( and it allows a user to log on to a remote host. To do so( the application creates a software emulation of a terminal at the remote host. The user:s computer tals to the software terminal which( in turn( tals to the host( and vice versa. The remote host believes it is communicating with one of its own terminals and allows the user to log on. F"le &%$(!'e%4 $##e!!4 $(d )$($-e)e(&. This application allows a user to access files in a remote host (to mae changes or read data)( to retrieve files from a remote computer for use in the local computer( and to manage or control files in a remote computer locally. M$"l !e%0"#e!. This application provides the basis for e4mail forwarding and storage. D"%e#&o% !e%0"#e!. This application provides distributed database sources and access for global information about various ob2ects and services. SUMMARY OF LAYERS TCP5IP PROTOCOL ARCHITECTURE TCP5IP PROTOCOL ARCHITECTURE TCP5IP PROTOCOL SUITE: The T=79I7 protocol suite was developed prior to the OSI model. Therefore( the layers in the T=79I7 protocol suite do not e'actly match those in the OSI model. The original T=79I7 protocol suite was defined as having four layers) host4to4networ( internet( transport( and application. ;owever( when T=79I7 is compared to OSI( we can say that the host4to4networ layer is e%uivalent to the combination of the physical and 8ata lin layers. The internet layer is e%uivalent to the networ layer( and the application layer is roughly doing the 2ob of the session( presentation( and application layers with the transport layer in T=79I7 taing care of part of the duties of the session layer. So in this boo( we assume that the T=79I7 protocol suite is made of five layers) physical( data lin( networ( transport( and application. The first four layers provide physical standards( networ interfaces( internetworing( and transport functions that correspond to the first four layers of the OSI model. The three topmost layers in the OSI model( however( are represented in T=79I7 by a single layer called the application layer. T=79I7 is a hierarchical protocol made up of interactive modules( each of which provides a specific functionality& however( the modules are not necessarily interdependent. 3hereas the OSI model specifies which functions belong to each of its layers( the layers of the T=79I7 protocol suite contain relatively independent protocols that can be mi'ed and matched depending on the needs of the system. The term hierarchical means that each upper4level protocol is supported by one or more lower4level protocols. At the transport layer( T=79I7 defines three protocols) Transmission Control 7rotocol (TCP64 User Datagram Protocol 7UDP64 $(d Stream Control Transmission Protocol 7SCTP6. At the networ layer( the main protocol defined by T=79I7 is the Internetworing Protocol 7IP6& there are also some other protocols that support data movement in this layer. Ph!"#$l $(d D$&$ L"(3 L$e%!) At the physical and data lin layers( T=79I7 does not define any specific protocol. It supports all the standard and proprietary protocols. A networ in a T=7II7 internetwor can be a local4area networ or a wide4area networ. Ne&/o%3 L$e%: At the networ layer (or( more accurately( the internetwor layer)( T=79I7 supports the Internetworing 7rotocol. I7( in turn( uses four supporting protocols) A>7( >A>7( I=67( and I?67. 1ach of these protocols is described in greater detail in later chapters. I(&e%(e&/o%3"(- P%o&o#ol 7IP6: The Internetworing 7rotocol (I7) is the transmission mechanism used by the T=79I7 protocols. It is an unreliable and connectionless protocol4a best4effort delivery service. The term best effort means that I7 provides no error checing or tracing. I7 assumes the unreliability of the underlying layers and does its best to get a transmission through to its destination( but with no guarantees. I7 transports data in pacets called datagram@s( each of which is transported separately. 8atagram@s can travel along different routes and can arrive out of se%uence or be duplicated. I7 does not eep trac of the routes and has no facility for reordering datagram@s once they arrive at their destination. The limited functionality of I7 should not be considered a weaness( however. I7 provides bare4bones transmission functions that free the user to add only those facilities necessary for a given application and thereby allows for ma'imum efficiency. Add%e!! Re!ol*&"o( P%o&o#ol: The Address >esolution 7rotocol (A>7) is used to associate a logical address with a physical address. On a typical physical networ( such as a 5AA( each device on a lin is identified by a physical or station address( usually imprinted on the networ interface card (AI=). A>7 is used to find the physical address of the node when its Internet address is nown. Re0e%!e Add%e!! Re!ol*&"o( P%o&o#ol: The >everse Address >esolution 7rotocol (>A>7) allows a host to discover its Internet address when it nows only its physical address. It is used when a computer is connected to a networ for the first time or when a disless computer is booted. I(&e%(e& Co(&%ol Me!!$-e P%o&o#ol: The Internet =ontrol 6essage 7rotocol (I=67) is a mechanism used by hosts and gateways to send notification of datagram problems bac to the sender. I=67 sends %uery and error reporting messages. I(&e%(e& G%o*+ Me!!$-e P%o&o#ol: The Internet ?roup 6essage 7rotocol (I?67) is used to facilitate the simultaneous transmission of a message to a group of recipients. T%$(!+o%& L$e%: Traditionally the transport layer was represented in T=79I7 by two protocols) T=7 and B87. I7 is a host4to4host protocol( meaning that it can deliver a pacet from one physical device to another. B87 and T=7 are transport level protocols responsible for delivery of a message from a process (running program) to another process. A new transport layer protocol( S=T7( has been devised to meet the needs of some newer applications. U!e% D$&$-%$) P%o&o#ol: The Bser 8atagram 7rotocol (B87) is the simpler of the two standard T=7II7 transport protocols. It is a process4to4process protocol that adds only port addresses( checsum error control( and length information to the data from the upper layer. T%$(!)"!!"o( Co(&%ol P%o&o#ol: The Transmission =ontrol 7rotocol (T=7) provides full transport4layer services to applications. T=7 is a reliable stream transport protocol. The term stream( in this conte't( means connection4 oriented) A connection must be established between both ends of a transmission before either can transmit data. At the sending end of each transmission( T=7 divides a stream of data into smaller units called segments. 1ach segment includes a se%uence number for reordering after receipt( together with an acnowledgment number for the segments received. Segments carried across the internet inside of I7 datagram@s. At the receiving end( T=7 collects each datagram as it comes in and reorders the transmission based on se%uence numbers. S&%e$) Co(&%ol T%$(!)"!!"o( P%o&o#ol: The Stream =ontrol Transmission 7rotocol (S=T7) provides support for newer applications such as voice over the Internet. It is a transport layer protocol that combines the best features of B87 and T=7. A++l"#$&"o( L$e%: The application layer in T=7II7 is e%uivalent to the combined session( presentation( and application layers in the OSI model 6any protocols are defined at this layer.