Elaborazione e trasmissione delle Elementi di Informatica ... · Elementi di Informatica e...

14
Elementi di Informatica e Programmazione Le Reti di Calcolatori Corsi di Laurea in: Ingegneria Civile Ingegneria per l’Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela Fogli Daniela Fogli – Elementi di Informatica e Programmazione 2 2 Elaborazione e trasmissione delle informazioni Reti di Reti di Telecomunicazione Telecomunicazione Hw Hw e Sw dei e Sw dei Calcolatori Calcolatori Reti di Calcolatori Reti di Calcolatori Convergenza dei due settori Rete di calcolatori: insieme di calcolatori tra loro collegati mediante una rete di telecomunicazione Daniela Fogli – Elementi di Informatica e Programmazione 3 3 Finalità di una rete di calcolatori Condivisione risorse Comunicazione fra utenti Miglioramento dell’affidabilità del sistema complessivo (risorse alternative) Risparmio attraverso decentramento Accesso a informazioni e servizi remoti Le finalità variano a seconda che la rete sia di grandi o piccole dimensioni (es. reti di calcolatori private nelle aziende) Daniela Fogli – Elementi di Informatica e Programmazione 4 4 I mezzi di trasmissione Mezzo fisico utilizzato come canale di trasmissione Mezzi guidati: linee fisiche che portano il segnale Mezzi non guidati: irradiazione di segnali elettromagnetici nello spazio I mezzi guidati trasmettono segnali elettrici oppure ottici Doppino telefonico Cavo coassiale Fibra ottica Il mezzo non guidato è lo spazio che permette la trasmissione di onde radio

Transcript of Elaborazione e trasmissione delle Elementi di Informatica ... · Elementi di Informatica e...

Elementi di Informatica e Programmazione

Le Reti di Calcolatori

Corsi di Laurea in:

Ingegneria CivileIngegneria per l’Ambiente e il Territorio

Università degli Studi di Brescia

Docente: Daniela Fogli

Daniela Fogli – Elementi di Informatica e Programmazione 22

Elaborazione e trasmissione delle informazioni

Reti di Reti di

TelecomunicazioneTelecomunicazione

HwHw e Sw dei e Sw dei

CalcolatoriCalcolatori

Reti di CalcolatoriReti di Calcolatori

Convergenza

dei due settori

Rete di calcolatori: insieme di calcolatori tra loro

collegati mediante una rete di telecomunicazione

Daniela Fogli – Elementi di Informatica e Programmazione 33

Finalità di una rete di calcolatori

Condivisione risorse

Comunicazione fra utenti

Miglioramento dell’affidabilità del sistema complessivo (risorse alternative)

Risparmio attraverso decentramento

Accesso a informazioni e servizi remoti

�Le finalità variano a seconda che la rete sia di grandi o piccole dimensioni (es. reti di calcolatori private nelle aziende)

Daniela Fogli – Elementi di Informatica e Programmazione 44

I mezzi di trasmissione

Mezzo fisico utilizzato come canale di trasmissione

Mezzi guidati: linee fisiche che portano il segnale

Mezzi non guidati: irradiazione di segnali elettromagnetici nello

spazio

I mezzi guidati trasmettono segnali elettrici oppure ottici

Doppino telefonico

Cavo coassiale

Fibra ottica

Il mezzo non guidato è lo spazio che permette la trasmissione di

onde radio

Daniela Fogli – Elementi di Informatica e Programmazione 55

Caratteristiche dei mezzi di trasmissione e del segnale

Capacità del canale (larghezza di banda): grandezza che misura il numero di bit che il canale è in grado di trasmettere nell’unità di tempo (maggiore è la larghezza di banda, maggiore è la velocità di trasmissione)

Grado di attenuazione del segnale: l’energia del segnale si riduce anche in base alla distanza percorsa (necessità di ripetitori)

i segnali trasmessi su doppino telefonico subiscono attenuazione maggiore di quelli trasmessi su cavi coassiale e questo a sua volta determina attenuazione maggiore rispetto alle fibre ottiche

Interferenza tra segnali: ad esempio interferenza fra segnali che percorrono cavi adiacenti

