reti di calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · reti...

32
1 Corso di Laurea in Ingegneria Informatica Reti di Calcolatori A.A. 2010/2011 Reti di Calcolatori Reti di Calcolatori - UNICAL UNICAL 1 Organizzazione del corso CFU: 6 Lezioni: Carlo Mastroianni – ICAR-CNR, Cubo 41c 1° piano Esercitazioni: Raffaele Giordanelli DEIS Cubo 41c 3° piano Reti di Calcolatori Reti di Calcolatori - UNICAL UNICAL 2 Raffaele Giordanelli DEIS, Cubo 41c 3 piano Agostino Forestiero – ICAR-CNR, Cubo 41c 1° piano

Upload: trantruc

Post on 15-Feb-2019

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

1

Corso di Laurea in Ingegneria Informatica

Reti di Calcolatori

A.A. 2010/2011

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 1

Organizzazione del corso

CFU: 6

Lezioni: Carlo Mastroianni – ICAR-CNR, Cubo 41c 1° piano

Esercitazioni: Raffaele Giordanelli – DEIS Cubo 41c 3° piano

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 2

Raffaele Giordanelli DEIS, Cubo 41c 3 piano Agostino Forestiero – ICAR-CNR, Cubo 41c 1° piano

Page 2: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

2

Argomenti delle lezioni (1/2)

Concetti introduttivi: Introduzione alle reti di calcolatori e ad Internet Principi di funzionamento delle reti a pacchetto Modelli client-server e peer-to-peer Architettura a livelli e protocolli Modello ISO/OSI ed architettura TCP/IP

Applicazioni di Internet: Il DNS e l’organizzazione a domini Posta elettronica ed FTP

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 3

Il Web ed HTTP

Protocolli del livello di trasporto I protocolli TCP e UDP Funzionalità di TCP per la fornitura di un servizio affidabile

Argomenti delle lezioni (2/2)

Il protocolli IP Indirizzamento e routing tramite IP Il formato dei pacchetti IP Il formato dei pacchetti IP

Sicurezza nelle reti: Algoritmi di crittografia a chiave privata ed a chiave pubblica Firma digitale e autorità di certificazione, Tipologie di attacchi informatici Firewall

Web services :

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 4

Programmazione su rete tramite Web services Introduzione ai principali standard dei Web services: SOAP, WSDL, UDDI

Applicazioni di rete avanzate: Reti peer-to-peer, Grid e Cloud computing

Page 3: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

3

Argomenti delle esercitazioni

Sviluppo di applicazioni in rete basate su meccanismi di basso Sviluppo di applicazioni in rete basate su meccanismi di basso livello (socket TCP, datagrammi UDP), mediante le librerie del linguaggio Java

Crittografia e firma digitale (sempre con Java)

Sviluppo di applicazioni in rete mediante Web services

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 5

Libro di testo e materiale didattico

Libri di testo (entrambi validi, ma l’ordine degli argomenti è quello del primo testo)

Reti di Calcolatori e Internet – Un approccio top-down”, di J.F.Kurose, K.W.Ross, Addison Wesley, 4a edizione, 2008

Reti di Calcolatori, di Andrew S. Tanenbaum, quarta edizione, Pearson/Prentice Hall, 2003

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 6

Lucidi, esercizi, informazioni su esami:

http://www.icar.cnr.it/mastroianni/reti

Page 4: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

4

Informazioni di base sull’esame

Modalità di svolgimento dell’esame:

Scritto, con esercizi di programmazione in rete, p g Orale (previo superamento dello scritto)

Propedeuticità obbligatoria:

Fondamenti di Informatica

Propedeuticità consigliate (fortemente!):

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 7

Calcolatori elettronici

Programmazione ad Oggetti

Sistemi Operativi (la programmazione in rete richiede familiarità con la programmazione concorrente e l’uso dei thread)

Evoluzione dell’informatica: dai mainframe alle reti

Sistemi centralizzati Sistemi di rete

U R t di C l l t i è i i di l l t i i di d ti d

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 8

