Scarica in formato pdf o txt
Scarica in formato pdf o txt
Sei sulla pagina 1di 101

Reti di Calcolatori

Alessandro Longheu

http://www.diit.unict.it/users/alongheu
alessandro.longheu@diit.unict.it

© 2005 – Alessandro Longheu


Struttura del corso

 Introduzione
 Lo strato fisico
 Lo strato data link
 Il sottostrato MAC (sottostrato del data link)
 Lo strato network
 Lo strato trasporto
 Lo strato applicazione

© 2005 – Alessandro Longheu


Libro consigliato:

Reti di Calcolatori
(quarta edizione)
Andrew S. Tanenbaum

Pearson – Prentice Hall

© 2005 – Alessandro Longheu


Definizione - 1

Una Rete di Calcolatori è un insieme di elaboratori


autonomi ed interconnessi.
 Autonomi: tutti hanno “pari dignità”, nessuno può
controllare gli altri
 Interconnessi: tutti sono in grado di scambiarsi
informazioni

© 2005 – Alessandro Longheu


Definizione - 2
NON SONO reti di calcolatori:
 Un sistema distribuito, che è una Rete di calcolatori +
Software di gestione (middleware) che presenta la rete agli
utenti come un unico sistema, assicurando coesione e
trasparenza
 Internet, che è invece una rete di reti potenzialmente diverse
fra loro
 Il WWW, che è invece un sistema distribuito che poggia su
Internet

© 2005 – Alessandro Longheu


Scopi di una Rete

1. Applicazioni aziendali
2. Applicazioni domestiche
3. Applicazioni mobili
4. Risvolti sociali

© 2005 – Alessandro Longheu


Applicazioni Aziendali
 Scopi principali della rete in ambito aziendale:
 condivisione delle risorse, di solito basata sul modello client-server
(diffuso anche in ambiti non aziendali). Risorse = programmi,
periferiche, informazioni
 migliore comunicazione fra utenti (e-mail, videoconferenza)
 commercio elettronico (e-commerce)

© 2005 – Alessandro Longheu


Applicazioni Domestiche - 1

1. Accesso a informazioni remote


2. Comunicazione da persona a persona
3. Intrattenimento interattivo
4. Commercio elettronico

© 2005 – Alessandro Longheu


Applicazioni Domestiche - 2

1. Accesso a informazioni remote:


 quotidiani on-line (personalizzabili)
 biblioteche digitali (ACM, IEEE)

© 2005 – Alessandro Longheu


Applicazioni Domestiche - 3

2. Comunicazione da persona a persona:


 e-mail
 instant messaging (erede del talk)
 newsgroup
 peer-to-peer o P2P (non ci sono client e
server predefiniti): napster, e-donkey,
kazaa, …
 e-learning
© 2005 – Alessandro Longheu
Applicazioni Domestiche - 4

3. Intrattenimento interattivo:
 gioco d’azzardo (problemi legislativi)
 giochi collaborativi on-line
 video on demand

© 2005 – Alessandro Longheu


Applicazioni Domestiche - 5
4. Commercio elettronico:
 compravendita di merce nuova/usata (e-bay)
 transazioni finanziarie

Sigla Sigla per esteso Esempio


B2C Business-to-Consumer Ordinare libri on-line
B2B Business-to-Business Ordine a fornitori
G2C Government-to-Consumer Dichiarazione dei redditi on-line
C2C Consumer-to-Consumer Aste on-line
© 2005 – Alessandro Longheu
Applicazioni mobili - 1

Esempi di contesti di utilizzo:


 ufficio mobile

 campus universitari

 aeroporti

 trasporti di merci e persone (taxi)

 militari

© 2005 – Alessandro Longheu


Applicazioni mobili - 2

Confronto mobilità – wireless:

Wireless Mobile Tipiche applicazioni


No No Stazioni di lavoro fisse
No Si Dispositivo portatile connesso ad una presa di rete fissa
Si No LAN in edifici non cablati (es. edifici storici)
Si Si Portatili e PDA in ambienti wireless

© 2005 – Alessandro Longheu


Applicazioni mobili - 3

Applicazioni emergenti:
 gestione parchimetri
 gestione distributori di cibo e bevande
 telelettura contatori e rilevatori
 mobile commerce (m-commerce), basato su
PDA wireless
 servizi georeferenziati (GPS)
 personal area network (wearable computer)
© 2005 – Alessandro Longheu
Risvolti sociali

 Problema dei contenuti offensivi,


discriminatori o razziali
 Responsabilità degli operatori di rete
 Rischi per la libertà di comunicazione
 Nessun controllo sulla veridicità delle
informazioni
 Furto di identità
© 2005 – Alessandro Longheu
Aspetti tecnici delle Reti
 Hardware di rete
 Classificazione
 LAN,MAN,WAN e Internetworking
 Wireless
 Reti Domestiche
 Software di rete
 Strati, protocolli, interfacce
 Progettazione degli strati
 Servizi e primitive
 Relazione fra servizi e protocolli

© 2005 – Alessandro Longheu


Classificazione - 1