Daniela Fogli – Elementi di Informatica e Programmazione 66

I mezzi guidati più diffusi

I segnali digitali vengono trasmessi sotto forma di segnali elettrici

Costituito da una o più coppie di fili di rame ricoperti di materiale isolante, intrecciati per ridurre interferenze e isolati da una guaina

Ce ne sono varie classi

Doppino

Guaina protettivaopaca

Core

Cladding

Fonte di emissioneluminosa (laser)Fibra ottica

I segnali digitali vengono trasmessi sotto forma di impulsi luminosi

Larghezza di banda molto elevata � elevata velocità di trasmissione

Ridotta attenuazione del segnale

Immunità alle interferenze elettromagnetiche � bassi tassi di errore

Cavi di dimensioni e peso ridotti

Daniela Fogli – Elementi di Informatica e Programmazione 77

I segnali sono trasmessi e ricevuti mediante antenne

L’antenna del trasmettitore irradia nello spazio onde elettromagnetiche

L’antenna del ricevitore capta queste onde

Trasmissione direzionale (antenne allineate) o non direzionale (irradiamento nello spazio di onde che più antenne possono ricevere)

Onde radio [30 MHz, 1 GHz] – es. cellulari (900 Mhz, 1800 Mhz, 1900 Mhz)

Microonde [2 GHz, 40 GHz] – trasmissioni direzionali, punto-a-punto, anche via satellite (che fa da ripetitore)

Infrarossi [300 GHz, 200 THz] – trasmettitore e ricevitore devono essere visibili uno all’altro

Trasmissione nei mezzi non guidati

Daniela Fogli – Elementi di Informatica e Programmazione 88

Classificazione delle reti

Secondo due dimensioni:

La modalità di collegamento tra i calcolatori

L’estensione geografica della rete

Daniela Fogli – Elementi di Informatica e Programmazione 99

Modalità di collegamento “broadcast”

Reti broadcast: un unico mezzo di trasmissione condiviso da tutti i nodi

Per comunicare con un nodo occorre inviare un messaggio contenente il suo indirizzo

Il messaggio raggiunge tutti i nodi della rete

Soltanto il nodo il cui indirizzo è uguale a quello nel messaggio lo recepisce

mezzo di comunicazione

Daniela Fogli – Elementi di Informatica e Programmazione 1010

Modalità di collegamento “punto-a-punto”

Nelle reti punto-a-punto sono presenti più linee di

comunicazione, ciascuna connette una coppia di nodi

E’ costoso connettere tutte le possibili coppie di nodi con canali

dedicati

Soluzione: solo alcune coppie di nodi sono connesse direttamente

e alcuni nodi della rete sono dedicati allo smistamento dei

messaggi

Si parla di reti commutate

Fra una coppia di nodi possono esistere più percorsi lungo la rete

Daniela Fogli – Elementi di Informatica e Programmazione 1111

Rete commutata

In una rete commutata i dati sono immessi nella rete da un

calcolatore host e instradati fino all’host di destinazione

passando da router a router

1

4

2

56

3

A

B

C

D

hostnodo router

Un possibile cammino dei dati da B a C

Daniela Fogli – Elementi di Informatica e Programmazione 1212

Strategie di instradamento sulle reti commutate

Reti a commutazione di circuitoViene creato un circuito logico fra sorgente e destinazione

Tutti i dati seguono lo stesso percorso

Reti a commutazione di pacchettoIl messaggio è suddiviso in pacchetti

Ogni pacchetto può seguire un percorso diverso

Daniela Fogli – Elementi di Informatica e Programmazione 1313

Reti a commutazione di circuito

Creazione di un canale logico dedicato fra sorgente e destinazione

Il canale logico è costituito da una successione di connessioni fra nodi della rete

A ogni nodo i dati sono instradati lungo il canale predisposto in uscita senza ritardo

Trasmissione costituita da

1. Fase di attivazione: viene stabilito il cammino fra sorgente e destinazione

2. Fase di trasferimento dati

3. Fase di chiusura della comunicazione

