Sto cercando di capire l'handshake a tre vie nell'impostazione della connessione TCP. Il mio libro afferma che il client contatta prima il server, diciamo che vogliamo una connessione HTTP, quindi invia un SYN alla porta 80. (1)
Il server risponde quindi a un pacchetto SYN ACK. (Ecco la mia domanda) (2)
E ora il client invia un ACK finale. (3)
Nel libro il grafico mostra che (2) passa dal socket del server alla cartella del client iniziale. Quindi il grafico mostra che (3) va dal socket del client a "Welcoming Socket". Il socket di benvenuto non è lo stesso del socket di connessione da (2).
Ho scaricato il http.cap dal wiki di Wireshark e sto dando un'occhiata ai 3 pacchetti iniziali. Qui abbiamo il SYN con la porta 3372 - > 80 quindi un SYNACK 80 - > 3372 e infine ACK 3372 - > 80 (con potenziali dati già).
Ciò che mi confonde è che l'ACK finale va anche alla porta 80 sul server. Ho pensato che abbiamo creato un nuovo socket di benvenuto con una nuova porta, in modo che il socket di connessione con la porta 80 possa continuare ad ascoltare nuove connessioni.