Modello ISO/OSI Un metodo di studio Vallì Rossella Carando 2006 SIS.

Slides:



Advertisements
Presentazioni simili
Livello 1 - fisico linsieme dei dispositivi per il collegamento dei vari sistemi (cavi, modem, apparecchiature di tx e rx)linsieme dei dispositivi per.
Advertisements

Il livello di trasporto
Architettura di rete Le reti sono sempre organizzate a livelli
E.Mumolo. DEEI Reti di calcolatore e Applicazioni Telematiche – Livello Dati Lezioni di supporto al corso teledidattico E.Mumolo. DEEI.
1 Reti di Calcolatori Esercitazione 5 Implementazione del TFTP tramite RPC Copyright © by D. Romagnoli & C. Salati Alma Mater Studiorum - Universita'
I modelli di riferimento OSI e TCP/IP
La rete in dettaglio: rete esterna (edge): applicazioni e host
Moving Moving Young Young Turin Turin Hydrogen Hydrogen Olympic Olympic Safe RETE MANET informazioni in movimento.
Esercizio 1 Si consideri un canale via satellite della capacità di 2 Mb/s. Considerando che il tempo di propagazione attraverso un satellite geostazionario.
La rete del futuro nellautonomia scolastica Sezione propedeutica I fondamentali e concetti di TCP/IP.
Esercizio 1 Si consideri un canale via satellite della capacità di 2 Mb/s. Considerando che il tempo di propagazione attraverso un satellite geostazionario.
Esercizio 1 Il collegamento fra due punti, A e B, è effettuato con il protocollo Go Back N con piggybacking in modalità full-duplex. I pacchetti trasmessi.
Esercizio 1 Due collegamenti in cascata, AB e BC hanno una velocità rispettivamente di 100 Mb/s e 50 Mb/s e tempi di propagazione pari a 1 ms e 1.2 ms.
ESEMPI DI PRIMITIVE.
Architettura FDDI (Parte Prima).
Trasporto affidabile (principi) Di fondamentale importanza negli strati applicativi, di trasporto e di collegamento! Le caratteristiche del canale determinano.
Il livello di trasporto
TCP Transmission Control Protocol. Programmazione II: Programmazione su Reti -- Prof. G. Persiano 2 TCP TCP fornisce un servizio di connessione –orientato.
Reti di Calcolatori MODELLI ISO/OSI e TCP/IP.
IL MODEM Che cos’è? A cosa serve? Che problemi risolve? Come comunica?
1 Esercizio 1 Un router riceve da un collegamento A lungo 10 km a 100 Mb/s e instrada i pacchetti ricevuti, lunghi 1000 bit verso una linea duscita B a.
Realizzato da Roberto Savino 3-1 Il livello di trasporto r Dobbiamo assumere di avere a che fare con un canale di comunicazione molto particolare 1. Inaffidabile.
Modulo 2 – U.D. 1 – Lez. 2 Ernesto Damiani – Sistemi di elaborazione dell'informazione.
L' ARCHITETTURA DI VON NEUMANN
LE RETI INFORMATICHE 1. Introduzione alle reti 2. Topologia della rete
Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Esercizi.
Il modello di riferimento OSI
1 Applicazione di videoconferenza in ambiente Multicast con supporto per il protocollo di controllo di congestione RLC Giansalvo Gusinu Relatori: Prof.
Modulo 2 - U.D. 3 - L.4 Ernesto Damiani - Sistemi di eleborazione dell'informazione.
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
Calcolo timeout Modulo 2 - U.D. 5 - Lez. 6
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Efficienza e controllo derrore. Introduzione Come abbiamo visto il controllo derrore, necessario per ottenere un trasporto affidabile, si basa su: somme.
Modulo 2 – U.D. 4 – Lez. 5 (parte I)
L’architettura a strati
L O STACK TCP/IP. LAN LAN è un sistema di comunicazione che permette ad apparecchiature indipendenti di comunicare tra loro, entro un’area limitata, utilizzando.
____Rete di computer____
RETI DI CALCOLATORI Domande di riepilogo Prima Esercitazione.
TESINA DI SISTEMI.
Livello di trasporto Protocolli TCP e UDP.
1 Sistemi e Tecnologie della Comunicazione Lezione 22: transport layer: introduzione, funzionalita’
1 Sistemi e Tecnologie della Comunicazione Lezione 13: data link layer: protocolli go-back-n e selective reject; esempi: HDLC, PPP.
Complementi sul controllo d’errore (parte III). Selective Repeat (richiesta esplicita) Come nello schema Idle RQ, per velocizzare la ritrasmissione di.
UNIVERSITA’ DEGLI STUDI DI ROMA “TOR VERGATA”
Modulo 2 - U.D. 5 - L.3 (parte II)
Complementi sul controllo d’errore (parte I). Introduzione Lo schema di gestione d’errore Idle RQ garantisce che i pacchetti: – arrivino non corrotti.
Flusso e congestione TCP
Flusso TCP (parte II). Trasferimento di grandi quantità di dati (1) Spesso il mittente deve inviare grandi quantità di dati. Genera un numero elevato.
Fast Retransmit. Fast Retransmit (1) Altri indizi di perdite oltre il timeout: possiamo interpretare il verificarsi di sequenze di 4 ACK per lo stesso.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 6 -User Datagram Protocol Ernesto Damiani Lezione 1 – UDP.
Sistemi di elaborazione dell’informazione Modulo 1 - Tecniche di comunicazione digitale Unità didattica 3 - Modelli astratti di protocolli Ernesto Damiani.
Prof. ing. Paolo Bidello AA 2005/2006 Laboratorio Informatico Promemoria degli argomenti: Reti locali (LAN)
Reti di calcolatori Modulo 2 -Protocolli di rete TCP/IP Unità didattica 2 – Il protocollo TCP/IP Ernesto Damiani Università degli Studi di Milano - SSRI.
Controllo congestione. Controlli: della congestione e di flusso Problema Controllo della congestione Evitare che più mittenti inseriscano troppi dati.
Controllo di flusso TCP. Elementi base del flusso TCP (1) Comunicazione punto-punto Un mittente, un destinatario. Flusso di byte affidabile Flusso suddiviso.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 6 -User Datagram Protocol Ernesto Damiani Lezione 2 – UDP.
Strato di accesso alla rete (network access layer); comprende le funzioni che nel modello OSI sono comprese negli strati fisico, di collegamento e parte.
Sistemi e Tecnologie della Comunicazione
Sistemi e Tecnologie della Comunicazione
Sistemi e Tecnologie della Comunicazione Lezione 2: architettura delle reti e modello OSI.
1 Sistemi e Tecnologie della Comunicazione Lezione 12: data link layer: controllo di flusso, protocolli stop-and-wait e sliding window.
LORENZO PARISI CLASSE V LSA GARDASCUOLA AS Computer networks.
La comunicazione attraverso la rete
1 Sistemi e Tecnologie della Comunicazione Lezione 13: data link layer: protocolli go-back-n e selective reject; esempi: HDLC, PPP.
Applicazione Presentazione Sessione Trasporto Rete Data link Fisico OSI Processo / Applicazione Trasporto Rete- Internet Interfaccia di.
Università degli Studi di Napoli “Federico II” Facoltà di Scienze MM. FF. NN. – Sez. Informatica Sistemi per l’Elaborazione dell’Informazione: RETI a.a.
Implementazioni di un analizzatore di protocollo Esistono quattro fondamentali tradeoff per la realizzazione di un analizzatore di protocollo:  Analisi.
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
Sezione propedeutica I fondamentali e concetti di TCP/IP.
FACOLTA’ DI SCIENZE MM. FF. NN. - Corso di laurea magistrale in Informatica – corso di RETI DI CALCOLATORI A.A RETI DI CALCOLATORI Il livello.
Transcript della presentazione:

Modello ISO/OSI Un metodo di studio Vallì Rossella Carando 2006 SIS

Livello data link Compiti: Framing Framing Accesso al mezzo trasmissivo (MAC) Accesso al mezzo trasmissivo (MAC) Controllo errori Controllo errori Controllo del flusso Controllo del flusso pdu: frame

rete Compiti: Determinazione percorso nella sottorete Determinazione percorso nella sottorete Indirizzamento (compatibilità) Indirizzamento (compatibilità) Enumerazione pacchetti Enumerazione pacchetti Controllo congestione Controllo congestione pdu:pacchetto

trasporto Compiti: Accetta dati dal livello superiore Accetta dati dal livello superiore Passa al livello rete Passa al livello rete Controllo trasmissione Controllo trasmissione Regolazione del flusso Regolazione del flusso pdu:segmento

sessione Compiti: Permette linstaurarsi delle sessioni Permette linstaurarsi delle sessioni Ad es. trasferimento archivi Ad es. trasferimento archivi Gestione dei token Gestione dei token Sincronizzazione Sincronizzazione Esempio: nel trasferimento di files Pdu: SPDU

presentazione Compiti: Calcolatori differenti hanno formati diversi Calcolatori differenti hanno formati diversi Strutture dati astratte Strutture dati astratte Codifica di dati in un formato riconosciuto Codifica di dati in un formato riconosciuto Pdu: PPDU