Daniela Fogli – Elementi di Informatica e Programmazione 1414

Esempio di funzionamento

1

4

2

56

3

A

B

C

D

Vantaggi e svantaggi- Tecnica efficiente per comunicazioni telefoniche

- Non efficiente per trasmissione dati tra calcolatori: periodi di trasmissione si alternano a periodi di inattività

- Richiede che sorgente e destinatario si accordino sulla velocità di trasferimento

canale

dedicato

canale

dedicato

Scelte in base a

disponibilità e costo

Daniela Fogli – Elementi di Informatica e Programmazione 1515

Si basa sull’invio di pacchetti di dati di dimensioni ridotte (dell’ordine dei Kbyte)

Il messaggio da trasmettere viene suddiviso in una serie di pacchetti

Ogni pacchetto contiene:

Dati

Informazioni di controllo fra cui indirizzo del destinatario e un numero progressivo

I pacchetti vengono spediti uno alla volta sulla rete

Quando un nodo riceve un pacchetto lo memorizza e lo accoda per poterlo trasmettere al più presto

Ciascun pacchetto può seguire un percorso diverso

L’ordine di arrivo può essere diverso da quello di partenza

Reti a commutazione di pacchetto

Daniela Fogli – Elementi di Informatica e Programmazione 1616

1

4

2

56

3

A

B

C

D

Vantaggi e svantaggi- Migliore utilizzo delle risorse

- Maggiore robustezza rispetto ai guasti

- Minore prevedibilità, rischio di intasamenti

- Necessità di riordino dei pacchetti da parte del destinatario

Scelte in base a disponibilità e costo

separatamente per ciascun pacchetto

1 2

1

1

1

2

22

2

1 1

2 1

Esempio di funzionamento

2

Daniela Fogli – Elementi di Informatica e Programmazione 1717

Commutazione di circuito vs. commutazione di pacchetto

Nella commutazione di pacchetto le linee risultano utilizzate inmodo più efficiente

Trasmissione efficiente anche fra calcolatori con velocità differenti

In caso di traffico elevato nella commutazione di circuito alcune comunicazioni devono essere bloccate, nell’altro caso no (vengono solo ritardate)

Gestione di comunicazioni a priorità diverse (ulteriore informazione che va nel pacchetto)

Daniela Fogli – Elementi di Informatica e Programmazione 1818

Estensione geografica della rete

Local Area Network (LAN) – reti localicircoscritte ad un edificio o a edifici adiacenti

Metropolitan Area Network (MAN) – reti metropolitanecircoscritte all’area di una città, ad esempio le reti dei telefoni cellulari

Wide Area Network (WAN) – reti geografichedistribuite su aree molto vaste (connessioni su scala nazionale e internazionale), ad esempio le reti telefoniche

Internetwork (o internet) – reti di retidistribuite su tutto il pianeta, collegamento tra reti geografiche di operatori diversi, ad esempio Internet

Daniela Fogli – Elementi di Informatica e Programmazione 1919

Le reti locali (LAN)

Obiettivo: connettere dispositivi a distanza ridotta

Sono proprietà della organizzazione che possiede i dispositivi connessi � scelta della rete e responsabilità di gestione a carico della organizzazione

Velocità di trasmissione molto maggiori rispetto alle reti geografiche (dovuta ad ampia larghezza di banda)

Ogni stazione include un trasmettitore/ricevitore che comunica su un canale condiviso (modalità broadcast)� una sola stazione può trasmettere ad ogni istante

Sono affidabili, economiche e facilmente espandibili

Daniela Fogli – Elementi di Informatica e Programmazione 2020

Diverse tipologie di LAN dipendono da …

Mezzi di trasmissione utilizzatidoppino, cavo coassiale, fibra ottica, wireless

TopologiaStruttura e numero dell’insieme di connessioni

Metodi di accesso ai mezzi di trasmissioneTecniche a contesa

Tecniche non a contesa

Daniela Fogli – Elementi di Informatica e Programmazione 2121

Diverse topologie di rete locale

Stella

Bus

Anello

Daniela Fogli – Elementi di Informatica e Programmazione 2222