Classificazione delle reti :


 Basata sulla tecnologia trasmissiva

la topologia della rete, e quindi le caratteristiche della


comunicazione
 Basata sulla scala dimensionale
l’estensione fisica della rete, e quindi l’utilizzo della rete

© 2005 – Alessandro Longheu


Classificazione - 2

Considerando le tecnologie, esistono due principali


topologie di rete:

1. le reti broadcast: un unico canale di


comunicazione è condiviso da tutti i calcolatori
2. le reti punto-punto: ogni canale di
comunicazione collega due diversi calcolatori
della rete

In generale, per le reti piccole si utilizzano topologie


broadcast, mentre per le reti più estese si adottano
topologie punto-punto.
© 2005 – Alessandro Longheu
Classificazione - 3
 Nelle reti broadcast la comunicazione è basata su
piccole sequenze di dati (pacchetti)
 In ciascun pacchetto è riportato un identificatore del
calcolatore a cui i dati sono destinati.
 Ogni calcolatore riceve e legge tutti i pacchetti, ma
considera solo quelli indirizzati a se stesso.
 E’ generalmente possibile indirizzare un pacchetto a
tutti i calcolatori nella rete (broadcasting).
 Alcune reti permettono anche il multicasting, ossia
l’invio di pacchetti ad un sottoinsieme dei calcolatori
nella rete.
© 2005 – Alessandro Longheu
Classificazione - 4
Due tipiche topologie broadcast :
bus, implementata dallo standard IEEE 802.3 (ethernet)
anello, implementata dallo standard IEEE 802.5 (token ring)
Stazione di lavoro

Server
Stazione di lavoro Stazione di lavoro Stazione di lavoro
Server
Stampante
Stampante

Rete ad anello

Rete a Bus

Stazione di lavoro

© 2005 – Alessandro Longheu


Classificazione - 5

 Nelle reti punto-punto la comunicazione è ancora basata


su piccole sequenze di dati (pacchetti).
 Per arrivare alla sua destinazione, ogni pacchetto deve
attraversare più calcolatori
 Sono anche dette reti store-and-forward o packet-
switched (commutazione di pacchetto)
 In generale esistono molti percorsi che portano alla stessa
destinazione, quindi è necessario sceglierne uno: routing
(instradamento) dei pacchetti.

© 2005 – Alessandro Longheu


Classificazione - 6
 In base alla scala dimensionale, le reti si possono
classificare in:
 reti locali
 reti metropolitane
 reti geografiche
Distanza Ambito Tipo di rete
1m 1 mq rete locale personale
10 m stanza rete locale (LAN)
100 m edificio rete locale (LAN)
1 km campus rete locale (LAN)
10 km città rete metropolitana (MAN)
100 km nazione rete geografica (WAN)
1000 km continente rete geografica (WAN)
10 000 km pianeta rete di reti geografiche (Internet)
© 2005 – Alessandro Longheu
Reti locali
LAN (Local Area Network)

 Hanno una dimensione massima prefissata


(fino a pochi chilometri), quindi si conosce il
ritardo massimo di un pacchetto
 Hanno un basso tasso d’errore
 Sono generalmente di tipo broadcast, con una
velocità di trasmissione da 10 Mbps a 10 Gbps.
 Sono in genere basate su topologia a bus oppure
ad anello (ring)

© 2005 – Alessandro Longheu


Reti metropolitane
MAN (Metropolitan Area Network)

 Hanno una dimensione ben superiore


alle LAN, coprono una intera città
 Negli Stati Uniti le prime MAN sono
nate sfruttando la preesistente rete di
televisione via cavo, riadattata per
trasmissioni bidirezionali.

© 2005 – Alessandro Longheu


Reti geografiche
WAN (Wide Area Network) - 1
 Possono estendersi per intere nazioni o
continenti, o su scala planetaria
 Sono costituite da due componenti distinte:
 un insieme di elaboratori detti host (i
calcolatori che si intendono effettivamente
collegare)
 una communication subnet che connette gli
host tra di loro, costituita da:
 linee di trasmissione (anche dette canali o trunk)
 elementi di commutazione (anche detti switching
element o router)

© 2005 – Alessandro Longheu


Reti geografiche
WAN (Wide Area Network) - 2
 Una WAN collega solitamente più LAN e
MAN tra loro
 La communication subnet è in genere
realizzata con una topologia punto-punto
SubNet
ROUTER

Server
Stazione di lavoro Stazione di lavoro Stazione di lavoro
Stampante

Server
Stazione di lavoro Stazione di lavoro Stazione di lavoro
Stampante

Rete a Bus

LAN
Rete a Bus

LAN

© 2005 – Alessandro Longheu


Reti geografiche
WAN (Wide Area Network) - 3

Alcune communication subnet sono realizzate


con topologia wireless oppure mista (ad es.,
quando basate su trasmissioni radio o
satellitari). In tali casi possono essere in
topologia broadcast

m
b ea
li nk Satellite
Up m
ea
kb
lin
wn
Do

Router + Antenna Router + Antenna Router + Antenna Router + Antenna Router + Antenna

© 2005 – Alessandro Longheu


