codetoad.com
  ASP Shopping CartForum & BBS
  - all for $20 from CodeToad Plus!
  
  Home || ASP | ASP.Net | C++/C# | DHTML | HTML | Java | Javascript | Perl | VB | XML || CodeToad Plus! || Forums || RAM 
Search Site:



Home » HTML » Article

The OSI Reference Model - A Clear and Concise Illustration !

Article by: James Opiko (10/14/2003)
Bookmark us now! Add to Favourites
Email a friend!Tell a friend
Summary: The OSI Reference Model - A Resource For IT Certification Candidates & Networking Professionals
Viewed: 47106 times Rating (15 votes): 
 3.5 out of 5
 Rate this Article  Read Comments  Post Comments

The OSI Reference Model - A Clear and Concise Illustration !



The Open System Interconnection (OSI) model is a set of protocols that attempt to define and standardize the data communications process. The OSI model is set by the International Standards Organization (ISO). The OSI model has the support of most major computer and network vendors, many large customers, and most governments, including the United States.
The OSI model is a concept that describes how data communications should take place. It divides the process into seven groups, called layers. Into these layers are fitted the protocol standards developed by the ISO and other standards bodies, including the Institute of Electrical and Electronic Engineers (IEEE), American National Standards Institute (ANSI), and the International Telecommunications Union (ITU), formerly known as the CCITT (Comite Consultatif Internationale de Telegraphique et Telephone).
The OSI model is not a single definition of how data communications actually takes place in the real world. Numerous protocols may exist at each layer. The OSI model states how the process should be divided and what protocols should be used at each layer. If a network vendor implements one of the protocols at each layer, its network components should work with other vendors’ offerings.
The OSI model is modular. Each successive layer of the OSI model works with the one above and below it. At least in theory, you may substitute one protocol for another at the same layer without affecting the operation of layers above or below. For example, Token Ring or Ethernet hardware should operate with multiple upper-layer services, including the transport protocols, network operating system, internetwork protocols, and applications interfaces. However, for this interoperability to work, vendors must create products to meet the OSI model’s specifications.
 
The OSI model is not a single definition of how data communications takes place. It states how the processes should be divided and offers several options. In addition to the OSI protocols, as defined by ISO, networks can use the TCP/IP protocol suite, the IBM Systems Network Architecture (SNA) suite, and others. TCP/IP and SNA roughly follow the OSI structure.
Although each layer of the OSI model provides its own set of functions, it is possible to group the layers into two distinct categories. The first four layers— physical, data link, network, and transport—provide the end-to-end services necessary for the transfer of data between two systems. These layers provide the protocols associated with the communications network used to link two computers together.
The top three layers—the application, presentation, and session layers — provide the application services required for the exchange of information. That is, they allow two applications, each running on a different node of the network, to interact with each other through the services provided by their respective operating systems. The following is a description of just what each layer does.
1. The Physical layer provides the electrical and mechanical interface to the network medium (the cable). This layer gives the data-link layer (layer 2) its ability to transport a stream of serial data bits between two communicating systems it conveys the bits that move along the cable. It is responsible for making sure that the raw bits get from one place to another, no matter what shape they are in, and deals with the mechanical and electrical characteristics of the cable.
2. The Data-Link layer handles the physical transfer, framing (the assembly of data into a single unit or block), flow control and error-control functions (and retransmission in the event of an error) over a single transmission link it is responsible for getting the data packaged and onto the network cable. The data link layer provides the network layer (layer 3) reliable information-transfer capabilities. The data-link layer is often subdivided into two parts—Logical Link Control (LLC) and Medium Access Control (MAC)—depending on the implementation.
3. The Network layer establishes, maintains, and terminates logical and/or physical connections. The network layer is responsible for translating logical addresses, or names, into physical addresses. It provides network routing and flow-control functions across the computer-network interface.
4. The transport layer ensures data is successfully sent and received between the two computers. If data is sent incorrectly, this layer has the responsibility to ask for retransmission of the data. Specifically, it pro-vides a network-independent, reliable message-independent, reliable message-interchange service to the top three application-oriented layers. This layer acts as an interface between the bottom and top three layers. By providing the session layer (layer 5) with a reliable message-transfer service, it hides the detailed operation of the underlying network from the session layer.
5. The Session layer decides when to turn communication on and off between two computers—it provides the mechanisms that control the data-exchange process and coordinates the interaction between them. It sets up and clears communication channels between two communicating components. Unlike the network layer (layer 3), it deals with the programs running in each machine to establish conversations between them.
6. The Presentation layer performs code conversion and data reformatting (syntax translation). It is the translator of the network, making sure the data is in the correct form for the receiving application. Of course, both the sending and receiving applications must be able to use data sub-scribing to one of the available abstract data syntax forms.
7. The Application layer provides the user interface between the software running in the computer and the network. It provides functions to the user’s software, including file transfer access and management (FTAM) and electronic mail.
Unfortunately, protocols in the real world do not conform precisely to these neat definitions. Some network products and architectures combine layers. Others leave layers out. Still others break the layers apart. But no matter how they do it, all working network products achieve the same result—getting data from here to there. The question is, do they do it in a way that is compatible with networks in the rest of the world?

