So on the one hand, it isn?t possible to have just one networking mechanism. But on the other hand, we can?t let every application define its own way of communicating with its peers. After all, we usually have only one network channel, and it would be very confusing if every program did with it as it saw fit. All the other connected nodes, and even the other applications on the same node, would constantly be bumping into each other.
The solution to this problem is found in a layered model. A layer is a software module; that is about all we know about it in terms of its implementation. A layer may share a process with other layers, or it may span several processes. It may be activated on demand or permanently loaded. We don?t care too much about all that. What we want is to segment the network functionality so that we can easily replace one component with another that offers the same functions but uses a different implementation.
Layered networking models have been around for a while, but they used to divide the functionality in the layers differently from one model to another. This did not make the job of interoperability any easier, so ISO developed a standard model, which you see pictured in Figure 2-1. It is called the OSI (open systems interconnect) model and is now used almost universally for describing any kind of network implementation.
Figure 2-1. OSI Layers
The selection of layers...
Copyright Butterworth-Heinemann 1997 under license agreement with Books24x7