Internetworking
 Si ha internetworking quando due o più reti (LAN,
MAN, o WAN) sono connesse tra loro.
 Una internetwork (o semplicemente internet) non
coincide con una WAN quando le reti connesse
adottano tecnologie tra loro incompatibili
 in questo caso la internetwork comprende alcuni router
detti gateway (o anche router multiprotocollo) che si
occupano di effettuare le necessarie trasformazioni per i
pacchetti che transitano da una rete all’altra
 Internet è una particolare internetwork

© 2005 – Alessandro Longheu


Reti wireless - 1

 Comunicazione con segnale radio od ottico (laser,


infrarosso) nell’etere. Generalmente con canale di
comunicazione condiviso per segnali radio, con canale
di comunicazione “punto-punto” per segnali ottici
 Il tasso d’errore della trasmissione è molto alto
 Usate per mobile computing e integrazione con la
telefonia cellulare e satellitare
 Quasi tutte le reti wireless si interfacciano con la rete
fissa (wired) preesistente

© 2005 – Alessandro Longheu


Reti wireless - 2
 Categorie di reti wireless
 Connessioni all’interno di un sistema
 Wireless LAN

 Wireless WAN

© 2005 – Alessandro Longheu


Reti wireless - 3

Wireless Bluetooth:
poca distanza

bassa velocità

paradigma master-slave

© 2005 – Alessandro Longheu


Reti wireless - 3

Wireless LAN
 uso di modem radio

 stazione base o P2P

© 2005 – Alessandro Longheu


Reti wireless - 4

Wireless WAN
 rete per cellulari

 tre generazioni: analogica, digitale voce, digitale


voce e dati
 rispetto alle wireless LAN, hanno banda ridotta
(1Mbps vs 50Mbps) ma distanze molto
maggiori (km anzichè m)
 in futuro è prevista la banda larga a grandi
distanze (IEEE 802.16)
© 2005 – Alessandro Longheu
Reti domestiche - 1

Consentono il collegamento di svariati dispositivi:


 Computer (desktop PC, PDA, periferiche condivise)

 Intrattenimento (TV, DVD, VCR, videocamera, stereo, MP3)

 Telecomunicazioni (telefoni, telefoni cellulari, citofoni, fax)

 Elettrodomestici (microonde, frigoriferi, orologi,


condizionatori, lampade)
 Telemetria (contatori, allarmi, sistemi di sorveglianza)

© 2005 – Alessandro Longheu


Reti domestiche - 2

Una rete domestica vincente deve garantire:


 facilità di installazione (no reinstallazioni frequenti)

 facilità d’uso

 basso prezzo

 supporto per multimedialità

 supporto standard (IEEE 1394 vs USB 2.0)

 scalabilità (espandibilità)

 sicurezza

Wireless (basso costo ma potenzialmente insicura) o wired?


© 2005 – Alessandro Longheu
Software di rete

 Strati, protocolli, interfacce


 Progettazione degli strati
 Servizi e primitive
 Relazione fra servizi e protocolli

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce

 Per facilitare la progettazione, la verifica,


l’implementazione ed il testing, le reti sono
organizzate in livelli o strati (layers), ciascuno dei
quali è costruito sopra il precedente
 Lo scopo di ogni livello è fornire servizi al livello
immediatamente superiore, nascondendo i dettagli su
come tali servizi sono implementati
 Ciascun tipo di rete ha:
 un diverso numero di livelli
 diversi nomi e funzioni associati a ciascun livello

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce
Location A Location B

I like J'aime
Message Philosopher
rabbits bien les
lapins
3 3

Information
L: Dutch for the remote Translator L: Dutch
Ik vind translator Ik vind
konijnen konijnen
2 2
leuk leuk

Information
Fax #--- for the remote Fax #---
L: Dutch secretary Secretary L: Dutch
Ik vind Ik vind
1 1
konijnen konijnen
leuk leuk

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce
Host 1 Host 2

Protocollo di livello 5
Livello 5 Livello 5

Interfaccia livello 4/5 Interfaccia livello 4/5

Protocollo di livello 4
Livello 4 Livello 4

Interfaccia livello 3/4 Interfaccia livello 3/4

Protocollo di livello 3
Livello 3 Livello 3

Interfaccia livello 2/3 Interfaccia livello 2/3

Protocollo di livello 2
Livello 2 Livello 2

Interfaccia livello 1/2 Interfaccia livello 1/2

Protocollo di livello 1
Livello 1 Livello 1

Mezzo Fisico

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce

 Il livello n su un host “dialoga” con il livello n di un


altro host (solo logicamente!)
 Regole e convenzioni della comunicazione a livello n
sono indicate col termine protocollo di livello n
 Si determina in tal modo una gerarchia di
protocolli (protocol hierarchies)
 Le entità logiche che portano avanti la
conversazione a livello n sono dette peer entity
(entità di pari livello)
 Ciascuna peer entity di livello n porta avanti il
dialogo utilizzando i servizi offerti dal livello n - 1

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce
 Fra ogni coppia di livelli adiacenti c’è una interfaccia
 L’interfaccia definisce:
 i servizi offerti dal livello sottostante
 le operazioni primitive che possono essere richieste al livello