Protocols & The OSI Model
A LAN protocol is a set of rules for communicating between computers. Protocols govern format, timing, sequencing, and error control. Without these rules, the computer cannot make sense of the stream of incoming bits.
But there is more than just basic communication. Suppose you plan to send a file from one computer to another. You could simply send it all in one single string of data. Unfortunately, that would stop others from using the LAN for the entire time it takes to send the message. This would not be appreciated by the other users. Additionally, if an error occurred during the transmission, the entire file would have to be sent again. To resolve both of these problems, the file is broken into small pieces called packets and the packets are grouped in a certain fashion. This means that information must be added to tell the receiver where each group belongs in relation to others, but this is a minor issue. To further improve transmission reliability, timing information and error correcting information are added. Because of this complexity, computer communication is broken down into steps. Each step has its own rules of operation and, consequently, its own protocol. These steps must be executed in a certain order, from the top down on transmission and from the bottom up on reception. Because of this hierarchical arrangement, the term protocol stack is often used to describe these steps. A protocol stack, therefore, is a set of rules for communication, and each step in the sequence has its own subset of rules.
What is a protocol, really? It is software that resides either in a computer’s memory or in the memory of a transmission device, like a network interface card. When data is ready for transmission, this software is executed. The software prepares data for transmission and sets the transmission in motion. At the receiving end, the software takes the data off the wire and prepares it for the computer by taking off all the information added by the transmitting end. There are a lot of protocols, and this often leads to confusion. A Novell network communicates through its own set of rules (its own protocol called IPX/SPX), Microsoft does it another way (NetBEUI). DEC does it a third way (DECnet), and IBM does it yet a fourth (NetBIOS). Since the transmitter and the receiver have to “speak” the same protocol, these four systems cannot talk directly to each other. And even if they could directly communicate, there is no guarantee the data would be usable once it was communicated.
Anyone who’s ever wanted to transfer data from an IBM-compatible personal computer to an Apple Macintosh computer realizes that what should be a simple procedure is anything but. These two popular computers use widely differing—and incompatible—file systems. That makes exchanging information between them impossible, unless you have translation software or a LAN. Even with a network, file transfer between these two types of computers isn’t always transparent.
If two types of personal computers can’t communicate easily, imagine the problems occurring between PCs and mainframe computers, which operate in vastly different environments and usually under their own proprietary operating software and protocols. For example, the original IBM PC’s peripheral interface—known as a bus—transmits data eight bits at a time. The newer X86 and Pentium based PCs have 32-bit buses, and mainframes have even wider buses. This means that peripherals designed to operate with one bus are incompatible with another bus, and this includes network interface cards (NICs). Similar incompatibilities also exist with software. For instance, Unix-based applications (and data generated with them) cannot be used on PCs operating under MS-DOS or Windows. Resolving some of these incompatibilities is where protocol standards fit in.
A protocol standard is a set of rules for computer communication that has been widely agreed upon and implemented by many vendors, users, and standards bodies. Ideally, a protocol standard should allow computers to talk to each other, even if they are from different vendors. Computers don’t have to use an industry-standard protocol to communicate, but if they use a proprietary protocol then they can only communicate with equipment of their own kind. There are many standard protocols, none of which could be called universal, but the successful ones are moving towards full compliance with some-thing called the OSI model. The standards and protocols associated with the OSI reference model are the cornerstone of the open systems concept for linking the literally dozens of dissimilar computers found in offices throughout the world.
What is OSI and what is not
While discussing the OSI reference model it is important to understand what the model does not specify as well as what it actually spells out. The ISO created the OSI reference model solely to describe the external behavior of electronics systems, not their internal functions.
The reference model does not determine programming or operating system functions, nor does it specify an application-programming interface (API). Neither does it dictate the end-user interface-that is, the command-line and/or icon-based prompts a user uses to interact with a computer system.
OSI merely describes what is placed on a network cable and when it will be placed there. It does not state how vendors must build their computers, only the kinds of behavior these systems may exhibit while performing certain communications operations.
The OSI standards can be grouped into pairs-one defines the services offered by a network component, while the second specifies the protocol used by that component to provide the defined service. This concept permits a vendor to develop network elements that are more or less ignorant of the other components on the network. They are said to be ignorant in that they may need to know that other network components exist, but not the specific details about their operating systems or interface buses. One of the primary benefits of this concept is that vendors can change the internal design of their network components without affecting their network functionality, as long as they maintain the OSI-prescribed external attributes. The figure on the preceding page shows the protocols in the OSI model.
 