Una Rete di Calcolatori è un insieme di calcolatori indipendenti ed interconnessi tra loro che possono scambiarsi informazioni e cooperare

È importante distinguerle dai sistemi multiprocessore – e dagli odierni multicore- in cui le unità di elaborazione non sono completamente indipendenti: ad esempio esse condividono una parte di memoria

Page 5: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

5

Reti di calcolatori: motivi per il loro successo

Condivisione di informazioni e risorse

S ddi i i di i i ( d ll li ) Suddivisione di compiti (modello client-server)

Comunicazione

Affidabilità e Scalabilità

Applicazioni di e-commerce

Business-to-Business

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 9

Business-to-Consumer

Peer-to-Peer

Applicazioni mobili e pervasive (con cellulari, PDA etc.)

Rete mobile

ISP nazionale

PC

server

Che cos’è Internet?

Rete domestica

Rete aziendale

o internazionale

ISP distrettuale

server

Portatile

Telefonocellulare

Punti diaccesso

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 10

Rete aziendale

router

Collegam.cablato

Page 6: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

6

Rete mobile

ISP n i n l

Che cos’è Internet?

È un insieme di protocolli:

Rete domestica

ISP nazionaleo internazionale

ISP distrettuale

Un protocollo definisce il formato e leregole per lo scambio di messaggi fra dueo più entità in comunicazione

Esempi: TCP, IP, HTTP, Skype

È la “rete delle reti”

struttura gerarchica

I t t bbli i t t i t

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 11

Rete aziendale Internet pubblica e intranet private

Un insieme di standard

RFC: Request for comments

IETF: Internet Engineering Task Force

Che cos’è Internet?

È un’infrastruttura di comunicazione per applicazioni distribuite:

Web, VoIP, e-mail, e-commerce, condivisione di file

Offre servizi di comunicazione appartenenti a due tipologie fondamentali:

servizio orientato alla connessione e

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 12

servizio orientato alla connessione e affidabile

servizio “best effort”, senza connessione e non affidabile

Page 7: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

7

Protocollo umano e protocollo di rete

Che cos’è un protocollo?

Ciao

Ciao

Che ora è?

11:50

Richiesta di connessione TCP

Risposta diconnessione TCP

Get http://www.unical.it/

<file>

tempo

13

Un protocollo definisce il formato e l’ordine dei messaggi scambiati tra due o più entità in comunicazione, così come le azioni intraprese in fase di trasmissione e/o ricezione di un

messaggio o di un altro evento

Uno sguardo da vicino alla struttura di rete

1) Ai confini della rete: sistemi terminali (host) ed applicazioni

2) Reti di accesso

3) Nucleo della rete: interconnessione tra router

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 14

Page 8: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

8

sistemi terminali (host):

eseguono programmi applicativi

Ai confini della rete

eseguono programmi applicativi esempi: Web, e-mail

interazione client/server

l’host client richiede e riceve un servizio da un programma server in esecuzione su un altro terminale

es.: browser/server Web; client/server e-mail

client/server

peer to peer

15

interazione peer-to-peer

uso limitato (o inesistente) di server dedicati

es.: Skype, BitTorrent

Interazione client-server

server: programma sempre attivo indirizzo IP fisso indirizzo IP fisso server farm per creare un

potente server virtuale

client: contatta il server in un

qualunque momento può avere un indirizzo IP

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 16

pdinamico

non comunica direttamente con gli altri client

Page 9: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

9

Architettura P2P

non c’è distinzione tra client e server

coppie arbitrarie di host (peer) comunicano direttamente tra loro

i peer non devono essere sempre attivi, e possono cambiare indirizzo IP

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 17

Facilmente scalabilePiù difficile da gestire

Come collegare sistemi terminali e router esterni?

Reti d’accesso e mezzi fisici

reti di accesso residenziale reti di accesso aziendale

(università, istituzioni, aziende)...

reti di accesso mobile

Punti chiave:

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 18

Punti chiave:

ampiezza di banda (bit al secondo)?

condivise o dedicate?

Page 10: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

