A protocol stack is a multi-layered set of protocols that are related to each other and functionally interoperate. As a set of protocols, they support some or all of the seven layers of the OSI reference model.
Not every protocol stack covers the functionality of every single layer, but a single protocol may well serve multiple layers. A protocol stack includes the protocol software for adjacent, interdependent layers, such as the OSI protocols or the TCP/ IP protocols.
Protocol stacks are used to implement special network architectures, such as DECnet, AppleTalk, etc. Functionally, a protocol stack consists of the protocols of the different layers. The application data is processed by protocols of the presentation layer, transport layer, network layer, link layer and physicallayer.