sottostante
 Analogia con i sistemi operativi: l’interfaccia tra il livello
superiore e quello inferiore è simile alle API (funzioni di
libreria e chiamate di sistema) tra i programmi
applicativi ed il sistema operativo

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce

© 2005 – Alessandro Longheu


Strati, Protocolli, Interfacce

 Una collezione di livelli e relativi protocolli è chiamata


architettura di rete
 Due host possono dialogare anche se utilizzano diverse
piattaforme hardware e diversi sistemi operativi,
purchè adottino la stessa architettura di rete
 L’insieme dei protocolli di una architettura utilizzati su
un certo host viene detto pila di protocolli (protocol
stack).
 In generale, non è detto che ci sia un protocollo per
ogni livello.
© 2005 – Alessandro Longheu
Progettazione degli strati
Problemi da affrontare:
 Addressing (indirizzamento host)
 Mono- o Bi- direzionale
 Numero canali logici
 Error Control (perdita pacchetti)
 Order Control (sequenza di pacchetti)
 Flow Control (sincronizzazione host)
 Fragmenting-Assembling
 Multiplexing (condivisione canale)
 Routing
© 2005 – Alessandro Longheu
Servizi e Primitive
Gli strati possono offrire due tipi di servizi ai livelli sovrastanti:
 Connection-oriented (canale dedicato da negoziare)
 Connection-less (canale non dedicato)
Per ognuno esistono diverse qualità del servizio:

Servizio Esempio
Flusso affidabile (conferma ricezione) di Sequenza di pagine
messaggi (preserva confini)
orientato alla
connessione Flusso affidabile di byte Login remoto
Connessione inaffidabile (senza ritardo Voce digitalizzata
dovuto alla conferma)
Datagram inaffidabile e-mail spazzatura
senza
connessione Datagram con conferma Posta raccomandata
Request-Reply Interrogazione database
© 2005 – Alessandro Longheu
Servizi e Primitive

 Un servizio è formalmente specificato da un


insieme di primitive, ossia le operazioni a
disposizione per accedere al servizio
 Le primitive di solito sono chiamate di sistema
o funzioni del kernel
 Le primitive per un servizio di tipo connection-
oriented sono diverse dalle primitive per un
servizio connection-less.

© 2005 – Alessandro Longheu


Servizi e Primitive

Esempio di primitive che implementano un


servizio connection oriented

server
client
server
client
server
© 2005 – Alessandro Longheu
Servizi e Primitive

 Pacchetti trasmessi in una interazione client-server


in una rete connection-oriented.

© 2005 – Alessandro Longheu


Servizi e Primitive

 Le primitive per un servizio connection less


potrebbero essere soltanto due (REQUEST e
REPLY ad esempio), tuttavia nel mondo reale un
protocollo di questo tipo risulta spesso
inadeguato (errori di trasmissione, perdita
messaggi), da cui la coesistenza di entrambe le
tipologie di servizio

© 2005 – Alessandro Longheu


Relazione tra servizi e protocolli
 Fissato un layer, le entità locale e remota comunicano tramite un
protocollo
 La loro comunicazione consente ad entrambi di implementare il
servizio che pretendono di offrire ai livelli superiori
 Mantenere separati servizio e protocollo permette la gestione
(aggiornamento, modifica) del protocollo senza impattare sul
servizio offerto

© 2005 – Alessandro Longheu


Architetture di rete - 1

 Una architettura di rete può essere:


 proprietaria
 standard de facto
 standard de iure

© 2005 – Alessandro Longheu


Architetture di rete - 2
Architetture proprietarie
 Basate su scelte indipendenti ed arbitrarie di un
costruttore
 Generalmente incompatibili con architetture differenti
 Raramente le specifiche sono rese pubbliche

 Esempi: IBM SNA (Systems Network Architecture),


Digital Decnet Phase IV, Novell IPX, Appletalk

© 2005 – Alessandro Longheu


Architetture di rete - 3
Architetture standard de facto
 Basate su specifiche di pubblico dominio
 Largamente adottate a livello mondiale

 Esempio: Internet Protocol Suite (TCP/IP)

© 2005 – Alessandro Longheu


Architetture di rete - 4
Architetture standard de jure
 Basate su specifiche pubbliche
 Approvate da enti internazionali di standardizzazione

 Esempi: standard IEEE 802 (LAN), architettura OSI


(Open Systems Interconnection), Decnet Phase V

© 2005 – Alessandro Longheu


Architetture di rete - 5

Considerando solo le architetture standard:


 ISO Reference Model – OSI (de jure), modello valido
ma protocolli in disuso
 Internet Protocol Suite – TCP/IP (de facto), modello
inesistente, ma protocolli realmente utilizzati

© 2005 – Alessandro Longheu


OSI Reference model – 1

 Il modello di riferimento Open Systems


Interconnection (OSI) è stato prodotto dalla
International Standard Organization (ISO)
 standard de iure per la connessione dei sistemi
aperti
 modello comune per confrontare le diverse
