...
Multiplexing Assign port numbers to each application, which enables the IP network to carry thousands of application messages between hosts simultaneously.
Reliable message delivery The receiver verifies the transmission of each packet using a checksum to ensure contents are not corrupted. The receiver acknowledges the verified packet or requests retransmission of the corrupted packet. If the transmitter doesn’t receive an acknowledgment, it assumes the packet is lost and retransmits it. The transport layer also ensures packets arrive in sequence by inserting a sequence number.
Flow control The receiver uses a transmission window value to provide feedback to the sender about buffer space to avoid buffer overruns and underruns.
Congestion management When multiple losses occur, the transport layer implements a back-off algorithm that allows congestion to clear before resuming transmission.
...
Recommendations
If any portion of the end-to-end network transport is considered not secure (i.e. direct Internet), then 46 Labs recommends using TLS.
...