Sei sulla pagina 1di 44

Creata da Piarulli Davide e Oberti Daniele

La Rete di dati e Internet sostengono la rete umana fornendo continuamente una comunicazione affidabile tra le persone - sia a livello locale e in tutto il mondo. Su un unico dispositivo, le persone possono utilizzare pi servizi come e-mail, il web, e instant messaging per inviare messaggi o recuperare le informazioni. Le applicazioni come client di posta elettronica, browser web e client di messaggistica istantanea consentono alle persone di utilizzare i computer e le reti di inviare messaggi e trovare informazioni. I dati di ciascuna di queste applicazioni sono confezionati, trasportati e consegnati al server demone appropriato o l'applicazione sul dispositivo di destinazione. Il livello di trasporto responsabile per il trasferimento endto-end globale dei dati delle applicazioni. In questo capitolo, esaminiamo il ruolo del livello di trasporto e incapsulare i dati delle applicazioni per l'utilizzo da parte del livello di rete. Il livello di trasporto include anche queste funzioni: Consente a pi applicazioni di comunicare attraverso la rete, allo stesso tempo su un singolo dispositivo assicura che, se richiesto, tutti i dati vengano ricevuti in modo affidabile e in ordine con l'applicazione corretta Impiega meccanismi di gestione degli errori Obiettivi di apprendimento

Al termine di questo capitolo, si sar in grado di: Spiegare la necessit per il livello di trasporto. Identificare il ruolo del livello di trasporto in quanto fornisce il trasferimento end-to-end dei dati tra le applicazioni. Descrivere il ruolo di due / IP protocolli di livello di trasporto TCP: TCP e UDP. Spiegare le funzioni chiave del livello di trasporto, tra cui l'affidabilit, la porta di indirizzamento, e la segmentazione. Spiegare come funziona ogni maniglia chiave TCP e UDP. Identificare quando opportuno utilizzare il protocollo TCP o UDP e fornire esempi di applicazioni che utilizzano ogni protocollo

Creata da Piarulli Davide e Oberti Daniele

Il livello di trasporto prevede la segmentazione dei dati e il controllo necessari per riassemblare i pezzi nei vari flussi di comunicazione . Le sue responsabilit principali per ottenere questo risultato sono : -Il tracciamento della comunicazione individuale tra le applicazioni su host di origine e di destinazione -Segmentazione dei dati e la gestione di ogni pezzo -Riassemblare i segmenti in flussi di dati delle applicazioni -Identificare le diverse applicazioni Monitoraggio Conversazioni individuali. Ogni Host pu avere molteplici applicazioni che comunicano attraverso la rete. Ciascuna di queste applicazioni possono comunicare con una o pi applicazioni su host remoti . responsabilit del livello di trasporto di mantenere i molteplici flussi di comunicazione tra queste applicazioni . Dati segmentazione. Come ogni applicazione crea un flusso di dati da inviare a un'applicazione remota , questi dati devono essere preparati per essere inviati attraverso i media in pezzi gestibili . I protocolli di livello di trasporto descrivono i servizi che segmento di questi dati dal livello di applicazione.

Creata da Piarulli Davide e Oberti Daniele

Questo include l' incapsulamento richiesto su ogni pezzo di dati . Ogni pezzo di dati delle applicazioni richiede intestazioni da aggiungere al livello di trasporto per indicare al quale la comunicazione associato. Segmenti rimontaggio Alla ricezione ospite , ogni pezzo di dati pu essere diretto alla domanda appropriata . Inoltre , questi singoli pezzi di dati devono essere ricostruiti in un flusso completo di dati che utile a livello di applicazione. I protocolli a livello di trasporto descrivono il modo in cui il livello di informazioni di intestazione di trasporto viene utilizzato per ricomporre i pezzi di dati in flussi per essere passati al livello di applicazione . Identificare le applicazioni Per passare flussi di dati per le corrette applicazioni , il livello di trasporto deve identificare l' applicazione di destinazione . Per fare questo , il livello di trasporto assegna una domanda un identificatore. I protocolli TCP / IP chiamano questo identificatore di un numero di porta . Ogni processo sofware che deve accedere alla rete viene assegnato un numero di porta univoco in tale host . Questo numero di porta utilizzata nell'intestazione del livello di trasporto per indicare a quale applicazione che parte dei dati associato . Il livello di trasporto il legame tra il livello di applicazione e lo strato inferiore, che sono responsabili della trasmissione di rete . Questo strato accetta dati provenienti da diverse conversazioni e passa fino agli strati pi bassi come pezzi gestibili che possono essere eventualmente multiplexing su i media. Le applicazioni non hanno bisogno di conoscere i dettagli operativi della rete in uso . Le applicazioni generano dati inviati da un'applicazione a un'altra , senza riguardo al tipo di host di destinazione , il tipo di supporto su cui i dati devono viaggiare , il percorso seguito dai dati , la congestione del traffico su un link , o la dimensione della rete . Inoltre , gli strati inferiori non sono consapevoli del fatto che ci sono pi applicazioni invio di dati sulla rete . La loro responsabilit di fornire i dati per il dispositivo appropriato . Il livello di trasporto quindi ordina questi pezzi prima di consegnarli alla domanda appropriata . Dati richiesti Vary Poich le applicazioni differenti hanno esigenze diverse , ci sono pi protocolli di livello di trasporto . Per alcune applicazioni , i segmenti devono arrivare in una sequenza molto specifico per essere elaborato correttamente . In alcuni casi , tutti i dati devono essere ricevuti per qualsiasi di esso per essere di uso . In altri casi , un'applicazione pu tollerare una perdita di dati durante la trasmissione sulla rete . Nelle reti convergenti , applicazioni con diverse esigenze di trasporto possono essere comunicanti sulla stessa rete . I diversi protocolli di livello di trasporto sono diverse norme che consentono ai dispositivi di gestire i requisiti di dati diversi . Alcuni protocolli prevedono solo le funzioni di base per la consegna in modo efficiente i pezzi di dati tra le applicazioni appropriate . Questi tipi di protocolli sono utili per applicazioni in cui dati sono sensibili ai ritardi . Altri protocolli di livello di trasporto descrivono i processi che forniscono funzionalit aggiuntive , come ad esempio garantire la consegna affidabile tra le applicazioni . Mentre queste funzioni aggiuntive forniscono comunicazione pi solido a livello di trasporto tra le applicazioni , hanno un ulteriore sovraccarico e rendere pi grandi esigenze della rete.I diversi protocolli di livello di trasporto sono diverse norme che consentono ai dispositivi di gestire i requisiti di dati diversi .Alcuni protocolli prevedono solo le funzioni di base per la consegna in modo efficiente i pezzi di dati tra le applicazioni appropriate Questi tipi di protocolli sono utili per applicazioni in cui dati sono sensibili ai ritardi . Altri protocolli di livello di trasporto descrivono i processi che forniscono funzionalit aggiuntive , come ad esempio garantire la consegna affidabile tra le applicazioni . Mentre queste funzioni aggiuntive forniscono comunicazione pi solido a livello di trasporto tra le applicazioni , hanno un ulteriore sovraccarico e rendere pi grandi esigenze della rete.

