- TCP is a connection-oriented protocol that establishes a full-duplex connection between two endpoints to deliver a byte stream in order with no message boundaries. - It uses sequence numbers and acknowledgments to ensure reliable and in-order delivery of all bytes. The sender will not overwhelm the receiver due to flow control. - TCP headers include source/destination ports, sequence numbers, acknowledgments, window size and checksum to establish connections, send data, and implement flow control and reliability.