Applicazione Compiti: Interfaccia utente Interfaccia utente File transfer File transfer Mail Mail Terminali virtuali remoti Terminali virtuali remoti Pdu: APDU

Data link Rete Trasporto Sessione Applicazione Presentazione Trasporto Sessione Applicazione Presentazione Modello ISO-OSI fisico Data link Rete fisico dl Rete fisico dl Rete fisico

Data Link: il framing Per framing si intende il frazionamento di un insieme di bytes in porzioni adatte al trasporto sulla linea. Per framing si intende il frazionamento di un insieme di bytes in porzioni adatte al trasporto sulla linea. 1.Conteggio caratteri 2.Character stuffing 3.Bit stuffing

Dove lo collochiamo? Sulla scheda di rete Sulla scheda di rete Gira insieme al livello fisico Gira insieme al livello fisico Entrambi possono essere visti come procedure chiamate dal livello network Entrambi possono essere visti come procedure chiamate dal livello network Noi assumiamo che siano processi indipendenti Noi assumiamo che siano processi indipendenti

Caratteristiche Il DL vede il prossimo computer sulla rete Il DL vede il prossimo computer sulla rete

Cosa succede ? Pacchetto da livello reteheader trailer

Relazioni con gli altri livelli….. Rete Data link fisico Rete Data link fisico

Come è fatto un frame? Assumiamo che vi siano i seguenti campi: tiposeqackInformazioni

Funzioni e livelli Il DL comunica attraverso funzioni e strutture dati: al_livello_fisicodal_livello_fisicoal_livello_retedal_livello_rete

Strutture dati Pacchetto ( struttura livello rete) Pacchetto ( struttura livello rete) Frame ( struttura livello data link) Frame ( struttura livello data link) Immagino che siano strutture o record Lo schema del frame è quello già visto

Se arriva un frame… Definiamo una funzione attesa_evento in grado di segnalare larrivo di un frame Definiamo una funzione attesa_evento in grado di segnalare larrivo di un frame attesa_evento

Primo protocollo (heaven) Ipotesi: Ipotesi: unidirezionalità unidirezionalità Livelli sempre pronti Livelli sempre pronti Tempo di elaborazione 0 Tempo di elaborazione 0 Canale perfetto senza errori Canale perfetto senza errori

Heaven trasmettitore while (true){ dal_livello_rete(pacchetto);frame.info=pacchetto;al_livello_fisico(frame);}Ricevitore attesa_evento;dal_livello_fisico(frame);pacchetto=frame.info;al_livello_rete(pacchetto);}

Irrealizzabile, perché? Si dà per certa una velocità di elaborazione molto bassa (tendente a 0) Si dà per certa una velocità di elaborazione molto bassa (tendente a 0) I buffer non sono mai pieni I buffer non sono mai pieni Non ci sono errori Non ci sono errori Lesempio che segue (stop and wait) cerca di essere più realistico …

stop and wait trasmettitore while (true){ dal_livello_rete(pacchetto);frame.info=pacchetto;al_livello_fisico(frame);aspetta_evento(ack);}Ricevitore attesa_evento();dal_livello_fisico(frame);pacchetto=frame.info;al_livello_rete(pacchetto);al_livello_fisico(ack);}

Irrealizzabile, perché? Si dà per certa il fatto che i frame arrivino sempre giusti Si dà per certa il fatto che i frame arrivino sempre giusti E se usassimo un timer? Si potrebbe pensare di inviare un riscontro ogni volta che arriva un frame corretto. Se il trasmettitore non riceve nulla, dopo un certo tempo rispedisce.

ma anche questo non funzionerebbe…. E se si perde il frame di ack? E se si perde il frame di ack? In assenza di numerazione dei frame verrebbe rispedito lo stesso frame spedito prima, creando una duplicazione dannosa……. Infatti non abbiamo uno strumento per avvertire il livello rete che una cosa è già arrivata!

Per esempio ….. Rimando un frame perché è andato perso ack! Risultato: frame duplicato

stop and wait per canale disturbato Inserisco un numero di sequenza e un timer Se il ricevitore riceve il frame atteso manda l ack, il trasmettitore spedisce il prossimo Se non arriva l ack il trasmettitore rispedisce

stop and wait per canale disturbato trasmettitoreNum_seq=0;dal_livello_rete(pacchetto); while (true){ frame.info=pacchetto;Frame.seq=Num_seq;al_livello_fisico(frame);Inizio_timer;aspetta_evento(ack); Se (evento==arrivo_ack) { dal_livello_rete(pacchetto);Pacchetto=frame.info; Al_livello_rete (pacchetto); }}