Creata da Piarulli Davide e Oberti Daniele

Separare pi comunicazioni Consideriamo un computer collegato a una rete che deve allo stesso tempo ricevere e inviare e-mail e messaggi istantanei, visualizzare di siti web, e la condurre telefonate VoIP. Ciascuna di queste applicazioni l'invio e la ricezione di dati tramite la rete, allo stesso tempo. Tuttavia, i dati del telefono non sono diretti al browser web, e il testo di un messaggio istantaneo non viene visualizzato in una e-mail. Inoltre, gli utenti richiedono che una pagina di e-mail o web completamente accolto e presentato per le informazioni da considerare utile. Lievi ritardi sono considerati accettabili per garantire che le informazioni complete ricevuto e presentato. Al contrario, a volte mancanti piccole parti di una conversazione telefonica potrebbe essere considerato accettabile. N si pu dedurre l'audio mancante dal contesto della conversazione o chiedere all'altra persona di ripetere quello che hanno detto. Questo considerato preferibile ai ritardi che deriverebbero da chiedere alla rete di gestire e inviare nuovamente i segmenti mancanti. In questo esempio, l'utente - non la rete - gestisce la rispedizione o la sostituzione delle informazioni mancanti.

Creata da Piarulli Davide e Oberti Daniele

Come spiegato in un capitolo precedente , l'invio di alcuni tipi di dati - un video per esempio - attraverso una rete come un flusso completo di comunicazione potrebbe impedire altre comunicazioni verifichi allo stesso tempo . Rende recupero degli errori e la ritrasmissione dei dati danneggiati difficile anche . Dividendo i dati in piccole parti , e l'invio di queste parti dalla sorgente alla destinazione , consente molte comunicazioni diverse da interlacciati ( multiplex ) sulla stessa rete . Segmentazione dei dati , in conformit con i protocolli di livello di trasporto , fornisce i mezzi per inviare e ricevere dati durante l'esecuzione di pi applicazioni contemporaneamente su un computer. Senza segmentazione , una sola applicazione , il video streaming ad esempio , sarebbe in grado di ricevere dati . Non si poteva ricevere e-mail , chat su instant messenger , o visualizzare pagine Web , mentre anche la visualizzazione del video . Al livello di trasporto , ciascuna particolare insieme di pezzi che scorre tra un'applicazione sorgente e un'applicazione di destinazione noto come una conversazione . Per identificare ogni segmento di dati , il livello di trasporto aggiunge al pezzo un'intestazione contenente dati binari . Questa intestazione contiene i campi di bit . Si tratta di valori in questi campi che consentono diversi protocolli di livello trasporto per svolgere diverse funzioni .

Creata da Piarulli Davide e Oberti Daniele

Segmentazione e riassemblaggio - La maggior parte delle reti hanno una limitazione della quantit di dati che possono essere inclusi in un unico PDU. Il livello di trasporto divide i dati dell'applicazione in blocchi di dati che sono una dimensione appropriata. A destinazione, il livello di trasporto riassembla i dati prima di inviarli alla applicazione o servizio di destinazione.Conversazione Multiplexing - Ci possono essere molte applicazioni o servizi in esecuzione su ogni host della rete. Ciascuna di queste applicazioni o servizi assegnato un indirizzo conosciuto come un porto in modo che il livello di trasporto in grado di determinare con quale applicazione o servizio identificato i dati.Oltre a utilizzare le informazioni contenute nelle intestazioni, per le funzioni di base di segmentazione dei dati e rimontaggio, alcuni protocolli a livello di trasporto forniscono: -Conversazioni orientati alla connessione -consegna affidabile -Ricostruzione di dati ordinato -controllo di flusso

Creata da Piarulli Davide e Oberti Daniele

Stabilire una sessione Il livello di trasporto in grado di fornire questo orientamento del collegamento con la creazione di una sessione tra le applicazioni . Queste connessioni preparano le applicazioni per comunicare con l'altro prima che i dati vengano trasmessi. All'interno di queste sessioni , i dati per una comunicazione tra le due applicazioni possono essere gestite da vicino . consegna affidabile Per molte ragioni, possibile per un pezzo di alterazione dei dati , o persi completamente , durante la trasmissione sulla rete . Il livello di trasporto in grado di garantire che tutti i pezzi raggiungano la loro destinazione per avere il dispositivo sorgente di ritrasmettere i dati persi . Stesso ordine di consegna Dato che le reti possono fornire molteplici percorsi che possono avere diversi tempi di trasmissione , i dati possono arrivare nell'ordine sbagliato . Con numerazione e la sequenza dei segmenti , il livello di trasporto pu garantire che questi segmenti vengono riassemblati nell'ordine corretto . controllo di flusso Host di rete dispongono di risorse limitate , come la memoria o la larghezza di banda . Quando livello di trasporto consapevole che queste risorse sono sovraccaricati , alcuni protocolli possono richiedere che l'applicazione di invio di ridurre la velocit del flusso di dati . Questo fatto a livello di trasporto regolando la quantit di dati sorgente trasmette come un gruppo . Controllo del flusso pu prevenire la perdita di segmenti sulla rete e di evitare la necessit di una ritrasmissione . Poich i protocolli sono discussi in questo capitolo , questi servizi saranno spiegati in dettaglio .

Creata da Piarulli Davide e Oberti Daniele

Ricordiamo che la funzione primaria del livello di trasporto quello di gestire i dati dell'applicazione per le conversazioni tra host . Tuttavia, le diverse applicazioni hanno esigenze diverse per i loro dati e protocolli di trasporto quindi diversi sono stati sviluppati per soddisfare tali requisiti .Un protocollo di livello di trasporto pu implementare un metodo per assicurare la consegna affidabile dei dati . In termini di networking , affidabilit significa garantire che ogni pezzo di dati che la sorgente invia arriva a destinazione . A livello di trasporto delle tre operazioni di base di affidabilit sono : -monitoraggio dei dati trasmessi -riconoscendo i dati ricevuti -ritrasmettere i dati non riconosciuti Ci richiede i processi del livello di trasporto alla fonte a tenere traccia di tutti i pezzi di dati di ogni conversazione e la ritrasmissione dei dati che non sono stati riconosciuti dalla destinazione . Il livello di trasporto della ricezione ospite deve anche monitorare i dati come ricevuto e confermare la ricezione dei dati . Questi processi di affidabilit pongono un ulteriore sovraccarico sulle risorse di rete a causa del riconoscimento , il monitoraggio , e la ritrasmissione . A sostegno di queste operazioni di affidabilit , pi dati di controllo vengono scambiati tra l'invio e la ricezione di host . Questa informazione contenuta nel controllo del layer 4 .Questo crea un compromesso tra il valore di affidabilit e l'onere pone sulla rete . Gli sviluppatori di applicazioni devono scegliere quale tipo di protocollo di trasporto adatto in base alle esigenze delle loro applicazioni .

Creata da Piarulli Davide e Oberti Daniele