architetture di rete
 non definisce protocolli specifici (tuttavia, ISO
ha pubblicato standard separati per ogni strato)
© 2005 – Alessandro Longheu
OSI Reference model – 2

I principi guida del progetto OSI sono:


 Ogni livello deve avere un diverso livello di astrazione

 Ogni livello deve avere una funzione ben definita

 I livelli devono essere tali da:

 minimizzare il passaggio di informazioni tra i livelli


 evitare troppe funzioni in un livello
 evitare troppi livelli

© 2005 – Alessandro Longheu


OSI Reference model – 3

© 2005 – Alessandro Longheu


OSI Reference model – 4
Physical layer:
 Ha a che fare con la trasmissione di bit “grezzi” sul
mezzo fisico:
 deve fare in modo che se parte un bit “1”, arriva un bit “1”, e
non un bit “0”, e viceversa
 Tipiche specifiche definite dal livello:
 tensioni scelte per rappresentare 0 ed 1
 durata di un bit
 modalità di trasmissione simultanea
 forma dei connettori

© 2005 – Alessandro Longheu


OSI Reference model – 5
Data Link Layer:
 Il suo scopo principale è rilevare gli errori presenti nel mezzo
trasmissivo. Per raggiungere lo scopo:
 raggruppa i bit da inviare in PDU chiamate frame (100-1000 byte) e
aggiunge delimitatori al frame (framing)
 invia i frame in sequenza
 Aspetta un acknowledgment frame (ack) per i frame inviati (se è
richiesto un servizio affidabile)
 Gli errori possibili sono:
 errori in ricezione (un frame non viene completato)
 perdita di frame (timeout per un ack)
 duplicazione di frame (dovuta a perdita di un frame di ack)
 Oltre il controllo di errore, realizza il controllo di flusso
 Nelle reti broadcast, si occupa anche dell’accesso al canale
condiviso (sottostrato Medium Access Control o MAC)
© 2005 – Alessandro Longheu
OSI Reference model – 6
Network Layer:
 Controlla il funzionamento della communication
subnet.
 Nelle reti broadcast è molto ridotto o assente
 Alcune delle sue funzioni:
 routing dei pacchetti:
 routing statico (fissato ogni tanto e raramente variabile)
 routing dinamico (continuamente aggiornato fra un pacchetto
all’altro)
 gestione della congestione della communication subnet
 accounting (contabilizzazione) del traffico
 conversione di dati nel passaggio fra una rete ed un’altra
(indirizzi da rimappare, pacchetti da frammentare, protocolli
diversi da gestire, . . . ) © 2005 – Alessandro Longheu
OSI Reference model – 7
Transport Layer:
Fornisce un servizio punto-punto affidabile fra due entità (isola
quindi i livelli superiori dalla tecnologia particolare della rete
sottostante). Per ottenere questo:
 Frammenta i dati che arrivano dal livello superiore in pacchetti
 Trasmette i dati alla peer entity finale
 Utilizza connessioni di livello network:
 una connessione network per una connessione transport
 molte connessioni network per una conness. transport (alto
throughput)
 una connessione network per molte connessioni transport
(multiplexing)
 Controlla la congestione (flow control)
 Offre varie tipologie di servizio (connection-oriented affidabile,
connectionless, broadcasting,. . . ) © 2005 – Alessandro Longheu
OSI Reference model – 8
Session Layer
 Permette agli utenti su diversi calcolatori di stabilire
sessioni di lavoro tra di loro
 Una sessione è analoga ad una connessione
transport, però può fornire servizi supplementari
quali:
 controllo del dialogo (gestione turni di trasmissione)
 sincronizzazione tra applicazioni basata su token
management
 frammentazione di lunghe attività (ad esempio,
trasferimento di file) in tronconi rieseguibili
indipendentemente

© 2005 – Alessandro Longheu


OSI Reference model – 9
Presentation Layer
 Si occupa della sintassi e della semantica
delle informazioni da trasferire
 Servizi tipicamente svolti:
 nell’host di partenza, convertire tipi di dati
standard (stringhe, interi, . . . ) in una
rappresentazione comune “on the wire”
 nell’host di arrivo, convertire la rappresentazione
“on the wire” dei tipi di dati standard nella
rappresentazione specifica dell’host
© 2005 – Alessandro Longheu
OSI Reference model – 10
Application Layer
 Fornisce tutti i protocolli utilizzati dalle
applicazioni comunemente usate dall’utente.
 Ad esempio:
 Posta elettronica
 Terminale virtuale
 Trasferimento di file
 World Wide Web
 …
© 2005 – Alessandro Longheu
TCP/IP – 1
 Internet deriva da ARPANET, una rete geografica di
derivazione militare americana
 L’obiettivo fondamentale era l’affidabilità: la rete
doveva continuare a funzionare anche se intere
porzioni di essa fossero state distrutte
 Col tempo, Internet si è diffusa in tutto il mondo ed ha
acquisito la capacità di integrare reti utilizzanti ogni
tipo di tecnologia ed architettura
 L’architettura di Internet è chiamata Internet
