TCP does not need to handle addressing and forwarding traffic through the network. This is handled at layer-3 by the Internet Protocol.
TCP uses source and destination ports. One function of these ports is to identify the application that incoming traffic belongs to.
Ports also make it possible to have more than one TCP ‘session’ at a time. For example, a web browser may contact a web server using port 80. At the same time, a mail client may access a mail server on port 25.
A connection is defined by a combination of protocol, source and destination ports, and source and destination IP addresses. This is also known as a ‘flow’.
Unlike UDP, TCP creates a new connection and formally closes it when the data transfer is complete.
TCP is called a ‘reliable’ protocol, as it has a way of checking if all data has been delivered correctly. If not, it requests the missing data to be resent.