A livello di trasporto , ci sono protocolli che specificano i metodi per entrambi affidabili , garanzia di consegna o consegna best-effort . Nel contesto della rete , consegna di massimo sforzo viene indicato come inaffidabile, perch non c' riconoscimento che i dati sono ricevuti a destinazione. Determinare la necessit di affidabilit Le applicazioni , come i database , pagine web e e-mail, richiedono che tutti i dati inviati arrivano a destinazione nella sua condizione originale , in modo che i dati siano utili . Eventuali dati mancanti potrebbero causare una comunicazione corrotto che incompleta o illeggibile . Pertanto , queste applicazioni sono progettati per utilizzare un protocollo di livello di trasporto che implementa l'affidabilit. L'overhead di rete aggiuntivo considerato per essere richiesto per queste applicazioni. Altre applicazioni sono pi tolleranti della perdita di piccole quantit di dati . Per esempio , se uno o due segmenti di un flusso video non giungono , sarebbe solo creare una interruzione momentanea nel flusso . Questo pu apparire come distorsione nell'immagine ma pu anche non essere evidente per l'utente. Aumentare il carico di assicurare affidabilit per questa applicazione potrebbe ridurre l' utilit dell'applicazione . L'immagine di un video in streaming sarebbe notevolmente degradato se il dispositivo di destinazione ha dovuto spiegare la perdita di dati e di ritardare il flusso durante l'attesa per il suo arrivo . E 'meglio per rendere la migliore immagine possibile , al momento , con i segmenti che arrivano e rinunciare all'affidabilit . Se richiesta affidabilit per qualche motivo , queste applicazioni possono fornire controllo di errore e richieste di ritrasmissione .

Creata da Piarulli Davide e Oberti Daniele

I due protocolli di livello di trasporto pi comuni della suite di protocolli TCP / IP sono ( TCP ) Transmission Control Protocol e User Datagram Protocol ( UDP ) . Entrambi i protocolli di gestire la comunicazione di applicazioni multiple . Le differenze tra i due sono le funzioni specifiche che ogni protocollo implementa. User Datagram Protocol ( UDP ) UDP un semplice protocollo senza connessione , descritto in RFC 768 . Ha il vantaggio di fornire i dati per la consegna basso overhead . I pezzi di comunicazione in UDP sono chiamati datagrammi . Questi datagrammi vengono inviati come "best effort " di questo protocollo a livello di trasporto . Le applicazioni che utilizzano UDP sono: -Domain Name System ( DNS ) -Video Streaming -Voice over IP ( VoIP ) Transmission Control Protocol ( TCP ) TCP un protocollo orientato alla connessione , descritto nella RFC 793 . TCP comporta un ulteriore sovraccarico per ottenere funzioni . Funzioni supplementari specificati dal TCP sono la stessa consegna ordine , consegna affidabile , e il controllo di flusso .

Ogni segmento TCP dispone di 20 byte di overhead nell'intestazione incapsulare i dati a livello applicativo , mentre ogni segmento UDP ha solo 8 byte di overhead . Vedere la figura per un confronto . Le applicazioni che utilizzano TCP sono: -Browser Web -E-mail -Trasferimenti di file

10

Creata da Piarulli Davide e Oberti Daniele

Identificare le Conversazioni Si consideri l' esempio precedente di un computer contemporaneamente ricevere e inviare e-mail , messaggi istantanei , pagine web , e di una telefonata VoIP . Il TCP e servizi basati su UDP tenere traccia delle varie applicazioni che stanno comunicando . Per differenziare i segmenti e datagrammi per ogni applicazione , sia TCP e UDP hanno intestazione campi che possono identificare in modo univoco queste applicazioni . Questi identificatori unici sono i numeri di porta . Nell'intestazione di ciascun segmento o datagramma , c' una porta sorgente e destinazione . Il numero di porta di origine il numero di questa comunicazione associata all'applicazione di origine sull'host locale . Il numero di porta di destinazione il numero di questa comunicazione associata all'applicazione di destinazione sulla macchina remota . I numeri di porta sono assegnati in vari modi , a seconda se il messaggio una richiesta o una risposta . Mentre i processi server hanno numeri di porta statici loro assegnati , i clienti scegliere dinamicamente un numero di porta per ogni conversazione . Quando un'applicazione client invia una richiesta a un'applicazione server, la porta di destinazione contenuta nell'intestazione il numero di porta che viene assegnato al daemon servizio in esecuzione sulla macchina remota. Il software client deve sapere quale numero di porta associato con il processo server sulla macchina remota. Questo numero di porta di destinazione configurata, per impostazione predefinita o manualmente. Ad esempio, quando un browser web fa una richiesta a un server web, il browser utilizza il protocollo TCP e la porta numero 80, se non diversamente specificato. Questo perch la porta TCP 80 la porta di default assegnata alle applicazioni web-serving. Molte applicazioni comuni hanno assegnazioni delle porte predefinite.

La porta di origine in un segmento o datagramma di richiesta di un client viene generato in modo casuale da numeri di porta maggiore di 1023. Fino a quando non entri in conflitto con le altre porte in uso sul sistema, il cliente pu scegliere qualsiasi numero di porta dalla gamma di numeri di porta predefiniti utilizzati dal 11 sistema operativo. Questo numero di porta si comporta come un indirizzo di ritorno per l'applicazione richiesta.

Creata da Piarulli Davide e Oberti Daniele

Il livello di trasporto tiene traccia di questa porta e l'applicazione che ha avviato la richiesta in modo che quando viene restituita una risposta, pu essere trasmesso alla corretta applicazione. Il numero di porta all'applicazione richiedente viene utilizzato come numero di porta di destinazione nella risposta proveniente dal server.

12

Creata da Piarulli Davide e Oberti Daniele

L' Internet Assigned Numbers Authority ( IANA ) assegna numeri di porta . IANA un organismo di normalizzazione che responsabile per l'assegnazione dei vari standard di indirizzamento . Ci sono diversi tipi di numeri di porta : Porte conosciute (Numeri 0-1023 ) - Questi numeri sono riservati per servizi e applicazioni . Essi sono comunemente utilizzati per applicazioni come HTTP (server web ) POP3/SMTP (server e-mail) e Telnet . Con la definizione di queste porte ben conosciute per le applicazioni server , applicazioni client possono essere programmati per richiedere una connessione a quel determinato porto e il suo servizio associato . Porte registrati ( Numeri 1.024-49.151 ) - I numeri di porta sono assegnati ai processi utente o applicazioni . Questi processi sono principalmente singole applicazioni che un utente ha scelto di installare piuttosto che le applicazioni pi comuni che riceverebbero una porta nota . Quando non utilizzato per un risorsa di server , queste porte possono essere utilizzate anche selezionata dinamicamente da un client come porta di origine . Porte dinamiche o private ( Numeri 49.152-65.535 ) - Conosciuto anche come effimere porte , queste sono di solito assegnati dinamicamente alle applicazioni client quando si inizia una connessione. Non molto comune per un client per connettersi a un servizio utilizzando una porta dinamica o privato ( anche se alcuni programmi di file sharing peer- topeer fanno) . Utilizzando sia TCP e UDP Alcune applicazioni possono usare sia TCP e UDP. Per esempio, il basso overhead di UDP DNS permette di servire molti client richiede molto rapidamente. A volte, tuttavia, l'invio delle informazioni richieste pu richiedere l'affidabilit del protocollo TCP. In questo caso, il numero di porta ben nota 53 utilizzato da entrambi i protocolli con questo servizio.