Un caso particolare: le LAN senza fili (wireless)

Reti Wi-Fi (Wireless Fidelity)

Le stazioni comunicano tramite segnali radio trasmessi da e verso

una stazione centrale (access point) collegata tipicamente ad una

rete cablata

Una rete wireless consente per esempio di spostare un computer

portatile all’interno di un edificio, eliminando il problema di

installare cavi in vecchi edifici

Tipicamente minori prestazioni e minore affidabilità rispetto a una

rete cablata

Daniela Fogli – Elementi di Informatica e Programmazione 2323

Metodi di accesso alle reti locali

Problema: evitare sovrapposizioni di segnali (interferenze)

Metodo di accesso

algoritmo che ogni stazione utilizza per accedere al canale di trasmissione e ottenere il diritto a trasmettere

Tecniche a contesa

Accesso in modo casuale

Se due o più stazioni cercano di trasmettere simultaneamente, ilconflitto viene risolto secondo alcune regole di mediazione

Tecniche non a contesa

I nodi non si contendono l’uso della rete ma devono prima ottenere il permesso di trasmissione

Tecnica del gettone (token) circolante

Daniela Fogli – Elementi di Informatica e Programmazione 2424

CSMA/CD: Carrier Sense Multiple Access Collision Detection

Fase di ascolto (carrier sense): tutti i nodi esaminano lo stato della rete

Se la rete è libera i nodi provano a spedire i loro dati (multiple access)

Se viene rilevata una collisione (collision detection) prima di ritentare la trasmissione tutti i nodi rimangono in stato di attesaper un breve intervallo di tempo casuale

Il nodo che effettuerà la trasmissione per primo acquisirà il controllo della rete

Tecniche a contesa: CSMA/CD

Daniela Fogli – Elementi di Informatica e Programmazione 2525

Esempio: Ethernet (su topologia a bus)

Alcune versioni:

Gigabit Ethernet e Fast Ethernet

(dal libro di Curtin et al. 2002)

Daniela Fogli – Elementi di Informatica e Programmazione 2626

Tecniche non a contesa:Token ring e token bus

Token (gettone) = segnale che circola nella rete

Token ring (in reti con topologia ad anello)

Se una stazione deve inviare un messaggio, nel momento in cui riceve il gettone pone a 0 un bit del token e vi aggancia il suo messaggio con in testa l’indirizzo del destinatario

Il destinatario, quando viene raggiunto, controlla la correttezza del messaggio e lo ritrasmette, aggiungendo un messaggio in coda cheindica la corretta o errata ricezione del messaggio

La stazione emittente, quando riceve nuovamente il suo messaggio, esamina l’esito della ricezione e quindi rimette in circolazione il gettone “libero” (riportando a 1 il bit messo a 0), eliminando il messaggio se la ricezione è andata a buon fine

Token bus (in reti con topologia a bus) � anello logico

Ogni stazione deve conoscere l’identificatore del proprio predecessore e del proprio successore nella successione

Daniela Fogli – Elementi di Informatica e Programmazione 2727

Una rete token ring

(dal libro di Curtin et al. 2002)

Daniela Fogli – Elementi di Informatica e Programmazione 2828

Dov’è il metodo di accesso?

In ogni calcolatore della rete è presente una scheda di interfaccia verso la rete (NIC – Network Interface Card), detta anche interfaccia di rete o scheda di rete

Dispositivo dotato di capacità di calcolo, comprende una memoriae un processore dedicato all’elaborazione dei segnali

Ad ogni scheda di rete è associato un indirizzo fisico (detto indirizzo MAC – Media Access Control): identificativo numerico di 48 bit scritto permanentemente nella sua ROM

E’ la scheda di rete che implementa il metodo di accesso alla rete

Daniela Fogli – Elementi di Informatica e Programmazione 2929

Reti geografiche e reti di reti

Sono generalmente punto-a-punto, a commutazione di circuito o di pacchetto

Sono il risultato dell’interconnessione di una molteplicità di reti, normalmente gestite da soggetti diversi e basate su tecnologie differenti � internet (con la “i” minuscola)