10

Modem dial-up fino a 56 Kbps di accesso diretto al

Accesso residenziale

prouter (ma spesso è inferiore)

non è possibile “navigare” e telefonareallo stesso momento

DSL: digital subscriber line Installazione da parte di una società telefonica

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 19

fino a 1 Mbps in upstream (in pratica < 256 kbps) fino a 8 Mbps in downstream (in pratica < 1 Mbps) linea dedicata per Internet

Una LAN (Local Area Network) collega i

Accesso aziendale: reti locali (LAN)

Una LAN (Local Area Network) collega i sistemi terminali di aziende e università al router locale

La banda è contesa, non dedicata

Ethernet: 10 Mb, 100 Mb, 1 Giga, 10 Giga Sistemi terminali collegati mediante

h h

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 20

uno switch Ethernet

Page 11: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

11

La rete di accesso al router è senza fili:

collegamento attraverso la stazione

Accesso wireless

gbase, detta anche “access point”

la banda è condivisa dagli host

LAN wireless:

802.11b/g (WiFi): 11 o 54Mbps

rete d’accesso wireless geografica

stazionebase

router

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 21

g g

gestita da un provider ditelecomunicazioni

~ 1 Mbps per i sistemi cellulari WiMax per aree più grandi

host wireless

Componenti di una tipica rete da abitazione:

DSL o modem via cavo

Reti domestiche

DSL o modem via cavo punto d’accesso wireless Ethernet (wired)

laptopwirelessa/da

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 22

Punto d’accessosenza fili

router/firewall

Ethernet

a/daterminazione

via cavo

Page 12: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

12

Rete di router che interconnettono i sistemi

i li

Il nucleo della rete

terminali Come vengono trasferiti i dati

attraverso la rete? commutazione di circuito: circuito

dedicato per l’intera durata della sessione

commutazione di pacchetto: i messaggi di una sessione utilizzano

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 23

ggle risorse su richiesta. I canali sono condivisi tra le connessioni attive.

Commutazione di circuiti

Il nucleo della rete: commutazione di circuito

risorse dedicate all’atto di instaurare il circuito: non c’è condivisione dei canali fisici

prestazioni garantite ma bassa efficienza nell’uso delle risorse

necessaria l’impostazione della chiamata

simile alle reti telefoniche

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 24

simile alle reti telefoniche

Page 13: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

13

Risorse di rete suddivise in frazioni:

Il nucleo della rete: commutazione di circuito

Risorse di rete suddivise in frazioni:

ciascuna frazione è assegnata in toto ad una connessione le risorse rimangono inattive se non utilizzate (non c’è

condivisione)

Esempi di suddivisione:

suddivisione in base alla frequenza

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 25

suddivisione in base alla frequenza suddivisione in base al tempo

FDM 4 utenti

Esempio:

Commutazione di circuito: FDM e TDM

frequenza

tempo

TDM

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 26

frequenza

tempo

Page 14: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

14

Il flusso di dati viene suddiviso in pacchetti I pacchetti delle varie connessioni condividono le risorse di rete

Il nucleo della rete: commutazione di pacchetto

p

Ciascun pacchetto utilizza completamente il canale solo per il tempo necessario alla sua trasmissione

Le risorse vengono usate in base alle necessità Meccanismo store and forward: il router deve ricevere l’intero pacchetto prima di

elaborarlo e decidere su quale linea di uscita deve essere ritrasmesso

I pacchetti possono seguire strade diverse dal mittente al destinatario, anche se appartengono alla stessa connessione

Questo consente di far fronte ai guasti sui router e sulle linee

27

Questo consente di far fronte ai guasti sui router e sulle linee

L’efficienza nell’uso delle risorse è molto maggiore

La commutazione di pacchetto è l’idea di base che ha decretato ilsuccesso di Internet

fondamentalmente gerarchica al centro: “ISP di livello 1” (es.: Verizon, Sprint, AT&T,

Struttura di Internet

Cable&Wireless), copertura nazionale/internazionale Comunicano tra di loro come “pari”