13

Creata da Piarulli Davide e Oberti Daniele

A volte necessario sapere quali connessioni TCP attive sono aperte e in esecuzione su un host in rete. Netstat un'utilit rete importante che pu essere utilizzato per verificare tali connessioni. Netstat elenca il protocollo in uso, l'indirizzo locale e numero di porta, l'indirizzo esterno e numero di porta, e lo stato della connessione. Connessioni TCP inspiegabili possono rappresentare una grave minaccia per la sicurezza. Questo perch possono indicare che qualcosa o qualcuno collegato all'host locale. Inoltre, le connessioni TCP non necessari possono consumare preziose risorse di sistema in modo da rallentare le prestazioni del padrone di casa. Netstat dovrebbe essere usato per esaminare le connessioni aperte su un host quando appare prestazioni per essere compromessa. Sono disponibili per il comando netstat molte opzioni utili.

14

Creata da Piarulli Davide e Oberti Daniele

In un capitolo precedente stato spiegato come i PDU sono costruiti passando dati da un'applicazione attraverso i vari protocolli per creare una PDU che viene poi trasmesso sul mezzo . Presso l'host di destinazione , questo processo invertito finch i dati possono essere passati fino all'applicazione. Alcune applicazioni trasmettono grandi quantit di dati - in alcuni casi , molti gigabyte . Sarebbe poco pratico per inviare tutti questi dati in un unico grande pezzo . Nessun altro traffico di rete potrebbe essere trasmesso mentre veniva inviato questi dati. Un grande pezzo di dati potrebbe richiedere minuti o addirittura ore per l'invio . Inoltre , se ci fosse qualche errore , l'intero file di dati dovrebbe essere perso o risentirsi . I dispositivi di rete non avrebbero buffer di memoria sufficiente per archiviare questa quantit di dati mentre viene trasmesso o ricevuto . Il limite varia a seconda della tecnologia di rete e specifico supporto fisico siano in uso. Dividendo dati dell'applicazione in pezzi sia assicura che i dati vengono trasmessi entro i limiti dei media e che i dati da applicazioni diverse possono essere multiplati sul supporto .

TCP e UDP Manipolare Segmentazione differenza.


In TCP, ciascuna intestazione segmento contiene un numero di sequenza. Questo numero di sequenza permette le funzioni del livello di trasporto su host di destinazione a rimontare segmenti nell'ordine in cui sono stati trasmessi .

Questo assicura che l'applicazione di destinazione ha i dati in forma esatta del mittente destinato. Anche se i servizi che utilizzano UDP anche monitorare le conversazioni tra le applicazioni, non sono interessati con l'ordine in cui le informazioni sono state trasmesse, o nel mantenere una connessione. Non esiste un numero di sequenza nell'intestazione UDP. UDP un disegno semplice e genera meno overhead di TCP, risultante in un trasferimento pi veloce dei dati. Le informazioni possono arrivare in un ordine diverso da quello che stato trasmesso perch diversi pacchetti possono prendere strade diverse attraverso la rete. Un'applicazione che utilizza UDP deve tollerare il fatto che i dati non possono arrivare nell'ordine in cui sono stati inviati.

15

Creata da Piarulli Davide e Oberti Daniele

In questa attivit, si "guardare dentro" pacchetti per vedere come i numeri DNS e portuali uso HTTP. Fare clic sull'icona Packet Tracer per avviare l'attivit di Packet Tracer.

16

Creata da Piarulli Davide e Oberti Daniele

La distinzione fondamentale tra TCP e UDP l'affidabilit . L'affidabilit di comunicazione TCP viene eseguita utilizzando sessioni orientate alla connessione . Prima di un host utilizzando il protocollo TCP invia i dati a un altro host , il livello di trasporto avvia un processo per creare una connessione con la destinazione . Questo collegamento consente il tracciamento di una sessione , o un flusso di comunicazione tra i padroni di casa . Questo processo assicura che ogni ospite consapevole e preparato per la comunicazione . Una conversazione completa TCP richiede l'istituzione di una sessione tra i padroni di casa in entrambe le direzioni . Dopo una sessione stata stabilita , la destinazione invia riconoscimenti alla fonte per i segmenti che riceve . Questi riconoscimenti costituiscono la base di affidabilit all'interno della sessione TCP. Come sorgente riceve un riconoscimento , si sa che i dati viene ricevuto e pu smettere di monitoraggio che dati . Se la sorgente non riceve un riconoscimento entro un periodo di tempo predeterminato , ritrasmette i dati a destinazione . Parte del overhead aggiuntivo di utilizzare TCP il traffico di rete generato da riconoscimenti e ritrasmissioni . L'istituzione delle sessioni crea in testa sotto forma di segmenti supplementari che vengono scambiati. C' anche overhead aggiuntivo sui singoli host creati dalla necessit di tenere traccia di quali segmenti sono in attesa di riconoscimento e dal

processo di ritrasmissione . Tale affidabilit realizzata avendo i


campi di segmento TCP , ciascuno con una funzione specifica , come mostrato in figura . Questi campi saranno discussi pi avanti in questa

17

Creata da Piarulli Davide e Oberti Daniele

Come discusso nel capitolo precedente , processi applicativi eseguiti su server . Questi processi attendere un client inizia la comunicazione con una richiesta di informazioni o altri servizi . Ogni processo di applicazione in esecuzione sul server configurato per utilizzare un numero di porta , sia per impostazione predefinita o manualmente da un amministratore di sistema . Un singolo server non pu avere due servizi assegnati allo stesso numero di porta entro gli stessi servizi del livello di trasporto . Un host che esegue un'applicazione server web e un domanda di trasferimento file non pu avere sia configurato per utilizzare la stessa porta ( ad esempio , la porta TCP 8080 ) . Quando un'applicazione server attivo assegnato a una porta specifica , tale porta considerato " aperto " sul server . Ci significa che il livello di trasporto accetta ed elabora i segmenti indirizzate a quella porta. Ogni richiesta del client in arrivo indirizzata alla presa corretta accettata ed i dati vengono passati all'applicazione server . Ci possono essere molti porti simultanei aperta su un server , una per ogni applicazione server attivo . E 'comune per un server di fornire pi di un servizio , ad esempio un server web e un server FTP , allo stesso tempo . Un modo per migliorare la sicurezza su un server quello di limitare l' accesso al server solo i porti associati con i servizi e le applicazioni che devono essere accessibili ai richiedenti autorizzati . La figura mostra l'assegnazione tipica delle porte di origine e destinazione nelle operazioni client / server TCP .

18

Creata da Piarulli Davide e Oberti Daniele