Servono dispositivi appositi, detti bridge, per collegare fra loro due reti locali

Servono dispositivi appositi, detti gateway, per collegare una rete locale a una rete geografica o due reti geografiche: risolvono problemi di incompatibilità qualora i sistemi hw/sw utilizzati siano diversi

Internet (con la “I” maiuscola) è una specifica internet

Daniela Fogli – Elementi di Informatica e Programmazione 3030

LAN, WAN e internet

(dal libro Sciuto et

al. 2005)

G

Z

G

BLAN LAN

B

Y

G

LAN

LAN

G

WAN

LANB

LAN

X

GG

WAN

Daniela Fogli – Elementi di Informatica e Programmazione 3131

La comunicazione in rete: i problemi

Esempio: applicazione per scambio messaggi di testo tra due utenti

Il calcolatore A su cui gira l’applicazione del mittente deve poter inviare pacchetti al calcolatore B su cui gira l’applicazione del destinatario (indirizzo univoco)

Lungo il percorso possono esserci diversi sistemi di comunicazione che possono usare diversi mezzi di trasmissione e dar luogo a errori di trasmissione

I pacchetti possono fare percorsi diversi e arrivare in un ordine diverso da come erano partiti

I pacchetti inviati al calcolatore B devono essere recapitati all’applicazione a cui sono destinati

E’ impossibile delegare la risoluzione alle applicazioni:

La complessità delle applicazioni aumenterebbe (necessario risolvere problemi di gestione della rete)

Soluzioni ad hoc, incompatibilità tra applicazioni diverse e traapplicazioni e infrastrutture di rete

Daniela Fogli – Elementi di Informatica e Programmazione 3232

Il modello a livelli

Per risolvere i problemi suddetti le reti di calcolatori vengonoorganizzate secondo un’architettura a livelli

Ciascun livello definisce un particolare aspetto della comunicazione a un certo livello di astrazione

Ciascun livello fornisce servizi al livello immediatamente superiore, mascherando il modo in cui questi sono realizzati

A tale scopo, ciascun livello sfrutta a sua volta i servizi forniti dal livello inferiore (eccetto il livello più basso)

Ogni livello è caratterizzato dalla sua interfaccia verso il livello superiore

Daniela Fogli – Elementi di Informatica e Programmazione 3333

Egregio dott. Tersili,

con la presente Le

segnalo la disponibilità

di un prodotto software

rivoluzionario sviluppato

dalla nostra azienda che…

Egregio dott. Tersili,

con la presente Le

segnalo la disponibilità

di un prodotto software

rivoluzionario sviluppato

dalla nostra azienda che…

UFF.

POSTALE

UFF.

POSTALE

Messaggio

Dott. Tersili Dott. Tersili

SPECTRA

via…

SPECTRA

via…

La metafora dei dirigenti d’azienda

Daniela Fogli – Elementi di Informatica e Programmazione 3434

I protocolli di comunicazione

Ad ogni livello i sono presenti due entità, dette peer, che realizzano il servizio di competenza del livello i (a beneficio del livello superiore i+1)

Le entità realizzano il servizio interagendo tra loro (scambio di pacchetti –o entità dati – del livello i).

Protocollo di comunicazione (del livello i): insieme di regole con cui le entità devono comunicare. Specifica fra l’altro:

la struttura dei pacchetti (inclusa definizione delle informazioni di controllo)le modalità che regolano il dialogo

Tipologie di servizi offerti da un livello:Connection oriented vs. ConnectionlessReliable vs. Unreliable

Per utilizzare un servizio, è necessario conoscere solo l’interfaccia del livello corrispondente

⇒ indipendenza tra i livelli!(es. indipendenza dal mezzo fisico utilizzato!)

Daniela Fogli – Elementi di Informatica e Programmazione 3535

Architettura di rete:stabilisce l’insieme dei livelli + i relativi protocolliEsempi: ISO/OSI, TCP/IP

Livelli, protocolli e interfacce

Livello 5

Livello 4

Livello 3

Livello 2

Livello 1

Livello 5

Livello 4

Livello 3

Livello 2

