rete

Transcrição

rete
Precorso di
Informatica 2008/2009
A.A. 2008/2009
Programma del corso
6 ore di lezioni teoriche




Lunedì 22 e giovedì 25 settembre
Algoritmi e Programmazione
Architettura degli elaboratori
Sistemi Operativi
Networking
6 ore di pratica in laboratorio




Martedì 23 e venerdì 26 settembre
Linux, Desktop Environments, Bash e Manuali
Account personale, posta elettronica e browser
Stampare e compilare i propri programmi
Compressione, scripting, SSH e SFTP
[email protected]
dsi.unive.it/~zabeo
Evoluzione dei sistemi informatici
Tassonomia delle reti (per estensione)

Rete locale

Rete metropolitana

Rete geografica
Tassonomia delle reti (per estensione)

Rete locale (LAN ­ Local Area Network)
●
●

Collega i computer di un laboratorio, gruppo di lavoro, ufficio, ditta.
Rete metropolitana (Metropolitan Area Network)
●
●
collega due o piu’ computer in un area non piu’ grande di un palazzo. concettualmente simile ad una rete locale
collega computer di una singola organizzazione nella stessa area urbana (es.: banca con filiali cittadine).
Tassonomia delle reti (per estensione)

Rete geografica (Wide Area Network)
●
●

Trasmissione dati: attraverso messaggi
Reti di reti
●
Nodi distribuiti su medio­lunga distanza (nazione, continente)
Collega più reti differenti mediante opportuni elementi di interfaccia (es.: Internet)
●
Può avere estensione mondiale
●
Esempio: Internet
Tassonomia delle reti (per topologia)

Lineare

Anello

Stella

Punto­punto

Mista
Reti lineari (a bus)
PC1

PC3
PC4
Ethernet e’ il tipo di rete locale piu’ diffuso
●
PC2
Qualsiasi computer di qualsiasi tipo prevede la possibilità di usare una scheda Ethernet per connettersi alla rete locale
Reti ethernet

Quando un computer vuole comunicare invia il segnale sul cavo di collegamento
●
●
Se un computer si accorge che un altro sta trasmettendo, aspetta
Se si verifica un conflitto (due computer hanno tentato di comunicare contemporaneamente) i due computer si fermano e aspettano per un tempo T casuale, poi riprovano.

Velocita’: 10/100/1000 Megabit/s
Reti ad anello
PC1
PC4

PC3
La tecnica token­ring viene usata per la comunicazione tra gli elaboratori
●
●
●
PC2
Un token (un gruppo di byte) viene continuamente passato da un computer all’altro
Un computer può trasmettere sulla rete solo quando e’ in possesso del token.
Se un computer riceve un messaggio non destinato a lui, lo rimette in circolo.
Reti punto-punto


PC1
PC2
PC3
PC4
Ottima tolleranza ai guasti; ma altissimi costi per i collegamenti ( O(n2) )
Utilizzabile solo per reti con pochissimi nodi.
Reti a stella
PC1
PC3

PC2
hub
PC4
HUB: dispositivo hardware specializzato che smista le comunicazioni dei computer
Reti a topologia mista
hub
I servizi di una rete

L’utente di un calcolatore in rete può:
●
Fruire di risorse informatiche condivise
●
●
Scambiare dati e messaggi con utenti di altri calcolatori connessi in rete ●
●
stampanti, dischi, calcolatori più potenti, ...
documenti, e­mail, newsgroups, mailing­list, web, ...
Eseguire applicazioni di uso individuale o I sistemi operativi di rete

In una LAN si vogliono condividere risorse
●

