Architettura Client/Server e Pear to Pear - isis einaudi
Transcript
Architettura Client/Server e Pear to Pear - isis einaudi
Architettura Client/Server e Pear to Pear Il Server Un server (detto in italiano anche servente o serviente) è una componente informatica che fornisce servizi ad altre componenti (tipicamente chiamate client) attraverso una rete. Si noti che il termine server, così come pure il termine client, possono essere riferiti sia alla componente software che alla componente hardware. Pertanto è comune riferirsi ad un computer di alte prestazioni ed alta affidabilità dedicato primariamente a fornire servizi chiamandolo server. È altrettanto comune usare lo stesso termine per riferirsi ad un processo (ovvero un programma software in esecuzione) che fornisca servizi ad altri processi (es. Server FTP). In pratica un server è un computer molto potente in grado di gestire intere aziende, scuole ecc. Un server comanda tanti computer connessi nella sua rete o attraverso internet meno potenti di lui: sono i client. I client sono normali pc che usano gli utenti per lavorare. Tra i servizi che vengono tipicamente erogati da un server, si possono citare: • file server, che permettono agli utenti di accedere ai file situati sul server come se fossero sul proprio calcolatore, agevolando la condivisione di informazioni In informatica, il termine file server si riferisce generalmente ad una macchina progettata per mettere a disposizione degli utilizzatori di una rete di computer dello spazio su un disco (disco singolo o composto da più dischi) nel quale sia possibile salvare, leggere, modificare, creare file e cartelle condivise da tutti, secondo regole o autorizzazioni che generalmente il gestore di rete organizza e gestisce. • database server • In informatica, il termine database, tradotto in italiano con banca dati, base di dati (soprattutto in testi accademici) o anche base dati, indica un archivio di dati, riguardanti uno stesso argomento o più argomenti correlati tra loro, strutturato in modo tale da consentire la gestione dei dati stessi (l'inserimento, la ricerca, la cancellazione ed il loro aggiornamento) da parte di applicazioni software. Informalmente e impropriamente, la parola "database" viene spesso usata come abbreviazione dell'espressione Database Management System (DBMS), che si riferisce a una vasta categoria di sistemi software che consentono la creazione e la manipolazione efficiente di database. web server Un web server è un programma (e, per estensione, il computer) che si occupa di fornire, su richiesta del browser una pagina web (spesso scritta in HTML). Le informazioni inviate dal web server viaggiano in rete trasportate dal protocollo HTTP. L'insieme di webserver presenti su Internet forma il WWW ossia il World Wide Web, uno dei servizi più sfruttati della Grande Rete. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 1 • application server, dove il server viene usato per far funzionare un programma applicativo e condividerne le funzionalità tra gli utenti Un application server è un software che fornisce l'infrastruttura e le funzionalità di supporto, sviluppo ed esecuzione di applicazioni e componenti server in un contesto distribuito. Si tratta di un complesso di servizi orientati alla realizzazione di applicazioni per il web, multilivello ed enterprise, con alto grado di complessità. • print server, che permettono di mettere in comune una o più stampanti tra gli utenti di una rete con la eventuale gestione dei diritti di accesso, Il termine print server definisce un dispositivo di rete in grado di fornire agli utenti di una rete l'accesso e l'utilizzo ad una o più stampanti in modo da permetterne l'impiego da parte di client diversi, sempre che questi abbiano le autorizzazioni necessarie per utilizzarle. Diversi tipi di autorizzazioni possono definire se l'utente ha i diritti per cancellare le code di stampa (l'elenco dei processi di stampa in attesa di essere stampati) o effettuare altre operazioni quali mettere in pausa una stampa per avviarla successivamente. • mail server, per la gestione della posta elettronica Un mail server (Mail Transfer Agent o MTA) è un programma, e per estensione il computer su cui viene eseguito, che si occupa dello smistamento da un computer a un altro della posta elettronica. Normalmente un mail server risiede su un sistema dedicato ma può essere eseguito su computer ove risiedano altri server o che vengano utilizzati anche per altri scopi. Si può installare un mail server anche su un normale personal computer. • • • game server, che ospitano risorse per rendere possibili i giochi multiutente in linea gestione di una rete informatica, locale o geografica o DHCP, per l'assegnazione automatica di indirizzi IP ai computer o DNS server, che forniscono la risoluzione dei nomi dei siti (per esempio it.wikipedia.org) nei loro indirizzi IP server di autenticazione, che permette di autenticare l'accesso ad altre risorse Il server è un elemento fondamentale dell'infrastruttura IT di cui fa parte, in quanto i suoi malfunzionamenti si ripercuotono su tutti i client che lo usano. Pertanto, per i server si adottano accorgimenti volti a garantire affidabilità e sicurezza: • • • utilizzo di hardware di classe superiore, con prestazioni elevate ed elementi ridondanti (dischi RAID, alimentatori ridondati) protezione dell'alimentazione elettrica mediante gruppo di continuità protezione fisica mediante localizzazione in un locale apposito ad accesso ristretto Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 2 • • • • connessione di rete preferenziale, di capacità superiore climatizzazione configurazioni del sistema operativo volte a garantire maggiore affidabilità e sicurezza gestione da parte di sistemisti esperti I computer progettati per essere usati come server in una sala server di dimensioni medio-grandi vengono realizzati in modo da poter essere montati in un armadio rack. I maggiori investimenti richiesti da questi accorgimenti sono motivati dall'importanza che il buon funzionamento del server ha per i suoi utenti. Se il carico di richieste è eccessivo per un solo server, o se sono necessari alti livelli di affidabilità, più server possono suddividersi il compito di erogare un servizio o un gruppo di servizi. In questo caso si dice che i server formano un'unica risorsa computazionale definita come server cluster, che può continuare a funzionare anche se un certo numero delle macchine componenti viene messa fuori linea, anche se ovviamente la risorsa subisce un degrado delle prestazioni generali. Questo richiede che siano dotati di un sistema operativo adeguato, e/o collegati attraverso specifiche configurazioni di rete. Server Farm (letteralmente Fattoria di Server) è un termine inglese utilizzato in informatica per indicare una serie di server collocati in un ambiente unico in modo da poterne centralizzare la gestione, la manutenzione e la sicurezza. Spesso, all'interno delle server farm, vengono costituiti dei sistemi cluster per gestire in maniera migliore carichi di lavoro pesanti o critici (server email, web, database, rendering, GRID...). Le server farm sono solitamente realizzate in ambienti climatizzati, protetti da accessi non autorizzati e sviluppati in colonne di Rack destinati a singoli clienti. Non è raro, infatti, trovare server farm composte da centinaia, se non da migliaia di server. La realizzazione di una server farm permette di distribuire i costi di costruzione e gestione di una struttura sicura e di abbattere i costi per la connettività. Quando le server farm vengono realizzate con l'esplicito obiettivo di affittarne lo spazio, si parla di Data Center o Network Operating Center Il Client In informatica, con client (in italiano detto anche cliente) si indica una componente che accede ai servizi o alle risorse di un'altra componente, detta server. In questo contesto si può quindi parlare di client riferendosi all'hardware o al software. Un computer collegato ad un server tramite una rete informatica (locale o geografica) ed al quale richiede uno o più servizi, utilizzando uno o più protocolli di rete è un esempio di client hardware. Un programma di posta elettronica è un esempio di client software. Sono sempre di più i software, come il web, l'e-mail, i database, che sono divisi in una parte client (residente ed in esecuzione sul pc client) ed una parte server (residente ed in esecuzione sul server). Il termine client indica anche il software usato sul computer client per accedere alle funzionalità offerte dal server. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 3 Ad esempio, nel web il software client è il browser, e parla con un server web attraverso il protocollo HTTP; per l'e-mail il client è detto in gergo mail user agent o MUA (ad esempio, Outlook, Mozilla Thunderbird, Eudora, ...), e parla con il server attraverso il protocollo SMTP e POP o IMAP; il client per la consultazione o la modifica del database (spesso costituito da librerie software utilizzate da una applicazione) parla con il DBMS, che gestisce il database e risponde alle interrogazioni del client. Architettura client-server o N-tier Il complesso logico formato da (uno o più) server e (tipicamente molti) client è chiamato Modello client-server. Negli anni recenti è stato esteso alla 'interazione tra più macchine o servizi eterogenei, e in tal caso si parla di architettura a 3-tier (o più in generale ad N-tier). Il server riceve dai client delle richieste di servizio, e restituisce loro i risultati dopo averne effettuato l'elaborazione relativa. Questo permette di concentrare su una macchina centrale le risorse di elaborazione, il software, la manutenzione, le informazioni critiche o sensibili, gli accorgimenti atti a garantire affidabilità (come i backup). I client, al contrario, possono in generale essere anche macchine con risorse e affidabilità inferiori, che hanno l'unico compito di interagire con l'utente, e che non contengono informazioni critiche o sensibili. Si noti che dal punto di vista software un computer non è mai puramente un server, in quanto oltre ad erogare servizi ad altri si appoggia tipicamente su servizi ottenuti da terzi, e quindi è contemporaneamente server e client. Ad esempio, un server di posta elettronica tipicamente si appoggia ad altri server per ottenere informazioni sulla rete, e quindi è simultaneamente un server di e-mail ed un client per quanto riguarda il servizio DNS relativo alla gestione di rete. Un'applicazione client-server (in letteratura cliente-servitore) è un tipo di applicazione di rete nel quale un computer client istanzia l'interfaccia utente di un'applicazione connettendosi ad una server application o ad un sistema di database. Più semplicemente, i sistemi client/server sono un'evoluzione dei sistemi basati sulla condivisione semplice delle risorse. La presenza di un server permette ad un certo numero di client di condividerne le risorse, lasciando che sia il server a gestire gli accessi alle risorse per evitare conflitti tipici dei primi sistemi informatici. Un sistema client/server non è altro che la trasposizione informatica dei sistemi convenzionali. Il software client in genere è di limitata complessità, limitandosi normalmente ad operare come interfaccia verso il server. In generale nel campo informatico il termine client indica una componente che accede ai servizi o alle risorse di un'altra componente, detta server. In questo contesto si può quindi parlare di client riferendosi all'hardware o al software. Un computer collegato ad un server tramite rete locale o geografica, ed al quale richiede uno o più servizi, utilizzando uno o più protocolli di rete è un esempio di client hardware. Un programma di posta elettronica è un esempio di client software. Sono sempre di più i software, come il web, l'e-mail, i database, che sono divisi in una parte client (residente ed in esecuzione sul pc client) ed una parte server (residente ed in esecuzione sul server). Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 4 Il termine client indica anche il software usato sul computer client per accedere alle funzionalità offerte dal server. Ad esempio, nel web il software client è il browser, e parla con un server web attraverso il protocollo HTTP; per l'e-mail il client è detto in gergo mail user agent o MUA (ad esempio, Outlook, Mozilla Thunderbird, Eudora, ...), e parla con il server attraverso i protocollo SMTP e POP o IMAP; il client per la consultazione o la modifica del database (spesso costituito da librerie software utilizzate da una applicazione) parla con il DBMS, che gestisce il database e risponde alle interrogazioni del client. Il software server, oltre alla gestione logica del sistema, deve implementare tutte le tecniche di gestione degli accessi, allocazione e rilascio delle risorse, condivisione e sicurezza dei dati o delle risorse. Ad esempio un server di posta elettronica è paragonabile ad un qualunque ufficio postale. Gli utilizzatori per accedere via client alla loro cassetta di posta elettronica devono essere stati autorizzati. In modo analogo un utente deve possedere la chiave della cassetta sita presso un ufficio postale dalla quale vuole prelevare la corrispondenza. I client ed il server sono in collegamento tramite un protocollo di comunicazione attraverso una rete di comunicazione. Il protocollo può essere in chiaro o in certi casi crittografato. Nell'ambito delle telecomunicazioni, due o più macchine o host (computer, telefono, stampante, ecc...) possono comunicare tra loro rispettando norme che sono dette protocolli di rete. L'aderenza ai protocolli garantisce che due macchine possano comunicare correttamente, anche se sono state realizzate indipendentemente. Architettura Peer-to-peer Generalmente per peer-to-peer (o P2P) si intende una rete di computer o qualsiasi rete informatica che non possiede client o server fissi, ma un numero di nodi equivalenti (peer, appunto) che fungono sia da client che da server verso altri nodi della rete. Questo modello di rete è l'antitesi dell'architettura client-server. Mediante questa configurazione qualsiasi nodo è in grado di avviare o completare una transazione. I nodi equivalenti possono differire nella configurazione locale, nella velocità di elaborazione, nella ampiezza di banda e nella quantità di dati memorizzati. L'esempio classico di P2P è la rete per la condivisione di file (File sharing). In Microsoft tendono a definire con il termine peer–to–peer una rete di due o più computer in cui tutti gli elaboratori occupano la stessa posizione gerarchica. Tale modalità è normalmente conosciuta con il termine Gruppo di Lavoro, in antitesi alle reti in cui è presente un dominio centralizzato. Il termine può essere tecnicamente applicato a qualsiasi tipo di tecnologia di rete e di applicazioni che utilizzano questo modello, come per esempio il protocollo NNTP utilizzato per il trasferimento delle notizie Usenet, ARPANET, applets java, live chat decentralizzate o le BBS di Fido Net. Il termine frequentemente viene riferito alle reti di file sharing (condivisione file) come Gnutella, FastTrack, e l'ormai defunto Napster che forniscono, o per Napster forniva, il libero scambio (e qualche volta anonimo) di file tra i computer connessi a Internet. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 5 Alcune reti e canali, come per esempio Napster, OpenNap o IRC usano il modello client-server per alcuni compiti ( per esempio la ricerca ) e il modello peer-to-peer per tutti gli altri. Reti come Gnutella o Freenet, vengono definite come il vero modello di rete peer-to-peer in quanto utilizzano una struttura peer-to-peer per tutti i tipi di transazione. Quando il termine peer-to-peer venne utilizzato per descrivere la rete Napster, implicava che la natura a file condivisi del protocollo fosse la cosa più importante, ma in realtà la grande conquista di Napster fu quella di mettere tutti i computer collegati sullo stesso piano. Il protocollo "peer" era il modo giusto per realizzarlo. Utilizzi futuri:Utilizzi più innovativi prevedono l'utilizzo delle reti peer-to-peer per la diffusione di elevati flussi di dati generati in tempo reale come per esempio programmi televisivi o film. Questi programmi si basano sull'utilizzo delle banda di trasmissione di cui dispongono i singoli utenti e la banda viene utilizzata per trasmettere agli altri fruitori il flusso dati. Questa tipologia di programmi in linea di principio non richiede server dotati di elevate prestazioni, dato che il server fornisce i flussi video a un numero molto limitato di utenti, che a loro volta li ridistribuiscono ad altri utenti. Questo metodo di diffusione permette in teoria la trasmissione in tempo reale di contenuti video, ma richiede che i singoli utenti siano dotati di connessioni ad elevata banda sia in ricezione che in trasmissione, altrimenti si arriverebbe rapidamente a una saturazione della banda fornita dal server. Questo limita la diffusione di questa tecnologia in Italia, dove sono molto diffuse linee asimmetriche (adsl) che forniscono una banda elevata in ricezione, ma scarsa in trasmissione. Programmi che diffondono in tempo reale contenuti video sono diventati discretamente popolari nel 2006 durante i campionati mondiali di calcio svoltisi in Germania. Avendo la RAI acquistato solo alcune partite del campionato, molte persone utilizzavano programmi che, appoggiandosi a server in paesi esteri (spesso cinesi), permettevano di visionare la partite con una qualità video accettabile. É da notare che sebbene in questi contesti spesso si parli di server, la tecnologia rimane comunque una tecnologia peer-to-peer, dato che il server serve da indice, sincronizza i vari utilizzatori che condividono la banda e fornisce il flusso di dati iniziale che poi gli utenti condividono. Quindi sebbene tecnicamente sia un server in pratica, dopo aver fornito il flusso dati iniziale ed aver messo in comunicazione i vari utenti, il server si disinteressa della comunicazione che diventa totalmente peer-to-peer. Utilizzando questa tecnologia grandi società stanno sperimentando la possibilità di fornire contenuti a pagamento tramite tecnologie peer-to-peer. Questo scelta è motivata dal fatto che la tecnologia peer-to-peer non richiede server di grandi dimensioni per gestire molti utenti, dato che se la rete è ben bilanciata si autosostiene e quindi è indipendente dal numero di utenti. Vanno ancora risolti però problemi legati alla diffusione di materiali protetti dai diritti d'autore, e vi sono quindi, oltre agli inevitabili problemi di carattere tecnico, problemi di carattere legale e di affidabilità. Prima di lanciare servizi a livello nazionale vanno anche effettuate delle fasi di test per individuare eventuali anomalie o difetti; la diffusione su vasta scala di questa tipologia sembra quindi non essere imminente. Controversie legali: I tipi di file maggiormente condivisi in questa rete sono gli mp3, o file musicali, e i DivX i file contenenti i film. Questo ha portato molti, soprattutto le compagnie discografiche e i media, ad affermare che queste reti sarebbero potute diventare una minaccia contro i loro interessi e il loro modello industriale. Di conseguenza il peer-to-peer divenne il bersaglio legale delle organizzazioni che riuniscono queste aziende, come la RIAA e la MPAA. Per esempio il servizio di Napster venne chiuso da una causa intentata dalla RIAA. Sia la RIAA che la MPAA spesero ingenti quantità di denaro al fine di convincere i legislatori ad approvare restrizioni legali. La manifestazione più estrema di questi sforzi risale al gennaio 2003, quando venne introdotto, negli U.S.A., un disegno di legge dal senatore della California Berman nel quale si garantivano, al Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 6 detentore del copyright, i diritti legali per fermare i computer che distribuivano materiale tutelato dai diritti d'autore. Il disegno di legge venne respinto da una commissione governativa Statunitense nel 2002, ma Berman lo ripropose nella sessione del 2003.Risale, invece, al 2004 la "Legge Urbani" nella quale viene sancita la possibilità di incorrere in sanzioni penali anche per chi fa esclusivamente uso personale di file protetti. Però nel 2007 la III sezione penale della Cassazione con la sentenza numero 149/2007, ha accolto il ricorso presentato da due studenti torinesi, condannati in appello ad una pena detentiva, sostituita da un’ammenda, per avere «duplicato abusivamente e distribuito» programmi illecitamente duplicati, giochi per psx, video cd e film, «immagazzinandoli» su un server del tipo Ftp (File transfer protocol). I reati contestati ai due ricorrenti erano quelli previsti dagli articoli 171 bis e 171 ter della legge sul diritto d’autore, la numero 633/41, sottoposta a tutta una serie di modifiche in anni recenti: nell’ultima formulazione, il primo prevede «la punibilità da sei mesi a tre anni, di chiunque abusivamente duplica, per trarne profitto, programmi per elaboratore o ai medesimi fini importa, distribuisce, vende, detiene a scopo commerciale o imprenditoriale o concede in locazione programmi contenuti in supporti non contrassegnati dalla Siae»; il secondo punisce con la reclusione da uno a quattro anni chi «riproduce, duplica, trasmette o diffonde abusivamente, vende o pone altrimenti in commercio, cede a qualsiasi titolo o importa abusivamente oltre cinquanta copie o esemplari di opere tutelate dal diritto d’autore e da diritti connessi». Ebbene, per la Cassazione in primo luogo è da escludere per i due studenti la configurabilità del reato di duplicazione abusiva, attribuibile non a chi in origine aveva effettuato il download, ma a chi semmai si era salvato il programma dal server per poi farne delle copie. Ma soprattutto «deve essere escluso, nel caso in esame, che la condotta degli autori della violazione sia stata determinata da fini di lucro, emergendo dall’accertamento di merito che gli imputati non avevano tratto alcun vantaggio economico dalla predisposizione del server Ftp». Per «fine di lucro», infatti, «deve intendersi un fine di guadagno economicamente apprezzabile o di incremento patrimoniale da parte dell’autore del fatto, che non può identificarsi con un qualsiasi vantaggio di genere; nè l’incremento patrimoniale può identificarsi con il mero risparmio di spesa derivante dall’uso di copie non autorizzate di programmi o altre opere dell’ingegno, al di fuori dello svolgimento di un’attività economica da parte dell’autore del fatto, anche se di diversa natura, che connoti l’abuso». Da quel momento in poi le reti "peer-to-peer" si espansero sempre di più, si adattarono velocemente alla situazione e divennero tecnologicamente più difficili da smantellare, spostando l'obiettivo delle major sugli utenti. Qualcuno ha cominciato ad affermare che queste reti potevano diventare un modo per consentire a malintenzionati di nascondere la propria identità. Altri dicevano che per essere completamente immuni dalle major fosse necessario creare una rete wireless ad hoc in cui ogni unità o computer fosse connessa in modo equivalente (peer-to-peer sense) a quella vicina. Problematiche di sicurezza e privacy: Oltre agli attacchi che una rete aperta può subire, anche i computer che ad essa accedono possono essere soggetti a problematiche di security e privacy. Per la stessa filosofia del P2P quasi tutti i programmi di file-sharing richiedono per la sopravvivenza del sistema di avere sul proprio computer dei file condivisi e che quindi possano essere a disposizione degli utenti che ne fanno richiesta. Questo implica da un lato la condivisione di un’area del disco sulla quale mettere i file a disposizione, dall’altro consentire il libero accesso ad alcune porte del computer. Già di per sé questo porta ad avere un aumento dei problemi di security, in quanto chiunque ha la possibilità di entrare su quelle porte. Se poi si considera l’enorme incremento degli utenti e l’utilizzo di linee a banda larga, ormai alla portata di tutti, questi problemi, che una volta potevano essere trascurabili, diventano prioritari. Ciò rende fondamentale l’utilizzo di sistemi di difesa come antivirus, firewall, programmi di pulizia dei file di registro e di rimozione degli agenti Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 7 infettivi: virus, spyware, trojan o malware. Il migliore aiuto che si può dare a questi sistemi di difesa è costituito dalla propria cultura informatica che consente di riconoscere ed evitare l’introduzione nel proprio computer di questi agenti, invece di scaricarli incautamente da altri utenti del P2P. A volte il diritto alla riservatezza può nascondere l’azione di chi, non avendo interesse allo sviluppo del P2P o ritenendosi addirittura danneggiato da esso, oppure per semplice vandalismo, mette intenzionalmente in condivisione file infetti, corrotti o non corrispondenti a quanto dichiarato. È fondamentale poi, a salvaguardia della privacy, la propria attenzione nell’evitare di condividere porzioni di disco nelle quali incautamente sono stati depositati dati personali o aziendali (nel caso di chi utilizza il computer dell’ufficio), riferimenti a conti correnti o a password. Una frase diventata famosa riassume bene il concetto: “inutile criminalizzare sistemi di file-sharing, nati proprio come strumento collaborativo, laddove è assente una politica aziendale improntata alla sicurezza e alla conoscenza” (pubblicato sul Punto Informatico del 29 ottobre 2004). Autenticazione Nel campo della sicurezza informatica, si definisce autenticazione (in greco: , da 'authentes'='autore') il processo tramite il quale un computer, un software o un utente , verifica la corretta , o almeno presunta , identità di un altro computer, software o utente che vuole comunicare attraverso una connessione. Durante una comunicazione in Internet o l’accesso ad alcuni servizi messi a disposizione dal Web è importante per l’utente definire in modo univoco la propria identità, essere riconosciuto e per questo ottenere l’accesso ai propri servizi.Allo stesso modo è fondamentale anche conoscere l’identità di chi si trova dall’altra parte della “linea” della comunicazione ed essere certi che l’interlocutore con il quale si stanno scambiando delle informazioni sia veramente chi dice di essere e non un impostore. Il problema dell'autorizzazione è spesso identificato con quello dell'autenticazione: i protocolli per la sicurezza standard, ad esempio, si basano su questo presupposto. Comunque, vi sono casi in cui questi due problemi vengono risolti con strategie differenti. Un esempio di tutti i giorni è la comune procedura di autenticazione che conosciamo come login. Un sistema di elaborazione, progettato per essere usato soltanto da utenti autorizzati, deve essere in grado di rilevare ed escludere i non autorizzati. L'accesso ad esso, dunque, viene garantito solo dopo aver eseguito con successo una procedura di autenticazione, di solito attraverso una username e una password personale. Tuttavia, dato che l'intera discussione si basa, quasi esclusivamente, su termini astratti, i quali, a volte, possono anche risultare ambigui, vogliamo stabilire un punto fermo: non esistono computer, software o utenti in grado di confermare, con totale certezza, l'identità di altri computer, software e utenti. Dunque, essendo la soluzione "totalmente sicura" irraggiungibile, si può soltanto cercare di sottoporre l'autenticando a diverse prove, ad esempio delle domande alle quali bisogna rispondere correttamente. Sicuramente è estremamente importante che l’identità virtuale sia associata univocamente a quella “fisica” e sia quindi possibile verificare che la persona che fruisce del servizio sia veramente chi afferma di essere, per i servizi più critici, come quelli che prevedono transazioni finanziarie o comunicazione di dati personali. Il processo di autenticazione avviene diverse volte al giorno, senza magari accorgersene: un timbro di voce al telefono, un volto, bastano per farci riconoscere un conoscente e concedergli l'attenzione. Un contenitore di login/password è la chiave hardware. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 8 Questo è un oggetto che contiene una memoria interna dove è possibile memorizzare password, codici, firme digitali. La sicurezza del contenitore si basa sull'affidabilità del proprietario, in quanto è logico che se quest'ultimo lascia incustodita la propria chiave, la sicurezza può essere compromessa. Un esempio di chiave hardware sono le smart card. Alcuni esempi comuni di processi d'autenticazione coinvolti in un controllo d'accesso sono i seguenti: • • • prelievo di denaro da uno sportello Bancomat. controllo remoto di un computer tramite Internet servizi bancari online I metodi tramite i quali un essere umano può autenticarsi sono divisi in tre classi, in base a ciò che egli: è (es. impronte digitali, impronta vocale, modello retinico, sequenza del DNA, calligrafia o altri identificatori biometrici) • ha (es. tesserino identificativo) • conosce (es. password, parola chiave o numero di identificazione personale (PIN)) • Spesso, al posto del singolo metodo, viene usata una combinazione di metodi, i.e. un tesserino identificativo e un PIN. Questa prende il nome di autenticazione a due fattori. Le impronte digitali, in passato, erano considerate il più autorevole metodo di autenticazione, ma alcuni recenti casi giudiziari, nei tribunali degli Stati Uniti e di altri paesi, hanno sollevato grossi dubbi sull'affidabilità del suddetto metodo. È stato teorizzato l'uso di vari altri metodi biometrici (i.e. scansione della retina), ma per quasi tutti è stata dimostrata una possibile ambiguità di risultati. Nel contesto dell'ICT, sono stati sviluppati dei metodi crittografici (vedi firma digitale) i quali, per ora, non sono raggirabili se (e solo se) la chiave originaria, utilizzata per cifrare l'informazione, non è stata compromessa. Questi ottimi metodi sono, almeno per ora, considerati inattaccabili. Ma non c'è, però, la certezza che essi rimangano "sicuri" per sempre. Imprevisti sviluppi matematici futuri, potrebbero rendere vulnerabile l'intera generazione moderna di algoritmi di cifratura, mettendo in seria discussione tutto ciò che è stato autenticato in passato. In particolare, un contratto digitalmente firmato non avrebbe più alcun valore nel caso che il sistema crittografico di base fosse stato 'bucato'. La scelta dei diversi metodi di autenticazione è condizionata dai diversi fattori tra cui l'usabilità, l'importanza delle informazione da proteggere ed il costo del sistema. Indirizzo IP Un Indirizzo IP è un numero che identifica univocamente nell'ambito di una singola rete i dispositivi collegati con una rete informatica che utilizza lo standard IP (Internet Protocol). Ciascun dispositivo (router, computer, server di rete, stampanti, alcuni tipi di telefoni,...) ha, quindi, il suo indirizzo. Semplificando, un indirizzo IP può essere visto come l'equivalente di un indirizzo stradale o un numero telefonico dei dispositivi collegati su internet. Infatti, così come un indirizzo stradale o un numero telefonico identifica un edificio o un telefono, così un indirizzo IP identifica univocamente uno specifico computer o un qualsiasi altro dispositivo di rete o una rete. A sua volta, in una rete possono essere utilizzati altri indirizzi IP validi localmente analogamente alla numerazione degli interni di un edificio. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 9 Tuttavia l'indirizzo ip, rispetto all'indirizzo stradale, puo' cambiare con grande facilità in funzione di moltissime variabili. Puo' anche essere occultato o falsificato, più o meno lecitamente. E, rispetto all'indirizzo stradale, da solo non dice nulla di chi lo usa se non ai fornitori di accesso a internet. Insieme ad altri dati puo' essere usato per profilare gli utenti. In particolare, all'interno di una rete ad ogni interfaccia connessa alla rete fisica viene assegnato un indirizzo univoco, in modo da rendere possibili le comunicazioni tra un computer e l'altro. Va considerato, infatti, che non è l'host ad essere connesso ma è l'interfaccia fisica (ad esempio una scheda di rete); un router, ad esempio, ha diverse interfacce e per ognuna occorre un indirizzo IP. Gli indirizzi IP pubblici sono rilasciati e regolamentati dall'ICANN tramite una serie di organizzazioni delegate. Tuttavia è da tener presente che a livello mondiale e nazionale i primi provider di connessione Internet si sono accaparrati un numero sproporzionato di indirizzi IP. I provider che si sono affacciati dopo sul mercato hanno ovviato a questo stato di cose considerando i propri utenti di una medesima città come una rete privata che accede ad Internet mediante un singolo IP pubblico. Questo comporta alcune difficoltà nell'utilizzo di servizi su Internet che presuppongono che ad un IP corrisponda una singola connessione (per esempio IRC e peer-to-peer). Per conoscere il proprio indirizzo ip, subnet mask e gateway nei sistemi operativi Microsoft Windows è sufficiente digitare dal prompt di DOS il comando ipconfig (il prompt del DOS è accessibile dal percorso Start/Esegui, digitando "cmd") mentre nei sistemi basati su Linux è sufficiente aprire una shell e digitare il comando ifconfig. Suite di protocolli Internet Livello applicazioni HTTP, HTTPS , SMTP, POP3, IMAP, FTP, SFTP, DNS, SSH, IRC, SNMP, SIP, RTSP, Rsync, Telnet, DHCP, HSRP, BitTorrent, RTP, SysLog... Livello di trasporto TCP, UDP, SCTP, DCCP ... Livello di internetworking IPv4, IPv6, ICMP, BGP, OSPF, RIP, IGRP, IGMP,IPsec... Livello di collegamento Ethernet, WiFi, PPP, Token ring, ARP, ATM, FDDI, LLC, SLIP, WiMAX ... Livello fisico Doppino, Fibra ottica, Cavo coassiale, Codifica Manchester, Codifica 4B/5B, Cavi elettrici, WiFi, WiMAX... Subnet mask Subnet Mask o "Maschera di Sottorete", erroneamente chiamata "indirizzo di subnet", è necessaria al computer che deve comunicare con un altro indirizzo IP per sapere se deve instradare i pacchetti verso il gateway della sua rete locale oppure usare l'indirizzo di rete locale del destinatario (ethernet, token ring o quant'altro). Normalmente viene indicata con un indirizzo di 4 byte scritti sotto forma di 4 numeri decimali separati da un punto, come nel caso degli indirizzi IP, ad esempio: • • 255.255.0.0 255.255.255.192 Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 10 È altresì identificabile apponendo al pseudo-indirizzo IP della rete locale a cui si riferisce, una barra e un numero, come questi: • • 192.168.0.0/16 61.161.16.224/27 Tale notazione sta a significare che dei 32 bit dello pseudo-indirizzo IP, i primi 16 sono comuni a tutti gli IP della rete locale a cui è connesso il computer, mentre i bit successivi variano per ogni computer della rete (non è quindi un vero indirizzo IP perché identifica un gruppo di computer e non uno soltanto). Il primo esempio sopra è molto comune ed è il caso di una rete IP privata, che può contenere fino a 65534 computer (cioè 232-16-2); il secondo invece è decisamente particolare ed è una sottorete internet "non locale" che può contenere fino a 30 computer (cioè 232-27-2). Quando il sistema operativo (più precisamente: il livello IP dello stack TCP/IP) riceve da un programma la richiesta di inviare un pacchetto IP ad un certo indirizzo IP destinatario, per prima cosa calcola l'AND logico fra la subnet mask e il proprio indirizzo IP, e lo confronta con l'AND logico tra la subnet mask e l'indirizzo IP di destinazione. Se il risultato delle operazioni è identico (cioè i bit che identificano l'id di rete, o net ID, sono identici, mentre variano solo i bit dell'id di host) allora invierà il pacchetto nella rete locale indirizzandolo con l'indirizzo di rete locale del PC destinatario (se non conosce tale indirizzo userà il protocollo ARP per trovarlo); se invece il risultato delle operazioni è differente significa che il computer destinatario non appartiene alla rete locale, e il pacchetto verrà trasmesso al gateway della rete locale affinché lo instradi verso la rete remota che contiene il computer destinatario. Fra i sistemisti è diventata pratica comune usare le subnet mask per identificare e dimensionare le reti IP, sezionandole in sottoreti per poterle meglio gestire ed amministrare. Gateway Il gateway (dall'inglese, portone, passaggio) è un dispositivo di rete che opera al livello di rete e superiori del modello ISO/OSI. Il suo scopo principale è quello di veicolare i pacchetti di rete all'esterno della rete locale (LAN). Da notare che gateway è un termine generico che indica il servizio di inoltro dei pacchetti verso l'esterno; il dispositivo hardware che porterà a termine questo compito è tipicamente un router. Nelle reti più semplici è presente un solo gateway che inoltra tutto il traffico diretto all'esterno verso la rete internet. In reti più complesse in cui sono presenti parecchie subnet, ognuna di queste fa riferimento ad un gateway che si occuperà di instradare il traffico dati verso le altre sottoreti o a rimbalzarlo ad altri gateway. Principio di funzionamento: • Un computer connesso alla rete locale confronta i primi bit dell'indirizzo di destinazione (quelli che corrispondono a bit "1" nella propria subnet mask) dei dati da inviare con il network prefix (già noto) del proprio indirizzo IP: o se corrispondono, significa che il computer di destinazione è sulla stessa rete locale; Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 11 o se invece non corrispondono, il computer d'origine invia i dati al gateway predefinito, il quale si occuperà del loro successivo instradamento verso la rete remota di destinazione. DNS: Domain Name System Domain Name System (spesso indicato con DNS) è un servizio utilizzato per la risoluzione di nomi di host in indirizzi IP e viceversa. Il servizio è realizzato tramite un database distribuito, costituito dai server DNS. Si definisce host o end system (terminali) ogni terminale collegato ad Internet. Gli host possono essere di diverso tipo, ad esempio computer, palmari, dispositivi mobili e così via, fino a includere web TV, dispositivi domestici e thin client. L'host è definito in questo modo perché ospita programmi di livello applicativo che sono sia client (ad esempio browser web, reader di posta elettronica), sia server (ad esempio, web server). Uno stesso host può agire contemporaneamente da client e da server, in particolare con le applicazioni peer to peer (esempio Napster, Kazaa, eMule,Direct Connect etc.). Il nome DNS denota anche il protocollo che regola il funzionamento del servizio, i programmi che lo implementano, i server su cui questi girano, l'insieme di questi server che cooperano per fornire il servizio. I nomi DNS, o "nomi di domino", sono una delle caratteristiche più visibili di Internet. C'è confusione in merito alla definizione dell'acronimo: la S spesso viene interpretata come service, ma la definizione corretta è system. L'operazione di convertire un nome in un indirizzo è detta risoluzione DNS, convertire un indirizzo IP in nome è detto risoluzione inversa. La possibilità di attribuire un nome testuale facile da memorizzare a un server (ad esempio un sito world wide web) migliora di molto l'uso del servizio, in quanto gli esseri umani trovano più facile ricordare nomi testuali (mentre gli host e i router sono raggiungibili utilizzando gli indirizzi IP numerici). Per questo, il DNS è fondamentale per l'ampia diffusione di internet anche tra utenti non tecnici, ed è una delle sue caratteristiche più visibili. Il DNS fu inventato il 23 giugno 1983 da Paul Mockapetris, Jon Postel e Craig Partrige; le specifiche originali sono descritte nello standard RFC 882. Nel 1987 vennero pubblicati commenti allo standard RFC del DNS, con i nomi RFC 1034 e RFC 1035 rendendo obsolete le specifiche precedenti. Un nome a dominio è costituito da una serie di stringhe separate da punti, ad esempio it.wikipedia.org. A differenza degli indirizzi IP, dove la parte più importante del numero è la prima partendo da sinistra, in un nome DNS la parte più importante è la prima partendo da destra. Questa è detta dominio di primo livello (o TLD, Top Level Domain), per esempio .org o .it. Un dominio di secondo livello consiste in due parti, per esempio wikipedia.org, e così via. Ogni ulteriore elemento specifica un'ulteriore suddivisione. Quando un dominio di secondo livello viene registrato all'assegnatario, questo è autorizzato a usare i nomi di dominio relativi ai successivi livelli Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 12 come it.wikipedia.org (dominio some.other.stuff.wikipedia.org (dominio di terzo livello) di quinto livello) e così via. e altri come Un nome di dominio, come per esempio it.wikipedia.org, può essere parte di un URL, come http://it.wikipedia.org/wiki/Treno, o di un indirizzo e-mail, come per esempio [email protected]. Questi sono gli strumenti più utilizzati per identificare una risorsa su Internet, il che spiega la pervasività dei nomi di dominio. Molti nomi di dominio utilizzati per server web hanno nella parte sinistra la stringa di caratteri "www", ma non è sempre necessario averla. In molti casi, ma non sempre, il nome privato del prefisso "www." porta comunque alla stessa pagina, come per esempio "ns.nl" e "www.ns.nl". Il nome di dominio più breve (e di conseguenza l'URL più breve) è p.ro. Un Uniform Resource Locator o URL è una sequenza di caratteri che identifica univocamente l'indirizzo di una risorsa in Internet, come un documento o un'immagine. Ad esempio, l'URL di questa pagina è http://it.wikipedia.org/wiki/Uniform_Resource_Locator. Ogni Uniform Resource Locator si compone normalmente di tre parti: tiposerver://nomehost/nomefile • • • la prima parte indica il tipo di server, ovvero lo schema o protocollo utilizzato per indirizzare la risorsa (ad esempio http come in questa pagina); la seconda parte si riferisce al nome dell'host o server, oppure a un nome di dominio (FQDN) (ad esempio in questa pagina è it.wikipedia.org); la terza infine indica il path o nome file della risorsa (qui /wiki/Uniform_Resource_Locator). Indirizzamento IP statico e dinamico Gli indirizzi IP possono essere assegnati in maniera permanente (ad esempio ad un server che si trova sempre allo stesso indirizzo) oppure in maniera temporanea, da un insieme di indirizzi disponibili. Indirizzi dinamici: Gl indirizzi dinamici vengono utilizzati per identificare dispositivi non permanenti come ad esempio: personal computer o client. Gli Internet Service Provider (ISP) utilizzano l'allocazione dinamica per assegnare un ristretto numero di indirizzi ad una vasta clientela. Questo sistema viene utilizzato soprattutto per gli accessi dial-up, Wi-fi o in qualsiasi altro accesso temporaneo permettendo, ad esempio ad un Notebook, di connettersi ad un'amplia varietà di servizi senza la necessità di dover conoscere i dettagli di indirizzamento di ogni rete. L'indirizzamento dinamico richiede la presenza di un server in grado di accettare richieste ed assegnare indirizzi. L'indirizzamento può avvenire in maniera casuale, oppure in base ad una determinata politica. Il protocollo più comunemente utilizzato per assegnare indirizzi dinamicamente è il DHCP. Il DHCP, acronimo dall'inglese Dynamic Host Configuration Protocol (protocollo di configurazione dinamica degli indirizzi) è un protocollo usato per assegnare gli indirizzi IP ai Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 13 calcolatori di una rete. DHCP sostituisce - ed è compatibile verso il basso con - l'ormai quasi obsoleto BOOTP. In una rete basata sul protocollo IP, ogni calcolatore ha bisogno di un indirizzo IP, scelto in modo tale che appartenga alla sottorete a cui è collegato e che sia unico, ovvero che non ci siano altri calcolatori che stiano già usando quell'indirizzo. Il compito di assegnare manualmente gli indirizzi IP ai calcolatori comporta un rilevante onere per gli amministratori di rete, soprattutto in reti di grandi dimensioni o in caso di numerosi computer che si connettono a rotazione solo a ore o giorni determinati. Inoltre gli indirizzi IPv4 (attualmente usati nella quasi totalità delle reti al mondo) con l'aumentare dei computer connessi a Internet hanno cominciato a scarseggiare, diminuendo la disponibilità di IP fissi. DHCP viene utilizzato soprattutto in reti locali, in particolare su Ethernet. In altri contesti, funzioni simili sono svolte all'interno di PPP. In informatica, il Point-to-Point Protocol, o PPP, è un protocollo di rete di Livello datalink, comunemente usato nello stabilire connessioni dirette tra due nodi. PPP compone spesso il livello datalink (il livello di collegamento dati) del modello OSI nelle connessioni su circuiti punto-punto sincronizzati e non sincronizzati, soprattutto in ambito WAN. PPP era stato progettato per lavorare assieme ad altri protocolli di livello superiore, come l'IP, IPX, e AppleTalk. L'uso originario di PPP era quello di connettere due computer usando una linea telefonica, ed è largamente utilizzato dai provider per connettere gli utenti ad Internet con una connessione dial-up, rimpiazzando il più vecchio protocollo SLIP. Ora il suo utilizzo è più frequente per le linee DSL, dove viene utilizzato sopra un livello ATM (PPPoA) o Ethernet (PPPoE). Molto utilizzato anche nelle connessioni GPRS Il PPP fa uso dei campi Frame Check Sequence (FCS) per stabilire se un frame contiene un errore, e questi errori sono registrati in modo tale da far cadere la connessione nel caso in cui ne vengano trovati troppi. DSL (o xDSL) è una famiglia di tecnologie che forniscono trasmissione digitale di dati nell'ultimo miglio attraverso i fili del telefono. Originariamente la sigla significava digital subscriber loop, ma negli ultimi anni si è iniziato a parlare di digital subscriber line per ragioni di marketing. Tipicamente le velocità (in ricezione e trasmissione) sono per lo più comprese fra 256 kb/s e 24.000 kb/s, a seconda della tecnologia DSL, delle condizioni della linea e del livello di servizio. Esistono limitazioni in termini di distanza fra utente e centrale telefonica. Tali limitazioni sono più restrittive per le velocità di trasmissione più elevate. Alcuni esempi di tecnologie DSL sono: • • • • High Data Rate Digital Subscriber Line (HDSL); Symmetric Digital Subscriber Line (SDSL), una versione standardizzata dell'HDSL; Asymmetric Digital Subscriber Line (ADSL); ISDN Digital Subscriber Line (IDSL); Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 14 Indirizzi statici: Gli indirizzi statici vengono utilizzati per identificare dispositivi semi-permanenti con indirizzo IP costante. I Server utilizzano tipicamente questo metodo di indirizzamento. L'indirizzo statico puo' essere configurato direttamente sul dispositivo, oppure come parte di una configurazione DHCP che associa a l'Indirizzo MAC, il corrispondente indirizzo IP statico. L'indirizzo MAC (MAC address in inglese) viene detto anche indirizzo fisico o indirizzo ethernet o indirizzo LAN, ed è un codice di 48 bit (6 byte) assegnato in modo univoco ad ogni scheda di rete ethernet prodotta al mondo. Rappresenta in sostanza un nome per un particolare dispositivo di rete: ad esempio due schede di rete in due diversi calcolatori avranno due diversi nomi (e quindi diversi indirizzi MAC), così come avranno nomi diversi una scheda Ethernet ed una scheda wireless posizionate nel medesimo computer.MAC è un acronimo che significa Media Access Control e viene utilizzato per l'accesso al mezzo fisico dal livello datalink secondo lo standard ISO/OSI. ADSL: Asymmetric Digital Subscriber Line La tecnologia ADSL (acronimo dell'inglese Asymmetric Digital Subscriber Line), facente parte della famiglia di tecnologie denominata DSL, permette l'accesso ad Internet ad alta velocità (si parla di banda larga o broadband). La velocità di trasmissione va dai 640 kilobit per secondo (kb/s) in su, a differenza dei modem tradizionali di tipo dial-up, che consentono velocità massime di 56 kb/s in download e 33,6 kb/s in upload, e delle linee ISDN che arrivano fino a 128 kb/s (utilizzando doppio canale a 64K) simmetrici. Con l'ADSL il segnale è codificato in maniera digitale anche nella parte dalla linea telefonica all'utente ("subscriber line") e la velocità di invio dati è asimmetrica. Quella in uscita infatti è più bassa, per suddividere meglio la quantità di informazione a disposizione, tenendo conto che tipicamente per le utenze private si chiede molta più informazione in ingresso che in uscita. Peculiarità della tecnologia ADSL è la possibilità di usufruirne senza dover cambiare i cavi telefonici esistenti e senza dover usare linee separate per i dati e per le comunicazioni-voce normali: sul doppino telefonico in rame, è infatti possibile far viaggiare contemporaneamente sia i dati digitali che il segnale telefonico analogico, grazie alla banda differente usata per i due segnali: la voce usa infatti le frequenze comprese tra 300 e 3400 Hertz (Hz), mentre ADSL sfrutta quelle sopra i 4 KHz. Ciò è dovuto al fatto che il doppino di rame consente frequenze fino a vari megahertz (MHz). Già nei primi anni settanta lo stesso principio era stato utilizzato per la filodiffusione, il cui segnale viene inviato usando le frequenze fino ai 15 KHz. Metà della banda disponibile su un singolo doppino è per il segnale analogico che serve 700 utenze telefoniche; l'altra metà per utenze ADSL. Il numero di utenze dipende dal "taglio" di banda richiesto. Teoricamente, anche il traffico voce può viaggiare alle frequenze ADSL. Questo comporta un certo spreco di banda, poiché l'ADSL non può funzionare sulle basse frequenze del doppino, che, senza traffico voce, restano sottoutilizzate. Un altro dei vantaggi della tecnologia ADSL è la separazione delle bande dedicate al download e agli upload, a differenza ad esempio del collegamento mediante protocollo V.90 che essendo molto vicino al limite teorico di un canale telefonico non permette un sistema duplex alla massima velocità. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 15 L'attivazione del servizio ADSL richiede però l'applicazione ai dispositivi "standard" (prese di telefoni, fax e modem analogici) di un opportuno filtro (o splitter) ADSL, che fa sì che a tali apparati arrivino soltanto le frequenze relative al servizio telefonico di base, bloccando a monte quelle per la trasmissione dati, che altrimenti possono generare disturbi e fruscii. Attualmente (2007) i produttori di modem e router hanno la tendenza a installare un filtro passa-alto ad alto grado (5° o superiore) direttamente dentro il modem, così facendo tutti gli eventuali rumori o disturbi causati dal modem nella gamma delle frequenze telefoniche (0 - 4000 Hz) vengono eliminati a monte, evitando che si diffondano nel sistema telefonico classico permettendo, in alcuni casi, di poter escludere i filtri applicati a ogni singola presa telefonica presente nell'abitazione. Si noti che su una linea ISDN non può essere aggiunta la ADSL, perché ci sarebbero delle frequenze in comune. In questi casi viene aggiunta una nuova linea telefonica che però non è collegata al servizio di fonia standard. In Germania, dove lo sviluppo di ISDN era molto elevato, si è invece preferito chiedere ai costruttori di apparati di sviluppare versioni localizzate che lasciassero libere le frequenze usate da ISDN. Attualmente (2007) in Italia le velocità stanno aumentando e le offerte da 4, 6 e più megabit sono comuni, ma stanno diventando sempre più frequenti le offerte ADSL 2+, a 12, 20 e 24 megabit. La velocità media è a volte sotto il picco teorico perché la banda è frazionata fra molti utenti. Come accade per l'ADSL2 a 20 megabit, soltanto chi abita in vicinanza della centrale telefonica potrà godere di questa velocità. Il segnale decade rapidamente e a 5 km di distanza la velocità di download non supera i 640 kbit/sec. Il 75% dei contratti sono stipulati con tariffazione a consumo e la durata commerciale dei suddetti è di un anno dall'attivazione. La tecnologia dei DSLAM serve per rimodulare il segnale sul doppino in rame, con un costo di circa 15.000 euro a centrale telefonica per la copertura del servizio. Da notare purtroppo che, malgrado le nuove linee adsl 2+, in Italia ben 10 milioni di persone non possono ancora accedere ad una minima ADSL(1) venti megabit, perché la copertura adsl, taglia fuori ancora molte zone della penisola poiché non vengono sfruttate alternative come l'extended adsl o il wi-fi (vedasi digital divide). La banda minima garantita (MCR) è a discrezione del provider. Teoricamente ADSL non ha una velocità minima, massima e un throughput medio, ma un solo parametro di velocità: nei contratti è infatti indicata una sola velocità, che propriamente è detta velocità di punta (Peak Cell Rate, PCR). Gli operatori mettono a disposizione dell'utente un canale con date caratteristiche, quali PCR e MCR. Eventuali rallentamenti possono essere dovuti a diversi fattori, tra cui congestione del nodo ATM oppure problemi di banda del nodo (server) remoto a cui si fanno richieste. Alcuni operatori effettuano overbooking: la somma dei singoli MCR delle connessioni supera l'MCR del nodo di attestazione. Questo significa che potrebbero verificarsi delle congestioni a causa dell'elevato traffico generato contemporaneamente dagli utenti. Tipicamente, i contratti ADSL non garantiscono la continuità del servizio. In caso di interruzioni dovute a corti circuiti, allagamenti o atti vandalici nelle centrali telefoniche, danneggiamento dei cablaggi durante cantieri di lavoro, l'utente con tariffa flat è tenuto dal contratto a pagare anche per i mesi in cui l'ADSL non è più disponibile sulla sua linea. La legge sul servizio universale impone di garantire il servizio voce e una banda minima di 30 kb/s per le connessioni Internet. Le linee ADSL di Telecom o le linee di altri operatori attestate in wholesale Telecom hanno una banda minima garantita di 10 kb/s, che è quella richiesta per il traffico voce, e non garantisce nemmeno un collegamento Internet in connessione analogica. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 16 In pratica, lo stesso doppino verso la centrale è condiviso da più persone. Ciò può essere visto come una ripartizione fra più utenti della banda e degli alti costi di installazione di un doppino, oppure la stessa banda viene rivenduta più volte a persone diverse. Il canone ADSL è legato all'"affitto" di una porta del DSLAM in centrale telefonica; se il numero di utenti per porta del DSLAM è troppo alto, cade la probabilità di creare un collegamento e la velocità della connessione. Un valore di riferimento è di 10-12 per ogni porta del DSLAM. Il rallentamento si crea soprattutto nell'ultimo miglio, dalla centrale telefonica che è il POP di accesso alla casa dell'utente. Il fatto che ADSL è un mezzo condiviso non è una necessità tecnica, ma una scelta commerciale dei provider; così come una diversa velocità di upload e download. Tali scelte sono state dettate da una migliore gestione ed ottimizzazione del traffico. Una ADSL, in quanto asimmetrica (cioè velocità di upload diverse da quelle di download) è adatta ad esempio al download via web, streaming audio/video, etc; sono invece penalizzate le applicazioni per la comunicazione (è infatti il caso del VOIP ) e la condivisione a causa della generale bassa velocità di upload attualmente (2007) offerta dai vari gestori. In Francia (vedi [1]) dal 2005, e in Germania (v. [2]) è stata introdotta la tecnologia VDSL2 che fornisce una velocità simmetrica di 50 megabit/sec sia in download che in upload. Appunti di Informatica: Architettura Client/Server e Pear to Pear- Indirizzi IP – Indirizzamento statico e dinamico 17