Clicca "Avvia" per vedere il processo di connessione TCP passo per passo
๐ฅ๏ธ
Client
192.168.1.10
CLOSED
๐ง
Server
10.0.0.1:443
LISTEN
๐ฆ Struttura Segmento TCP
Ogni segmento TCP contiene un header di 20-60 byte con campi cruciali:
Source Port
49152
Destination Port
443
Sequence Number
1000
Acknowledgment Number
2001
Header Len
20B
Flags
SYN ACK
Window Size
65535
Checksum
0xA3F2
Urgent Pointer
0
DATA (payload)
GET /index.html HTTP/1.1...
๐ก I 6 flag TCP:SYN (inizio connessione), ACK (conferma ricezione), FIN (chiudi connessione), RST (reset), PSH (invia subito), URG (dati urgenti).
๐ข Sequence & Acknowledgment Numbers
Sequence Number
"Questo segmento inizia dal byte numero X." Ogni byte di dati ha un numero di sequenza. Il SYN iniziale sceglie un ISN (Initial Sequence Number) casuale.
Acknowledgment Number
"Ho ricevuto tutto fino al byte X-1, mandami il byte X." Conferma la ricezione e indica il prossimo byte atteso. Se non arriva l'ACK โ ritrasmissione.
โ๏ธ TCP vs UDP โ Scegli il Protocollo
Clicca su un'applicazione per vedere quale protocollo usa e perchรฉ
๐ Confronto Completo
Caratteristica
TCP
UDP
Tipo
Connection-oriented
Connectionless
Affidabilitร
Sรฌ โ ACK, ritrasmissione
No โ best effort
Ordine
Garantito (seq numbers)
Non garantito
Controllo flusso
Sรฌ โ window size
No
Handshake
3-way handshake
Nessuno
Header
20-60 byte
8 byte (piรน leggero)
Velocitร
Piรน lento (overhead)
Piรน veloce
Uso tipico
Web, email, FTP, SSH
DNS, DHCP, VoIP, streaming, gaming
Errori
Rileva e corregge
Rileva ma non corregge
๐ก Regola pratica: Se i dati devono arrivare completi e in ordine โ TCP. Se la velocitร conta piรน dell'affidabilitร e qualche pacchetto perso รจ accettabile โ UDP.
๐ข Header UDP โ Semplicissimo
Source Port
12345
Destination Port
53
Length
42
Checksum
0xB1C4
DATA
DNS Query: www.netlab.it
Solo 8 byte di header (vs 20+ di TCP). Niente sequence, niente ACK, niente window, niente handshake. Manda e spera.