ISP di livello 1Gli ISP di livello 1 s di tt m t

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 28

ISP di livello 1

ISP di livello 1

ISP di livello 1

sono direttamente connessi a ciascuno degli altri ISP di livello 1

Page 15: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

15

ISP di livello 2: ISP più piccoli (nazionali o distrettuali) Si può connettere solo ad alcuni ISP di livello 1, e talora ad altri ISP

di li ll 2

Struttura di Internet

di livello 2

ISP di livello 1

ISP di livello 2ISP di livello 2Un ISP di livello 2 paga l’ISP di livello 1 che gli fornisce la connettività per il resto della rete

Quando due ISP sono direttamente interconnessi sono detti pari grado (peer)

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 29

ISP di livello 1 ISP di livello 1

ISP di livello 2 ISP di livello 2

ISP di livello 2

resto della rete un ISP di livello 2 è cliente di un ISP di livello 1

ISP di livello 3 e ISP locali (ISP di accesso) Reti “ultimo salto” (last hop network), le più vicine ai sistemi terminali

Struttura di Internet

ISP di livello 1

ISP di livello 2ISP di livello 2

ISPlocaleISP

localeISP

locale

ISPlocale ISP

di livello 3

ISP locali e di livello 3 sono clienti degli ISP di livello superiore

30

ISP di livello 1 ISP di livello 1

ISP di livello 2 ISP di livello 2

ISP di livello 2

ISPlocale

ISPlocale

ISPlocale

ISPlocale

pche li collegano all’intera Internet

Page 16: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

16

un pacchetto passa attraverso numerose reti!

Struttura di Internet

ISP di livello 1NAP

ISP di livello 2ISP di livello 2

ISPlocaleISP

localeISP

locale

ISPlocale ISP

di livello 3

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 31

ISP di livello 1 ISP di livello 1

ISP di livello 2 ISP di livello 2

ISP di livello 2

ISPlocale

ISPlocale

ISPlocale

ISPlocale

i pacchetti si accodano nei buffer di uscita dei router, e attendono il proprio turno per la trasmissione

il t di i d i h tti d l ità di l b i l

Accodamento dei pacchetti sui router

se il tasso di arrivo dei pacchetti eccede la capacità di elaborazione, o la capacità del collegamento in uscita, si ha perdita di pacchetti

A

pacchetto in trasmissione

32

Bpacchetti accodati

buffer liberi (disponibili): se non ci sono buffer liberii pacchetti in arrivo vengono scartati (perdita)

Page 17: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

17

1. Ritardo di elaborazione del router: controlli sui dati dei pacchetti determinazione del canale di uscita

Quattro cause di ritardo per i pacchetti

2. Ritardo di accodamento3. Ritardo di trasmissione sul canale di uscita4. Ritardo di propagazione sul canale

A propagazione

trasmissione

33

B

propagazione

elaborazioneaccodamento

Come è possibile stimare i ritardi?

Traceroute: programma diagnostico che fornisce una misura del

Ritardi e percorsi in Internet

Traceroute: programma diagnostico che fornisce una misura del ritardo dalla sorgente ai vari router, nel percorso verso la destinazione.

invia tre pacchetti che raggiungeranno il router i sul percorso verso la destinazione

il router i restituirà i pacchetti al mittente il mittente calcola l’intervallo tra trasmissione e risposta

34

3 invii

3 invii

3 invii

Page 18: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

18

traceroute: da gaia.cs.umass.edu a www.eurecom.frTre misure di ritardo da gaia.cs.umass.edu a cs-gw.cs.umass.edu

Ritardi e percorsi in Internet

1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms

collegamentotransoceanico

35

11 renater gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms17 * * *18 * * *19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms

* significa nessuna risposta (risposta persa, il router non risponde)

throughput: frequenza (bit/unità di tempo) alla quale i bit sono trasferiti tra mittente e ricevente

Throughput

Il troughput “end to end” della connessione è uguale al throughput minimo misurato sui vari collegamenti. Il collegamento in questione è il collo di bottiglia.

