Essentially, a network is the connection of two or more computers for the purpose of data communication and resource sharing. “… the formal definition of a network could be given as a number of interconnected devices capable of communicating and sharing each other’s resources” (Bandyo-padhyway, 2000:157) As can be seen from the above quote, networking offers organisations a wealth of benefits. “A network enables an organization to centralize its computer system and allows users to access the facilities of a large computer system via desktop computers. (Bandyo-padhyway, 2000:157) It could be said that network architecture is, in theory, a model for the set-up of a network. “To help deal with this complexity, network designers have developed general blueprints – usually called a network architecture – that guide the design and implementation of networks. ” (Peterson & Davie, 1996:29)
Protocols, in the networking sense, could be considered as sets of rules or procedures that control how a message is sent from sender to receiver and all the factors involved in this process. A protocol is a set of rules or conventions which govern the way a message is transmitted from the sender to the receiver passing through a number of steps and via a number of network elements. ” (Bandyo-padhyway, 2000:178) Finally, a distributed network/system is where the tasks to be to be performed are distributed among a number of small PC’s that are coordinated by a larger central computer. (Bandyo-padhyway, 2000:173) Having defined the aforementioned basic technological terms, I can now go on to my analysis of the reasons why networking software is divided into layers.
The primary reason is that having separate distinctive layers reduces design complexity. By this, I mean having different layers means certain operations and tasks that must be carried out, can be carried out in a simple and organised order, rather than all at the same time. “First, it decomposes the problem of building a network into more manageable components. ” (Peterson & Davie, 1996:30) Layering allows for changes to be made at a specific layer, as a result of new ideas/innovation, and will not disrupt the software at other levels. “Second, it provides a more modular design.
If you decide that you want to add some new service, you may only need to modify the functionality at one layer, re-using the functions provided at all the other layers. ” (Peterson & Davie, 1996:30) This means that “it accommodates incremental changes more readily. ” (www. cs. wpi. edu/~rek/Undergrad_Nets/B03/HTTP_DNS. pdf) Another advantage of layering is that details of how the lower level services are implemented are shielded from the higher levels, allowing the higher levels to function more efficiently. This can be seen, from a more technological point of view, in the following quote. Many times there are multiple abstractions provided at any given level of the system, each providing a different service to the higher layers but building on the same low-level abstractions. ” (Peterson & Davie, 1996:30)
A final advantage of layering is that as a result of the different types of layers, making it so different types of translations can take place; different types of hardware are enabled to communicate. Having looked at the advantages of layering, I will now spend some time discussing its disadvantages. “Some functions (like FDDI station management) really need to access and operate at multiple layers. (courses. cs. vt. edu/~cs5516/spring03/ slides/introduction_6. pdf) As the above quote displays, one disadvantage is since the software is split up into layers, functions will operate at one level at a time, where as some functions have the necessity to operate at several layers. “Poorly conceived layers can lead to awkward and complex interfaces. ” (courses. cs. vt. edu/~cs5516/spring03/ slides/introduction_6. pdf) This quote shows us that unless a large amount of thought and work goes into each individual layer, then a very bad and hard-to-use interface can be the end-result.
Another disadvantage is if new design for a layer is done, an old layer may become inappropriate or unsuitable given the properties of the new layer. (courses. cs. vt. edu/~cs5516/spring03/ slides/introduction_6. pdf) A final disadvantage of layering is something known as ‘information hiding’, this may take place and this can lead to inefficient implementations. (www-inst. eecs. berkeley. edu/~cs268/ sp03/notes/Lecture2. pdf) I have discussed why networking software is divided into layers as well as evaluating both the advantages and disadvantages of layering.
I now intend to introduce the first of the aforementioned protocols – Open Systems Interconnection (OSI), before then introducing the second. A number of different types of distributed systems were being developed in the 1970’s and as a result, a range of standards had to be introduced. (Halsall, 1996:11) An organisation called the International Standards Organizaton (ISO) created the ISO Reference Model for OSI. The ISO “was a body founded in 1945 to coordinate international standards for a wide range of industries. ” (The Internet in the Arena of International Standards)
Below is a diagram of the OSI protocol, taken from Peterson and Davie. As can be seen, the OSI protocol has seven layers. The application layer provides the user interface to a range of networkwide distributed information services. The presentation layer is associated with the representation of data during transfer between two communicating application processes. The session layer’s job is to set up a communication channel between two communicating application layer protocol entities during a network transaction. The network layer is responsible for establishing a networkwide connection between two transport layer protocol entities.
The link layer’s job is to build on the physical connection provided by the network to provide the network layer with a reliable information transfer facility. Finally, the physical layer is associated with the physical and electrical interfaces between the user equipment and the network terminating equipment. (Halsall, 1996:16, 17, 18) I will now introduce the second networking protocol so that we have a good understanding of them both, before analysing their differences. The second protocol is called Transmission Control Protocol/Internet Protocol (TCP/IP).
TCP/IP was developed by the US Department of Defence (DOD) research project to connect a number of different networks designed by different vendors into a network of networks. (www. yale. edu/pclt/COMM/TCPIP. HTM) The idea behind the DOD’s thinking was that in the Cold War, if the right designated place was bombed successfully, then the whole countries network communication facilities would become inoperable. This was obviously be a bad thing and so the DOD wanted to develop a standard that would connect all the networks together to prevent this from happening. Below is the model of the TCP/IP protocol, taken from (www-staff. t. uts. edu. au/~sean/DSP. dir/dsp00s. dir/lect1. dir/sld014. htm)
As can be seen, the TCP/IP protocol has only four layers. The application layer handles high level protocols. The transport layer deals with quality-of-service issues. The internet layer determines the path to forward packets of data. The network layer is concerned with all of the issues that an IP packet requires to make a physical link. (www-staff. it. uts. edu. au/~sean/DSP. dir/dsp00s. dir/lect1. dir/sld014. htm) Now that I have briefly introduced both of the protocols, I will now move on to my analysis of their main differences.
A difference between the two protocols in terms of their establishers is that OSI was orally established by Telcos, a telecommunications company and had a large ‘connected’ emphasis linked to it. TCP/IP came more from a computing background with a large ‘connectionless’ emphasis associated with it. Another difference that should be noted is that the two models have opposing approaches. The OSI model has a ‘top-down’ approach meaning the processes that take place within the layers start at the top of the model and work their way down to the bottom.
The TCP/IP model has a ‘bottom-up’ approach meaning the processes taking place within the layers begin at the bottom of the model and move upwards. As can be seen from the models, the visible difference is the number of layers present within each. The OSI protocol has application, presentation, session, transport, network, data link, and physical layers. Where as the TCP/IP protocol has only application, transport, internet and network layers. Even though some of the layers have different names, they essentially do the same thing.
However, the presentation and session layers that are in the OSI model are not present in the TCP/IP model. This makes the two protocols technologically different. “First there were the technical differences, chief among them that OSI had a more complicated and compartmentalised design. ” (Lyon & Hafner, 2003:246) The above quote points out how the OSI design was considered to be very large and complex where as the TCP/IP design was far more simplistic and smaller. “On the OSI side stood an entrenched bureaucracy, with a strong we-know best attitude, patronizing and occasionally contemptuous.
There was a certain attitude among certain parts of the OSI community whose message was, ‘Time to toll up your toy academic network,'” recalled one ardent TCP/IP devotee” (Lyon & Hafner, 2003:247) We can see from the above quote that OSI was regarded as a potential official standard with a considerable amount of bureaucratic support, as opposed to TCP/IP, which was seen by some as a toy network for the academic world only, and would never have any real chance of becoming an official standard networking protocol.
The reason being was that the OSI was created by the ISO, and the ISO had long been responsible for creating international standards for a variety of industries, as the following quote displays. “Since the 1940’s, ISO had specified worldwide standards for things ranging from wine-tasting glasses to credit cards to photographic film to computers. ” (Lyon & Hafner, 2003:246) As a result of this ‘official standardization’ reputation that ISO had created for themselves, OSI was backed by several governments, led by Europe, and was thought to be meeting the needs of the whole world.
Another difference between TCP/IP and OSI, was that TCP/IP had actually been implemented where as the only thing OSI had to offer was the design model for the protocol, as the following quote shows. “And it was a design, never tried. As far as the Internet crowd was concerned, they had actually implemented TCP/IP several times over, whereas the OSI model had never been put to the test of daily use, and trial and error. ” (Lyon & Hafner, 2003:247) An extremely large difference between the two protocols is in relation to their impacts on the networking world respectively.
OSI failed to become to the official international networking standard that it was predicted to be. TCP/IP, contrary to what many had anticipated, was a huge success within the networking protocol world and is used across the world today. However, one must ask, what factors led to this outcome? One factor was that one key TCP/IP developer, Bill Joy, decided that TCP/IP when bought was to come with free networking software, which was based on Unix.
As can be imagined, the fact that one received free Unix networking software when buying TCP/IP with no extra charge dramatically helped push TCP/IP further than OSI. “The first Sun machines were shipped with the Berkeley version of Unix, complete with TCP/IP. Berkeley Unix with TCP/IP would be crucial to the growth of the Internet. When Sun included network software as part of every machine it sold and didn’t charge separately for it, networking exploded. ” (Lyon & Hafner, 2003:250) To clarify, ‘Sun’ was the name of the computer company that Joy joined as the Unix expert.
Another factor that led to TCP/IP’s success was the fact that ARPANET decided to switch over to it on January 1, 1983. ARPANET was the resulting internetwork developed when computer networks associated with a large number of universities and other research establishments were linked and it was in large usage. (Halsall, 1996:19) As a result, TCP/IP was pushed even further ahead when ARPANET switched its protocols from Network Control Protocol to TCP/IP as this meant only machines running the new protocols could communicate over the network. Lyon & Hafner, 2003:248) Dennis Jennings tells us of a factor that largely contributed to the failure of OSI when it was announced by the manager of a company called ICL at a review meeting that the output of the OSI research would not be in the interests of ICL.
The Commission then told ICL that they could do what ever they like. This meant that where would be no available implementation opportunities for OSI once the research had been completed, and Jennings feels that this made it so that OSI had absolutely no chance of success. So what ever the merits of having a set of open OSI protocols, it was a serious attempt to provide an available solution, and the Commission allowed the project to throw it away. OSI died at that meeting. Without available implementations, it had no hope. ” (Randall, 1997:218) Another thing worth saying is that because the Internet boomed and became increasingly popular, and TCP/IP’s design had a layer devoted to the Internet, TCP/IP’s popularity was again increased further as a result of the Internet’s rapid growth.
One could argue that OSI, being a protocol that did not include a layer for the Internet in its design, was over-run by the Internet’s growth. A final factor I would like to mention is the belief that a main reason OSI was not a success was because it got too preoccupied with the standards process and attempting to approve too many that it became caught up with them. It is seen by some that this caused it to fail as it distracted OSI from the one single standard that it was supposed to produce, the following quote shows this. But ISO’s plan to make the OSI protocols a single standard for all computer users was defeated by ISO’s own practice of approving multiple standards. ” (International Standards). To conclude, the concept of layering within networking software is in usage as it provides many advantages in terms of the software’s performance itself. Although, it does also pose some disadvantages, I feel they are small in number are not strong enough to outweigh the advantages.
My analysis of the two networking protocols, OSI and TCP/IP, shows their main differences in terms of technical as well as social factors. I have also discussed the two differing impacts the protocols had in the world of networking and have attempted to explain why by looking at important factors associated with their diffusions. From my analysis, one can see that OSI was mostly a failure, as opposed to TCP/IP which won the protocols war and is in large international usage today.