El protocol TCP (Transmission Control Protocol o protocol de control de transmissió) va ser dissenyat per a funcionar en xarxes poc fiables. És un protocol de la capa de transport (nivell 4) i l'objectiu principal és aportar fiabilitat a les transmissions basades en TCP/IP.
La fiabilitat que aporta TCP el fa ideal per a comunicacions on volem assegurar que les dades arriben correctament, sense pèrdues ni errors. La part negativa d'aquest fiabilitat és la càrrega addicional de trànsit que suposa en les comunicacions.
El protocol TCP proporciona un punt d'accés a les aplicacions mitjançant els ports, números enters que permeten identificar unívocament les aplicacions que estan comunicant-se.
Els ports es classifiquen de la següent manera:
- Ports ben coneguts. Els ports inferiors al 1024 són ports reservats per al sistema operatiu i per protocols ben coneguts, com HTTP (servidor Web), POP3/SMTP (servidor de e-mail).
- Ports registrats: Els compresos entre 1024 i 49151 són denominats "registrats" i poden ser utilitzats per qualsevol aplicació. Existeix una llista pública en la web del IANA on pot veure's quin protocol usa cadascun d'ells.
- Ports dinàmics, privats o efímers. Els compresos entre els números 49152 i 65535. S'assignen de forma dinàmica a les aplicacions clients en iniciar la connexió.