Protocol Suite, ed anche, impropriamente,
architettura TCP/IP e TCP/IP reference model

© 2005 – Alessandro Longheu


TCP/IP – 2
OSI Model TCP/IP Model

APPLICATION APPLICATION

PRESENTATION

SESSION

TRANSPORT TRANSPORT

NETWORK INTERNET

DATA LINK
HOST-TO-NETWORK
PHYSICAL

© 2005 – Alessandro Longheu


TCP/IP – 3
Livello Host-to-network:
 Corrisponde ai livelli Fisico e Data Link del
modello OSI
 L’architettura TCP/IP non specifica nulla in
questo livello: deve solo garantire che il
calcolatore possa trasmettere pacchetti sulla
rete
 I protocolli utilizzati possono dunque variare
da calcolatore a calcolatore e da rete a rete
© 2005 – Alessandro Longheu
TCP/IP – 4
Livello Internet:
 E’ il livello fondamentale dell’architettura:
permette agli host di inviare pacchetti su
qualunque rete e instradarli verso la loro
destinazione.
 Definisce un formato standard dei pacchetti
 Definisce un protocollo chiamato IP
(Internet Protocol)
 Principalmente svolge compiti di routing dei
pacchetti e controllo della congestione
© 2005 – Alessandro Longheu
TCP/IP – 5
Livello Transport:
 Consente la comunicazione tra le peer entity
degli host sorgente e destinazione (“end-to-
end”)
 Sono definiti due diversi servizi, con relativi
protocolli:
 un servizio connection-oriented affidabile (TCP)
 un servizio connectionless non affidabile (UDP)

© 2005 – Alessandro Longheu


TCP/IP – 6
 Il servizio connection-oriented è affidabile ed
è definito da un protocollo chiamato TCP
(Transmission Control Protocol)
 Il servizio riceve un flusso di dati e lo
spezzetta in pacchetti, che vengono
ricomposti in ordine e senza errori dall’entità
di pari livello sull’host destinazione
 Il servizio gestisce anche il controllo della
velocità di trasmissione (flow control)
© 2005 – Alessandro Longheu
TCP/IP – 7
 Il servizio connectionless è non affidabile ed è
definito da un protocollo chiamato UDP
(User Datagram Protocol)
 Il servizio riceve un pacchetto che invia
all’entità di pari livello sull’host destinazione
 I pacchetti possono arrivare in ordine diverso
da quello dell’invio, o non arrivare affatto

© 2005 – Alessandro Longheu


TCP/IP – 8
Livello Application:
 Fornisce tutti i protocolli utilizzati dalle applicazioni
 Poiché mancano i livelli OSI Session e Presentation, le
relative funzionalità devono essere realizzate
direttamente dalle applicazioni che le richiedono
(nessun supporto è fornito dall’architettura)
 I primi servizi offerti, con relativi protocolli, erano:
 terminale virtuale TELNET
 trasferimento di file FTP (File Transfer Protocol)
 trasferimento di messaggi UUCP (Unix to Unix Copy
Protocol)
 posta elettronica SMTP (Simple Mail Transfer Protocol)
© 2005 – Alessandro Longheu
TCP/IP – 9
 Successivamente sono stati aggiunti al livello molti
altri servizi, quali:
 indirizzi simbolici DNS (Domain Name Service)
 sincronizzazione temporale NTP (Network Time Protocol)
 booting via rete BOOTP (BOOTstrap Protocol)
 prelievo di posta elettronica POP (Post Office Protocol)
 news NNTP (Network News Transfer Protocol)
 esecuzione remota di procedure RPC (Remote Procedure
Call)
 World Wide Web HTTP (HyperText Transfer Protocol)

© 2005 – Alessandro Longheu


Confronto TCP/IP vs OSI – 1
 Confronto fra i modelli e non fra i protocolli
 OSI distingue fra servizi, interfacce e protocolli, TCP/IP no
 OSI è stato inventato prima dei corrispondenti protocolli, il modello
TCP/IP è nato in seguito, quindi OSI è generico ma vago, TCP/IP
specifico ma non applicabile ad altre reti.
 Il numero di strati è differente
 OSI fornisce servizi connection-oriented e connection-less nello
strato di network, ma solo c-oriented nello strato di trasporto,
mentre TCP/IP offre solo c-less nello strato di network e sia c-
oriented che c-less nello strato di trasporto (il più importante per le
applicazioni)

© 2005 – Alessandro Longheu


Confronto TCP/IP vs OSI – 2
Il modello OSI non ha avuto successo a causa di:
 Poca tempestività (apocalisse dei due elefanti)
 Tecnologia scadente (modello troppo complesso e non sempre
efficiente)
 Implementazioni carenti
 Incapacità politica (promosso da burocrati, odiato dai ricercatori)

© 2005 – Alessandro Longheu


Confronto TCP/IP vs OSI – 3
 Il modello TCP/IP ha avuto successo, tuttavia:
 Servizi, interfacce e protocolli non sono distinti
 Non è un modello di validità generale
 Il livello host-to-network non è ben definito
 Il livello fisico e data-link non sono ben distinti
 L’implementazione dei protocolli in alcuni casi