Livello 1

Mezzo fisico

Interfaccia livello 4/5

Interfaccia livello 3/4

Interfaccia livello 2/3

Interfaccia livello 1/2

Protocollo di livello 5

Protocollo di livello 4

Protocollo di livello 3

Protocollo di livello 2

Protocollo di livello 1

Daniela Fogli – Elementi di Informatica e Programmazione 3636

Il modello TCP/IP

E’ il modello adottato nella rete Internet

Insieme di protocolli basato su

TCP (Transmission Control Protocol)

IP (Internet Protocol)

Successo commerciale di TCP/IP: affidabilità,

efficienza, è diventato uno standard di fatto

TCP/IP è impostato su un’architettura a cinque livelli. Nel seguito vengono esaminati “partendo

dall’alto”

Daniela Fogli – Elementi di Informatica e Programmazione 3737

Livello applicazionea questo livello operano le applicazioni utilizzate dagli utenti per inviare e ricevere messaggi

i protocolli di comunicazione da esse adottati fissano la tipologia, la struttura e il significato dei messaggi e le regole secondo cui i processi inviano e rispondono ai messaggi

esempi di protocolli: HTTP, SMTP, POP3, FTP

I livelli del modello TCP/IP (1)

Daniela Fogli – Elementi di Informatica e Programmazione 3838

Livello trasporto Fornisce un servizio di comunicazione fra processi applicativi eseguiti su host diversi: trasporto di un messaggio da un processo applicativo in un calcolatore ad un ben determinato processo applicativo ad un altro calcolatore

Ciascun processo in esecuzione su un calcolatore che richieda servizi di rete viene identificato da un numero di porta - numero a 16 bit, assegnato dal livello di trasporto al processo stesso

Le unità dati trasmesse sono dette segmenti

Due protocolli: UDP: non affidabile e connectionless

TCP: affidabile e connection- oriented, usa un numero di sequenza e prevede l’invio al mittente di un riscontro

E’ realizzato come modulo del sistema operativo

I livelli del modello TCP/IP (2)

Daniela Fogli – Elementi di Informatica e Programmazione 3939

Livello reteFornisce un servizio di comunicazione fra host, ovvero trasferisce i segmenti consegnati dal livello trasporto da un host sorgente a un hostdestinazione eventualmente attraverso uno o più router

Si occupa della determinazione del percorso e lo smistamento deipacchetti lungo la rete (mascheramento del problema dell’instradamento)

Le unità dati trasmesse sono dette datagrammi

Il livello rete è anch’esso parte del sistema operativo

I livelli del modello TCP/IP (3)

Daniela Fogli – Elementi di Informatica e Programmazione 4040

Problema

APPLICAZIONE

TRASPORTO

RETE

FISICO

protocollo di livello applicazione

host A host B

DATALINK

protocollo di livello trasporto

router router

APPLICAZIONE

TRASPORTO

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

COME IDENTIFICARE I NODI A LIVELLO GLOBALE?

Daniela Fogli – Elementi di Informatica e Programmazione 4141

Indirizzi IP

A questo livello i nodi della rete sono identificati dagli indirizzi

IP

Per ogni calcolatore, il suo indirizzo è contenuto in un file di

configurazione del sistema operativo (o comunque memorizzato

via sw) ed è indipendente dalla scheda di rete utilizzata: identifica

il nodo a livello globale

L’unicità degli indirizzi IP è assicurata da un’autorità centrale:

ogni volta che viene installata una nuova rete locale è necessario richiedere all’autorità centrale un nuovo insieme di indirizzi

nella pratica possono essere richiesti a un fornitore di servizi Internet (Internet Service Provider): un’azienda privata o pubblica che offre connettività alla rete a terze parti (aziende, enti pubblici, privati cittadini)

Daniela Fogli – Elementi di Informatica e Programmazione 4242

Indirizzo IP

Un indirizzo IP (IP address) è lungo 32 bit (4 byte) = 232 possibili

indirizzi diversi

Rappresentati in genere in forma decimale

successione di quattro numeri (uno per byte), separati da un punto(e.g. 192.167.20.224)

