The set of protocols used in a communications network. A protocol stack is a prescribed hierarchy of software layers, starting from the application layer at the top (the source of the data being sent) to the data link layer at the bottom (transmitting the bits on the wire). The stack resides in each client and server, and the layered approach lets different protocols be swapped in and out to accommodate different network architectures. For more details about each layer, see OSI model
TCP/IP Protocol Stack Example
The sending application hands data to the transport layer, which breaks it up into the packets required by the network. It stores the sequence number and other data in its header. The network layer adds source and destination data in its header, and the data link layer adds station data in its header. On the other side, the corresponding layer reads and processes the headers and discards them.