Telematica di Basegroups.di.unipi.it › ~dipierro › Didattica › TdB06 ›...
Transcript of Telematica di Basegroups.di.unipi.it › ~dipierro › Didattica › TdB06 ›...
Telematica di Base
15/03/04 2
Reti telematiche1. I nodicomputer vengono fisicamente connessi da cavi2. I nodicomputer condividono un codice di
trasmissione di bit 3. Un pacchetto di bit riesce a viaggiare sulla rete via più
nodi4. Una sequenza di pacchetti riesce a raggiungere una
destinazione per vie diverse ed ad essere ricostruita5. Le applicazioni riescono a stabilire delle regole per
comunicarsi dati e documenti in forma binaria
15/03/04 3
Reti Telematiche (problemi)
L’ infrastruttura di comunicazione di una rete telematica deve risolvere parecchi problemi:Concorrenza (competizione sulle risorse condivise)la rete è fatta di cavi condivisi, quindi come si risolvono i
conflitti di accesso?affidabilità della trasmissione: i messaggi binari riescono a viaggiare su un cavo superando il
rumorerisoluzione dei nomi (naming e resolving)come fanno due elaboratori a localizzarsi e comunicare?strategie di routingche percorso fa un messaggio sulla rete?strategie di connessionecome viene gestita una sequenza di messaggi?
15/03/04 4
Servizi di rete locale
I sistemi operativi dei computer in una rete debbono essere in grado di coordinarsi per offrire servizi di reteOgni utente "possiede" in modo esclusivo un PC, con un file system su disco locale; la rete si usa per condividere dispositivi (es.: dischi, stampanti, fax)I servizi più semplici sono quelli di condivisione dei dispositivi: disco condiviso, stampante di rete, modem/fax di rete, ecc. L’ esempio più importante di servizio di sistema operativo in rete sono i comandi di base per condividere un file system
15/03/04 5
Comunicazione e protocolli
Le reti funzionano perché i produttori di hw e sw si accordano su protocolli di comunicazione validi per tutti: se ogni macchina usa correttamente i protocolli concordati tutto funziona
Un insieme di protocolli si chiama architettura di rete; la lista di protocolli usati da un certo sistema, uno per livello, si chiama gerarchia di protocolli
15/03/04 6
Cosa sono i protocolli di comunicazione?
Comunicazione tra persone:“ Che tempo fa?”“ Mi consenta”Presentazione formale
… invio di determinati msg… azioni di risposta alla recezione
del msg
Comunicazione di rete:Scambio di informazioni tra dispositivi computazionaliProtocolli regolano il flusso delle comunicazioni
Protocollo definisce:Formato
Ordine dei msgAzioni di risposta
15/03/04 7
Protocolli: Un esempio
Si immaginino due filosofi (processi pari del livello 3), uno dei quali parla Spagnolo e Inglese e l’ altro che parla Cinese e Francese. Poiché non hanno un linguaggio comune, usano due interpreti (processi pari di livello 2), che a loro volta contattano due segretarie (processi pari di livello 1).
Il filosofo 1 desidera comunicare al suo pari la sua simpatia per i conigli. Quindi passa al suo interprete un messaggio in Inglese: “I like rabbits”
15/03/04 8
Protocolli: un esempio (2)
L’ interprete si è accordato su un linguaggio neutro, l’ Olandese, e così il messaggio viene tradotto in “I k hou von konijnen”. La scelta del linguaggio è il protocollo di livello 2 e viene fatta dai processi pari di livello 2.L’ interprete quindi consegna il messaggio ad una segretaria, che lo trasmette mediante fax (protocollo di livello 1). Quando il messaggio arriva, viene tradotto in Francese e passato al filosofo 2.
15/03/04 9
Protocolli di comunicazioneComunicazione tra persone vs comunicazione di rete
Ciao
Ciao
Che ora è?
2:30
TCP connection req.
TCP connectionreply.Get http://infouma.di.unipi.it
<file>tempo
15/03/04 10
La struttura di Internet
Applicazioni e HostNucleo della rete:
router
network of networks
Collegamenti fisici
15/03/04 11
Internet: Servizihosts:
Applicazioni e servizi di retee.g., WWW, email
Modello client/serverHost (client) invia una richiesta di servizio, host (server) fornisce il servizioe.g., WWW client (browser)/ server; email client/server
Peer2peer: Interazione è simmetricae.g.: NAPSTER, GNUTELLA
15/03/04 12
Servizi orientati alla connessione
Obiettivo: trasferimento di dati tra host
handshaking: fase iniziale di inizializzazione“ set up” dello stato
TCP Transmission Control Protocol Servizio orientato alla
connessione di Internet
TCP [RFC 793]
Trasferimento di dati affidabileOrdine della trasmissionePerdita di dati
Controllo del flusso: Sender non deve trasmettere troppo velocemente
Controllo della congestione: Sender non deve congestionare il traffico di rete
15/03/04 13
Servizi non orientati alla connessione
Obiettivo: trasferimento di dati tra host
UDP User Datagram Protocol [RFC 768]:
1. Trasferimento non affidabile
2. Non sono previsti meccanismi per il controllo del flusso e della congestione
TCP: HTTP (WWW), FTP (file transfer), Telnet (remote login), SMTP (email)
UDP:Apps video/Audio, teleconferenze, telefonia su Internet
15/03/04 14
Nucleo della rete
Ragnatela di routerCome avviene il trasferimento dei dati in rete?
Commutazione di circuito: circuito dedicato per ogni chiamata (rete telefonica)Commutazione di pacchetto: dati sono inviati in rete scomponendoli in “p ezzi”
15/03/04 15
Commutazione di circuito
Allocazione delle risorse per la gestione della chiamataBanda di trasmissione
Risorse dedicate
Performance elevata
Fase di inizializzazione
15/03/04 16
Commutazione di circuito
Banda di trasmissione viene suddivisa in “ parti”
FDM: frequency division multiplexing
TDM: time division multiplexing
15/03/04 17
Commutazione di pacchettoDati sono suddivisi in pacchetti
(packets)Pacchetti di utenti diversi condividono le risorse di rete
Ogni pacchetto trasmesso utilizza tutta la banda di trasmissione Non è necessaria una allocazione iniziale di tutte le risorse
Risorse e pacchetti:
Risorse non disponibili
Congestione: attesa per utilizzare un collegamento
Meccanismo di tipo “s tore and forward”:
Trasmissione
Attesa della disponibilità del collegamento
15/03/04 18
Commutazione di pacchetto
A
B
C10 MbsEthernet
1.5 Mbs
45 Mbs
D E
Coda di attesa
15/03/04 19
Valutazione
Collegamento ad 1 MbitUtente generico:
100Kbps se “at tivo”Attivo solo 10% del tempo
Commutazione di circuito: 10 utenti
Commutazione di pacchetto: 35 utenti, probabilità di avere un numero di utenti attivi maggiore di 10 è minore di .004
Commutazione di pacchetto permette di avere un maggior numero di utenti
N utenti1 Mbps link
15/03/04 20
Ritardi di trasmissione
Ritardi nella trasmissione dei pacchetti
Nodal processing: Check bitDeterminare il collegamento in uscita
Attesa in codaCongestione del router
A
B
Propagazione
Trasmissione
nodalprocessing Attesa in coda
15/03/04 21
Considerazioni finali
Commutazione di pacchetto
Condivisione delle risorse
Non è necessaria la fase di inizializzazione
Congestione: perdita dei pacchetti, ordine di trasmissione
Necessità di meccanismi per garantire l’ affidabilità del trasferimento
Cosa succede per le applicazioni video/audio?
Ampiezza di banda elevata
Problema aperto!!
15/03/04 22
Routing
Inviare i pacchettiReti datagram: L’ indirizzo di destinazione determina il cammino tra i routerRouter non hanno informazioni di stato
Circuiti virtuali: Ogni pacchetto è caratterizzato di un identificatore (virtual circuit ID)Cammino individuato nella fase di inizializzazioneRouter con informazioni di stato
15/03/04 23
Come si accede alla rete?
1. Provider (eg tin.it)
2. Company (e.g SERRA)
3. Reti mobili (wireless)
15/03/04 24
Provider
Modem
56Kbps con accesso diretto
ISDN: intregrated services digital network: 128Kbps
ADSL: asymmetric digital subscriber line
1 Mbps hometorouter
8 Mbps routertohome
15/03/04 25
Reti locali
Rete locale
local area network (LAN)
Ethernet:
10 Mbs, 100Mbps, Gigabit Ethernet
15/03/04 26
Wireless
Accesso tramite una base
LAN wireless:Comunicazioni radioe.g., Lucent Wavelan 10 Mbps, BlueTooth
widerarea wirelessRete dei cellulariE.g. GPRS, UMTS
basestation
mobilehosts
router
15/03/04 27
Protocolli e servizi
Reti sono complicate!
Numerose entità
host
router
collegamenti fisici diversi
applicazioni
servizi
hardware, software
Domanda: Siamo in grado di
organizzare e gestire in modo coerente tutte
queste entità?
… . perlomeno in questo corso?
15/03/04 28
Organizziamo un bel viaggio aereo
… una serie di passi … . coerenti
ticket (acquisto)
bagaglio (checkin)
gate (load)
take off
volo
ticket (rimostranze)
bagaglio (richiesta)
gate (unload)
landing
volo
volo
15/03/04 29
Il nostro viaggio
Livelli: ogni livello realizza un servizioTramite delle azioni
Basandosi sui servizi offerti dai livelli inferiori
ticket (Acquisto)
bagaglio (checkin)
gate (load)
takeoff
volo
ticket (rimostranze)
bagaglio (richiesta)
gates (unload)
landing
volo Volo
15/03/04 30
Layered air travel: services
Countertocounter delivery of person+bags
baggageclaimtobaggageclaim delivery
people transfer: loading gate to arrival gate
runwaytorunway delivery of plane
airplane routing from source to destination
15/03/04 31
Il nostro viaggio
ticket (purchase)
baggage (check)
gates (load)
takeoff
airplane routing
ticket (complain)
baggage (claim)
gates (unload)
landing
airplane routingDep
artin
g ai
rpor
t
arri
ving
air
port
Controllori di volo degli spazi aerei
airplane routing airplane routing
15/03/04 32
Livelli: Perchè?
Stratificazione dei servizi: meccanismo per la gestione della complessità
Meccanismo esplicito di strutturazioneModularità: facilita le modificheModifica di un servizio è locale
15/03/04 33
Internet protocol stack
application:ftp, smtp, http
transport:tcp, udp
network: routing dei datagramsip, routing protocols
link: trasferimento dei datippp, ethernet
physical: “ on the wire”
application
transport
network
link
physical
15/03/04 34
Internet Protocol StackI nodicomputer vengono fisicamente connessi da cavi: questo è il livello dei protocolli fisici, che include anche i dispositivi modem
I nodicomputer condividono un codice di trasmissione di bit:questo è il livello dei protocolli datalink
Un pacchetto di bit riesce a viaggiare sulla rete via più nodi: questo è il livello del protocollo rete (es.: IP)
Una sequenza di pacchetti riesce a raggiungere una destinazione per vie diverseed ad essere ricostruita: questo è il livello del protocollo trasporto (es.: TCP)
Le applicazioni riescono a stabilire delle regole per comunicarsi dati e documentiin forma binaria: questo è il livello dei protocolli di tipo applicazione (per esempio HTTP, SMTP)
15/03/04 35
Stratificazione a livelli
Ogni livello riceve i dati dal livello superioreCrea una nuova struttura dati (header)Invia i dati al livello inferiore
Applicationtransportnetwork
linkphysical
Applicationtransportnetwork
linkphysical
source destination
M
M
M
M
HT
HtHN
HTHNHl
M
M
M
M
H T
H tH N
H tH nH l
Message
Segment
Datagram
Frame
15/03/04 36
Stratificazione a livelli
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
Caratteristiche:
distribuito
Componenti su ogni nodo che realizzano le funzionalità previste
Scambio msg
15/03/04 37
Internet Protocol Stack
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
data
dataTransport
Dati dalle AppsCrea il “ datagram” con l’ indirizzoInvia il datagram Attende il riscontro di ricezione (ack)Trasporto = Ufficio Postale
data
transport
transport
ack
15/03/04 38
Layering: physical communication
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
data
data
15/03/04 39
La proposta ISO
Application
Presentation
Session
Transport
host
Routing
Network
Data link
Physical
Network
Data link
Physical
Network
Data link
Physical
Application
Presentation
Session
Transport
host
Network
Data link
Physical
15/03/04 40
Internet: network of networks
gerarchica
national/international backbone providers (NBPs)BBN/GTE, Sprint, AT&T, IBM,
UUNet
ISP regionali
ISP locali NBP A
NBP B
NAP NAP
regional ISP
regional ISP
localISP
localISP
15/03/04 41
National Backbone Provider
BBN/GTE US backbone network
15/03/04 42
Internet: una visione storica
1961: Kleinrock (teoria delle code)
1964: Baran – applicazioni militari
1967: ARPAnet Advanced Research Projects Agency
1969: ARPAnet in funzione
1972: ARPAnet : dimostrazione pubblicaNCP (Network Control Protocol) protocollo hosthostemailARPAnet: 15 nodi
19611972: definizione dei principi delle reti a commutazione di poacchetto
15/03/04 43
Internet
1970: ALOHAnet reti via satellite (Hawaii)1973: Metcalfe: Ethernet1974: Cerf e Kahn: interconnecting networksFine Anni 70: Reti proprietarie: DECnet, SNA, XNA1979: ARPAnet : 200 nodi
Cerf e Kahn’ s internetworking:minimalism, autonomy – no internal changes required to interconnect networksbest effort service modelstateless routersdecentralized control
19721980: Internetworking
15/03/04 44
Internet
1983: definizione dei protocolli TCP/IP
1982: smtp per email
1983: DNS
1985: ftp
1988: TCP: controllo della congestione
Reti nazionali: Csnet, BITnet, NSFnet, Minitel
100000 di host connessi in rete
19801990:
15/03/04 45
Internet
1990: WWWipertesti [Bush 1945, Nelson 1960]HTML, http: BernersLee1994: Mosaic, poi NetscapeFine anni 90: B2C
50 milioni di computer in Internet
100 milioni di utenti
backbone 10 Gbps
1990: WWW