Il S.O. deve permettere anche l’uso di quelle risorse che non sono fisicamente collegate al computer su cui si sta lavorando
●
di solito, almeno, stampanti e hard disk
I S.O. dei computer in rete devono quindi dialogare fra loro per permettere la condivisione delle risorse.
Scambio di informazioni
Affinché due calcolatori possano scambiarsi dei dati sono necessari
–
un insieme di regole che regolano lo scambio di dati –
un canale fisico di comunicazione tra i due calcolatori
–
la componente hardware della comunicazione
–
il software per la comunicazione
Protocolli di comunicazione
●
●
●
Utilizzati dai calcolatori per dialogare
Come nel caso della codifica dei dati occorre utilizzare degli standard internazionali per problemi di compatibilità!
Esempi –
Modello ISO/OSI (Open System Interconnection)
–
Modello TCP/IP (standard de facto)
Protocolli di comunicazione
●
Il solo collegamento fisico non è sufficiente per permettere la comunicazione fra calcolatori
–
●
●
Nella comunicazione tra calcolatori, è necessaria la presenza di uno strato software che consenta lo scambio di dati sulla base di un protocollo
un protocollo di comunicazione è un insieme di regole e convenzioni che controllano lo scambio di informazioni in una comunicazione
–
è necessario anche che ciascun calcolatore sia dotato di una applicazione in grado di effettuare il trasferimento delle informazioni
messaggi consentiti e loro formato
I mezzi di trasmissione
●
Qual è il mezzo fisico utilizzato per realizzare il canale di trasmissione? –
–
mezzi guidati
●
linee fisiche che portano il segnale fino al ricevitore,
●
supportano la trasmissione di segnali elettrici oppure ottici,
●
segnali elettrici: doppino telefonico o cavo coassiale;
●
segnali ottici: fibre ottiche.
mezzi non guidati
●
●
irradiazione di segnali elettromagnetici nello spazio, in modo più o meno diretto;
antenne, satelliti, infrarossi, …
Mezzi guidati
Doppino telefonico
Cavo coassiale
Conduttore di segnale
Isolante
Calza
Guaina protettiva
Cladding
Fibra ottica
Fonte di emissione luminosa (laser)
Core
Guaina protettiva opaca
Mezzi non guidati

i segnali vengono trasmessi e ricevuti mediante antenne
●
●

l’antenna del trasmettitore irradia nello spazio onde elettromagnetiche, che l’antenna ricevente capta
può essere direzionale (punto­a­punto) o non direzionale (multipunto).
Lo spettro di frequenze utilizzato nelle trasmissioni non guidate può essere suddiviso in tre intervalli:
●
[30 MHz, 1 GHz]
●
●
●
[2 GHz, 40 GHz] (microonde)
●
●
●
trasmissioni direzionali, punto­a­punto,
utilizzato anche per le comunicazioni via satellite (multipunto);
[300 GHz, 200 THz] (infrarossi)
●
●
adatto alle trasmissioni non direzionali
le trasmissioni cellulari utilizzano 900 Mhz e 1800 Mhz;
trasmettitore e ricevitore devono essere visibili l’uno all’altro;
molto importante in applicazioni locali punto­a­punto e multipunto in aree limitate.
Linea dedicata/commutata
●
linea dedicata –
La comunicazione avviene lungo un canale (linea fisica o “parte” di essa) dedicato esclusivamente ad essa
●
●
Es: due PC connessi da un cavo di comunicazione
linea commutata
–
Il canale viene “costruito” per ogni nuova sessione di comunicazione, collegando singoli tratti di linee dedicate
●
Esempio: comunicazione tra due computer in Internet
–
–
–
altri computer fanno da tramite tra i due che devono comunicare, ritrasmettendo i loro messaggi
Con le linee commutate si riducono i costi
2 modalità:
●
●
commutazione di circuito commutazione di pacchetto
Commutazione di circuito
●
●
●
I telefoni di un distretto telefonico fanno capo ad una centrale di smistamento, che comunica con le centrali degli altri distretti.
Quando telefoniamo, la chiamata viene fatta passare attraverso una o più centrali, fino a raggiungere il numero chiamato.
Comunicando fra loro, le centrali costruiscono una connessione diretta fra i due telefoni, che dura tutto (e solo) il tempo della telefonata.
Commutazione di circuito
●
●
●
Quando due telefoni comunicano, la linea e’ occupata: nessuno puo’ chiamare quei telefoni.
Che succede se usiamo una comunicazione a commutazione di circuito su internet?
DISASTRO: qualsiasi servizio offerto sarebbe disponibile ad un solo utente per volta.
–
Ad esempio, chi riesce a connettersi ad un sito web lo puo’ usare in esclusiva per tutto il tempo che vuole !!!
Commutazione di pacchetto
●
●
●
Ogni messaggio e’ diviso in tanti pacchetti numerati di dimensione fissa.
Ogni pacchetto contiene l’indirizzo del computer destinatario e del mittente.
Ogni pacchetto e’ trasmesso separatamente
–
●
Una volta inviato, il mittente se ne disinteressa
Ogni pacchetto fa (virtualmente) una strada diversa per arrivare al destinatario
Commutazione di pacchetto
●
I pacchetti non arrivano necessariamente nello stesso ordine con cui sono stati inviati
–
●
Ogni pacchetto occupa il mezzo di trasmissione e la scheda di rete per un tempo molto breve
–
Il destinatario aspetta di aver ricevuto tutti i pacchetti per ricomporli e ricostruire il messaggio
Si ha un effetto di parallelismo: ogni computer puo’ essere coinvolto contemporaneamente in piu’ comunicazioni
Routing
●
●
●
Come far arrivare i pacchetti a destinazione?
Ogni nodo della rete mantiene una tabella che indica a quale/quali vicini ritrasmettere un pacchetto non destinato a lui, in base all’indirizzo di destinazione del pacchetto
La scelta del nodo a cui inoltrare il pacchetto dipende anche da situazioni temporanee di carico della rete, guasti, ecc.
Internet
●
●
Nata dalla fusione di reti di agenzie governative americane (ARPANET) e reti di università
E’ una rete di reti, di scala planetaria, pubblica, a commutazione di pacchetto
–
●
●
sistema di comunicazione tra reti e sistemi eterogenei, oltre che geograficamente distribuiti. Utilizza protocolli di comunicazione di dominio pubblico derivati dal modello TCP/IP
Al giorno d’oggi è accessibile a tutti tramite provider che sono fisicamente collegati a internet
Collegamento ad accesso diretto
Collegamento ad accesso commutato
Caratteristiche del protocollo TCP/IP
●
●
●
Internet usa un protocollo universale, TCP/IP, per far dialogare tra loro hardware e sistemi operativi diversi
indipendenza del protocollo dal modo in cui la rete è fisicamente organizzata
il protocollo è di dominio pubblico
Caratteristiche del protocollo TCP/IP
●
Suddivide i dati in uscita in pacchetti recanti le informazioni circa la loro destinazione (Internet è una rete a commutazione di pacchetto)


