tcp vs udp what is difference between tcp
Questo tutorial spiega cos'è TCP, cos'è UDP e qual è la differenza tra TCP e UDP. Imparerai anche le loro funzioni e applicazioni:
Nei nostri tutorial precedenti, abbiamo discusso in dettaglio il modello della suite di protocolli TCP e le sue caratteristiche. Abbiamo anche imparato a conoscere il protocollo UDP.
In questo tutorial, confronteremo le varie caratteristiche, modalità di funzionamento, applicazioni, velocità, affidabilità, caratteristiche di trasmissione e caratteristiche di sicurezza di questi due protocolli ampiamente utilizzati.
=> Leggere la serie Easy Computer Networking.
Cosa imparerai:
- Cos'è il TCP?
- Cos'è l'UDP?
- Processo di comunicazione TCP e UDP
- Grafico di confronto TCP Vs UDP
- Formato intestazione UDP vs TCP
- Funzioni eseguite da TCP
- Funzioni eseguite da UDP
- Applicazioni di TCP
- Applicazioni di UDP
- Conclusione
- Lettura consigliata
Cos'è il TCP?
Il protocollo TCP / IP è un insieme di protocolli di quattro livelli. Nel complesso, questi quattro livelli si assumono la responsabilità del processo di comunicazione e della consegna end-to-end di dati, voce, pacchetti su Internet su reti inter e intra.
Il protocollo TCP (Transmission Control Protocol) funziona sul terzo livello di questo modello di protocollo che è il livello di trasporto.
TCP è una suite di protocolli orientata alla connessione che garantisce la consegna del pacchetto di dati al nodo successivo o al nodo di destinazione utilizzando un numero di sequenza in ogni datagramma e sessioni di riconoscimento con ciascuna delle sessioni di comunicazione.
domande dell'intervista su html e css
Questo sistema garantisce anche la trasmissione sicura su ogni livello per i pacchetti di dati e quindi provvede alla ritrasmissione dei pacchetti di dati a meno che non raggiunga una situazione di timeout o riceva il messaggio di riconoscimento appropriato dal ricevitore.
Queste sono le caratteristiche di base del protocollo TCP.
Cos'è l'UDP?
User Datagram Protocol (UDP) funziona sul livello di trasporto, che è il terzo livello della suite di protocolli TCP / IP. A differenza del protocollo TCP, è un protocollo senza connessione in quanto non stabilisce una connessione prima di inviare i dati sulla rete per la comunicazione.
Pertanto è più adatto per le applicazioni in cui non è necessario il riconoscimento dei pacchetti di dati richiesti nel processo di comunicazione come guardare video online e giocare online.
Processo di comunicazione TCP e UDP
Come mostrato nella figura sopra, il protocollo di controllo della trasmissione è orientato alla connessione in quanto prima imposta la connessione tra due host e quindi avvia il processo di comunicazione. Viene utilizzato per una modalità sicura dei processi di comunicazione in quanto offre una comunicazione protetta utilizzando un processo di handshake a 3 vie.
Assicura la consegna sequenziale e corretta dei dati dal mittente al destinatario. Se si è verificato un errore nell'invio dei dati, il destinatario comunicherà alla fonte che i dati inviati non erano corretti e quindi la fonte ritrasmetterà i dati fino a quando non avrà ricevuto il riconoscimento della corretta consegna dei dati.
Come mostrato nella figura sopra, il protocollo del datagramma utente è un protocollo senza connessione poiché non viene stabilita una connessione adeguata tra l'host A e l'host B per avviare la comunicazione. Gli host sono solo due dispositivi finali di qualsiasi processo che avviano la comunicazione.
L'host A continuerà a trasmettere i dati e l'host B li riceverà senza preoccuparsi della consegna sequenziale e priva di errori dei dati.
Quindi questo è un protocollo non affidabile e viene utilizzato dove la trasmissione sicura dei dati non è importante ma è necessaria una comunicazione più veloce come nello streaming di video e nei giochi online.
Grafico di confronto TCP Vs UDP
Entità di confronto | TCP | UDP |
---|---|---|
Protocolli utilizzati | I vari tipi di protocolli utilizzati da TCP per la trasmissione dei dati sono HTTP (protocollo di trasferimento ipertestuale), HTTP (protocollo di trasferimento ipertestuale sicuro), FTP (protocollo di trasferimento file) e SMTP (protocollo di trasferimento di posta semplice) ecc. | I vari tipi di protocolli utilizzati da UDP per la trasmissione dei dati sono BOOTP (protocollo Bootstrap), DHCP (protocollo di configurazione host dinamico), DNS (server dei nomi di dominio) e TFTP (protocollo di trasferimento file Trivial) ecc. |
Funzionalità di base | Il protocollo di controllo della trasmissione stabilisce sempre una connessione tra l'host di origine e quello di destinazione prima dell'inizio di qualsiasi processo di comunicazione dei pacchetti di dati. | Il protocollo del datagramma utente inoltra i dati direttamente all'host di destinazione senza stabilire alcun collegamento tra l'origine e l'estremità di destinazione. |
Tipo di connessione | È un protocollo orientato alla connessione che significa che una connessione deve stabilire prima dell'inizio della trasmissione dei dati e che i dispositivi di comunicazione dovrebbero terminare o terminare la connessione una volta terminata la comunicazione tra il mittente e il destinatario. | È un protocollo senza connessione che significa che non vi è alcuna costrizione a stabilire, mantenere e terminare una connessione tra origine e destinazione. È più adatto per scopi di trasmissione e multicast. |
Velocità | La velocità è inferiore a quella dell'UDP. | Veloce quindi TCP. È un protocollo di trasporto in tempo reale. |
Affidabilità | È estremamente affidabile in quanto attraverso il processo di riconoscimento garantisce la corretta consegna del pacchetto di dati al nodo di destinazione. | La consegna dei pacchetti di dati non è garantita, quindi è un protocollo inaffidabile. |
Dimensioni dell'intestazione | 20 byte | 8 byte |
Riconoscimento | Il protocollo TCP segue il processo di handshake tra mittente e destinatario per confermare la ricezione dei pacchetti di dati in entrambe le direzioni. Quindi questo offre la possibilità di ritrasmissione dei pacchetti di dati persi. | Non riconosce mai la ricezione dei dati e quindi non c'è possibilità di ritrasmissione dei dati. |
Controllo del flusso | Il controllo del flusso viene eseguito utilizzando finestre scorrevoli e algoritmi per evitare la congestione, ecc. | Non viene seguito alcun processo |
Interfaccia dati per l'applicazione | I dati vengono trasmessi in pacchetti di dati distinti basati su messaggi | I dati vengono trasmessi in pacchetti di dati basati sul flusso e non viene seguita una struttura specifica. |
Controllo degli errori | Il rilevamento e la correzione degli errori vengono eseguiti utilizzando un checksum ei pacchetti di dati vengono ritrasmessi dopo la correzione dal mittente all'estremità di destinazione. | I pacchetti di dati persi vengono scartati e il processo di controllo degli errori non viene praticato. |
Applicazioni | Poiché questo protocollo offre un processo di comunicazione sicuro e affidabile, quindi, viene utilizzato nei servizi in cui la riservatezza dei dati è una preoccupazione primaria come i servizi militari, la navigazione web e la posta elettronica, ecc. | Viene utilizzato dove è richiesta una comunicazione veloce e l'affidabilità dei dati non è un problema come VoIP, streaming di giochi, streaming di video e musica, ecc. |
Formato intestazione UDP vs TCP
Intestazione TCP
cos'è il test di sistema con l'esempio
- Porta di origine: Contiene l'indirizzo della porta di origine del segmento di dati ed ha una dimensione di 16 bit.
- Porto di destinazione: Contiene l'indirizzo della porta di destinazione ed ha anche una dimensione di 16 bit.
- Sequenza di numeri: Questa è di 32 bit. Rappresenta il numero di sequenza del segmento di dati del primo ottetto. Se il SYN è disponibile, il valore del numero di sequenza è ISN + 1 mentre ISN sta per un numero di sequenza iniziale.
- Numero di riconoscimento: Anche la dimensione di questo campo è di 32 bit. Questo campo trasporta il numero di sequenza del segmento di dati immediatamente successivo che l'estremità di origine si aspetta dal ricevitore per arrivare come riconoscimento della ricezione del pacchetto di dati. Quando viene stabilita una connessione adeguata tra la sorgente e l'estremità di destinazione, questo bit viene sempre trasmesso.
- Offset dati: Questo campo ha una lunghezza di 4 bit. Questo denota il punto da cui iniziano i dati.
- Riservato: Alcuni bit sono riservati per scopi futuri e il valore in questo campo è zero. È lungo 6 bit.
- Bandiere: Anche questo è di 6 bit. Flag diversi vengono utilizzati per vari scopi. Secondo l'idoneità, la bandiera è impostata su zero o uno.
- Dimensioni della finestra: La dimensione di questo campo è di 16 bit. Questo campo contiene il conteggio dell'ottetto di dati che inizia con quello che viene visualizzato nel campo del numero di riconoscimento e il mittente è in attesa di ricevere.
- Checksum: Anche questa ha una dimensione di 16 bit. Il checksum viene calcolato per tutti gli ottetti di dati di interi segmenti di dati. Viene valutato come complemento a uno e di nuovo come complemento a uno dell'output e quindi sia l'output che l'output vengono aggiunti all'attuale intestazione a 16 bit e ai dati di testo dell'ottetto. Il risultato viene trasmesso anche al livello superiore successivo per le correzioni.
- Puntatore urgente: Questo campo ha una dimensione di 16 bit. Se è impostato il flag URG, solo allora viene calcolato questo campo. Indica il numero di sequenza dell'ottetto di dati dopo i dati urgenti.
- Opzioni: Questo è un campo variabile. Questo può essere impostato all'inizio di qualsiasi bordo dell'ottetto.
Intestazione UDP
L'intestazione UDP ha solo 4 campi rispetto all'intestazione TCP ed è anche molto facile da capire rispetto all'intestazione TCP.
- Porta di origine: Si tratta di 16 bit di lunghezza. Contiene il valore della porta sorgente utilizzata dall'estremità sorgente per trasferire il pacchetto di dati. L'intervallo è compreso tra 0 e 65535.
- Porto di destinazione: La dimensione di questo campo è di 16 bit. Contiene il numero di porta che l'host di destinazione si aspetta per ricevere i dati.
- Lunghezza: Questa dimensione del campo è di 16 bit. Consiste nella dimensione della lunghezza del datagramma, dell'intestazione e dei dati dell'utente.
- Checksum: Anche questo ha una dimensione di 16 bit, ma questo è un campo opzionale. Viene utilizzato per il calcolo degli errori nel datagramma. Se è impostato su zero, il checksum non viene calcolato e se è impostato su uno verrà calcolato.
(Immagine fonte )
Funzioni eseguite da TCP
(i) Indirizzamento e multiplexing:
Le porte TCP vengono utilizzate per indirizzare i vari processi della rete per le applicazioni di livello superiore. Ciò multiplexa anche i dati raccolti da varie procedure e quindi trasmette il pacchetto di dati in associazione con il livello di accesso alla rete.
(ii) Per stabilire, sostenere e terminare le connessioni:
In questo protocollo, vengono seguite diverse serie di processi e regole per impostare una connessione tra l'origine e l'estremità di destinazione. Esistono protocolli e metodi di handshake e vengono utilizzati per mantenere e riconoscere il processo di comunicazione in corso.
Alla fine, vengono seguite anche alcune regole per terminare la connessione una volta terminata la comunicazione tra l'origine e l'estremità di destinazione.
(iii) Imballaggio dei dati:
Prima di inoltrare i pacchetti di dati a un livello superiore per la comunicazione, il TCP provvede innanzitutto alla procedura per impacchettare i dati in formato messaggio per la trasmissione e quindi consegnarli alla destinazione finale.
Alla fine della destinazione, il ricevitore decodifica e decomprime i dati e li inoltra nuovamente alle applicazioni del livello superiore.
(iv) Modalità di comunicazione affidabile e QoS elevato:
Offre una modalità affidabile per la comunicazione tra un mittente e un destinatario e garantisce anche un'elevata qualità del servizio.
quale dei seguenti fornisce un programma remoto che assomiglia a un'applicazione locale?
I meccanismi utilizzati da TCP per il trasferimento dei dati seguono la serie di regole che garantiscono la consegna affidabile dei dati e offrono anche la ritrasmissione di dati persi o fuori sequenza. I diversi protocolli di handshake vengono utilizzati per garantire una comunicazione affidabile.
Funzioni eseguite da UDP
(i) Trasferimento di dati di livello superiore: Il protocollo UDP riceve i dati da trasferire dal livello superiore e quindi li converte in messaggi UDP e quindi li trasferisce al software UDP per la comunicazione.
(ii) Incapsulamento del messaggio UDP: Il messaggio UDP è incapsulato nel campo dati. L'intestazione UDP è composta dalla porta di origine e dai domini della porta di destinazione e calcola anche il valore di checksum.
(iii) Messaggio trasferito al livello successivo: Dopo il calcolo dei campi sopra, il messaggio UDP viene inoltrato a IP per la comunicazione. Alla fine della destinazione, il processo viene annullato.
Applicazioni di TCP
- Il TCP viene utilizzato in FTP (File transfer protocol) per la condivisione e l'invio di file di big data in modo sicuro all'interno dell'organizzazione tra gli host che si trovano lontano.
- Il processo di posta elettronica che utilizza il protocollo SMTP (Simple mail transfer protocol) utilizza anche il protocollo TCP per l'invio di posta elettronica e file di dati tra i vari host all'interno e all'esterno dell'organizzazione.
- POP utilizza anche TCP per il recupero o il download dei messaggi di posta elettronica.
- Il protocollo TELNET utilizza anche TCP per il login e l'accesso sicuro all'host situato all'estremità remota o remota.
- Il protocollo Border gateway (BGP) funziona anche su TCP per offrire una modalità di comunicazione affidabile sulle reti WAN.
- I servizi militari utilizzano il TCP per lo scambio di dati e informazioni altamente riservati all'interno delle loro opere Internet.
Applicazioni di UDP
- Streaming di video, streaming audio, ecc. Dove solo la velocità dei dati è importante e il recupero dei dati persi non è curato.
- Riproduzione di video e giochi grafici in linea.
- UDP viene utilizzato anche nei processi di tunneling e nelle reti VPN in cui i dati persi possono essere recuperati in seguito.
- UDP viene utilizzato anche per scopi di trasmissione per la rete LAN.
- Guardare la TV in tempo reale sui telefoni cellulari è l'ultimo uso popolare di UDP, noto anche come IPTV.
Conclusione
Abbiamo esplorato la differenza tra il protocollo TCP vs UDP con l'aiuto di figure e grafico di confronto tabellare. Da un lato, TCP è un protocollo orientato alla connessione e fornisce la comunicazione affidabile con varie caratteristiche.
D'altra parte, l'UDP è un protocollo di trasporto in tempo reale senza connessione molto semplice che offre un processo di comunicazione veloce rispetto al TCP ma è inaffidabile in quanto non è supportato da alcun processo di riconoscimento della ricezione e dell'invio dei dati.
Tuttavia, entrambi sono importanti e hanno un significato a loro modo.
=> Dai un'occhiata alla guida alle nozioni di base sulla rete di computer qui.
Lettura consigliata
- Modello TCP / IP con diversi livelli
- Tutorial sul data mart - Tipi, esempi e implementazione del data mart
- Tutorial sui Big Data per principianti | Cosa sono i big data?
- Differenza tra desktop, test server client e test Web
- Modello di dati dimensionale nel data warehouse - Tutorial con esempi
- Come eseguire test basati sui dati in SoapUI Pro - SoapUI Tutorial n. 14
- Che cos'è un data lake | Data Warehouse vs Data Lake
- Data mining: processo, tecniche e problemi principali nell'analisi dei dati