The ISO/OSI reference model
The ISO/OSI model defines 7 layers, the 5 mentioned above plus 2 more between application and transport:
- presentation: allowing applications to interpret meaning of data, such as: encryption, compression, machine-specific conventions, etc.
- session: synchronization, checkpointing, recovery of data exchange
- The Internet stack, as a practical approach, does not implement these layers!
- These services, if needed, must be implemented in the application layer
- The question is: are they really needed?

(Click to enlarge)
Figure 8 ISO/OSI reference model summarising services and protocols
Zbatimi i Niveleve OSI by Rexhep-bunjaku from Wikipedia CC BY-SA 3.0

Figure 7 ISO/OSI reference model diagram
Diagram of OSI model.... by Offnfopt from Wikipedia Public Domain
Let us now examine how a message “M” would be sent from a source to a destination computer. The original message “M” is sent from the application to the transport layer. The transport layer includes its own transport header “Ht” to distinguish different messages arriving from the application layer. For example, this header could contain a sequence number or some identification number. Afterwards, it sends both the header and message to the network layer.
The network layer receives “Ht+M”, although it will not be aware of what part is the original message. It then adds its own network header “Hn” and sends it down to the link layer, which finally receives “Hn+Ht+M” and adds its link layer header “Hl”. The link layer sends it to the physical layer, which will not add any additional information. The physical layer is in charge of transmitting every bit of the chunk of bytes represented by “Hl+Hn+Ht+M”.
This operation of adding headers to a message in each protocol layer is called packet encapsulation.
The receiver of these bits, will apply the opposite operation, decapsulation, taking out the headers for each protocol until it obtains the original message “M”.

(Click to enlarge)
Figure 9 Encapsulation and decapsulation for a message “DATA” in the OSI model
This is an illustration of the Open Systems Interconnection Model by MrsValdry (Own Work) from Wikipedia CC BY-SA 3.0

(Click to enlarge)
Figure 9 Encapsulation example for a message “DATA” in the TCP/IP stack,
using the UDP and IP protocols Encapsulation of user data in the Unix-style UDP stack... by Cburnett from Wikipedia CC BY-SA 3.0
Notice that not all devices in the network need to implement all the protocol layers. For example, a router just implements 3 layers, as it does not need transport or application, and a switch does not even need the network layer, as it does not route packets among different networks.