●
●
Provvede all’instradamento dei messaggi
Controlla che la comunicazione vada a buon fine

I pacchetti (datagrammi) hanno piccole dimensioni (1500 byte)
I pacchetti sono spediti separatamente e poi riassemblati dal ricevente
meccanismo di messaggi di conferma della ricezione avvenuta o di segnalazione di errori, onde la trasmissione venga ripetuta
Caratteristiche del protocollo TCP/IP

Il protocollo analizza la parte rete dell’indirizzo:



se la rete è quella locale, i dati sono inviati direttamente all’host indicato nell’indirizzo;
altrimenti sono inviati al router. Ogni router ha in memoria una tabella (tabella di routing) degli indirizzi dei router responsabili di altre sottoreti che conosce direttamente, più uno per gli indirizzi di rete che gli sono sconosciuti.
La struttura di Internet
Posta elettronica
Login remoto
protocollo
applicativo:
livello applicativo
NNTP
SMTP/POP
protocolli di
trasmissione:
World Wide Web
TELNET
TCP/IP
livello di trasmissione
infrastruttura
telematica:
livello di connessione
fisica
Copia di files
FTP
HTTP
Architettura a livelli
●
La trasmissione dell’informazione avviene simulando la connessione tra i livelli corrispondenti (peer) dei due sistemi che si scambiano blocchi formattati di dati, seguendo le regole stabilite dal protocollo definito per quel livello. Gli elementi chiave di un protocollo sono pertanto:
–
–
–
●
Modello ISO­OSI:
–
–
–
la sintassi da seguire per la formattazione dei blocchi dei dati;
la semantica, che riguarda, per esempio, le modalità di controllo della trasmissione e di gestione degli errori;
la temporizzazione, ovvero l’adattamento della comunicazione alla velocità di trasmissione e la sequenzializzazione delle attività.
International Standard Organization (ISO),
Open Systems Interconnect (OSI).
Nel modello ISO­OSI, la comunicazione è originata dal livello più alto della stazione che invia il messaggio, passa ai livelli inferiori (sette in tutto), in cui il messaggio viene elaborato e preparato per la trasmissione, fino a giungere al livello fisico, che si occupa dell’effettiva trasmissione verso la stazione di destinazione.
I livelli ISO/OSI
Applicazione
Unità di trasmissione dati a livello applicazione
Applicazione
Presentazione
Unità di trasmissione dati a livello presentazione
Presentazione
Sessione
Unità di trasmissione dati a livello sessione
Sessione
Trasporto
Unità di trasmissione dati a livello trasporto
Trasporto
Limite della sottorete di interconnessione
Rete
Pacchetto
Rete
Pacchetto
Rete
Pacchetto
Rete
Data link
Frame
Data link
Frame
Data link
Frame
Data link
Fisico
Bit
Fisico
Bit
Fisico
Bit
Fisico
HOST A
Router
Router
HOST B
Indirizzamento TCP/IP
●
Schema di indirizzamento generale su due livelli: indirizzo IP + porta TCP
–
Indirizzo IP
●
●
–
indirizzo associato a ogni calcolatore collegato a una sottorete;
si tratta di un indirizzo Internet globale unico, utilizzato da IP per l’instradamento e la consegna dei pacchetti.
Porta TCP
●
●
●
indirizzo unico all’interno dell’host che individua un processo attivo sull’host;
utilizzato da TCP per consegnare i dati al processo giusto;
TCP aggiunge altre informazioni di controllo/servizio:
–
–
–
il numero d’ordine nella sequenza (riordinare i messaggi dopo il loro arrivo a destinazione);
codici di controllo della correttezza (checksum), che permettono al destinatario di verificare l’assenza di errori;
…
Indirizzi TCP/IP
HOST A
Livello Applicazione
HOST B
Livello Applicazione
App. Y
App. Y
App. X
App. X
Punti di accesso al servizio (porte)
Livello TCP
Livello IP
Connessione logica (TCP)
Livello IP
Indirizzo di rete
(globale)
Protocollo di accesso alla rete 1
Protocollo di accesso alla rete 2
ROUTER
Livello Fisico
(collegato a rete 1)
Indirizzo del punto di collegamento alla sottorete
Rete 1
Livello TCP
Livello Fisico
(collegato a rete 2)
Livello IP
Protocollo di accesso alla rete
Livello Fisico
Rete 2
Da un livello all'altro
●
Ogni livello attraversato aggiunge un’intestazione
(contiene informazioni utili alle funzioni proprie di quel livello):
–
TCP (porta TCP, checksum, numero d’ordine, …)
–
IP (indirizzo host destinazione, indirizzo host mittente, …)
–
rete (MAC address destinazione, MAC address mittente, …)
–
…
Unità dati a livello TCP Intestazione IP Intestazione TCP Flusso dati proveniente dall’applicazione Unità dati a livello I P ( datagramma) Unità dati a livello rete ( frame) Intestazione di rete Dati utente Indirizzo IP (versione 4)
●
●
32 bit (cioè 4 byte) per un totale di 232 possibili indirizzi diversi;
rappresentato in forma “dotted decimal”
–
–
●
successione di quattro numeri (uno per byte), separati da un punto
(e.g. 102.54.94.97)
ognuno dei quattro numeri della notazione dotted decimal è compreso tra 0 e 255.
strutturato in due parti:
–
–
–
una parte che individua la rete fisica a cui la stazione è collegata,
l’altra che identifica la singola stazione nell’ambito della rete fisica;
esistono tre classi primarie, chiamate A, B e C, ognuna caratterizzata da una diversa suddivisione dei 32 bit:
●
●
●
A ­ un byte (8 bit) per la rete + 3 byte (24 bit) per i calcolatori; inizia per “0”;
B ­ 2 byte (16 bit) per la rete + 2 byte (16 bit) per le stazioni; inizia per “10”;
C ­ 3 byte (24 bit) per la rete + 1 byte (8 bit) per i calcolatori; inizia per “110”.
Il paradigma client/server
1. L’utente usa il client per esprimere le sue richieste
2. Il client si collega al server e trasmette la richiesta
3. Il server risponde al client
4. Il client presenta la risposta all’utente
Internet