Quando due host comunicano utilizzando il protocollo TCP , viene stabilita una connessione prima che i dati possono essere scambiati . Dopo la comunicazione stata completata, le sessioni vengono chiuse e la connessione viene terminata . I meccanismi di collegamento e di sessione consentono funzione di affidabilit del TCP. Vedere la figura per la procedura per stabilire e terminare una connessione TCP . Il padrone di casa tiene traccia di ogni segmento di dati all'interno di una sessione e scambia informazioni su ci che i dati vengono ricevuti da ciascun host utilizzando le informazioni nell'intestazione TCP. Ogni connessione comporta flussi di comunicazione a senso unico , o sessioni di stabilire e terminare il processo TCP tra dispositivi finali . Per stabilire la connessione , i padroni di casa effettuano un three-way handshake . Bit di controllo nell'intestazione TCP indicano lo stato di avanzamento e lo stato della connessione . Il three-way handshake : Stabilisce che il dispositivo di destinazione presente sulla rete Verifica che il dispositivo di destinazione ha un servizio attivo e accetti le richieste sul numero di porta di destinazione che il client di avvio intende utilizzare per la sessione Informa il dispositivo di destinazione che il client di origine intende stabilire una sessione di comunicazione su quel numero di porta

19

Creata da Piarulli Davide e Oberti Daniele


In connessioni TCP, l'host che funge da client avvia la sessione sul server. Per capire come la stretta di mano a tre vie utilizzata nel processo di connessione TCP funziona, importante guardare i vari valori che lo scambio di due padroni di casa. I tre passi nella creazione del collegamento TCP sono: 1. Il client di avvio invia un segmento contenente un valore della sequenza iniziale, che serve come una richiesta al server per iniziare una sessione di comunicazioni. 2. Il server risponde con un segmento contenente un valore di riconoscimento uguale al valore ricevuto sequenza pi 1, pi il proprio valore sequenza di sincronizzazione. Il valore maggiore di uno rispetto al numero di sequenza perch l'ACK sempre previsto il prossimo Byte o Octet. Questo valore riconoscimento consente al cliente di legare la risposta al segmento originale che inviato al server. 3. Avvio client risponde con un valore di riconoscimento uguale al valore di sequenza ricevuto pi uno. Questo completa il processo di creazione della connessione. Nell'intestazione del segmento TCP, ci sono sei campi di 1 bit che contengono informazioni di controllo utilizzato per gestire i processi TCP. Tali campi sono: URG - campo puntatore urgente significativo ACK - campo Riconoscimento significativo

Funzione Push PSH RST - Ripristinare il collegamento SYN - Sincronizza i numeri di sequenza FIN - Niente pi dati dal mittente Questi campi sono indicati come bandiere, perch il valore di uno di questi campi solo 1 bit e, quindi, ha solo due valori: 1 o 0. Quando un valore di bit impostato a 1, indica quali informazioni controllo contenuto nel segmento. Utilizzando un processo in quattro fasi, le bandiere vengono scambiati per terminare una connessione TCP.

20

Creata da Piarulli Davide e Oberti Daniele

Utilizzando le uscite Wireshark , possibile esaminare il funzionamento del 3-way handshake TCP : step 1 Un client TCP inizia il three-way handshake inviando un segmento con il SYN ( Synchronize Sequence Number ) flag di controllo set , indicando un valore iniziale nel campo numero di sequenza nell'intestazione . Questo valore iniziale per il numero di sequenza , noto come il numero di sequenza iniziale ( ISN ) , viene scelto casualmente e viene utilizzato per iniziare a monitorare il flusso di dati dal client al server per questa sessione . L' ISN nell'intestazione di ciascun segmento aumentato di uno per ogni byte di dati inviati dal client al server come la conversazione dati continua . Come mostrato in figura, in uscita da un analizzatore di protocollo mostra il flag di controllo SYN e il numero di sequenza relativo. Il flag di controllo SYN impostato e il numero di sequenza relativo a 0 . Anche se l' analizzatore di protocollo nel grafico indica i valori relativi per i numeri di sequenza e di riconoscimento , i veri valori sono numeri binari a 32 bit. Siamo in grado di determinare i numeri effettivi inviati nelle intestazioni segmento esaminando il riquadro Packet Bytes . Qui potete vedere i quattro byte rappresentati in formato esadecimale .

21

Creata da Piarulli Davide e Oberti Daniele

fase 2 Il server TCP deve riconoscere la ricezione del segmento SYN dal client per stabilire la sessione dal client al server . Per fare ci , il server invia un segmento al client con l'ACK set bandiera che indica che il numero di riconoscimento significativo . Con questo flag impostato nel segmento , il client riconosce questo come un riconoscimento che il server ha ricevuto il SYN dal client TCP . Il valore del campo numero di riconoscimento uguale al numero di sequenza iniziale client pi 1 . Questo stabilisce una sessione dal client al server . Il flag ACK rimane fissato per l' equilibrio della sessione . Ricordiamo che la conversazione tra il client e il server in realt due sessioni unidirezionali : uno dal client al server , e l'altra dal server al client . In questa seconda fase di handshake a tre vie , il server deve avviare la risposta dal server al client . Per avviare questa sessione , il server utilizza il flag SYN nello stesso modo che il cliente ha fatto. Si imposta il flag di controllo SYN nell'intestazione di stabilire una sessione dal server al client . Il flag SYN indica che il valore iniziale del campo numero di sequenza nell'intestazione . Questo valore verr utilizzato per monitorare il flusso di dati in questa sessione dal server al client . Come mostrato nella figura , l'uscita analizzatore di protocollo mostra che i flag di controllo ACK e SYN sono impostati e la sequenza di numeri e conferma relativi sono mostrati .

22

Creata da Piarulli Davide e Oberti Daniele

fase 3 Infine, il client TCP risponde con un segmento contenente un ACK che la risposta al TCP SYN inviato dal server. Non ci sono dati utili in questo segmento. Il valore nel campo numero di riconoscimento contiene uno in pi del numero di sequenza iniziale ricevuto dal server. Una volta che entrambe le sessioni sono stabiliti tra client e server, tutti i segmenti aggiuntivi scambiati in questa comunicazione avranno impostato il flag ACK. Come mostrato nella figura, l'uscita analizzatore di protocollo mostra il flag di controllo ACK e la relativa sequenza ei numeri di riconoscimento sono presenti. La sicurezza pu essere aggiunta alla rete dati da: -Negare l'istituzione di sessioni TCP -Solo permettendo sessioni da stabilire per specifici servizi -Consentendo solo il traffico come una parte di sessioni gi stabilite Questa sicurezza pu essere implementato per tutte le sessioni TCP o solo per le sessioni selezionate.

23

Creata da Piarulli Davide e Oberti Daniele

