Jump to content

Protocol stack

From Simple English Wikipedia, the free encyclopedia
Revision as of 14:07, 27 December 2022 by Chumpih (talk | changes) (first words)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

A protocol stack is a part of an operating system (OS) that allows the (OS) to communicate with other things.

Computers are in many different things, and they communicate in many ways. A mobile phone contains many computers, and contains several protocol stacks. There is a protocol stack for handling voice calls. There is a protocol stack for handling Bluetooth. There is a protocol stack for USB. There is a protocol stack used when reading this wiki page. There are many others.

Sometimes the protocol stacks work together, like when someone uses a Bluetooth headset for a voice call.

The protocol stacks send and receive data.

Each layer of the protocol stack will handle a different aspect of the communication. There is a protocol stack with many different layers at the transmitting side, from where the data is sent, and one at the receiving side, where the data is received, and often the data goes in both directions.

Some layers will work on reliability, and will send a message again if a message is lost. Some layers will provide compatibility, and will allow data to be communicated in different ways, or allow different types of data to be communicated in a standard manner. Often the layers handle a series of chunks of data, and some of these layers serve to split up the data into chunks - fragmentation - at the transmitting side, and at the receiving side there will be a corresponding layer to reassemble the data into a stream of data, or a larger chunk. Some layers may encrypt the data at the transmitting end, so nobody can read it, apart from the corresponding layer at the receiving side. And some layers will work on routing the data within the computer, based on special numbers within the data.

As the data is chunked up into small parts, the layers in the protocol stack that sends will often add some additional data that gives information to the corresponding layer at the receiving side. This additional data is known as a header.