36

server, withfile of F bits

to send to client

link capacityRs bits/sec

link capacityRc bits/sec

tubo che può trasportare fluido a

Rs bits/sec

tubo che può trasportare fluido a

Rc bits/sec

il server invia bit(fluido) nel tubo

Page 19: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

19

Rsh h d d

Throughput: scenario di Internet

Rs Rs

Rc Rc

R

throughput end to end per ciascuna connessione: min(Rc,Rs,R/10)

in pratica il collo di bottiglia è quasi sempre Rc o Rs

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 37

10 connessioni condividono il collegamento con banda R bits/sec

Rc

Le reti sono complesse!

Livelli di protocollo

molti “pezzi”: host router svariate tipologie di

mezzi trasmissivi applicazioni protocolli

Domanda: Qual è il modo migliore per

organizzare l’architettura delle reti?

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 38

protocolli hardware, software

Page 20: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

20

Protocolli ed interfacce

Per ridurre la complessità e per ragioni di modularità lereti sono organizzate come una serie di strati o livelli. Ognilivello usa i servizi del livello inferiore. Entità remote dellostesso livello possono comunicare tra loro.

Le convenzioni e le regole usate nelle comunicazioni tradue entità (processi) di uno stesso livello sono dette

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 39

due e à (p ocess ) d u o s esso e o so o de eprotocollo.

L’insieme di servizi offerto da un livello alle entità dellivello superiore è detto interfaccia.

Protocolli ed interfacce

Logicamente il livello n di una macchina comunica con illi ll di ’ lt hilivello n di un’altra macchina.

In realtà, nessun dato viene trasferito direttamente dallivello n di una macchina al livello n di un’altra macchina.

I dati passano da un livello a quello sottostante fino allivello fisico che trasmette i dati sulla rete fino alla

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 40

macchina ricevente.

Il passaggio dei dati tra i diversi livelli di una stessamacchina avviene tramite le interfacce.

Page 21: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

21

Architetture di rete

U i i di t lli li ll è d tt il Un insieme di protocolli, uno per livello, è detto pila di protocolli.

Un insieme di livelli, protocolli e interfacce è chiamato architettura di rete.

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 41

Le architetture di rete sono alla base di tutte le reti di calcolatori.

Gerarchie di protocolli: architettura di rete

Livelli, protocolli e interfacce

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 42

Page 22: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

22

Architetture di rete: esempio

Comunicazione tra due computer di Internet

Comunicazione logica

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 43

Comunicazione fisica

Relazione tra Servizi e Protocolli

Il servizio implementato dal protocollo di livello k viene fornito al livello k+1livello k viene fornito al livello k+1.

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 44

Page 23: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

23

Modello ISO-OSI

Il modello ISO-OSI ècomposto da 7 livelli

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 45

ISO = International Standards OrganizationOSI = Open Systems Interconnection

Modello ISO-OSI

Principi guida per la progettazione dei vari livelli

• Tramite l’organizzazione a livelli si definisce un grado di astrazione.

• I livelli devono corrispondere a funzioni ben definite e tra loro omogenee.

• I confini tra i livelli devono minimizzare il flusso delle informazioni tra livello e livello.

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 46

informazioni tra livello e livello. • Il numero di livelli deve essere ottimale (non troppi né

pochi).• Le funzioni devono considerare l’insieme degli standard

internazionali.

Page 24: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

24

Modello ISO-OSI

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 47

ISO-OSI: Livello Fisico

Riguarda la trasmissione dei bit sul canale fisico di trasmissione

Coinvolge aspetti di tipo:• elettrico (linee comunicazione, propagazione onde)

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 48

• comunicazione (simplex, half-duplex, full-duplex, …)• meccanico (standard dei connettori, …)

Page 25: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

25

ISO-OSI: Livello Data Link

Le funzionalità del livello Data Link sono:

1. Divide le informazioni in frame e li trasmette attraverso il mezzo fisico

2. Per ogni frame inviato, il mittente attende un segnale di avvenuta ricezione (ack) e gestisce l’eventuale duplicazione dei frame ricevuti, causata dalla possibile perdita dell’ack.

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 49