Connection Types
The OSI model is inherently connection-oriented, but the services each OSI layer provides can either be connection-oriented, or connectionless. In the three-step connection-oriented mode operation (the steps are connection establishment, data transfer, and connection release), an explicit binding between two systems takes place.
In connectionless operation, no such explicit link occurs data transfer takes place with no specified connection and disconnection function occurring between the two communicating systems. Connectionless communication is also known as datagram communication.
 
At the Physical Layer
Let's compare some real protocols to the OSI model. The best-known physical layer standards of the OSI model are those from the IEEE. That is, the ISO adopted some of the IEEE's physical network standards as part of its OSI model, including IEEE 802.3 or Ethernet, IEEE 802.4 or token-passing bus, and IEEE 802.5 or Token Ring. ISO has changed the numbering scheme, however, so 802.3 networks are referred to as ISO 8802-3, 802.4 networks are ISO 8802-4, and 802.5 networks are ISO 8802-5.
Each physical layer standard defines the network's physical characteristics and how to get raw data from one place to another. They also define how multiple computers can simultaneously use the network without interfering with each other. (Technically, this last part is a job for the data-link layer, but we'll deal with that later.)
IEEE 802.3 defines a network that can transmit data at 10Mbps and uses a logical bus (or a straight line) layout. (Physically, the network can be configured as a bus or a star.) Data is simultaneously broadcast to all machines on the network and is non-directional on the cable. All machines receive every broadcast, but only those meant to receive the data will respond with an acknowledgment. Network access is determined by a protocol called Carrier Sense Multiple Access/Collision Detection (CSMA/CD). CSMA/CD lets all computers send data whenever the cable is free of traffic. If the data collides with another data packet, both computers "back off," or wait, then try again to send the data until receipt is acknowledged. Thus, once there is a high level of traffic, the more users there are, the more crowded and slower the network will become. Ethernet has found wide acceptance in office automation networks.
IEEE 802.4 defines a physical network that has a bus layout. Like 802.3, Token Bus is a broadcast network. All machines receive all data but do not respond unless data is addressed to them. But unlike 802.3, network access is determined by a token that moves around the network. The token is broadcast to every device but only the device that is next in line for the token gets it. Once a device has the token it may transmit data. The Manufacturing Automation Protocol (MAP) and Technical Office Protocol (TOP) standards use an 802.4 physical layer. Token Bus has had little success outside of factory automation networks.
IEEE 802.5 defines a network that transmits data at 4Mbps or 16Mbps and uses a logical ring layout, but is physically configured as a star. Data moves around the ring from station to station, and each station regenerates the signal. It is not a broadcast network. The network access protocol is token passing. The token and data move about in a ring, rather than over a bus as it does in Token Bus. Token Ring has found moderate acceptance in office automation networks.
There are other physical and data-link layer standards, some that conform to the OSI model and others that don't. Arcnet is a well known one that does not conform to any standard but its own. It uses a token-passing bus access method, but not the same as does IEEE 802.4. LocalTalk is Apple's proprietary network that transmits data at 230.4Kbps and uses CSMA/CA (Collision Avoidance). Fiber Distributed Data Interface (FDDI) is an ANSI and OSI standard for a fiber-optic LAN that uses a token-passing protocol to transmit data at 100Mbps on a ring.
 
