Protocolli Internet
Protocollo di controllo della trasmissione (TCP)
TCP è un protocollo orientato alla connessione e offre la consegna di pacchetti end-to-end. Funge da spina dorsale per la connessione e presenta le seguenti caratteristiche chiave:
Il protocollo TCP (Transmission Control Protocol) corrisponde al livello di trasporto del modello OSI.
TCP è un protocollo affidabile e orientato alla connessione.
TCP offre:
Trasferimento dati in streaming.
Reliability.
Controllo efficiente del flusso
Funzionamento full duplex.
Multiplexing.
TCP offre la consegna di pacchetti end-to-end orientata alla connessione.
TCP garantisce l'affidabilità sequenziando i byte con un numero di riconoscimento di inoltro che indica alla destinazione il byte successivo che la sorgente si aspetta di ricevere.
Trasmette i byte non riconosciuti con nel periodo di tempo specificato.
Servizi TCP
TCP offre i seguenti servizi ai processi a livello dell'applicazione:
Stream Delivery Service
Invio e ricezione di buffer
Byte e segmenti
Servizio Full Duplex
Servizio orientato alla connessione
Servizio affidabile
Stream Deliver Service
Il protocollo TCP è orientato al flusso perché consente al processo di invio di inviare dati come flusso di byte e al processo di ricezione di ottenere dati come flusso di byte.
Invio e ricezione di buffer
Potrebbe non essere possibile per il processo di invio e ricezione produrre e ottenere dati alla stessa velocità, pertanto, TCP necessita di buffer per l'archiviazione alle estremità di invio e ricezione.
Byte e segmenti
Il protocollo TCP (Transmission Control Protocol), a livello di trasporto, raggruppa i byte in un pacchetto. Questo pacchetto è chiamato segmento. Prima della trasmissione di questi pacchetti, questi segmenti vengono incapsulati in un datagramma IP.
Servizio Full Duplex
Trasmettere i dati in modalità duplex significa flusso di dati in entrambe le direzioni contemporaneamente.
Servizio orientato alla connessione
TCP offre un servizio orientato alla connessione nel modo seguente:
TCP del processo-1 informa TCP del processo-2 e ottiene la sua approvazione.
TCP del processo - 1 e TCP del processo - 2 e scambiano dati in entrambe le direzioni.
Dopo aver completato lo scambio di dati, quando i buffer su entrambi i lati sono vuoti, i due TCP distruggono i propri buffer.
Servizio affidabile
Per motivi di affidabilità, TCP utilizza un meccanismo di riconoscimento.
Protocollo Internet (IP)
Il protocollo Internet è connectionless e unreliableprotocollo. Non garantisce la corretta trasmissione dei dati.
Per renderlo affidabile, deve essere associato a un protocollo affidabile come TCP a livello di trasporto.
Il protocollo Internet trasmette i dati sotto forma di datagramma come mostrato nel diagramma seguente:
Points to remember:
La lunghezza del datagramma è variabile.
Il datagramma è diviso in due parti: header e data.
La lunghezza dell'intestazione è compresa tra 20 e 60 byte.
L'intestazione contiene le informazioni per l'instradamento e la consegna del pacchetto.
User Datagram Protocol (UDP)
Come l'IP, UDP è un protocollo senza connessione e inaffidabile. Non è necessario stabilire una connessione con l'host per lo scambio di dati. Poiché UDP è un protocollo inaffidabile, non esiste alcun meccanismo per garantire che i dati inviati vengano ricevuti.
UDP trasmette i dati sotto forma di datagramma. Il datagramma UDP è composto da cinque parti come mostrato nel diagramma seguente:
Points to remember:
UDP viene utilizzato dall'applicazione che in genere trasmette piccole quantità di dati contemporaneamente.
UDP fornisce la porta del protocollo utilizzata, ovvero il messaggio UDP contiene sia il numero di porta di origine che quello di destinazione, che consente al software UDP di destinazione di consegnare il messaggio al programma applicativo corretto.
File Transfer Protocol (FTP)
FTP viene utilizzato per copiare file da un host a un altro. FTP offre il meccanismo per lo stesso nel modo seguente:
FTP crea due processi come il processo di controllo e il processo di trasferimento dati su entrambe le estremità, ovvero sul client e sul server.
FTP stabilisce due diverse connessioni: una per il trasferimento dei dati e l'altra per le informazioni di controllo.
Control connection è fatto tra control processes mentre Data Connection è fatto tra
FTP utilizza port 21 per la connessione di controllo e Port 20 per la connessione dati.
Trivial File Transfer Protocol (TFTP)
Trivial File Transfer Protocolviene utilizzato anche per trasferire i file ma trasferisce i file senza autenticazione. A differenza di FTP, TFTP non separa le informazioni di controllo e dati. Poiché non esiste l'autenticazione, TFTP manca di funzionalità di sicurezza, quindi non è consigliabile utilizzare TFTP.
Key points
TFTP utilizza UDP per il trasporto dei dati. Ogni messaggio TFTP viene trasportato in un datagramma UDP separato.
I primi due byte di un messaggio TFTP specificano il tipo di messaggio.
La sessione TFTP viene avviata quando un client TFTP invia una richiesta per caricare o scaricare un file.
La richiesta viene inviata da una porta UDP temporanea al file UDP port 69 di un server TFTP.
Differenza tra FTP e TFTP
SN | Parametro | FTP | TFTP |
---|---|---|---|
1 | Operazione | Trasferimento di file | Trasferimento di file |
2 | Autenticazione | sì | No |
3 | Protocollo | TCP | UDP |
4 | Porti | 21 - Controllo, 20 - Dati | Porta 3214, 69, 4012 |
5 | Controllo e dati | Separato | Separato |
6 | Trasferimento dati | Affidabile | Inaffidabile |
Telnet
Telnet è un protocollo utilizzato per accedere al computer remoto su Internet. Esistono numerosi client Telnet con un'interfaccia utente intuitiva. Il diagramma seguente mostra che una persona ha effettuato l'accesso al computer A e da lì ha effettuato l'accesso remoto al computer B.
Hyper Text Transfer Protocol (HTTP)
HTTP è un protocollo di comunicazione. Definisce il meccanismo per la comunicazione tra il browser e il server web. Viene anche chiamato protocollo di richiesta e risposta perché la comunicazione tra browser e server avviene in coppie di richieste e risposte.
Richiesta HTTP
La richiesta HTTP è composta da righe che contengono:
Riga richiesta
Campi di intestazione
Corpo del messaggio
Key Points
La prima riga, ovvero il file Request line specifica il metodo di richiesta es Get o Post.
La seconda riga specifica l'intestazione che indica il nome di dominio del server da cui viene recuperato index.htm.
Risposta HTTP
Come la richiesta HTTP, anche la risposta HTTP ha una certa struttura. La risposta HTTP contiene:
Riga di stato
Headers
Corpo del messaggio