non è adeguata

© 2005 – Alessandro Longheu


Confronto TCP/IP vs OSI – 4
In conclusione:
 il modello OSI è valido, i suoi protocolli no

 il modello TCP/IP non è adatto, i suoi protocolli sono molto

usati
Si adotta quindi un modello ibrido:

© 2005 – Alessandro Longheu


Esempi di reti – 1

 Internet
 Connection-Oriented Networks:
X.25, Frame Relay, and ATM
 Ethernet

 Wireless LAN: 802.11

© 2005 – Alessandro Longheu


Esempi di reti – 2
Internet:
 Negli anni ’50 gli USA temevano che un attacco nucleare

sovietico potesse distruggere le loro comunicazioni militari,


che poggiavano sulla rete telefonica (gerarchica e senza
ridondanza)
 Il Dipartimento della Difesa (DOD) affida alla società RAND

il compito di trovare una soluzione alternativa: una rete


digitale a commutazione di pacchetto e distribuita
 Il progetto vede la luce solo dopo la costituzione
dell’Advanced Reasearch Project Agency (ARPA): nascita di
ARPANET (1969), e del TCP/IP (1974)
© 2005 – Alessandro Longheu
Esempi di reti – 3
Caratteristiche di ARPANET:
 I nodi principali (Interface Message Processors) sono
minicomputer con memoria a nuclei magnetici da 12K
 Gli IMP sono collegati da linee a 56 kbps

 Si usano quattro protocolli: IMP-IMP, IMP sorgente-


destinazione, IMP-host, host-host

© 2005 – Alessandro Longheu


Esempi di reti – 4
 Per collegarsi ad ARPANET, le università dovevano avere un
contratto con il DOD
 Per ampliare le possibilità, il National Science Fundation
(NSF) crea una rete WAN aperta a tutte le università, basata
su TCP/IP: nasce NFSNET
 I nodi (fuzzball) sono microcomputer collegati da linee a 56
kbps, che vennero ampliate a 448 kbps, 1.5 Mbps, 45Mbps
(1990)
 Ingresso delle organizzazioni commerciali ed uscita del
governo USA dalla gestione: da NSFNET ad ANSNET (gestita
da un consorzio fra Merit, MCI ed IBM), venduta ad America
On Line (AOL) nel 1995
 Reti analoghe nel resto del mondo, ad esempio EuropaNET
ed EBONE in Europa, con linee inizialmente da 2 Mbps e poi
da 34 Mbps © 2005 – Alessandro Longheu
Esempi di reti – 5
 Nel 1983, il TCP/IP divenne il protocollo ufficiale e
NFSNET ed ARPANET vennero interconnesse: nella
metà degli anni ’80 nasce il termine Internet
 Un pc è “su Internet” se è in esecuzione la pila di
protocolli TCP/IP, ha un indirizzo IP, ed è in grado di
scambiare pacchetti con tutti gli altri pc
 I primi usi di Internet: posta elettronica, newsgroup, login
remoto, trasferimento file
 Nascita del WWW nel 1990 al CERN ad opera di Tim
Berners-Lee

© 2005 – Alessandro Longheu


Esempi di reti – 6
Architettura di Internet

© 2005 – Alessandro Longheu


Esempi di reti – 7
X-25, Frame-Relay e ATM:
 Internet promuoveva i servizi senza connessione per
favorire la tolleranza ai guasti
 Le società telefoniche favorivano invece le reti orientate
alla connessione per garantire una migliore qualità
(preallocazione delle risorse in fase di negoziazione del
canale) e per potere gestire la tariffazione
 Internet andrà in questa direzione per migliorare I flussi
audio-video
© 2005 – Alessandro Longheu
Esempi di reti – 8
X-25, Frame-Relay
 X-25 fu la prima rete dati pubblica connection-
oriented, attivata negli anni ’70
 l’host che desidera comunicare con un host remoto
effettua una telefonata per stabilire la connessione,
alla quale viene assegnato un numero (12 bit) che
identifica i relativi pacchetti
 Negli anni ’80, x-25 fu ampiamente sostituita dal
frame-relay, che è connection-oriented ma senza
controllo di flusso o errore
 Adatta per l’interconnessione di LAN, è usata ancora
oggi
© 2005 – Alessandro Longheu
Esempi di reti – 9
ATM
 ATM (Asynchronous Transfer Mode) fu presentata

negli anni ’90 come una rete connection-oriented in


grado di integrare voce, video, dati fornendo elevate
prestazioni
 Fu un fallimento, con cause simili a quelle del modello

OSI, tuttavia è molto usata ancora oggi dalle


compagnie telefoniche, solitamente nei circuiti di
collegamenti interni dei carrier per il trasporto di
pacchetti IP

© 2005 – Alessandro Longheu


Esempi di reti – 10
ATM
 ATM opera tramite connessioni denominate circuiti virtuali
 I dati sono trasmessi in unità chiamate celle, di piccole dimensioni (53 byte)
per essere inoltrate direttamente in hardware dai router e per impegnare poco
la linea
 ATM prevede il multicast hardware (copia della cella su più uscite)
 ATM fa viaggiare le celle con destinazione comune sullo stesso percorso. Non è
