Newest Viewed Downloaded

Capitolo 3 Livello di trasporto Reti di calcolatori e Internet: Un approccio top-down 3a edizione Jim Kurose, Keith Ross Pearson Education Italia ©2005 Nota per l’utilizzo: Abbiamo preparato queste slide con l’intenzione di renderle disponibili a tutti (professori, studenti, lettori). Sono in formato PowerPoint in modo che voi possiate aggiungere e cancellare slide (compresa questa) o modificarne il contenuto in base alle vostre esigenze. Come potete facilmente immaginare, da parte nostra

Capitolo 3 Livello di trasporto Reti di calcolatori e Internet: Un approccio top-down 3a edizione Jim Kurose, Keith Ross Pearson Education Italia ©2005 Nota per l’utilizzo: Abbiamo preparato queste slide con l’intenzione di renderle disponibili a tutti (professori, studenti, lettori). Sono in formato PowerPoint in modo che voi possiate aggiungere e cancellare slide (compresa questa) o modificarne il contenuto in base alle vostre esigenze. Come potete facilmente immaginare, da parte nostra abbiamo fatto un sacco di lavoro. In cambio, vi chiediamo solo di rispettare le seguenti condizioni: se utilizzate queste slide (ad esempio, in aula) in una forma sostanzialmente inalterata, fate riferimento alla fonte (dopo tutto, ci piacerebbe che la gente usasse il nostro libro!) se rendete disponibili queste slide in una forma sostanzialmente inalterata su un sito web, indicate che si tratta di un adattamento (o che sono identiche) delle nostre slide, e inserite la nota relativa al copyright. Thanks and enjoy! JFK/KWR All material copyright 1996-2005 J.F Kurose and K.W. Ross, All Rights Reserved

Capitolo 3: Livello di trasporto

Obiettivi: Capire i principi che sono alla base dei servizi del livello di trasporto: multiplexing/demultiplexing trasferimento dati affidabile controllo di flusso controllo di congestione Descrivere i protocolli del livello di trasporto di Internet: UDP: trasporto senza connessione TCP: trasporto orientato alla connessione controllo di congestione TCP

Capitolo 3: Livello di trasporto

3.1 Servizi a livello di trasporto 3.2 Multiplexing e demultiplexing 3.3 Trasporto senza connessione: UDP 3.4 Principi del trasferimento dati affidabile 3.5 Trasporto orientato alla connessione: TCP struttura dei segmenti trasferimento dati affidabile controllo di flusso gestione della connessione 3.6 Principi sul controllo di congestione 3.7 Controllo di congestione TCP

Servizi e protocolli di trasporto

applicaz. trasporto rete collegam. fisico applicaz. trasporto rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico Trasporto logico punto-punto Forniscono la comunicazione logica tra processi applicativi di host differenti I protocolli di trasporto vengono eseguiti nei sistemi terminali lato invio: scinde i messaggi in segmenti e li passa al livello di rete lato ricezione: riassembla i segmenti in messaggi e li passa al livello di applicazione Più protocolli di trasporto sono a disposizione delle applicazioni Internet: TCP e UDP

Relazione tra livello di trasporto e livello di rete

livello di rete: comunicazione logica tra host livello di trasporto: comunicazione logica tra processi si basa sui servizi del livello di rete Analogia con la posta ordinaria: 12 ragazzi inviano lettere a 12 ragazzi processi = ragazzi messaggi delle applicazioni = lettere nelle buste host = case protocollo di trasporto = Anna e Andrea protocollo del livello di rete = servizio postale

Protocolli del livello di trasporto in Internet

applicaz. trasporto rete collegam. fisico applicaz. trasporto rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico rete collegam. fisico Trasporto logico punto-punto Affidabile, consegne nell’ordine originario (TCP) controllo di congestione controllo di flusso setup della connessione Inaffidabile, consegne senz’ordine: UDP estensione senza fronzoli del servizio di consegna a massimo sforzo Servizi non disponibili: garanzia su ritardi garanzia su ampiezza di banda

Capitolo 3: Livello di trasporto

3.1 Servizi a livello di trasporto 3.2 Multiplexing e demultiplexing 3.3 Trasporto senza connessione: UDP 3.4 Principi del trasferimento dati affidabile 3.5 Trasporto orientato alla connessione: TCP struttura dei segmenti trasferimento dati affidabile controllo di flusso gestione della connessione 3.6 Principi sul controllo di congestione 3.7 Controllo di congestione TCP

Multiplexing/demultiplexing

applicazione trasporto rete collegamento fisico P1 applicazione trasporto rete collegamento fisico applicazione trasporto rete collegamento fisico P2 P3 P4 P1 host 1 host 2 host 3 = processo = socket consegnare i segmenti ricevuti alla socket appropriata Demultiplexing nell’host ricevente: raccogliere i dati da varie socket, incapsularli con l’intestazione (utilizzati poi per il demultiplexing) Multiplexing nell’host mittente:

Come funziona il demultiplexing

N° porta origine N° porta destinazione 32 bit Dati dell’applicazione (messaggio) Altri campi dell’intestazione Struttura del segmento TCP/UDP L’host riceve i datagrammi IP ogni datagramma ha un indirizzo IP di origine e un indirizzo IP di destinazione ogni datagramma trasporta 1 segmento a livello di trasporto ogni segmento ha un numero di porta di origine e un numero di porta di destinazione L’host usa gli indirizzi IP e i numeri di porta per inviare il segmento alla socket appropriata

Demultiplexing senza connessione