Per chiudere una connessione, il flag di controllo FIN ( Fine ) nell'intestazione del segmento deve essere impostato. Per terminare ogni senso unico sessione TCP , un due vie handshake viene utilizzato , consiste di un segmento FIN e un segmento ACK . Pertanto , per terminare una singola conversazione supportato da TCP , quattro scambi sono necessari per terminare entrambe le sessioni . Nota : In questa spiegazione , il client e il server termini sono usati in questa descrizione come riferimento per semplicit , ma il processo di terminazione possono essere avviate da due host che completano la sessione: 1 . Quando il client non ha pi dati da inviare nel flusso , invia un segmento con il flag FIN . 2 . Il server invia un ACK accusare ricevuta della FIN per terminare la sessione dal client al server . 3 . Il server invia un FIN al cliente , di interrompere il server per sessione client . 4 . Il client risponde con un ACK a riconoscere la FIN dal server . Quando il lato client della sessione non ha pi dati da trasferire , si imposta il flag FIN nell'intestazione di un segmento . Successivamente, il lato server della connessione invier un normale segmento contenente dati con il ACK flag impostato utilizzando il numero di riconoscimento , confermando che tutti i byte di dati sono stati ricevuti . Quando tutti i segmenti sono stati riconosciuti , la sessione viene chiusa . La sessione nell'altra direzione chiusa con lo stesso processo. Il ricevitore indica che non ci sono pi dati da inviare impostando il flag FIN nell'intestazione di un segmento inviato alla sorgente. Un riconoscimento ritorno conferma che tutti i byte di dati sono stati ricevuti e quella sessione , a sua volta, chiuso. Come mostrato nella figura, la pinna e controllo ACK vengono impostati nell'intestazione segmento, chiudendo cos una sessione HTTP.

anche possibile terminare la connessione da un handshake a tre vie. Quando il client non ha pi dati da inviare, invia un FIN al server. Se il server dispone anche di altri dati da inviare, si pu rispondere sia con la FIN e ACK impostati, combinando due passi in uno. Il client risponde con un ACK. 24

Creata da Piarulli Davide e Oberti Daniele

In questa attivit, si studier il 3-way handshake TCP per lo stabilimento di sessione e il processo di TCP per la terminazione della sessione. Molti protocolli applicativi utilizzano il protocollo TCP, e visualizzare la sessione di stabilimento e dei processi di terminazione con Packet Tracer sar approfondire la vostra comprensione. Fare clic sull'icona Packet Tracer per avviare l'attivit di Packet Tracer.

25

Creata da Piarulli Davide e Oberti Daniele

Resequencing Segmenti di ordine trasmesso Quando i servizi inviano i dati utilizzando il protocollo TCP , i segmenti possono arrivare a destinazione in ordine. Per il messaggio originale per essere compreso dal destinatario , i dati in questi segmenti vengono riassemblati in ordine originale . I numeri di sequenza vengono assegnati nell'intestazione di ciascun pacchetto per raggiungere questo obiettivo . Durante l' installazione della sessione , un numero di sequenza iniziale ( ISN ) impostato . Questo numero di sequenza iniziale rappresenta il valore di partenza per i byte di questa sessione che verranno trasmessi all'applicazione ricevente . Poich i dati vengono trasmessi durante la sessione , il numero di sequenza viene incrementato dal numero di byte che sono stati trasmessi. Questo monitoraggio dei byte di dati consente a ciascun segmento da identificato e riconosciuto in modo univoco . Segmenti mancanti possono essere identificati . Numeri di sequenza di segmenti consentono affidabilit indicando come rimontare e riordinare i segmenti ricevuti , come mostrato in figura . Il processo TCP ricevente inserisce i dati da un segmento in un buffer di ricezione. I segmenti vengono messi in buono stato di numero di sequenza e passati al livello di applicazione quando riassemblati . Tutti i segmenti che arrivano con numeri di sequenza non contigui sono detenute per la successiva elaborazione. Poi, quando i segmenti con i byte mancanti arrivano, questi segmenti vengono elaborati .

26

Creata da Piarulli Davide e Oberti Daniele

Conferma della ricezione dei segmenti Una delle funzioni del TCP fare in modo che ogni segmento raggiunge la sua destinazione . I servizi TCP sull'host di destinazione riconoscono i dati che ha ricevuto per l'applicazione di origine . Il numero di sequenza di intestazione del segmento e il numero di riconoscimento vengono utilizzati insieme per confermare la ricezione dei byte di dati contenuti nei segmenti . Il numero di sequenza il numero relativo di byte che sono stati trasmessi in questa sessione pi 1 ( che il numero del primo byte di dati nel segmento corrente ) . TCP utilizza il numero di riconoscimento in segmenti inviati alla sorgente per indicare il prossimo byte in questa sessione che il ricevitore si aspetta di ricevere . Questo chiamato il riconoscimento di aspettative . La fonte informato che la destinazione ha ricevuto tutti i byte in questo flusso di dati fino a , ma non compresi , il byte indicato dal numero di riconoscimento . L' host mittente dovrebbe inviare un segmento che utilizza un numero di sequenza che uguale al numero di riconoscimento . Ricordate , ogni connessione in realt due sessioni di sola andata . I numeri di sequenza ei numeri di riconoscimento vengono scambiati in entrambe le direzioni . Nell'esempio in figura , l'host sulla sinistra invia i dati all'host sulla destra . Si invia un segmento contenente 10 byte di dati per questa sessione e un numero di sequenza uguale a 1 nell'intestazione . La ricezione ospite sulla destra riceve il segmento a livello 4 e determina che il numero di sequenza 1 e che ha 10 byte di dati. L'host invia quindi un segmento all'host a sinistra per confermare la ricezione di questi dati. In questo segmento, l'ospite imposta il numero di riconoscimento a 11 per indicare che il prossimo byte di dati che si aspetta di ricevere in questa sessione il numero di byte 11. Nota, la Ack. valore nella sorgente di accoglienza rimane 1 per indicare che il segmento parte di una conversazione in corso e il numero nel campo Numero di riconoscimento valido. Quando l'host di invio di sinistra riceve questo riconoscimento, ora pu inviare il segmento successivo contenente i dati per questa sessione a partire dal numero di byte 11.

27

Creata da Piarulli Davide e Oberti Daniele

Guardando a questo esempio, se l'invio di accoglienza ha dovuto attendere una conferma del ricevimento di ogni 10 byte, la rete avrebbe un sacco di spese generali. Per ridurre l'overhead di questi riconoscimenti, segmenti di dati possono essere inviati prima e confermati con un singolo messaggio TCP nella direzione opposta. Questo riconoscimento contiene un numero di riconoscimento in base al numero totale di byte ricevuti nella sessione. Ad esempio, partendo da un numero di sequenza del 2000, se sono state ricevute 10 segmenti di 1000 byte ciascuno, un numero di riconoscimento di 12000 sarebbe tornato alla sorgente. La quantit di dati che una sorgente pu trasmettere prima un avviso deve essere ricevuto viene chiamata la dimensione della finestra. Dimensioni finestra un campo nell'intestazione TCP che consente la gestione dei dati persi e controllo di flusso.

28

Creata da Piarulli Davide e Oberti Daniele