ognuno dei quattro numeri è compreso tra 0 e 255

Daniela Fogli – Elementi di Informatica e Programmazione 4343

Assegnamento indirizzi IP

Ad ogni host connesso alla rete locale viene attribuito uno degli

indirizzi attraverso una delle seguenti modalità:

IP Statico

IP Dinamico

IP StaticoL’indirizzo è assegnato ad un host in modo permanenteSi inserisce manualmente l’indirizzo in uno specifico file di configurazioneIndirizzo riservato all’host anche quando questo non è effettivamente collegato alla rete

DinamicoOgni volta che intende accedere alla rete, un host richiede un indirizzo ad una specifica applicazione disponibile nella rete localeL’interazione avviene tramite il protocollo DHCP (Dynamic HostConfiguration Protocol)L’applicazione seleziona un indirizzo IP fra quelli disponibili L’indirizzo torna disponibile una volta che l’host non è più connesso

Daniela Fogli – Elementi di Informatica e Programmazione 4444

Esempio nei sistemi Windows

Daniela Fogli – Elementi di Informatica e Programmazione 4545

Schema di indirizzamento generale su due livelli: indirizzo IP + numero di porta � ogni processo applicativo che usa la rete può essere identificato da tale indirizzo

Indirizzo IP

indirizzo associato a ogni calcolatore collegato a una sottorete

è un indirizzo Internet globale unico, utilizzato dal livello rete per l’instradamento e la consegna dei pacchetti

Numero di porta

indirizzo unico all’interno dell’host che individua un processo attivo sull’host

utilizzato dal livello trasporto per consegnare i dati al processo giusto

Riassumendo: come è identificato un processo applicativo in rete

Daniela Fogli – Elementi di Informatica e Programmazione 4646

Comunicazione attraverso TCP/IP

Data Link

Livello Fisico

Livello IP

Livello TCP

Livello Applicazione

App. X

App. Y

HOST A

Indirizzo di rete(globale)

Punti di accesso al servizio (porte)

Datalink

Livello Fisico

Livello IP

ROUTER

Datalink

Livello Fisico

Livello IP

Livello TCP

Livello Applicazione

App. X

App. Y

HOST B

Connessione logica (TCP)

1 2

Datalink

Livello Fisico

Livello IP

ROUTER

Daniela Fogli – Elementi di Informatica e Programmazione 4747

Riassumendo fin qui …

Nell’host sorgente, il livello di trasporto riceve dal livello applicazione un messaggio da inviare ad un determinato processo applicativo in un determinato hostdestinazione

Crea un segmento con l’intestazione che include le coppie <IP sorgente, #porta mittente> e <IP destinazione, #porta destinazione>

Il segmento viene inviato al livello rete host sorgente che crea datagramma, il cui header contiene indirizzo IP sorgente + indirizzo IP destinazione

Il livello rete instrada il datagramma verso host destinazione attraverso indirizzo IP destinazione

Alla fine il datagramma arriva all’host destinazione: il livello di rete estrae il segmento dal datagramma e lo consegna al livello di trasporto

Il livello trasporto dell’host destinazione riceve il segmento, estrae il messaggio e, grazie all’intestazione, è in grado di recapitarlo al processo applicativo destinazione

Il processo applicativo destinazione può conoscere <IP sorgente, #porta mittente> per continuare la comunicazione

Il protocollo TCP, inoltre, usa un numero di sequenza e prevede l’invio al mittente di un riscontro

Daniela Fogli – Elementi di Informatica e Programmazione 4848

Livello datalinkIl servizio consiste nel trasportare datagrammi tra due nodi collegati da una linea di comunicazione

Per identificare il nodo a cui spedire usa l’indirizzo MAC (Media Access Control) – identificativo numerico a 48 bit scritto nella ROM della schedadi rete

Nelle reti broadcast il livello datalink si occupa anche di gestire il problema dell’accesso multiplo (es. usando protocollo CSMA/CD)

E’ realizzato nella scheda di rete del calcolatore

I livelli del modello TCP/IP (4)

Livello fisico Livello fisico

flusso di bit flusso di bit

