Protocol stack

A protocol stack is a part of an operating system (OS) or device that is used to communicate with other things. 
Computers communicate in many ways. A mobile phone contains several protocol stacks. There are protocol stack for handling voice calls, Bluetooth and USB. There is often a protocol stack that is used when reading a webpage on Wikipedia. There are many other stacks that are used by phones.
Sometimes the protocol stacks work together. An example of this is when a person uses a Bluetooth headset for a voice call. One stack is used for the phone to communicate with the headset. Another stack is used to make the voice call. The Bluetooth headset has its own bluetooth protocol stack. 
The protocol stacks are used to send and receive information.
Each layer of the protocol stack handles a different part of the communication. There is a protocol stack with many different layers that are used to send data. Other layers are used to receive date. Often the data us sent and received at the same time. When two things communicate with each other in a standard manner, this is known as a protocol.
Some layers within the protocol stack will work on "reliability." They will send a message again if the first message was lost in communication. Some layers will provide "compatibility." They will let data to be communicated in different ways. They also let different types of data to be communicated in a standard manner. Layers often handle a series of chunks of data. Some layers split the data into smaller chunks when sending it. This is called "fragmentation." When the data is received, another layer puts the smaller chunks back together to form larger chunks or media streams. This is called "reassembly". Some layers may encrypt the data when it is sent. This is done so it cannot be read. A layer at the receiving side will remove the encryption.
The OSI model is a common way to think about protocol stacks.