A layer is an architectural abstraction allowing us to organize our thinking about how different networking processes interact with one another. By dividing end-to-end networking operations into different layers, it is possible to delegate different processes to various subsystems. Because each network subsystem must present standard interfaces to other subsystems at neighboring layers, this allows for seamless interoperability between different products and subsystems providing services from one layer to the next.
The Open Systems Interconnection (OSI) model is one prime example of the use of layers in network architecture.
The hierarchical internetworking model developed by Cisco provides a different application of the more general idea of a layered architecture.