Gestione Perdita di settore Non importa quanto ben progettato una rete , a volte si verificano perdite di dati . Pertanto , TCP fornisce metodi di gestione di queste perdite di segmento . Tra questi un meccanismo di ritrasmettere i segmenti con i dati inconfessata . Un servizio di host di destinazione utilizzando il protocollo TCP solito riconosce solo i dati per i byte di sequenza contigui . Se uno o pi segmenti mancano solo i dati nei segmenti che completano il flusso sono riconosciuti . Ad esempio, se sono stati ricevuti segmenti con numeri di sequenza 1500-3000 e 34003500 , il numero di riconoscimento sarebbe 3001 . Questo perch ci sono segmenti con i numeri di sequenza 3001-3399 che non sono stati ricevuti. Quando TCP all'host di origine non ha ricevuto un riconoscimento , dopo un periodo di tempo predeterminato , esso torner l'ultimo numero di riconoscimento che ha ricevuto e ritrasmettere i dati da quel punto in avanti . Il processo di ritrasmissione non specificato dal RFC , ma lasciata alla particolare implementazione del TCP . Per una tipica implementazione TCP , un host pu trasmettere un segmento , mettere una copia del segmento in una coda di ritrasmissione , e avviare un timer . Quando si riceve la conferma dei dati , il segmento viene eliminato dalla coda . Se il riconoscimento non viene ricevuto prima della scadenza del timer , il segmento viene ritrasmesso . L'animazione dimostra la ritrasmissione dei segmenti perduti. I padroni di casa oggi possono anche impiegare una funzione opzionale chiamato Selective Ringraziamenti. Se entrambi gli host supportano Ringraziamenti selettivi, possibile che la destinazione di riconoscere byte in segmenti discontinui e l'ospite avrebbe solo bisogno di ritrasmettere i dati mancanti.

29

Creata da Piarulli Davide e Oberti Daniele

Il controllo del flusso TCP fornisce anche meccanismi di controllo di flusso . Flusso assist di controllo l'affidabilit della trasmissione TCP regolando la velocit effettiva del flusso di dati tra i due servizi nella sessione . Quando la fonte informato che la quantit specificata di dati in segmenti viene ricevuto , si pu continuare a inviare pi dati per questa sessione. Questo campo Dimensioni Window nell'intestazione TCP specifica la quantit di dati che possono essere trasmessi prima di un riconoscimento deve essere ricevuto . La dimensione iniziale della finestra determinata durante l'avvio della sessione tramite il three-way handshake . Meccanismo di feedback TCP regola la velocit effettiva di trasmissione dei dati alla massima portata che il dispositivo di rete e la destinazione in grado di supportare senza perdita . TCP tenta di gestire la velocit di trasmissione in modo che tutti i dati saranno ricevuti e ritrasmissioni saranno ridotti al minimo . Vedere la figura per una rappresentazione semplificata delle dimensioni della finestra e riconoscimenti . In questo esempio , la dimensione della finestra iniziale di una sessione TCP rappresentato impostato a 3000 byte . Quando il mittente ha trasmesso 3000 byte , attende un riconoscimento di questi byte prima di trasmettere pi segmenti in questa sessione . Una volta che il mittente ha ricevuto questo riconoscimento dal ricevitore , il mittente pu trasmettere ulteriori 3000 byte . Durante il ritardo nel ricevere il riconoscimento, il mittente non sar l'invio di tutti i segmenti aggiuntivi per questa sessione. In periodi in cui la rete congestionata o le risorse della ricezione ospite sono tese, il ritardo pu aumentare. Poich questo ritardo si allunga, la velocit di trasmissione effettiva dei dati per questa sessione diminuisce. Il rallentamento della velocit dei dati aiuta a ridurre il conflitto di risorse.

30

Creata da Piarulli Davide e Oberti Daniele

Riduzione Window Size Un altro modo per controllare il flusso di dati quello di utilizzare formati dinamici finestra . Quando le risorse di rete sono limitate , TCP pu ridurre la dimensione della finestra di esigere che i segmenti ricevuti essere riconosciute pi spesso . Questo fatto rallenta la velocit di trasmissione perch la fonte attende i dati necessari per essere riconosciuto pi frequentemente . L'host TCP ricevente invia il valore dimensione della finestra al TCP mittente per indicare il numero di byte che pronta a ricevere come una parte di questa sessione. Se la destinazione deve rallentare la velocit di comunicazione a causa della memoria buffer limitato , pu inviare un valore di dimensione finestra pi piccola alla fonte nell'ambito di un riconoscimento . Come mostrato nella figura , se un host ricevente ha congestione , pu rispondere all'host invio con un segmento con una dimensione di finestra ridotta . In questa grafica , c'era una perdita di uno dei segmenti . Il ricevitore ha cambiato il campo finestra nell'intestazione TCP dei segmenti di ritorno in questa conversazione dal 3000 fino ai 1500. Questo ha causato al mittente di ridurre la dimensione della finestra di 1500. Dopo periodi di trasmissione senza perdite di dati o risorse limitate , il ricevitore inizier ad aumentare il campo della finestra . Ci riduce il carico sulla rete perch meno riconoscimenti devono essere inviati . Dimensioni della finestra continuer ad aumentare fino a quando c' la perdita di dati , che far s che la dimensione della finestra deve essere diminuita .

Questa dinamica aumentando e diminuendo di dimensione della finestra un processo continuo in TCP, che determina la dimensione ottimale finestra per ogni sessione TCP. Nelle reti ad alta efficienza, le dimensioni delle finestre possono diventare molto grandi, perch i dati non viene perso. Nelle reti in cui l'infrastruttura sottostante viene sottolineato, la dimensione della finestra probabilmente rimarr piccola.

31

Creata da Piarulli Davide e Oberti Daniele

UDP un protocollo semplice che fornisce le funzioni di base del livello di trasporto . Ha una testa molto pi basso di TCP , poich non orientato alla connessione e non fornisce la sofisticata ritrasmissione , sequenziamento , e meccanismi di controllo di flusso . Ci non significa che le applicazioni che utilizzano UDP sono sempre inaffidabili . Significa semplicemente che queste funzioni non sono forniti dal protocollo di livello di trasporto e devono essere attuate altrove , se necessario. Anche se la quantit totale del traffico UDP trovato su una tipica rete spesso relativamente bassa , protocolli di livello applicazione chiave che utilizzano UDP comprendono : -Domain Name System ( DNS) -Simple Network Management Protocol ( SNMP ) -Dynamic Host Configuration Protocol ( DHCP) -Routing Information Protocol ( RIP ) -( TFTP ) Trivial File Transfer Protocol -giochi online Alcune applicazioni , come i giochi online o VoIP , possono tollerare qualche perdita di alcuni dati . Se queste applicazioni TCP utilizzati , possono sperimentare grandi ritardi, nel TCP rileva la perdita di dati e ritrasmette i dati . Questi ritardi sarebbe pi dannoso per l'applicazione di piccole perdite di dati . Alcune applicazioni , quali DNS , semplicemente ripetere la richiesta se non ricevono una risposta , e quindi non hanno bisogno TCP per garantire la consegna dei messaggi. Il basso overhead di UDP rende molto desiderabile per tali applicazioni .

32

Creata da Piarulli Davide e Oberti Daniele