3. Sincronizza un mittente veloce con un ricevente lento (controllo di flusso).

4. Gestisce l’accesso al canale di trasmissione condiviso, ed esempio nelle reti locali (sottolivello MAC = Medium Access Control).

ISO-OSI: Livello Network

Le funzionalità del livello Rete sono:

1. Definisce un sistema uniforme di indirizzamento.

2. Controlla il cammino ed il flusso di pacchetti (algoritmi di routing).

3. Gestisce e controlla la congestione della rete.

4 G i l’ i d i h i ll i

Le funzionalità del livello Rete sono:

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 50

4. Gestisce l’accounting dei pacchetti sulle reti a pagamento.

5. Implementa l’interfaccia necessaria alla comunicazione tra reti di tipo diverso (internetworking).

6. Gestisce la diffusione di messaggi a più destinazioni (multicast).

Page 26: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

26

ISO-OSI: Livello Transport

Il livello di trasporto è il primo livello “end-to-end”: è gestito solo dagli

1. Servizio orientato alla connessione: accetta dati dal livello superiore, li spezza in segmenti e li trasmette al destinatario, assicurando per lo

Funzionalità principali:

host, non dai router.

Il livello di trasporto deve eventualmente sopperire alla mancanza di affidabilità del livello di rete (pacchetti persi, duplicati, invertiti ecc.)

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 51

p g , pmeno l’ordine corretto di ricomposizione, e se possibile un servizio privo di errori, ed il controllo di flusso.

2. Servizio senza connessione: fornisce il recapito dei messaggi senza garanzie.

ISO-OSI: Livello Session

1. Controlla il dialogo tra due macchine: non sempre la comunicazione è full-duplex; se non lo è questo livello tiene traccia di chi è il turno attuale.

Le funzionalità di questo livello sono:

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 52

2. Gestisce il controllo del token nel dialogo tra più entità.

3. Gestisce la sincronizzazione nel trasferimento dei dati (es. checkpoint).

Page 27: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

27

ISO-OSI: Livello Presentation

Le funzionalità di questo livello si limitano alla

traduzione dei dati che viaggiano sulla rete in un formato astratto.

Queste informazioni vengono poi riconvertite nel formatoproprietario della macchina destinataria

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 53

proprietario della macchina destinataria.

ISO-OSI: Livello Application

Lo strato applicazione comprende una varietà di protocolli utilizzati dagli utenti o dalle applicazioni.

Esempi di applicazioni sono:

• DNS

• File Transfer (protocollo FTP)

P t l tt i ( t lli SMTP POP IMAP)

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 54

• Posta elettronica (protocolli SMTP, POP, IMAP)

• World Wide Web (protocollo HTTP)

• Applicazioni Multimediali (protocollo RTP)

• …

Page 28: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

28

Comunicazione nel modello ISO-OSI

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 55

applicazione: di supporto alle applicazioni di rete FTP, SMTP, HTTP

trasporto: trasferimento dei messaggi a livello di applicazione

TCP/IP: La pila di protocolli di Internet

trasporto: trasferimento dei messaggi a livello di applicazione tra il modulo client e server di un’applicazione TCP, UDP

rete: instradamento dei datagrammi dall’origine al destinatario IP, protocolli di instradamento

link (collegamento): instradamento dei datagrammi attaverso un singolo canale in genere condiviso

pp

trasporto

rete

link

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 56

attaverso un singolo canale, in genere condiviso PPP, Ethernet

fisico: trasferimento dei singoli bitfisico

Page 29: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

29

messaggiosegmento

datagrammaframe

origineApplicazione

trasportoRete

collegamentofisico

HtHnHl MHtHn MHt M

MIncapsulamento

destinatario Rete

Collegamentofisico

HtHn M HtHn M

HtHnHl M HtHnHl M

switch(commutatore)

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 57

Applicazionetrasporto

Retecollegamento

fisicoHtHnHl MHtHn MHt M

M Collegamentofisico

