TL; DR: socket UDP saranno chiuse e non legato immediatamente (a meno che il suo un/indirizzo multicast di broadcast con altri ascoltatori).
TIME WAIT è specificato dall'originale RFC 793e si applica solo al TCP. Richiede una durata massima del segmento 2 * per scadere prima di chiudere il socket in TCP.
Il famoso Unix Network Programming di Stevens spiega anche TIME ATTESA del TCP in modo più dettagliato per i curiosi.
UDP non ha connessioni .. TIME WAIT non fa parte di quel protocollo.
La fonte di Linux, sebbene rilevante per il comportamento potenzialmente proprietario sui sistemi basati su Linux, non è l'autorità su tali argomenti.
L'originale 1981 Darpa TCP RFC 793 è autorevole, nonche la Berkeley Sockets api su cui sono basati POSIX sockets definire il comportamento previsto della socket API.
Altrettanto rilevante è il BSD network stack che alimentava il protocollo TCP/IP nelle prime fasi di connessione a Windows, iOS e OSX e fornisce l'implementazione autorevole di riferimento delle RFC TCP/IP. Lo stack BSD è ancora considerato come the benchmark for a future Linux stack several years from now. (Facebook ha pubblicato un ruolo a metà del 2014 per un esperto per aiutare a fare coincidere Linux o superare l'affidabilità e le prestazioni dello stack FreeBSD).
fonte
2015-02-03 14:20:05
Puoi aggiungere un esempio di codice (che può essere eseguito) come mostra che uno scenario in cui TCP non rilascia l'indirizzo su socket chiuso mentre UDP lo farebbe? – TheMeaningfulEngineer
Penso che sia inutile mostrare lo stato TIME_WAIT di un socket TCP poiché è uno stato richiesto dalle specifiche, è documentato praticamente ovunque e il kernel di Linux include parametri sintonizzabili per influenzare la sua durata. Un socket entra sempre nello stato TIME_WAIT quando viene terminato normalmente. –
Penso che l'OP stava cercando di confermare che una porta UDP è stata completamente rilasciata al termine del processo dell'acquirente. Sono d'accordo sul fatto che il riferimento al kernel di linux era la risposta autorevole, ma lui cercava un po 'più di fiducia in ciò che era vero - un modo per testare. – user590028