Microsoft KB Archive/103881
Article ID: 103881
Article Last Modified on 7/30/2001
This article was previously published under Q103881
In 1978, the International Standards Organization (ISO) introduced the ISO model for Open Systems Interconnect (OSI) as a first step toward international standardization of the various protocols required for network communication.
The OSI ISO model:
- Was designed to establish data communications standards that would promote multi-vendor interoperability.
- Consists of seven layers, with a specific set of network functions allocated to each layer, and guidelines for implementation of the interfaces between layers.
- Details a specific set of protocols and interfaces to implement at each layer. So far, only the lowest four layers have been explicitly defined. The upper layers, and their interfaces to the lower ones, have not yet been completed. The overall model has become the basis for the government's required standard environment, GOSIP, beginning in August 1990.
Each layer of the OSI model can be viewed as an independent module. You may (theoretically) substitute one protocol for another at the same layer without affecting the operation of layers above or below.
In addition to explicitly defining protocols and interfaces at selected layers, the OSI model also serves as a concept, providing a reference for how data communication should take place. It provides a common basis for the coordination of standards development for the purpose of systems interconnection, while allowing existing standards and architectures to be placed in perspective within the overall reference model.
The principles that led to the creation of seven layers are:
- A layer should be created only where a different level of abstraction is required.
- Each layer should perform a well defined function.
- The function of each layer should be chosen with an eye toward defining internationally standardized protocols.
- The layer boundaries should be chosen to minimize the information flow across the interfaces.
- The number of layers should be large enough that distinct functions need not be thrown together in the same layer out of necessity, and small enough that the architecture does not become unwieldy.