HtHnHl M HtHnHl M

router

Servizi con connessione

Servizi con connessione (connection oriented) Il servizio è offerto attraverso tre fasi:

Apertura della connessione tra due punti della rete

Utilizzo della connessione per inviare i dati

Chiusura della connessione

I dati sono ricevuti nello stesso ordine in cui vengono

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 58

inviati

Due varianti: stream di messaggi e stream di byte

Page 30: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

30

Servizi senza connessione

S i i i ( ti l ) Servizi senza connessione (connection-less) Non c’è alcuna connessione I dati sono inviati impacchettati in messaggi,

ognuno dei quali contiene l’indirizzo completo del destinatario

I messaggi non arrivano necessariamente

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 59

I messaggi non arrivano necessariamente nell’ordine in cui sono inviati

Qualità del servizio

La qualità del servizio è data da diversi parametri:

Ordine di consegna dei dati: è garantito solo dai servizi con connessione

Ricezione garantita del messaggio Il ricevitore manda un ack (ricevuta) per ogni messaggio. Gli ack possono essere usati sia per servizi con connessione che

senza connessione. Se il trasmittente non riceve l’ack, può decidere di inviare di nuovo

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 60

Se il trasmittente non riceve l ack, può decidere di inviare di nuovo il messaggio. Dopo quanto tempo? Uso di un timer.

Consegna corretta dei messaggi (es. uso di checksum) Tempi di consegna: ritardo e jitter (es. per servizi real-time

multimediali)

Page 31: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

31

Servizi con connessione e senza connessione

Tabella dei principali tipi di servizi

SERVIZI EsempiStream di messaggi affidabili Sequenza di pagine di un

documentoStream di byte affidabili Collegamento remoto

Connessione non affidabile Voce digitalizzata

D t g mmi non ffid bile Me ggi di po t elett oni

Con connessione

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 61

Datagrammi - non affidabile Messaggi di posta elettronica

Datagrammi con ack Posta elettronica con ricevuta

Richiesta – Risposta Interrogazione database

Senza

connessione

TCP/IP: protocolli e servizi offerti

Livello di RETEIP Internet Protocol• invio di datagrammi senza garanzia di consegna• indirizzamentoindirizzamento• routing• controllo della congestione• trasmissione multicast• internetworking

Livello di TRASPORTO

TCP Transmission Control Protocol• apertura e chiusura della connessione• flusso di byte bidirezionale lungo un canale virtuale

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 62

• ordinamento dei dati • garanzia della non duplicazione dei dati• controllo di flusso• controllo degli errori

UDP User Datagram Protocol• trasmissione senza connessione e senza garanzia di ordinamento• scambio di messaggi non affidabile, ma più rapido (es. per servizi real-time)

Page 32: Reti di Calcolatori - staff.icar.cnr.itstaff.icar.cnr.it/mastroianni/reti/reti-parte1.pdf · Reti di Calcolatori ... Scritto,,pg con esercizi di programmazione in rete Orale (previo

32

Confronto tra ISO-OSI e TCP/IP

Applicazione

H t t N t k

Internet (IP)

Trasporto (TCP, UDP)

(FTP, SMTP, TELNET, HTTP, DNS, )

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 63

Host-to-Network

(non specificato)

Non presenti

nel modello TCP/IP

Confronto tra ISO-OSI e TCP/IP

I vantaggi del modello TCP/IP sull’OSI sono fondamentalmente due: I vantaggi del modello TCP/IP sull OSI sono fondamentalmente due: Quando nacque OSI, TCP/IP era già presente nel mondo

accademico come supporto ad alcune applicazioni molto diffuse (ftp, telnet)

I protocolli del modello TCP/IP sono molto più semplici e facili da implementare; inoltre sono open-source!

l d ll OS è d è il di l i di

Reti di Calcolatori Reti di Calcolatori -- UNICALUNICAL 64

Il modello OSI è stato ed è utile per discutere e progettare le reti di computer, ma i protocolli non si sono mai affermati, al contrario di quelli di TCP/IP