Client


Utente
Server
Il client
●
●
●
●
Si preoccupa di dialogare con l’utente
Sfrutta tutte le possibilità fornite dal calcolatore su cui viene eseguito (audio, video, ...)
Fornisce all’utente un’interfaccia intuitiva
Elabora le richieste dell’utente e le risposte dei server
–
la comunicazione avviene secondo un formato standard (protocollo)
Il server
●
Rende disponibili delle risorse
●
Accetta richieste e risponde automaticamente
●
●
–
non bada alla provenienza della richiesta
–
il processo client può trovarsi in qualsiasi punto della rete
Si può organizzare un insieme di server in modo che siano collegati tra loro
Potrebbe essere eseguito dallo stesso calcolatore che esegue il processo client!
Indirizzi numerici e simbolici
●
●
●
Gli indirizzi IP sono machine­oriented, quindi difficili da utilizzare per un utente “umano”;
è stato definito un sistema per passare da indirizzi numerici (gli indirizzi IP) a nomi facilmente memorizzabili, il Domain Name System;
Domain Name System (DNS)
–
–
●
associa a ogni indirizzo IP uno o più indirizzi simbolici,
gestisce la conversione tra indirizzi simbolici e indirizzi IP
organizzato in maniera gerarchica (domini, sotto­domini, sotto­sotto­domini, …) per semplificarne l’utilizzo.
193.205.101.6
DNS
server1.isec.liuc.it
DNS
●
●
Il nome DNS di un calcolatore è costituito da una successione di stringhe alfanumeriche separate da punti (per esempio, server1.isttec.liuc.it)
ogni stringa identifica un “dominio”: –
la stringa più a destra rappresenta il dominio di primo livello (detto anche dominio generale)
●
●
–
la seconda stringa, sempre proseguendo da destra verso sinistra, indica il dominio di secondo livello
●
●
–
identifica la nazione di appartenenza (it per Italia, uk per Gran Bretagna, fr per Francia…)
identifica la categoria cui appartiene la società proprietaria del calcolatore (com per commerciale, edu per università o istituzioni che si occupano di formazione, org per organizzazioni non­profit di vario genere…);
è un sottodominio del dominio di primo livello
di solito individua una singola organizzazione (università, azienda, ente…)
Le stringhe successive indicano i domini di terzo livello (sottodomini dei domini di secondo livello), quelli di quarto livello, e così via finché non si arriva a individuare un dominio che comprende il singolo host.
Come si passa da DNS a IP
●
A ogni dominio è associato a un calcolatore responsabile del dominio
–
si consideri, per esempio, l’indirizzo server1.isttec.liuc.it:
●
●
●
●
●
Il calcolatore responsabile di un dominio mantiene un elenco dei calcolatori responsabili dei suoi sottodomini (e ne conosce i relativi indirizzi IP),
–
–
●
il calcolatore responsabile del dominio it, per esempio, deve sapere chi sono (cioè deve sapere qual è il loro indirizzo IP) i calcolatori responsabili di tutti i suoi sottodomini, tra cui c’è liuc.it, ma anche polimi.it, miur.it…
il calcolatore responsabile del dominio liuc.it, per esempio, deve sapere chi sono i calcolatori responsabili di tutti i suoi sottodomini, tra cui c’è isttec.liuc.it, ma anche cetic.liuc.it, …
Per tradurre l’indirizzo DNS di un calcolatore nel suo indirizzo IP si deve interrogare il responsabile di ciascuno dei domini (di I, II, … livello) cui quel calcolatore appartiene:
–
–
c’è un computer responsabile per il dominio it;
un computer per il dominio liuc.it;
un terzo computer per il dominio isttec.liuc.it;
un ulteriore computer per server1.isttec.liuc.it.
–
il calcolatore responsabile del dominio di I livello sa dove si trova il calcolatore responsabile del dominio di II livello
il calcolatore responsabile del dominio di II livello sa dove si trova il calcolatore responsabile del dominio di III livello
…
World Wide Web
●
●
Architettura software per gestire dati distribuiti geograficamente basata sulla nozione di ipertesto Pagine web: ipertesti che possono contenere testo, immagini, suoni, programmi eseguibili
–
●
un utente legge le pagine, se seleziona un link la pagina viene sostituita con quella richiesta (scaricata dal sito remoto)
Si appoggia a TCP/IP e quindi è compatibile con ogni tipo di macchina collegata ad Internet URL: indirizzi nel web
●
●
●
URL (Uniform Resource Location) è uno standard per il formato degli indirizzi delle risorse sul Web Specifica:
–
Come si vuole accedere alla risorsa (metodo)
–
Dove si trova la risorsa (indirizzo server)
–
Nome della risorsa (nome)
Formato:
–
Metodo://host/nome
HTTP

