[Contents] [Back] [<< Prev] [Next >>]

Packets and Protocols

Before investigating protocols and protocol stacks, take a moment to quickly review some of the protocol-related issues discussed in previous chapters.

The purpose of a network is to exchange information among computers, and protocols are the rules by which computers communicate. Computers, like humans, can adopt any number of systems for passing messages as long as the sending and receiving computers are using the same (or compatible) rules. Computers, therefore, must agree on common protocols before they can communicate—failing to do so would create a bewildering situation similar to what you’d face if you read a book in Russian to a listener who speaks only Cherokee.


[note.gif]

The NDIS and ODI standards greatly simplify the task of finding common protocols. NDIS and ODI (described in Chapter 2) enable several protocols to operate simultaneously through the same network adapter card.

You can classify the many tasks that network protocols must oversee into a few basic categories. Think of these categories chronologically, as a series of steps (each step including a collection of related tasks) that must take place before the data can reach the transmission medium. These steps are the layers of a protocol stack, as described in Chapter 2. In one sense, the term layer is more than metaphorical. Each layer of the stack (the Application layer, the Presentation layer, and so on) adds a layer of information to the packet, which the corresponding layer of the receiving computer needs in order to process the incoming packet.

The purpose of the layering structure is to enable vendors to adapt to specific hardware and software configurations without recreating the entire stack.

Protocols describe the way in which network data is encapsulated in packets on the source end, sent via the network to a destination, and then reconstructed at the destination into the appropriate file, instruction, or request. Breaking network data into packet-sized chunks provides smoother throughput because the small packets don’t tie up the transmission medium as a larger unit of data might. Also, packets simplify the task of error detection and correction. Each file is checked separately for errors, and if an error is discovered, only that packet (instead of a whole file) must be retransmitted.

The exact composition of a network packet depends on the protocols you’re using. In general, network packets contain the following:
As the data passes down through the protocol layers, each layer performs its prescribed function, such as interfacing with an application, converting the data format, or adding addressing and error-checking parameters. (Chapter 2 examines the functions of the OSI protocol layers.) As you learn in this chapter, actual working protocol stacks don’t always comply exactly with the OSI model—some, in fact, predate the OSI model—but the concepts and terminology of the OSI model are nevertheless useful for describing protocol functions.

When the packet reaches the transmission medium, the network adapter cards of other computers on the network segment examine the packet, checking the packet’s destination address. If the destination address matches the PC’s address, the network adapter interrupts the processor, and the protocol layers of the destination PC process the incoming packet (see Figure 5.1).