Reti

Transcript

Reti
Introduzione alle reti
Sommario:
! cosa e’ Internet
! cosa e’ un protocollo
! estremita’ della rete
! nucleo della rete
! rete di accesso, mezzi fisici
! performance: perdita, ritardo
! livelli dei protocolli, modelli di
servizio
! backbones, NAPs, ISPs
! storia
Introduction
Kurose, Ross, Internet e reti di calcolatori
1
Internet: visione fisica
! milioni di dispositivi di calcolo :
router
hosts, end-systems (terminali)
!
!
pc’s workstations, servers
PDA’s phones, toasters
su cui girano
applicazioni di rete
! communication links
(collegamenti)
!
!
server
workstation
mobile
local ISP
regional ISP
fibra di vetro, rame, radio,
satellite
routers: spediscono pacchetti
(chunks) di dati attraverso la
rete
company
network
Introduction
Kurose, Ross, Internet e reti di calcolatori
2
Internet: visione fisica
! protocolli: regole per
router
controllare lo scmabio di
messaggi:
!
e.g., TCP, IP, HTTP, FTP, PPP
! Internet: “rete di reti”
! debolmente gerarchica
! Internet pubblica versus
intranet privata
! Internet standards
! RFC: Request for comments
! IETF: Internet Engineering
Task Force
server
workstation
mobile
local ISP
regional ISP
company
network
Introduction
Kurose, Ross, Internet e reti di calcolatori
3
Internet: visione orientata ai servizi
! Infrastruttura di
communicazione permette
applicazioni distribuite:
!
!
WWW, email, giochi, ecommerce, database, voto
elettronico,
more?
! Servizi di comunicazione
forniti:
!
!
senza connessione
orientati alla connessione
! cyberspace [Gibson]:
“a consensual hallucination experienced
daily by billions of operators, in every
nation, ...."
Introduction
Kurose, Ross, Internet e reti di calcolatori
4
Cosa e’ un protocollo?
Protocolli umani:
! “che ora e’?”
! “I have a question”
! introduzioni
… specifici msg spediti
… specificche azioni
intraprese quando i
msg sono ricevuti
Protocolli di rete:
! macchine (invece che
umani)
! tutta l’attivita’ di
communicazione in Internet
regolata da protocolli
I protocolli definiscono il formato
e l’ordine dei msg spediti fra
entita’ di rete, e le azioni da
fare alla trasmissione o al
ricevimento di msg
Introduction
Kurose, Ross, Internet e reti di calcolatori
5
Cosa e’ un protocollo?
Un protocollo umano ed un protocollo di rete:
Ciao
TCP connection
req.
Ciao
TCP connection
reply.
Che ora e’ ?
Get http://gaia.cs.umass.edu/index.htm
2:00
<file>
time
Q: Altri protocolli umani ?
Introduction
Kurose, Ross, Internet e reti di calcolatori
6
La struttura della rete
! Estremita’ della rete:
applicazioni e host
! nucleo della rete:
routers
! rete di reti
!
! rete di accesso e
mezzi fisici:
communication links
(collegamenti)
Introduction
Kurose, Ross, Internet e reti di calcolatori
7
Le estremita’ della rete:
! end systems (hosts,
terminali):
!
!
!
ci ``girano’’ i programmi
applicativi
e.g., WWW, email
at “edge of network”
! modello client/server
!
!
il client richiede e riceve servizi
dal server
e.g., WWW client (browser)/
server; email client/server
! peer-peer model:
!
!
interazioni simmetrica fra host
``pari’’
e.g.: teleconferenza
Introduction
Kurose, Ross, Internet e reti di calcolatori
8
Servizio orientato alla connessione
Scopo: trasferimento di dati
fra end-systems
(terminali).
! handshaking: fase di
preparazione prima del
trasferimento dei dati:
!
!
!
Ciao -- Ciao
(protocollo umano)
prepara lo ``stato’’ in due
terminali che devono
comunicare
! TCP - Transmission Control
Protocol
!
e’ il servizio orientato alla
connessione di Internet
Servizio fornito daTCP [RFC
793]
! traserimento di byte-stream
affidabile e ordinato
!
!
controllo del flusso:
!
!
perdita: segnali di ack
(riscontro) e ritrasmissione
il sender non sovraccarica il
receiver
controllo congestione:
!
sender rallenta la velocita’ di
invio se la rete e’
congestionata
Introduction
Kurose, Ross, Internet e reti di calcolatori
9
Servizio senza connessione
Scopo: trasferimento di dati
fra terminali (come prima)
! UDP - User Datagram
Protocol [RFC 768]: e’ il
servizio senza connessione di
Internet
! trasferimento dati
inaffidabile
! no controllo flusso
! no controllo congestione
Applicazioni che usano
TCP:
! HTTP (WWW), FTP
(file transfer), Telnet
(remote login), SMTP
(email)
Applicazioni che
usanoUDP:
! app. multimediali,
teleconferenze,
telefonia via Internet ..
Introduction
Kurose, Ross, Internet e reti di calcolatori
10
Il nucleo della rete
! mesh (maglia) di routers
interconessi
! domanda di base: come sono
trasferiti idati attraverso la
rete ?
! Commutazione di circuito:
un circuito dedicato per
chiamata (rete telefonica)
! commutazione di
pacchetto: dati spediti
attraverso la rete in
pacchetti discreti
Introduction
Kurose, Ross, Internet e reti di calcolatori
11
Commutazione di circuito
Risorse riservate per
ogni ‘’chiamata’’
! capacita’ del circuito = 1/n
banda del link
! risorse mantenute per
tutto il collegamento
(nessuna condivisione)
! performance (garantita)
simile ad un circuito fisico
! richiesta fase di
inizializzazione della
chiamata (call-setup)
Introduction
Kurose, Ross, Internet e reti di calcolatori
12
Commutazione di pacchetto
end-end data stream diviso a
pachetti
! pacchetti di utenti diversi
condividono le risorse
! ogni pacchetto usa tutta la
banda del link
! risorse usate in base al bisogno
Divisione della banda in
parti
allocazione dedicata
prenotazione risorse
Competizione per risorse:
! la domanda totale puo’
eccedere la disponibilita’
! congestione: pacchetti si
accodano aspettando di
usare il link
! store and forward: packets
si muovono un passo alla
volta:
! trasmetti sul link
! aspetta il turno al
prossimo link
Introduction
Kurose, Ross, Internet e reti di calcolatori
13
Commutazione di pacchetto
10 Mbs
Ethernet
A
B
statistical multiplexing
C
1.5 Mbs
Coda di pacchetti
in attesa per il link
di output
D
45 Mbs
E
Commutazione di pacchetto -- commutazione di
circuito: analogia con il ristorante
! altre ?
Introduction
Kurose, Ross, Internet e reti di calcolatori
14
Commutazione di pacchetto*
Comportamento
store and forward
(memorizza e trasmetti)
Perche’ non
commutazione di
messaggio ?
Introduction
Kurose, Ross, Internet e reti di calcolatori
15
Commutazione di pacchetto vs.
commutazione di circuito*
Commutazione di pacchetto permette l’utilizzo della rete a piu’
utenti
! 1 Mbit link
! ogni utente:
!
!
100Kbps se “attivo”
attivo 10% del tempo
N users
! circuit-switching:
!
1 Mbps link
10 utenti
! packet switching:
!
!
con 35 utenti, probabilita’ >
10 attivi
minore di .0004
Introduction
Kurose, Ross, Internet e reti di calcolatori
16
Commutazione di pacchetto vs.
commutazione di circuito*
Commutazione pacchetto
! Ottima per dati ``a ondate’’
! condivisione
! no
di risorse
call setup
! Eccessiva congestione: ritardo e perdita di
pacchetti
! protocolli necessari per trasferimenti affidabili,
controllo della congestione
! Come procurare un comportamento tipo circuito ?
! Garanzia di banda necessaria per applicazioni
audio/video
(problema ancora aperto)
Introduction
17
Kurose, Ross, Internet e reti di calcolatori
Reti a commutazione di pacchetto:
routing
! Goal: spostarei pacchetti attraverso i routers dalla
sorgente a destinazione
! rete datagram:
! l’indirizzo di destinazione determina il prossimo salto
! il cammino puo’ cambiare durante la sessione
! analogia: guidare e chiedere indicazioni
Introduction
Kurose, Ross, Internet e reti di calcolatori
18
Reti di accesso e mezzi fisici
Q: Come connettere gli end
sytems al router ?
! Reti di accesso domestiche
! reti di accesso istituzionali
(scuola, azienda)
! reti mobili
Nota:
! banda (bits per secondo)
della rete di accesso ?
! Condivisa o dedicata?
Introduction
Kurose, Ross, Internet e reti di calcolatori
19
Reti domestiche: accesso punto a punto
! Collegamento tramite modem
fino a 56Kbps per l’accesso diretto
al router (in principio)
! ISDN: intergrated services digital
network: 128Kbps connessione
interamente digitale al router
! ADSL: asymmetric digital subscriber
line
! fino a 1 Mbps home-to-router
! fino a 8 Mbps router-to-home
!
Introduction
Kurose, Ross, Internet e reti di calcolatori
20
Reti domestiche: accesso condiviso
(modem per cavi coassiali)
! HFC: hybrid fiber coax
!
asimmetric: fino a 10Mbps
upstream, 1 Mbps downstream
! reti di cavi e fibra ottica
collegano le case al router
!
!
!
trasmissione per broadcast
accesso condiviso al router
(anche con la televisione)
congestione (dimensionamento)
! disponibile mediante le
compagnie che forniscono
servizi via cavo
Introduction
Kurose, Ross, Internet e reti di calcolatori
21
Reti istituzionali: LAN
! La local area network (LAN) di
una istituzione collega endsystems ad un edge router
! Ethernet:
! cavo condiviso o dedicato
connette end system e
router
! 10 Mbs, 100Mbps, Gigabit
Ethernet
! diffusa presso istituzioni,
comunque esistono anche LAN
domestiche
Introduction
Kurose, Ross, Internet e reti di calcolatori
22
Reti wireless
wireless
condivisa connette end
system al router
! wireless LANs:
! Rete di acesso
radio invece del cavo
! e.g., Lucent Wavelan 10
Mbps
!
router
base
station
! accesso senza fili per
reti wide-area
!
CDPD: accesso wireless al
router dell’ ISP router
via rete cellulare
Introduction
Kurose, Ross, Internet e reti di calcolatori
mobile
hosts
23
Mezzi fisici
! Link fisico: i bit
trasmessi si propagano
attraverso il mezzo
trasmissivo
! mezzi guidati:
!
i segnali si propagano
attraverso mezzi solidi:
rame, fibra
Doppino (TP)
! due fili di rame isolati
Categoria 3: fili
telefonici tradizionali,
10 Mbps ethernet
! Categoria : 100Mbps
ethernet
!
! mezzi non guidati:
! i segnali si preparano
liberamente (radio)
Introduction
Kurose, Ross, Internet e reti di calcolatori
24
Mezzi fisici: cavo coassiale, fibra ottica
Cavo coassiale:
! cavo (segnale) dentro un
altro cavo (shield)
banda base: canale
singolo sul cavo
! banda larga: canali
multipli sul cavo
!
! bidirezionale
! use comune in 10Mbs
Ethernet
Cavo in fibra ottica:
! fibra di vetro che
trasmette impulsi
luminosi
! alta velocita’:
100Mbps Ethernet
! punto a punto veloce
(e.g., 5 Gps)
!
! pochi errori
Introduction
Kurose, Ross, Internet e reti di calcolatori
25
Mezzi fisici: radio
! Segnale nello spettro
elettromagnetico
! nessuno cavo
! bidirezionale
! effetti ambientali sulla
propagazione:
riflessi
! ostacoli
! interferenza
!
Tipi di collegamenti radio:
! microwave
! canali fino a 45 Mbps
channels
! LAN (e.g., waveLAN)
! 2Mbps, 11Mbps
! wide-area (e.g., cellular)
! e.g. CDPD, 10’s Kbps
! satellite
! fino a 50Mbps channel
(ocanali multipli inferiori)
! 270 Msec ritardo end-end
! geosincroni o orbita fissa
Introduction
Kurose, Ross, Internet e reti di calcolatori
26
Ritardo nella reti a commutazione
di pacchetto*
! Eleborazione del nodo:
I pacchetti accumulano
un ritado nel cammino
end-to-end
! quattro sorgenti
ritardo ad ogni salto
!
!
!
controllo bit di errore
determina l’ output link
Ordine microsecondi
! accodamento
!
!
!
tempo in attesa di un link
per la trasmissione
dipende dal livello di
congestione del router
Millisecondi-microsec.
transmission
A
propagation
B
nodal
processing
queueing
Introduction
Kurose, Ross, Internet e reti di calcolatori
27
Ritardo nella reti a commutazione
di pacchetto *
Ritardo di trasmissione:
! R=banda del link (bps)
! L=lunghezza pacchetto
(bits)
! tempo per spedire bits
nel link = L/R
Ritardo di propagazione:
! d = lunghezza fisica del
link
! s = vel. di propagazione
(~2x108 m/sec)
! ritardo di propagazione =
d/s
transmission
A
propagation
Nota: s microsec.
nodal
R millisec. Reti regionali
queueing
processing
Introduction
28
Kurose, Ross, Internet e reti di calcolatori
B
Ritardo di accodamento*
! R=banda del link (bps)
! L=lunghezza pacchetto
(bits)
! a=velocita media di
arrivo dei pacchetti
Intensita’ del traffico =La/R
! La/R ~ 0: ritardo accodamento medio piccolo
! La/R -> 1: ritardo grande
! La/R > = 1: ritardo infinito (arrivano piu’
pacchetti di quanti possano essere serviti) !
Introduction
Kurose, Ross, Internet e reti di calcolatori
29
Protocolli organizzati a livelli
Le resti sono complesse
molti ``ingredienti’’
hosts
routers
links di vari tipi
applicazioni
protocolli
hardware, software
Domanda:
Come organizzare la
struttura della rete ?
(O almeno la presentazione
delle reti)
Introduction
Kurose, Ross, Internet e reti di calcolatori
30
Organizzazione di una viaggio aereo
biglietto (acquisto)
biglietto (reclamo)
bagaglio (check)
bagaglio (recupero)
gates (imbarco)
gates (sbarco)
pista (decollo)
pista (atterraggio)
aero (rotta)
aereo (rotta)
aero (routing)
!Una serie di passi
Introduction
Kurose, Ross, Internet e reti di calcolatori
31
Organizzazione di un viaggio aereo: una vista diversa
biglietto (acquisto)
biglietto (reclamo)
bagaglio (check)
bagaglio (recupero)
gates (imbarco)
gates (sbarco)
pista (decollo)
pista (atterraggio)
aero (rotta)
aereo (rotta)
Aereo routing
Livelli: ogni livello implementa un servizio
! attraverso le proprie azioni interne (al livello)
! usando servizi offerti dai livelli sottostanti
Introduction
Kurose, Ross, Internet e reti di calcolatori
32
Viaggio aereo a livelli: servizi
Sportello-Sportello: consegna persone+bagagli
cons.bagaglio-rec. bagaglio: consegna bagagli
gate partenza- gate arrivo: trasfer. persone:
pista-a-pista: consegna dell’aereo
aero routing dall’origine alla destinazione
Introduction
Kurose, Ross, Internet e reti di calcolatori
33
biglietto (acquisto)
biglietto (reclamo)
bagaglio (check)
bagaglio (recupero)
gates (imbarco)
gates (sbarco)
pista (decollo)
pista (atterraggio)
aero (rotta)
aereo (rotta)
Aeroporto arri.
Aeroporto Part.
Implementazione distribuita delle funzionalita’ dei
livelli
Luoghi intermerdi del traffico aereo
Rotta aereo
Rotta aereo
Rotta aereo
Introduction
Kurose, Ross, Internet e reti di calcolatori
34
Perche’ i livelli
Trattamento sistemi complessi:
! la struttura esplicita permette l’identificazione e
la relazione di parti di sistemi complessi
! reference model a livelli per la discussione
! la modularizzazione facilita il mantenimento, e
l’updating del sistema
! cambiamenti nella implementazione dei servizi di
un livello sono trasparenti al resto del
! per esempio, un cambio nelle procedure del gate
non modifica il resto del sistem.
! livelli considerati pericolosi ?
Introduction
Kurose, Ross, Internet e reti di calcolatori
35
Pila dei protocolli di Internet
! applicazione: supporta le applicazioni di rete
! ftp, smtp, http
! trasporto: trasferimento dati host-host
!
tcp, udp
! rete: routing dei datagrams dal sorgente alla
destinazione
!
ip, protocolli di routingh
! link: trasferimento dati fra elementi della rete
vicini
!
ppp, ethernet
! fisico: bits “sul cavo”
Introduction
Kurose, Ross, Internet e reti di calcolatori
Applicazione
trasporto
rete
link
fisico
36
Livelli: comunicazione logica
Ogni livello:
! distribuito
! “entita’ ”
implementano le
funzioni del
livello ad ogni
nodo
! entita’ eseguono
azioni, scambiano
messaggi con pari
applicazione
trasporto
rete
link
fisico
rete
link
fisico
applicazione
trasporto
rete
link
fisico
applicazione
trasporto
rete
link
fisico
Introduction
Kurose, Ross, Internet e reti di calcolatori
applicazione
trasporto
rete
link
fisico
37
Livelli:comunicazione logica
E.g.: trasporto
! prende dati da app
! aggiunge
indirizzamento,
controlli per
affidabilita’,
informazioni per
formare
“segmenti”
! spedisce segmenti
ad un ``pari’’
! aspetta la ricevuta
(ack)
! analogia: ufficio
postale
dati
applicazione
trasporto
trasporto
rete
link
fisico
applicazione
trasporto
rete
link
fisico
ack
dati
rete
link
fisico
applicazione
trasporto
rete
link
fisico
Introduction
Kurose, Ross, Internet e reti di calcolatori
dati
applicazione
trasporto
trasporto
rete
link
fisico
38
Livelli: comunicazione fisica
data
applicazione
trasporto
rete
link
fisico
applicazione
trasporto
rete
link
fisico
rete
link
fisico
applicazione
trasporto
rete
link
fisico
Introduction
Kurose, Ross, Internet e reti di calcolatori
data
applicazione
trasporto
rete
link
fisico
39
Livelli dei protocolli e dati
Ogni livello prende i dati da sopra
! aggiunge intestazioni per formare nuove data unit
! passa le nuove data unit al livello sottostante
sorgente
M
applicazione
trasporto
Ht M
rete
Hn Ht M
link
Hl Hn Ht M
fisico
destinazione
applicazione
Ht
trasporto
rete
Hn Ht
link
Hl Hn Ht
fisico
Introduction
Kurose, Ross, Internet e reti di calcolatori
M
messaggio
M
segmento
M
M
datagram
frame
40
Struttura di Internet: rete di reti
! Piu’ o meno gerarchica
! nazionali/internazonali backbone
providers (NBP)
!
!
e.g. BBN/GTE, Sprint, AT&T, IBM,
UUNet
si connettono (come pari)
privatamente oppure usando
Network Access Point (NAP)
pubblici
! ISP regionali
! si connettono agli NBP
! ISP locali, azienda
!
ISP
locale
ISP regionale
NBP B
NAP
NAP
NBP A
si connettono agli ISP regionali
ISP regionale
ISP
locale
Introduction
Kurose, Ross, Internet e reti di calcolatori
41
National Backbone Provider
e.g. BBN/GTE US backbone network
Introduction
Kurose, Ross, Internet e reti di calcolatori
42
Storia di Internet
1961-1972: primi principi della commutazione di
pacchetto
! 1961: Kleinrock - la teoria
della coda mostra la
fattibilita’ della
commutazione di pacchetto
! 1964: Baran commutazione di
pacchetto in reti militari
! 1967: ARPAnet concepita
Advanced Reearch Projects
Agency
! 1969: primo nodo ARPAnet
operativo
! 1972:
ARPAnet mostrata in
pubblico
! NCP (Network Control
Protocol) primo
protocollo
! primo proramma per email
! ARPAnet ha 15 nodi
!
Introduction
Kurose, Ross, Internet e reti di calcolatori
43
Storia di Internet
1972-1980: Internetworking, reti nuove e
proprietarie
! 1970: ALOHAnet rete satellitare
!
!
!
!
!
alle Hawaii
1973: Tesi PhD di Metcalfe
propone Ethernet
1974: Cerf and Kahn architetture per connettere reti
fine anni 70: architetture
proprietarie: DECnet, SNA, XNA
fine anni 70 : commutazione di
pacchetti a lunghezza fissa
(precursore ATM)
1979: ARPAnet ha 200 nodi
I principi di interconnessione di
Cerf and Kahn’s:
! minimalismo, autonomia nessun cambiamento
interno richiesto per
connettere reti fra loro
! modello di servzio ``best
effort’’ (miglior sforzo)
! routers senza stato
! controllo decentralizzato
definiscono l’architettura di
Internet di oggi!
Introduction
Kurose, Ross, Internet e reti di calcolatori
44
Storia di Internet
1980-1990: nuovi protocolli, proliferazione di reti
! 1983: sviluppo di TCP/IP
! 1982: definizione protocollo
smtp e-mail
! 1983: definito DNS per
traduzione nome-indirizzo IP
! 1985: definizione protocollo
ftp
! 1988: controllo congestione
TCP
! Nuove reti nazionali:
Csnet, BITnet,
NSFnet, Minitel
! 100,000 host connessi
a confederazioni di
reti
Introduction
Kurose, Ross, Internet e reti di calcolatori
45
Internet History
Anni 90: commercializazione, il WWW
! Primi anni 90: ARPAnet chiusa
! 1991: NSF impone restrizione
dull’uso commrciale di NSFnet
(chiusa 1995)
! Primi anni 90: WWW
! ipertesto [Bush 1945, Nelson
1960’s]
! HTML, http: Berners-Lee
! 1994: Mosaic, dopo Netscape
! fine anni 90:
commercializazione del WWW
Fine anni 90:
! stimati 50 milioni di
computer su Internet
! stimati + di 100 millioni
di utenti
! link di backbone a 1
Gbps
Introduction
Kurose, Ross, Internet e reti di calcolatori
46