Livello data link Livello data link

Datagramma

+ MAC address

Protocollo livello

data linkScheda di retecalcolatoremittente

Scheda di retecalcolatorericevente

Datagramma

+ MAC address

Daniela Fogli – Elementi di Informatica e Programmazione 4949

Realizzazione del servizio

A partire dal datagramma da spedire e l’indirizzo MAC di destinazione: creazione di un frame la cui intestazione (header) include il MAC

Trasmissione del frame attraverso il livello fisico

All’arrivo: esame del MAC, se non coincide con quello della scheda di rete il frame non viene considerato, altrimenti viene estratto il datagramma e passato al livello superiore (di rete)

DatagrammaIntestazione

(…MAC…)

Unità dati a livello datalink

(frame)

Datagramma

Livello

data

link

DatagrammaIntestazione

(…MAC…)

Unità dati a livello datalink

(frame)

Datagramma

Protocollo livello

data link

Livello

rete

Daniela Fogli – Elementi di Informatica e Programmazione 5050

Livello fisicoIl servizio consiste nella trasmissione e ricezione di un flusso di bitattraverso una determinata linea di comunicazione;

E’ realizzato nella scheda di rete del calcolatore, nei modem e neimezzi di trasmissione

Protocollo di comunicazione: riguarda caratteristiche qualicodifica dei dati trasmessi, frequenza di trasmissione e specifica interfacce

Determina (insieme alle caratteristiche fisiche della linea): velocità di trasmissione, ritardo di propagazione, tasso di errore

I livelli del modello TCP/IP (5)

Livello fisico

Linea di comunicazione

Livello fisicoProtocollo livello fisico

flusso di bit flusso di bit

Daniela Fogli – Elementi di Informatica e Programmazione 5151

Modem

Dispositivo che permette di trasferire dati da un calcolatore a un

altro attraverso la linea telefonica

Effettua la conversione tra la modalità di codifica digitale adottata

all’interno del calcolatore e la modalità di codifica richiesta dalla

linea telefonica

A seconda della codifica (per sfruttare la banda messa a

disposizione dal doppino telefonico) diverse prestazioni:

Modem “classico”: velocità di trasmissione dei dati fino a 56Kbit/s

Modem xDSL (Digital Subscriber Loop): fino a qualche Mbit/s

ADSL (Asymmetric Digital Subscriber Line): velocità di download

(teorica fino a 9Mbit/s) maggiore di quella di upload (teorica fino a

640kbit/s). Oggi anche ADSL2 e ADSL2+ con velocità di download fino a

24 Mbit/s e di upload fino a 3.5 Mbit/s

Daniela Fogli – Elementi di Informatica e Programmazione 5252

Da un livello all’altro

Come visto, ogni livello attraversato aggiunge un’intestazione

(informazioni utili alle funzioni proprie di quel livello)… che

vengono poi man mano eliminate dai livelli di destinazione

attraversati in senso inverso

Dati utente

Intestazione

TCP

Intestazione

IP

Intestazione

datalink

Flusso dati proveniente

dall’applicazione

(messaggio)

Unità dati a livello TCP

(segmento)

Unità dati a livello IP

(datagramma)

Unità dati a livello datalink

(frame)

Daniela Fogli – Elementi di Informatica e Programmazione 5353

APPLICAZIONE

TRASPORTO

RETE

FISICO

protocollo di livello applicazione

host A host B

DATALINK

protocollo di livello trasporto

router router

APPLICAZIONE

TRASPORTO

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

end to end

point to point

Direttamente tra “host”

Tra nodi della rete direttamente collegati

Protocolli “end to end” e “point to point”

Quindi, i router hanno solo i livelli fisico, datalink e rete

Daniela Fogli – Elementi di Informatica e Programmazione 5454

APPLICAZIONE

TRASPORTO

RETE

FISICO

protocollo di livello applicazione

host A host B

DATALINK

protocollo di livello trasporto

router router

APPLICAZIONE

TRASPORTO

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

RETE

FISICO

DATALINK

end to end

point to point

SIST.

OP.

HW

Il quadro globale