When it began
The International Standards Organization, based in Geneva, Switzerland, is a multinational body of representatives from the standards-setting agencies of about 30 countries. These agencies include the American National Standards Institute (ANSI) and British Standards Institute (BSI).
Because of the multinational nature of Europe, and their critical need for intersystem communication, the market for OSI-based products is particularly strong there. As a result, the European Computer Manufacturers' Association (ECMA) has played a major role in developing the OSI standards. In fact, European networking vendors and users are generally further advanced in their OSI implementations than are their American counterparts, who rely principally on proprietary solutions such as IBM's Systems Network Architecture (SNA) or the Internet's transmission Control Protocol/Internet Protocol (TCP/IP).
Creating the OSI standards has been a long, drawn-out process: The ISO began work on OSI protocols in the late 1970s, finally releasing its seven-layer architecture in 1984. It wasn't until 1988 that the five-step standards-setting process finally resulted in stabilized protocols for the upper layers of the OSI reference model. As the OSI protocols continue to stabilize, the marketplace will encourage vendors to become more compliant. In turn, OSI will continue it's evolution-incorporating the technological advances that inevitably occur in the electronics marketplace.
 
Where is OSI now
As noted, the OSI-ratification process progresses slowly only after many years have vendors brought OSI-compatible applications to the market. Among the first of these have been X.400-based electronic mail packages Retix (Santa Monica, Calif.) and Touch Communications (Campbell, Calif.) offer X.400 e-mail products. In real-world application, these X.400 e-mail packages allow incompatible end-user e-mail programs, such as Lotus' (Cambridge, Mass.), cc:Mail and IBM's PROFS, to communicate with each other.
Retix is also at the forefront of providing an OSI-compliant X.500 directory service application. This protocol specifies a global network-addressing scheme that simplifies sending electronic messages across large, multi-segment networks. A third OSI application, File transfer, Access, and Management (FTAM), is also in use. This provides the protocols for the exchange of files between two incompatible systems. In Europe, vendors and users are implementing what is known as EDIFACT, for Electronic Data Interchange for Administration, Commerce, and transport. EDIFACT, which became ISO international standard 9735 in 1988, provides a syntax that allows international trading partners to define the format and structure of business-related documents such as purchase orders and invoices.
EDIFACT allows one company to create order-entry forms online, then exchange the data added to those forms with computers in another company. The receiving company's computers then use the EDIFACT structural syntax to interpret and process the received document. When fully implemented, EDIFACT, X.400, and X.500 will allow quick and easy transmittance of forms-based data across a wide variety of incompatible computer systems and large, enterprise wide networks, thus fulfilling the original "open systems communications" promise of OSI.
 
The Data-Link layer (the second OSI layer) is often divided into two sublayers the Logical Link Control (LLC) and the Medium Access Control (MAC). The IEEE also defines standards at the data-link layer. The ISO standards for the MAC, or lower half of the data-link layer, were taken directly from the IEEE 802.x standards.
Medium Access Control, as its name suggests, is the protocol that deter-mines which computer gets to use the cable (the transmission medium) when several computers are trying. For example, 802.3 allows packets to collide with each other, forcing the computers to retry a transmission until it is received. 802.4 and 802.5 limit conversation to the computer with the token. Remember, this is done in fractions of a second, so even when the network is busy, users don’t wait very long for access on any of these three network types.
The upper half of the data-link layer, the LLC, provides reliable data transfer over the physical link. In essence, it manages the physical link.
The IEEE splits the data-link layer in half because the layer has two jobs to do. The first is to coordinate the physical transfer of data. The second is to manage access to the physical medium. Dividing the layer allows for more modularity and therefore more flexibility. The type of medium access control has more to do with the physical requirements of the network than the actual management of data transfer. In other words, the MAC layer is closer to the physical layer than the LLC layer.
Synopsis: What happens when a file is opened on a remote Windows NT/2000 machine on a TCP/IP network
When you click on the file. The redirector determines that this request must go to a remote machine (Application Layer) and passes the request for data to the presentation layer.
 
The presentation layer determines that a NT machine will receive this request and there is no need to format the data to be readable by the remote machine.
 
At the session layer, NETBIOS requests a session with the remote machine. This request makes its way down the layers and the response comes back to the session layer (This means that TCP establishes a conversation with the remote machine and receives a 'ready to receive data' response back and ends the conversation, establishing the session). NETBIOS hands the file name and remote machine to the transport layer for delivery.
 