garantita la consegna ma lo è l’ordine (TCP/IP non garantisce nemmeno quello)
 La velocità è di 155Mbps (per trasmettere tv ad alta definizione). Esiste anche
da 622Mbps (4 canali da 155Mbps) o superiori

© 2005 – Alessandro Longheu


Esempi di reti – 11
Modello ATM, diverso da OSI e TCP/IP

© 2005 – Alessandro Longheu


Esempi di reti – 12
Modello ATM - 2

© 2005 – Alessandro Longheu


Esempi di reti – 13
Modello ATM - 3
 Tre dimensioni per diverse categorie di
utilizzatori: utenti (trasporto dati), controllo
(gestione connessione), gestione strati e
plane (coordinamento strati, allocazione
risorse)
 trasmissione in pacchetti affidata al livello di
adattamento AAL: SAR per assemblare e
disassemblare pacchetti in celle, CS per
fornire servizi diversi ad applicazioni diverse
(voce, video) © 2005 – Alessandro Longheu
Esempi di reti – 14
Ethernet:
 Ethernet nacque dalla rete Hawaiiana, ALOHANET (primi anni ’70),
basata su due canali radio, upstream e downstream
 Nata nel 1976, Ethernet è basata su un cavo condiviso per 256 host,
lungo fino a 2.5Km con ripetitori ogni 500m ed una banda di 2.94Mbps
 Rispetto ad Alohanet, gli host ascoltano prima di trasmettere ed
interrompono e posticipano la trasmissione in caso di collisione
(protocollo Carrier sense multiple access collision detection CSMA-CD)
 Nel 1983 nasce l’Ethernet standard a 10Mbps, IEEE 802.3

© 2005 – Alessandro Longheu


Esempi di reti – 15
 Ethernet è de facto lo standard per le LAN, ma altre
proposte sono esistite
 Token Bus (IEEE 802.4), promossa da General
Motors, basata su un unico cavo (stessa topologia
di Ethernet), ma per trasmettere occorre essere in
possesso di un pacchetto (token)
 Token Ring (IEEE 802.5), promossa da IBM,
simile al token bus ma il token viene propagato
lungo la rete, e trattenuto e successivamente
rilasciato dall’host che trasmette
© 2005 – Alessandro Longheu
Esempi di reti – 16
Wireless network:
 nate nella metà degli anni ’90 (IEEE 802.11), le reti
wireless consentono la connessione via radio, in
presenza di una stazione base (access point) o meno
(ad-hoc networking)
 compatibile con Ethernet dal terzo livello (network)

© 2005 – Alessandro Longheu


Esempi di reti – 17
Problemi del wireless:
 portata trasmettitori (non applicabile l’ascolto del canale
presente in Ethernet)
 riflessione segnale radio (multipath fading)

 software non progettato per la mobilità

 riassociazione host – access point per host in movimento

Dopo la prima versione a 2Mbps, gli standard proposti sono:


 802.11b (primo proposto), 11Mbps a 2.4Ghz

 802.11a, 54Mbps a 5Ghz

 802.11g, 54Mbps a 2.4Ghz


© 2005 – Alessandro Longheu
Standardizzazione delle reti – 1

Standardizzazione su tre fronti:


 telecomunicazioni

 standard

 internet

© 2005 – Alessandro Longheu


Standardizzazione delle reti – 2
Telecomunicazioni:
 situazione: da un lato gli USA, fortemente privatizzate
(AT&T), dall’altro monopoli nazionali.
 Si va comunque verso la liberalizzazione del mercato,
quindi è richiesta la compatibilità
 l’esigenza di compatibilità nasce già nel 1865, e portò alla
nascita dell’ITU (International Telecommunication
Union), divisa nei settori radio (ITU-R), telecomunicazioni
(ITU-T) e sviluppo (ITU-D)
 L’ITU-T è anche nota come CCITT, ed emana
raccomandazioni per telegrafia, telefonia e trasmissione
dati
© 2005 – Alessandro Longheu
Standardizzazione delle reti – 3
Standard:
 ISO, nata nel 1946, che include membri come
ANSI (USA), BSI (UK), AFNOR (Francia) e
DIN (Germania)
 ISO e ITU-T cooperano per gli standard in
telecomunicazioni
 Altri organismi sono il NIST (National Institute
of Standards and Technology), ex National
Bureau of Standards, e l’IEEE (Institute of
Electrical and Electronics Engineers)
© 2005 – Alessandro Longheu
Standardizzazione delle reti – 4

© 2005 – Alessandro Longheu


Standardizzazione delle reti – 5
Internet:
 creazione dell’Internet Activity Board (IAB)
nel 1983
 Lavoro basato su rapporti tecnici noti come
Request for comments (RFC)
 Nel 1989, IAB viene diviso in IRTF (Internet
Reasearch Task Force) e IETF (Internet
Engineering Task Force), che si occupano
rispettivamente di ricerca e sviluppo
© 2005 – Alessandro Longheu

Potrebbero piacerti anche