Poich UDP senza connessione , le sessioni non sono stabiliti prima comunicazione avviene come sono con il protocollo TCP . UDP detto di essere basato sulle transazioni . In altre parole , quando un'applicazione ha dati da trasmettere , invia semplicemente i dati . Molte applicazioni che utilizzano UDP inviare piccole quantit di dati che possono essere contenuti in un unico segmento. Tuttavia, alcune applicazioni inviano grandi quantit di dati che devono essere suddivisi in pi segmenti . L' UDP PDU viene indicato come un datagramma , sebbene il segmento termini e datagramma sono talvolta usati in modo intercambiabile per descrivere un PDU livello di trasporto . Quando pi datagrammi vengono inviati a una destinazione , possono prendere strade diverse ed arrivare nell'ordine sbagliato . UDP non tiene traccia dei numeri di sequenza modo TCP fa. UDP non ha modo di riordinare i datagrammi nel loro ordine di trasmissione . Vedere la figura . Pertanto , UDP riassembla semplicemente i dati nell'ordine in cui stato ricevuto e inoltra all'applicazione . Se la sequenza dei dati importante per l'applicazione , l'applicazione dovr individuare la corretta sequenza dei dati e determinare come i dati devono essere elaborati .

33

Creata da Piarulli Davide e Oberti Daniele

Come applicazioni basate su TCP, applicazioni server basate su UDP vengono assegnati i numeri di porta noti o registrato. Quando queste applicazioni o processi in esecuzione, essi accetteranno i dati abbinato con il numero di porta assegnato. Quando UDP riceve un datagramma destinato a una di queste porte, inoltra i dati dell'applicazione per l'applicazione appropriata in base al suo numero di porta.

34

Creata da Piarulli Davide e Oberti Daniele

Come con il protocollo TCP , la comunicazione client / server viene avviato da un'applicazione client che richiede i dati da un processo server . Il processo client UDP seleziona in modo casuale un numero di porta dalla gamma dinamica di numeri di porta e utilizza questa come porta di origine per la conversazione . La porta di destinazione di solito il numero Well Known o Registrati porta assegnata al processo server . Numeri di porta sorgente randomizzati aiutano anche con la sicurezza . Se c' un modello prevedibile per la selezione della porta di destinazione , un intruso pu facilmente simulare l'accesso a un client tenta di connettersi al numero di porta pi probabilit di essere aperto. Poich non vi sono sessioni essere creata con UDP , non appena i dati sono pronti per essere spedito e le porte identificato , UDP pu formare il datagramma e passarlo al livello di rete da affrontare e inviato sulla rete . Resta , una volta che un cliente ha scelto le porte di origine e di destinazione , la stessa coppia di porte viene utilizzato nell'intestazione di tutti i datagrammi oggetto della transazione . Per i dati di ritorno al client dal server , l'origine e numeri di porta di destinazione nell'intestazione del datagramma sono invertiti .

35

Creata da Piarulli Davide e Oberti Daniele

In questa attivit, viene esaminato come DNS utilizza UDP.

Fare clic sull'icona Packet Tracer per avviare l'attivit di Packet Tracer.

36

Creata da Piarulli Davide e Oberti Daniele

In questo laboratorio, si esaminer il netstat (utility statistiche di rete), comando su un computer host, e regolare le opzioni di output netstat per analizzare e comprendere di trasporto TCP / IP status di protocollo di livello.

37

Creata da Piarulli Davide e Oberti Daniele

In questo laboratorio, verr utilizzato Wireshark per catturare e identificare i campi di intestazione TCP e il funzionamento durante una sessione FTP e campi di intestazione UDP e il funzionamento durante una sessione TFTP.

38

Creata da Piarulli Davide e Oberti Daniele

In questo laboratorio, verr utilizzato Wireshark per monitorare e analizzare l'applicazione client (FTP e HTTP) comunicazioni tra un server e il client.

39

Creata da Piarulli Davide e Oberti Daniele

In questa attivit, si utilizzer la modalit di simulazione di Packet Tracer per catturare e analizzare i pacchetti di una richiesta web utilizzando un URL. Fare clic sull'icona Packet Tracer per avviare l'attivit di Packet Tracer.

40

Creata da Piarulli Davide e Oberti Daniele

Il livello di trasporto prevede esigenze di rete dati : -Dividendo dati ricevuti da un'applicazione in segmenti -Aggiunta di una intestazione per identificare e gestire ogni segmento -Utilizzando le informazioni di intestazione di ricomporre i segmenti in dati applicazione -Passando i dati raccolti per la corretta applicazione -UDP e TCP sono protocolli comuni livello di trasporto . Datagrammi UDP e TCP segmenti devono intestazioni prefissate ai dati che includono un numero di porta di origine e il numero di porta di destinazione . Questi numeri di porta permettono ai dati di essere indirizzati alla corretta applicazione in esecuzione sul computer di destinazione . TCP non passa i dati alla rete fino a quando non sa che la destinazione pronto a riceverlo. TCP poi gestisce il flusso di dati e invia nuovamente eventuali segmenti di dati che non sono riconosciuti come essere ricevuto a destinazione . TCP utilizza meccanismi di sincronizzazione , timer e riconoscimenti , e le finestre dinamico per realizzare queste funzionalit affidabili. Tale affidabilit , tuttavia , impone sovraccarico sulla rete in termini di molto pi grandi intestazioni segmento e pi traffico di rete tra la sorgente e la destinazione gestire il trasporto dei dati .

Se i dati applicazione deve essere consegnato attraverso la rete in modo rapido, oppure se la larghezza di banda della rete non in grado di supportare il sovraccarico di messaggi di controllo vengono scambiati tra la sorgente ei sistemi di destinazione, UDP sarebbe preferito protocollo a livello di trasporto dello sviluppatore. Poich UDP non tiene o accusare ricevuta datagrammi a destinazione - passa solo datagrammi ricevuti al livello di applicazione non appena arrivano - e non risente datagrammi persi. Tuttavia, questo non significa necessariamente che la comunicazione stessa inaffidabile; ci possono essere meccanismi dei protocolli e servizi che elaborano datagrammi persi o ritardati se l'applicazione ha questi requisiti livello di applicazione. La scelta del protocollo di livello di trasporto viene effettuata dallo sviluppatore dell'applicazione per soddisfare al meglio le esigenze degli utenti. Gli orsi sviluppatore in mente, per, che gli altri strati giocano tutti un ruolo nelle comunicazioni di rete dati e influenzeranno le sue prestazioni.

41

Creata da Piarulli Davide e Oberti Daniele

In questa attivit, un processo che si verifica ogni volta che si richiede una pagina web su Internet - l'interazione dei DNS, HTTP, UDP e TCP - viene esaminato in profondit. Fare clic sull'icona Packet Tracer per avviare l'attivit di Packet Tracer.

42

Creata da Piarulli Davide e Oberti Daniele

Per saperne di pi Domande per la riflessione Discutere i requisiti di un'applicazione Application Layer che determinano se l'autore selezionato UDP o TCP come protocollo Transport Layer per essere utilizzato. Se un'applicazione di rete necessari i dati da consegnare in modo affidabile, discutere come UDP potrebbe essere utilizzato come protocollo Transport Layer e in quali circostanze questo sarebbe stato utilizzato.

43

Creata da Piarulli Davide e Oberti Daniele

44