Gestisce il trasferimento di file

ES: quando un browser deve aprire la pagina http://www.dsi.unive.it/index.html
1.
Si connette con il server www.dsi.unive.it
2.
Richiede il documento /index.html
3.
Visualizza il documento e se contiene altri elementi (es: immagini) ripete dal punto 1 (dal punto 2 con HTTP/1.1)
HTTP
RICHIESTA: GET / HTTP/1.0
RISPOSTA: HTTP/1.1 200 OK
Date: Wed, 13 Sep 2006 04:54:16 GMT
Server: Apache/2.0.58 Content­Length: 4668
Connection: close
Content­Type: text/html
<html>
Prova
</html>
FTP
 Trasferimento file
 All’inizio del collegamento l’utente viene identificato tramite username/password (per i collegamenti anonimi, user: anonymous)
 E’ possibile elencare il contenuto della directory remota (ls) e locale (lls), cambiare directory (cd, lcd), richiedere un file (get, mget), inviare un file (put, mput)
 Può anche essere utilizzato per trasferire un solo file specificandolo in un url (ftp://server/file)
Proxy





Riceve le richieste dai client (browser oppure altri proxy)
Inoltra le richieste al server (oppure ad un altro proxy)
Inoltra la risposta al client
Permette di oltrepassare (in modo controllato) i firewall
Se la stessa richiesta arriva da più client, viene inviata una volta sola al server (caching)
Telnet
●
Accesso remoto
●
Shell testuale
●
●
I comandi vengono eseguiti sul server remoto
Es: telnet squit.dsi.unive.it HTTP, FTP e Telnet non sono sicuri !
●
Chiunque abbia accesso al canale di comunicazione, oppure ad un proxy, può intercettare i contenuti
–
FTP, Telnet
il nome utente e la password sono leggibili
–
HTTP
altri dati sensibili possono essere letti (eg: PIN home banking, nr carta di credito, ….)
Posta elettronica
●
●
●
SMTP: gestisce l’invio dei messaggi di posta
POP3: permette di recuperare i propri messaggi da un server
IMAP: permette di recuperare i propri messaggi e di organizzarli in cartelle sul server
Crittografia
●
●
●
I dati scambiati vengono modificati in modo da non essere letti da chi non conosce la chiave
Esistono diversi tipi di algoritmi crittografici
Alcuni richiedono che la stessa chiave sia nota sia a chi codifica che a chi decodifica. Questo li rende di difficile utilizzo tra ‘sconosciuti’ (es: per ricevere una pagina web)
Crittografia a chiave asimmetrica
●
●
Gli algoritmi asimmetrici utilizzano un paio di chiavi una privata ed una pubblica
La chiave pubblica del destinatario può essere utilizzata per codificare un messaggio che solo il destinatario può leggere utilizzando la propria chiave privata
Crittografia a chiave asimmetrica
●
●
Il mittente può utilizzare la propria chiave privata del mittente per provare la propria identità.
Chiunque possieda la chiave pubblica del mittente può verificarne l’identità, senza accedere alla sua chiave privata
HTTPS, SSH, SFTP
●
●
Analoghi a HTTP, telnet ed FTP basati su canali sicuri.
Un indirizzo web sicuro inizia per https://..........

Documentos relacionados

Curriculum - Webalice.it

Curriculum - Webalice.it Conoscenza Microsoft Active Directory Competenze Unified Communications di Microsoft Exchange Server Conoscenza approfondita protocolli SIP, H323, ISDN, ISUP, HTTP, TCP/IP, UDP Conoscenza delle tec...

Leia mais