UDP fornisce le basi per il trasferimento dei dati

TCP: Aggiunta di handshaking e controllo di flusso

UDP fornisce le basi per il trasferimento di dati tra processi su computer diversi. Ma usando UDP da sola, la fonte non sa o meno una destinazione ricevuto i dati inviati. Il protocollo TCP utilizza un sistema di numeri di sequenza e il riconoscimento che consentono la destinazione di aver ricevuto specifici byte di dati. Utilizzando i numeri di sequenza, una destinazione possibile inserire messaggi ricevuti nell'ordine in cui sono stati inviati, anche se fossero stati ricevuti fuori ordine. I numeri di sequenza consentono inoltre di individuare una destinazione duplicare i dati ricevuti. Per ulteriori trasferimenti efficiente di grandi quantità di dati, TCP specifica un modo per l'origine in modo che corrisponda alla quantità di dati inviati con la capacità della destinazione ad accettare nuovi dati. Il documento che definisce il protocollo TCP è RFC0793: Transmission Control Protocol. È anche un standard approvato con il STD0007 designazione.

  

Diversi RFC ulteriori proposte contengono norme che aumentare e migliorare lo standard originale. TCP è un detto protocollo orientato alla connessione, perché i processi non possono scambiare dati fino a che non si sono scambiate le comunicazioni di stabilire una connessione con l'altro. TCP è chiamato un protocollo affidabile, perché la stretta di mano, di controllo, e la sequenza e riconoscere i numeri consentire la fonte per verificare che i dati sono arrivati a destinazione senza errori. Un segmento TCP è costituito da un colpo di testa seguito facoltativamente da un carico utile di dati. (Un colpo di testa potrebbe trasmettere dati senza un carico utile per inviare le informazioni di stato o di controllo.) Il segmento termine suggerisce che un segmento TCP unico è solo una parte di un completo trasferimento dati TCP, e di fatto, ogni buon esito del trasferimento dei dati utilizza almeno due segmenti. La sorgente invia uno o più segmenti che contengono i dati, e la destinazione invia uno o più segmenti di riconoscere che riceve i dati. Un riconoscimento singolo può riconoscere più segmenti. Al contrario, ogni datagramma UDP è un'unità indipendente che non richiede alcuna ulteriore comunicazione. Come UDP, TCP utilizza i numeri di porta per identificare i processi alla fonte e la destinazione.

Prima di due processi possono inviare e ricevere dati utilizzando il protocollo TCP, i loro computer deve stabilire una connessione con l'esecuzione di un 3-way handshake. Al termine la stretta di mano, ogni computer ha riconosciuto che la porta specificata nella stretta di mano è disponibile per ricevere comunicazioni da porta specificata su un altro computer. Entrambi i computer si può quindi utilizzare la connessione per inviare i segmenti TCP a un altro computer. Alla ricezione di dati tramite una connessione, la destinazione risponde restituendo le informazioni sul fatto che i dati arrivati senza l'errore, sia che si tratti OK per inviare i dati di più, e in caso affermativo , la quantità di nuovi dati la destinazione è in grado di ricevere. Per chiudere una connessione, ogni computer invia una richiesta di chiudere la connessione e attende una conferma della richiesta.

Intestazione TCP

Il valore può cambiare a ogni segmento di un computer che invia, a seconda di come lo spazio di buffer molto disponibile. Una fonte può utilizzare il valore ricevuto nel determinare la quantità di dati per l'invio nel segmento successivo. La dimensione massima della finestra è 65.535 byte. Se la finestra una destinazione è pari a zero, una fonte che vuole inviare i dati può inviare un singolo byte periodicamente al fine di provocare la destinazione per restituire un valore aggiornato finestra. Questo campo è di due byte. Checksum. TCP richiede un checksum. La fonte e la destinazione calcolare il checksum sul contenuto del segmento TCP più una pseudo-intestazione contenente le informazioni dell'intestazione IP e la lunghezza del segmento TCP. Tabella 5.6 mostra i valori della pseudo-intestazione. Come nel caso di UDP, l'intestazione pseudo non trasmette sulla rete e anche l'intestazione del checksum pseudo protegge la destinazione erroneamente accettare datagrammi che sono stati misrouted. Il valore di checksum è calcolato nello stesso modo come checksum l'intestazione IP, come descritto nel capitolo 4. Il campo è di due byte. Urgent Pointer. Quando il bit URG è impostato, il puntatore d'urgenza segna la fine dei dati urgenti. Il valore è il numero di sequenza dell'ultimo byte di dati urgenti, espresso come un offset dal numero del segmento sequenza. Ad esempio, se il numero del segmento sequenza 1000 ed i primi 8 byte sono dati urgenti, il puntatore d'urgenza sarebbe 8. Un utilizzo tipico per il puntatore urgente è quello di consentire a un utente di interrompere il processo. La formulazione dello standard TCP originale lasciato una certa confusione sul fatto che i punti di puntatore URG per l'ultimo byte di dati urgenti o il primo byte dopo i dati urgenti. RFC 1122 chiarisce dicendo che URG dovrebbe puntare l'ultimo byte di dati urgenti. Questo campo è di due byte.

TCP Options. Le voci nelle opzioni TCP campo sono opzionali, quindi questo campo è pari a zero o più byte. L'opzione Maximum Segment Size consente il processo di ricezione per specificare la dimensione massima del segmento del processo in grado di gestire. Un processo usa questa opzione solo al momento di stabilire una connessione, in un segmento dove il bit SYN è impostato. L'opzione è di quattro byte, consistente nella 02h byte, seguita da 04h, seguito da due byte che specificano la dimensione massima del segmento. L'opzione Nessuna operazione fornisce un modo per allineare le opzioni su un confine di parola. L'opzione è la 01h di un singolo byte. The End of opzione Elenco opzione indica che non ci sono più opzioni in campo. Questa opzione è la 00h di byte. L'header TCP completa deve essere un multiplo di 32 bit. Per raggiungere questo obiettivo, alla fine del campo TCP Options può essere riempito con zeri. Porzione di dati. Segue l'intestazione è la parte facoltativa dati del segmento. Lo standard IP host richiede di accettare datagrammi fino a 576 byte. Un header IP senza opzioni è di 20 byte, e un header TCP senza opzioni è 20 byte. Quindi un segmento TCP con un massimo di 536 byte di dati e senza opzioni IP o le opzioni TCP dovrebbe essere in grado di raggiungere la sua destinazione senza frammentare.

un articolo presentato da Daniel R.


Disclaimer:Il nostro sito non è responsabile per il contenuto di questo articolo. Webarticles è una risorsa gratuita di informazioni.
Importante: Questo articolo "UDP fornisce le basi per il trasferimento dei dati" è stato tradotto da un software automatico. Ci dispiace per eventuali errori di ortografia che possono essersi verificati. Grazie per la vostra comprensione.


Online: 326 users browsing the articles directory