stop and wait per canale disturbato ricevitoreNum_seq=0; while (true){ aspetta_evento(arrivo_frame); Se (evento==arrivo_frame) { dal_livello_fisico(frame); Se (frame. Seq==num_seq) Al_livello_rete(frame.info);Num_seq++; } }

criticità I protocolli precedenti presentavano criticità I protocolli precedenti presentavano criticità Unidirezionali Unidirezionali Se usiamo un collegamento full duplex uno dei due canali porta solo ack (è quindi sprecato) Se usiamo un collegamento full duplex uno dei due canali porta solo ack (è quindi sprecato) Invece, usando un canale solo in half duplex

Il piggybacking Significa letteralmente viaggiare a scrocco Significa letteralmente viaggiare a scrocco Invece di mandare lACK separato.. Invece di mandare lACK separato.. Si attende che il ricevente debba inviare un frame Si attende che il ricevente debba inviare un frame Si appende lack al frame risparmiando Si appende lack al frame risparmiando ack

problemi Cè un timeout per inviare lACK? Cè un timeout per inviare lACK? Si, se non cè necessità impellente di inviare un frame di risposta si manda lack separatamente Se il timer scatta troppo presto cosa succede? Se il timer scatta troppo presto cosa succede? Viene rispedito il frame, con ovvio dispendio di banda

Riassumendo su un canale unico…. A B dati da A a B ack da A a B dati da B ad A ack da B ad A

Sliding windows Letteralmente finestre scorrevoli Letteralmente finestre scorrevoli Ack contiene il numero dellultimo frame ricevuto senza errori Ack contiene il numero dellultimo frame ricevuto senza errori Gli stop and wait per canale disturbato hanno finestra 1 Gli stop and wait per canale disturbato hanno finestra 1

In cosa consiste: parte mittente Ogni frame spedito contiene un numero progressivo (0-2 n-1 ) Il campo dedicato ad ack è grande n bit Mittente ha una finestra in cui mantiene la sequenza dei frame che può trasmettere finestra vi sono gli indici, in un buffer i frame

Inoltre… Se arriva un ack (numerato) viene tolto lindice corrispondente dalla finestra Se arriva un ack (numerato) viene tolto lindice corrispondente dalla finestra Se dal livello network arriva un nuovo pacchetto Se dal livello network arriva un nuovo pacchetto si fa avanzare la finestra di una posizione (entra un nuovo indice) Se i buffer sono pieni si ferma il livello network Se i buffer sono pieni si ferma il livello network

Cosa succede parte destinatario Il destinatario mantiene una finestra Il destinatario mantiene una finestra Questa non è necessariamente uguale a quella del mittente Questa non è necessariamente uguale a quella del mittente Se arriva un frame il cui indice è fuori dalla finestra è scartato (non si invia lack) Se arriva un frame il cui indice è fuori dalla finestra è scartato (non si invia lack) Se arriva un frame il cui indice è dentro la finestra è accettato ( si invia lack) Se arriva un frame il cui indice è dentro la finestra è accettato ( si invia lack)

Nella finestra Frame inviati ma non ancora confermati Frame inviati ma non ancora confermati Frame da inviare Frame da inviare

ricevitore Avanza solo se arriva il frame giusto Se arriva un frame il cui indice è fuori dalla finestra è scartato (non si invia lack) Se arriva un frame il cui indice è fuori dalla finestra è scartato (non si invia lack)

E se volessimo ottimizzare? Si mandano più frame in cascata, senza aver ricevuto ack del primo Si mandano più frame in cascata, senza aver ricevuto ack del primo Questo metodo è detto pipelining Questo metodo è detto pipelining Ho due metodi per il controllo: go-back-n Ho due metodi per il controllo: go-back-n e selective repeat

Go-back-n È in effetti un metodo a finestra 1 È in effetti un metodo a finestra 1 Usato per comunicazioni satellitari Usato per comunicazioni satellitari Se arriva un frame danneggiato o fuori sequenza non si manda ack Se arriva un frame danneggiato o fuori sequenza non si manda ack Il mittente va in timeout, quindi ritrasmette a partire dal primo di cui non ha avuto lACK Il mittente va in timeout, quindi ritrasmette a partire dal primo di cui non ha avuto lACK

Selective repeat Il destinatario, invece di scartarli, mantiene i frame successivi a quello non arrivato in un buffer Il destinatario, invece di scartarli, mantiene i frame successivi a quello non arrivato in un buffer Non appena arriva il frame atteso si manda tutto il contenuto del buffer a livello network Non appena arriva il frame atteso si manda tutto il contenuto del buffer a livello network Per ogni frame arrivato bene, viene mandato un ack con il numero più alto ricevuto fino ad allora. Per ogni frame arrivato bene, viene mandato un ack con il numero più alto ricevuto fino ad allora.