At the network layer, TCP converts the remote machine name from NETBIOS name to IP address (If a WINS server is in use, TCP gets the IP address of the WINS server and passes a request to resolve a name to IP. IP then sends an ARP request, which finds the MAC address of the remote machine, and sends the request for name resolution. If a LMHOSTS file is in use, the IP address of the remote machine is pulled from that file and resolved to a MAC address. If neither method works, a broadcast is sent to find the machine.) and establishes a conversation with the remote machine. It sends the IP address and the file name (with other data) down to the network layer for delivery. It then listens for the acknowledgements that each packet has been received and resends any data that was missed.
 
At the transport layer, IP determines that the request to open a file does not need to be fragmented (the data is not large enough to require multiple packets) and places the data into a packet. It also converts the addressing request from IP address to MAC address (If the IP address is on the local network, a broadcast is sent to find the MAC address of the machine. If routing is required, a broadcast is sent to the IP address of the default gateway for that route, and subsequent data is sent to the remote address via the MAC of the router. Once the router receives the data, it hands the data up to layer 3 and checks the remote IP address. It then resolves that address to a destination MAC address using the same procedure a machine would use) and passes the data with the MAC address to the Data Link Layer.
 
The data link layer adds framing information (Ethernet 802.2 most likely) to the data and sends it to the physical layer.
 
The physical layer then sends the request to open the file to the remote machine's network card, where the frame passes up through every layer and is picked up by the operating system. The operating system then opens the file as requested and sends the information in the file back down through all 7 layers to your machine, where it comes back and is displayed on the screen.
Notes: Your machine and/or the router will have the name, IP address and relevant MAC conversions in cache most of the time. The resolutions are included here for completeness.
References: A lot of changes have taken place since this article was written. Changes in principle & practices have been implemented. New standardization organizations have been established, but the basic principle of the OSI reference model remains the same.
Visit here >> OSI Ref. Model to download a printable [summarized] tabular copy of the functions of the OSI reference model - A great tool for those pursuing IT certifications notably: | Microsoft's MCSE, MCP, MCSA | CompTIA's Network+, Server+, i-NET+, Security+, A+ ..... | Novell's CNA | Cisco's CCNA | and many others......


Select All Code







CodeToad Experts

Can't find the answer?
Our Site experts are answering questions for free in the CodeToad forums
Rate this article:     Poor Excellent
View highlighted Comments
User Comments on 'The OSI Reference Model - A Clear and Concise Illustration !'
RELATED ARTICLES
Image Submit Button
by Jeff Anderson
You can keep your forms from slipping into mundanity by substituting the default gray submit button to a colourful graphic of your choosing.
Parent _self _blank and _top Frame Target Specifications
by Jeff Anderson
How to specify frames and how to break out of them using standard link tags.
ASCII characters and their codes
by Jeff Anderson
A full list of all the ASCII characters.
Pre Tag
by Jeff Anderson
No need to reformat text files with line breaks and tabs if you use the pre tag
Image Rollovers
by Jeff Anderson
A bit of code to swap to different images on the page. You often see this on sites to display a rollover on the navigation buttons.
In-Line Frames (IFrames)
by Jeff Anderson
Inline frames or IFrames are the ones which appear in the midst of a standard page, but actually reference a totally separate url.
HTML Hspace and Vspace Image Borders
by Jeff Anderson
A lesser known feature in HTML is the ability to add a blank border around images both horizontally and vertically.
Validate Date
by Kannadasan Ramiah
Validating Date entered in a text box, pure HTML page
Creating Navigation with Frames
by Jeff Anderson
The most popular use of frames is to allow a static navigation to stay on one part of the screen (in one frame) while the content changes in another.
The OSI Reference Model - A Clear and Concise Illustration !
by James Opiko
The OSI Reference Model - A Resource For IT Certification Candidates & Networking Professionals








Recent Forum Threads
• Run a program both on windows and linux
• VERO.SurfCAM.v2014
• Schlumberger.Petrel.V2013.2
• Petrel.V2013.2
• Altair.HyperWorks.v12
• VoluMill.v6.1
• VoluMill.NEXION.6
• VERO.SurfCAM.v2014
• Schlumberger.Petrel.V2013.2


Recent Articles
ASP GetTempName
Decode and Encode UTF-8
ASP GetFile
ASP FolderExists
ASP FileExists
ASP OpenTextFile
ASP FilesystemObject
ASP CreateFolder
ASP CreateTextFile
Javascript Get Selected Text


© Copyright codetoad.com 2001-2014