Crea le socket con i numeri di porta: DatagramSocket mySocket1 = new DatagramSocket(99111); DatagramSocket mySocket2 = new DatagramSocket(99222); La socket UDP è identificata da 2 parametri: (indirizzo IP di destinazione, numero della porta di destinazione) Quando l’host riceve il segmento UDP: controlla il numero della porta di destinazione nel segmento invia il segmento UDP alla socket con quel numero di porta I datagrammi IP con indirizzi IP di origine e/o numeri di porta di origine differenti vengono inviati alla stessa socket

Demultiplexing senza connessione (continua)

client IP: B P2 client IP: A P1 P1 P3 server IP: C SP: 6428 DP: 9157 SP: 9157 DP: 6428 SP: 6428 DP: 5775 SP: 5775 DP: 6428 SP fornisce “l’indirizzo di ritorno” DatagramSocket serverSocket = new DatagramSocket(6428);

Demultiplexing orientato alla connessione

La socket TCP è identificata da 4 parametri: indirizzo IP di origine numero di porta di origine indirizzo IP di destinazione numero di porta di destinazione L’host ricevente usa i quattro parametri per inviare il segmento alla socket appropriata Un host server può supportare più socket TCP contemporanee: ogni socket è identificata dai suoi 4 parametri I server web hanno socket differenti per ogni connessione client con HTTP non-persistente si avrà una socket differente per ogni richiesta

Demultiplexing orientato alla connessione (continua)

client IP: B P1 client IP: A P1 P2 P4 server IP: C SP: 9157 DP: 80 SP: 9157 DP: 80 P5 P6 P3 D-IP:C S-IP: A D-IP:C S-IP: B SP: 5775 DP: 80 D-IP:C S-IP: B

Demultiplexing orientato alla connessione: thread dei server web

client IP: B P1 client IP: A P1 P2 server IP: C SP: 9157 DP: 80 SP: 9157 DP: 80 P4 P3 D-IP:C S-IP: A D-IP:C S-IP: B SP: 5775 DP: 80 D-IP:C S-IP: B

Capitolo 3: Livello di trasporto

3.1 Servizi a livello di trasporto 3.2 Multiplexing e demultiplexing 3.3 Trasporto senza connessione: UDP 3.4 Principi del trasferimento dati affidabile 3.5 Trasporto orientato alla connessione: TCP struttura dei segmenti trasferimento dati affidabile controllo di flusso gestione della connessione 3.6 Principi sul controllo di congestione 3.7 Controllo di congestione TCP

UDP: User Datagram Protocol [RFC 768]

Protocollo di trasporto “senza fronzoli” Servizio di consegna “a massimo sforzo”, i segmenti UDP possono essere: perduti consegnati fuori sequenza all’applicazione Senza connessione: no handshaking tra mittente e destinatario UDP ogni segmento UDP è gestito indipendentemente dagli altri Perché esiste UDP? Nessuna connessione stabilita (che potrebbe aggiungere un ritardo) Semplice: nessuno stato di connessione nel mittente e destinatario Intestazioni di segmento corte Senza controllo di congestione: UDP può sparare dati a raffica

UDP: altro

32 bit Dati dell’applicazione (messaggio) Struttura del segmento UDP lunghezza checksum Lunghezza in byte del segmento UDP, inclusa l’intestazione N° porta origine N° porta destinazione Utilizzato spesso nelle applicazioni multimediali tollera piccole perdite sensibile alla frequenza Altri impieghi di UDP DNS SNMP Trasferimento affidabile con UDP: aggiungere affidabilità al livello di applicazione Recupero degli errori delle applicazioni!

Checksum UDP

Obiettivo: rilevare gli “errori” (bit alterati) nel segmento trasmesso Mittente: Tratta il contenuto del segmento come una sequenza di interi da 16 bit checksum: somma (complemento a 1) i contenuti del segmento Il mittente pone il valore della checksum nel campo checksum del segmento UDP Ricevente: calcola la checksum del segmento ricevuto controlla se la checksum calcolata è uguale al valore del campo checksum: No - errore rilevato Sì - nessun errore rilevato. Ma potrebbero esserci errori nonostante questo? Altro più avanti …

Esempio di checksum

1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 a capo somma checksum Nota Quando si sommano i numeri, un riporto dal bit più significativo deve essere sommato al risultato Esempio: sommare due interi da 16 bit Kurose and Ross forgot to say anything about wrapping the carry and adding it to low order bit

Capitolo 3: Livello di trasporto

3.1 Servizi a livello di trasporto 3.2 Multiplexing e demultiplexing 3.3 Trasporto senza connessione: UDP 3.4 Principi del trasferimento dati affidabile 3.5 Trasporto orientato alla connessione: TCP struttura dei segmenti trasferimento dati affidabile controllo di flusso gestione della connessione 3.6 Principi sul controllo di congestione 3.7 Controllo di congestione TCP

Showing 1 - 20 of 111 items Details

Name: 
Reti di calcolator...
Author: 
Jim Kurose & Keith Ross
Company: 
N/A
Description: 
Capitolo 3 Livello di trasporto Reti di calcolatori e Internet: Un approccio top-down 3a edizione Jim Kurose, Keith Ross Pearson Education Italia ©2005 Nota per l’utilizzo: Abbiamo preparato queste slide con l’intenzione di renderle disponibili a tutti (professori, studenti, lettori). Sono in formato PowerPoint in modo che voi possiate aggiungere e cancellare slide (compresa questa) o modificarne il contenuto in base alle vostre esigenze. Come potete facilmente immaginare, da parte nostra
Tags: 
ack | rcvpkt | tcp | dati | mittente | connessione | trasporto | controllo
Created: 
10/8/1999 6:08:27 PM
Slides: 
111
Views: 
87
Downloads: 
6
Rating: 
0


> Comment



Share this presentation
|

Comments

Share this presentation:

|
Sitemap