Common network protocols
Last revision July 28, 2004
Table of Contents: |
The computer world has standardized on only a few ways of doing each layer of the network model. These standards are called protocols. Unfortunately, few is still more than one, and so there can be difficulties in getting dissimilar computers to communicate.
A protocol is a set of formal rules. In the networking world, these rules define how to transmit data. Low level protocols define the electrical and physical standards to be observed, bit- and byte-ordering and the transmission and error detection and correction of the bit stream. High level protocols deal with the data formatting, including the syntax of messages, the terminal to computer dialogue, character sets, sequencing of messages etc.
Much of the physical and data link layers of the network are implemented in the hardware of the computer - that is, in the network adapter. For local area networks - the point where you physically connect my computer - the nearly universal standard is to use some form of "ethernet". The only competing cabling system still in limited use is "LocalTalk", which is still the only way to connect some old printers and Macintosh computers.
The "software" layers of the networking model - part of the data link layer and all layers above - are intended to be relatively independent layers. This would allow an application to use various transport systems without having to be rewritten. But in practice, various "protocol suites" have been developed that provide a set of standards for implementing all the software layers and even some standardized applications. Other applications can then easily be built on top of these suites.
One protocol suite dominates the world of computer networking and is the basis for the world-wide "Internet": TCP/IP, which stands for "Transmission Control Protocol/Internet Protocol". This suite provides efficient and reliable connections that can be routed across multiple networks, and a consistent hierarchical naming system that provides a unique name for each device on the entire Internet. It also provides a complete suite of standard applications and services, including email, web browsing, filesystem sharing (sharing an entire disk), individual file transfer, printer access, remote login, remote program execution, and others. The TCP/IP suite was developed on Unix computers and is universally available on Unix systems.
Other protocol suites have been developed primarily for filesystem and printer sharing on a particular type of computer on "local area networks" that are typically limited to a single building or campus. These protocols are not well suited to routing across large internetworks with many devices or long distances. Nor do they provide all types of network services. These "local area" protocol suites include: AppleTalk, originally developed for Macintosh computers and printers; Netware (IPX/SPX), developed for IBM compatible PCs; and the most primitive one, NetBEUI, for small numbers of IBM compatible PCs on a single (non-routed) local area network.
In the Windows PC world, there is a complicated mix of complete and partial protocol suites, used for different services. NetBEUI was the original supported protocol for DOS and Windows filesystem sharing (access to another computer's disks) and printer sharing. Support of Netware came next, to provide the same services on larger networks. Beginning with Windows 95, the complete TCP/IP suite has been implemented, along with many of its standard applications such as web browsing, ftp file transfer and telnet remote login. And in environments where Netware and NetBEUI are not desired, the top layers (session, presentation, and application) of the standard Windows filesystem sharing and printing protocols have been implemented on top of the TCP/IP transport, network, and data link layers. This is called "NetBIOs on TCP/IP" or "SMB/CIFS on TCP/IP".
All versions of the Macintosh operating system have supported the AppleTalk suite for filesystem sharing and printing. Apple then implemented the complete TCP/IP suite, but only for "non-Macintosh" types of services: web browsing, email, ftp file transfer from other types of computers, and remote login to other computers. Gradually, Apple is trying to implement the Macintosh filesystem sharing and printing functions on top of TCP/IP, with the eventual goal of eliminating AppleTalk.