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 mediolunga 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 Puntopunto 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 tokenring 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, email, newsgroups, mailinglist, 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 (puntoapunto) 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, puntoapunto, 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 puntoapunto 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 ISOOSI: – – – 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 ISOOSI, 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 machineoriented, 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, sottodomini, sottosottodomini, …) 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 nonprofit 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 ContentLength: 4668 Connection: close ContentType: 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
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