# Protocol Stack

## Protocol Description

STACK (Protocol Stack) illustrates how data flows through a typical protocol stack. As an application message passes down through the layers towards the medium, each layer prefixes the message with its own control header. Eventually the message with all headers is sent via the medium to its destination. In the reverse direction, as a medium message passes up through the layers towards the application, each layer interprets and strips off its control header. Eventually the message with no headers is passed to the application.

The Data Link layer is an exception because it usually adds a trailer (typically a checksum) as well as its header. This trailer and header are stripped off on reception..

For this simulation, the communications channel is assumed to operate perfectly (no message corruption, loss or misordering). There is also no fragmentation (layers do not split messages up) and no blocking (layers do not combine messages). It follows that each application message corresponds to one message over the medium.

The elements of a message are simply numbered 0, 1, etc. withou explicit data content. An Application sends a message with data such as A3. This is then prefixed with a Transport header T3, a Network header N3, a Link header and trailer L3, and a Physical header P3. When sent over the medium, the whole message then looks like P3:L3:N3:T3:A3:L3. On reception, the headers (and Link trailer) are stripped off so that the receiving Application gets A3 as sent.

## Protocol Parameters

This simulation has no parameters.

## Protocol Simulation

The protocol simulation shows a time-sequence diagram with the following layers: Application (e.g. File Transfer Protocol), Transport (e.g. Transmission Control Protocol), Network (e.g. Internet Protocol), Data Link (e.g. Ethernet), Physical (e.g. Ethernet) and Medium (e.g. Unshielded Twisted Pair cable).

Up one level to Protocol Simulators