Come è possibile costruire una rete di calcolatori che abbia la potenzialità di crescere fino a dimensioni planetarie e di supportare applicazioni così diversificate come la teleconferenza, il video-on-demand, il commercio elettronico, l’elaborazione distribuite e le biblioteche digitali. Quali tecnologie, tra quelle disponibili, serviranno come elementi costitutivi e che tipo di architettura software dovrete progettare per integrarli in un servizio di comunicazione efficiente? Pensiamo a descrivere gli elementi costitutivi disponibili per costruire reti, per poi mostrare come possano essere usati per strutturare una rete a partire dalle fondamenta.
In un certo periodo storico il termine rete aveva il significato di un insieme di linee seriali usate per collegare temrinali a grandi calcolatori di tipo mainframe. Per alcune persone la parola rete richiama la telefonia vocale. Per altri, la sola rete che abbia senso è la rete via cavo usata per distribuire i segnali televisivi. La cosa principale che accomuna queste reti è la loro specializzazione per la gestione di un particolare tipo di dati (pressione di tasti su tastiera, voce, video) e la loro tipica connessione a dispositivi con utilizzi specifici (terminali, telefoni e televisori).
Una rete di calcolatori si distingue per la sua generalità. Le reti calcolatori vengono costruite, principalmente, per hardware programmabile senza utilizzi specifici e non sono ottimizzate per un’applicazione particolare, quale potrebbe essere la telefonia o la distribuzione di segnali televisivi. Le reti di calcolatori sono in grado di trasportare tipi di dati molto diversi e forniscono supporto ad un ampio e sempre crescente campo di applicazioni. Dopo aver individuato i requisiti della rete utilizzeremo le conoscenze degli sviluppatori della rete Internet per progettare una valida architettura di rete definendo quindi componenti hardware e software disponibili e indentificando il sistema di rete completo.
Storia delle reti di calcolatori
Le prime reti di calcolatori risalgono agli anni ’60, con l’obiettivo di connettere grandi mainframe per condividere risorse e dati. Il progetto ARPANET, sviluppato dal Dipartimento della Difesa degli Stati Uniti, è considerato il precursore di Internet. ARPANET è stata la prima rete a utilizzare il protocollo di commutazione di pacchetto, una tecnologia che permette di suddividere i dati in pacchetti per una trasmissione più efficiente.
ARPANET
Negli anni ’60, durante la Guerra Fredda, gli Stati Uniti si trovavano in una situazione di tensione globale che li spinse a cercare un sistema di comunicazione che potesse resistere a possibili attacchi nucleari. Fu in questo contesto che nacque ARPANET.
Nel 1969, il Dipartimento della Difesa degli Stati Uniti finanziò ARPANET, un progetto rivoluzionario destinato a connettere diverse università e centri di ricerca. L’obiettivo era quello di creare una rete di comunicazione che potesse continuare a funzionare anche in caso di gravi emergenze.
La prima connessione di ARPANET fu stabilita tra l’Università della California, Los Angeles (UCLA) e lo Stanford Research Institute. Questo evento segnò l’inizio di una nuova era nella comunicazione. Il primo messaggio inviato su ARPANET fu “LO”. Doveva essere “LOGIN”, ma il sistema andò in crash dopo le prime due lettere!
LAN
Negli anni ’70 e ’80, le aziende iniziarono a sviluppare reti locali (LAN) per collegare i computer all’interno di uffici e edifici. Queste reti consentivano la condivisione di risorse come stampanti e file, aumentando l’efficienza operativa.
Uno dei progressi più significativi nelle reti locali fu l’invenzione di Ethernet da parte di Robert Metcalfe nel 1973. Ethernet divenne rapidamente lo standard per le LAN, grazie alla sua semplicità e affidabilità.
Con l’introduzione del protocollo TCP/IP, sviluppato da Vinton Cerf e Robert Kahn, è stato possibile standardizzare le comunicazioni tra reti diverse, creando le basi per l’interoperabilità globale. Durante questo periodo, nacquero anche le prime reti locali (LAN) e Wide Area Networks (WAN), ampliando la portata e l’accessibilità delle reti di calcolatori. Grazie ai protocolli TCP/IP nasce Internet.
World Wide Web
Gli anni ’80 hanno visto una rapida espansione delle reti, sia in ambito aziendale che accademico. La comparsa del World Wide Web (WWW), inventato da Tim Berners-Lee nel 1989, ha rivoluzionato l’accesso alle informazioni, rendendo Internet una risorsa essenziale per il pubblico generale.
Negli anni ’90, Internet è diventato un fenomeno globale, con un aumento esponenziale del numero di utenti e siti web. La diffusione dei personal computer e dei modem ha reso possibile l’accesso a Internet da casa, cambiando radicalmente il modo in cui le persone lavorano, comunicano e si informano. Durante questo periodo, sono nati i primi servizi di posta elettronica, motori di ricerca e piattaforme di e-commerce.
Reti nel XXI secolo
Il XXI secolo ha portato ulteriori innovazioni nel campo delle reti di calcolatori. Con l’avvento della banda larga, del Wi-Fi e delle reti mobili, l’accesso a Internet è diventato più veloce e ubiquitario. La diffusione degli smartphone e dei dispositivi IoT (Internet of Things) ha creato un ecosistema connesso, in cui ogni aspetto della vita quotidiana può essere gestito attraverso le reti di calcolatori.
Le tecnologie emergenti, come il cloud computing, la blockchain e l’intelligenza artificiale, stanno ridefinendo il ruolo delle reti di calcolatori, aprendo nuove possibilità per l’innovazione e la trasformazione digitale.
Applicazioni di rete
La maggior parte delle persone conosce la rete Internet perchè ne conosce le applicazioni: il World Wide Web, la posta elettronica, i flussi audio e video, le stanze di chat e la condivisione di file musicali. Il Web presenta un’interfaccia intuitiva e semplice: gli utenti visualizzano pagine composte da testo e oggetti grafici, selezionano con il mouse oggetti sui quali vogliono saperne di più e compare una nuova pagina. La maggior parte delle persone è anche consapevole che, anche se non si vede, ciascun oggetto selezionabile in una pagina è collegato ad un identificativo della successiva pagina da visualizzare, chiamato URL, che associa un nome univoco a ciascuna pagina che può essere visualizzata da un navigatore Web. Ad esempio
è un URL di una pagina che presenta un sito web di informatica. La stringa indica che per scaricare la pagina si usa il protocollo HTTP e www.informaticascuola.it è il nome del computer che fonisce la pagina.
La cosa che l’utente non conosce è che per ottenere quella pagina è necessario scambiare più di 17 messaggi sulla rete Internet. Almeno 6 messaggi servono per tradurre il nome della pagina nell’indirizzo Internet (200.10.10.10). 3 messaggi occorrono per allestire una connessione TCP tra il browser e tale server, 4 messaggi per l’invio da parte del browser della richiesta HTTP di tipo GET e per la risposta da parte del server contenente la pagina richiesta, e quattro messaggi per porre fine alla connessione TCP.
A questo traffico si aggiungono milioni di messaggi che si scambiano quotidianamente i nodi Internet per far sapere agli altri nodi della propria esistenza e di essere in grado di fornire pagine Web, di tradurre nomi in indirizzi e di instradare messaggi verso la loro destinazione finale. La diffusione di flussi audio è video è un’applicazione molto consolidata ed emergente in Internet.
Le reti di calcolatori permettono di implementare molti tipi di applicazioni perchè offrono una vasta gamma di servizi, che consentono agli utenti e ai dispositivi di comunicare, condividere risorse e accedere a informazioni e applicazioni su scala locale o globale. I principali servizi delle reti di calcolatori possono essere suddivisi in diverse categorie, a seconda delle loro funzionalità.
Servizi di Comunicazione
Uno dei servizi più diffusi è la posta elettronica, che consente lo scambio di messaggi tra utenti attraverso reti locali e globali, come Internet. Ogni utente ha una casella di posta elettronica dove riceve, invia e memorizza messaggi.
La messaggistica istantanea permette la comunicazione in tempo reale tra utenti, sia in forma testuale (come WhatsApp, Telegram o Slack), sia in forma multimediale (con l’uso di emoji, immagini e video). Le reti di calcolatori supportano anche servizi di chat di gruppo.
Le reti moderne consentono la comunicazione video e audio in tempo reale tra più utenti, come avviene con servizi come Zoom, Google Meet e Microsoft Teams. Le videoconferenze sono cruciali per le attività di lavoro a distanza e per la collaborazione tra utenti geograficamente distribuiti.
Possiamo infine citare il VoIP consente di effettuare chiamate vocali attraverso Internet piuttosto che attraverso linee telefoniche tradizionali. Servizi come Skype e WhatsApp chiamate sfruttano questa tecnologia per offrire comunicazioni vocali e video su reti di calcolatori.
Servizi di Condivisione delle Risorse
Le reti permettono la condivisione di file tra utenti, dispositivi o sistemi. Ciò avviene attraverso vari protocolli e servizi, come FTP (File Transfer Protocol), servizi cloud (Google Drive, Dropbox) o tramite condivisioni di rete in ambienti aziendali (cartelle condivise).
Il servizio di accesso remoto consente agli utenti di accedere a computer e risorse remote tramite protocolli come SSH (Secure Shell) o RDP (Remote Desktop Protocol). È essenziale per la gestione di server e dispositivi da postazioni remote.
Le reti di calcolatori consentono la condivisione di stampanti tra più utenti e dispositivi. Gli utenti di una rete possono inviare lavori di stampa a una stampante comune attraverso la rete, evitando la necessità di collegamenti fisici diretti.
Le soluzioni di Network Attached Storage (NAS) e Storage Area Network (SAN) permettono di centralizzare e condividere lo spazio di archiviazione tra più utenti. Questo è ampiamente usato in ambienti aziendali per gestire grandi quantità di dati accessibili da tutti i dipendenti.
Servizi di Gestione delle Informazioni
Il DNS è un servizio che traduce i nomi di dominio (come www.google.com) in indirizzi IP, che sono necessari per l’instradamento dei pacchetti di dati sulla rete. È un servizio fondamentale per la navigazione su Internet.
Le reti di calcolatori supportano la navigazione web attraverso il protocollo HTTP (HyperText Transfer Protocol) o la sua versione sicura HTTPS. Questo servizio permette di accedere a pagine web, applicazioni web e contenuti multimediali.
Le reti supportano anche l’accesso remoto e distribuito a database attraverso protocolli specifici. I servizi di database consentono agli utenti e alle applicazioni di interagire con enormi volumi di dati sscala locale o globale.
Servizi di Sicurezza
I firewall monitorano e controllano il traffico di rete in ingresso e in uscita, proteggendo la rete da attacchi o accessi non autorizzati. Questi sistemi possono bloccare determinati tipi di traffico o restringere l’accesso a specifiche risorse.
Una VPN consente di creare una connessione sicura e criptata tra l’utente e la rete aziendale, anche quando l’utente si connette da una rete pubblica. Questo servizio è fondamentale per garantire la privacy e la sicurezza dei dati, specialmente per chi lavora da remoto.
Le reti aziendali spesso utilizzano servizi come LDAP (Lightweight Directory Access Protocol) o Active Directory per gestire le credenziali degli utenti e controllare chi può accedere a quali risorse. L’autenticazione verifica l’identità dell’utente, mentre l’autorizzazione determina i suoi diritti di accesso.
Servizi di Cloud Computing
- SaaS è un modello di servizio in cui le applicazioni sono ospitate su server remoti e gli utenti vi accedono tramite Internet. Esempi di SaaS includono Microsoft 365, Google Workspace e Salesforce.
- IaaS consente agli utenti di affittare risorse di calcolo, come server virtuali, spazio di archiviazione e rete, da provider di cloud come Amazon Web Services (AWS) o Microsoft Azure. Gli utenti pagano solo per le risorse che utilizzano, scalando facilmente secondo le necessità.
- PaaS fornisce un ambiente di sviluppo e distribuzione che consente agli sviluppatori di creare applicazioni senza preoccuparsi della gestione dell’infrastruttura sottostante. Esempi di PaaS includono Google App Engine e Heroku.
Servizi di Multimedia e Streaming
Le reti di calcolatori consentono lo streaming di contenuti multimediali in tempo reale. Servizi come YouTube, Netflix e Spotify si basano su reti di distribuzione di contenuti (CDN) per fornire video e audio ad alta velocità e bassa latenza.
L’IPTV è un servizio che trasmette programmi televisivi e contenuti video attraverso reti IP, permettendo agli utenti di guardare programmi in diretta o su richiesta tramite la loro connessione Internet.
Progetto di una rete di calcolatori
Una rete di calcolatori è un insieme di dispositivi informatici interconnessi tra loro tramite mezzi di comunicazione fisici o wireless, che consentono lo scambio e la condivisione di dati, risorse e servizi. Le reti possono variare in dimensione e complessità, dalle semplici reti domestiche ai grandi sistemi aziendali e globali come Internet. Esse sono progettate per migliorare l’efficienza, la comunicazione e l’accesso alle informazioni.
Progettare una rete di calcolatori ha delle fasi fondamentali. In questo capitolo esamineremo le fasi fondamentali per progettare una rete di calcolatori, dalla raccolta dei requisiti fino alla scelta delle tecnologie e dei dispositivi. La progettazione di una rete efficace richiede una comprensione approfondita delle esigenze degli utenti e delle applicazioni, seguita dalla selezione delle tecnologie più appropriate per garantire prestazioni, scalabilità e affidabilità. Approfondiremo anche l’importanza dell’indirizzamento IP e della configurazione dei dispositivi di rete, per garantire un flusso di dati efficiente e sicuro. I temi relativi alla sicurezza verranno trattati nel prossimo anno di studi.
La raccolta dei requisiti rappresenta la fase iniziale e cruciale nel progetto di una rete, poiché getta le basi per tutte le decisioni successive. In questa fase, è essenziale determinare il numero di utenti e dispositivi che la rete dovrà supportare, inclusi computer, smartphone, tablet e dispositivi IoT. Inoltre, l’identificazione delle applicazioni che verranno utilizzate — come sistemi di gestione aziendale, software di videoconferenza o applicazioni cloud — permette di stimare il carico di lavoro e le esigenze di banda.
Un altro elemento fondamentale è l’analisi topologica: decidere come disporre fisicamente e logicamente i dispositivi e le connessioni, valutando se utilizzare una topologia a stella, ad anello o ibrida in base alle caratteristiche dell’ambiente e alle necessità di ridondanza e affidabilità. Questa fase è determinante per evitare colli di bottiglia e garantire che la rete sia scalabile, sicura e in grado di gestire un’eventuale crescita futura.
Dispositivi di rete
Nel mondo delle reti informatiche, gli end devices, o dispositivi terminali, rivestono un ruolo fondamentale. Questi dispositivi rappresentano il punto di accesso finale per gli utenti e costituiscono il cuore pulsante della comunicazione all’interno di una rete. Dalle semplici funzioni di messaggistica alla gestione di complessi sistemi di sorveglianza, gli end devices sono responsabili della generazione, trasmissione e ricezione dei dati.
Questa sezione esplorerà in dettaglio le varie tipologie di dispositivi terminali, classificandoli in base al loro utilizzo principale e alla quantità di dati scambiati durante la comunicazione. Ogni tipo di dispositivo verrà analizzato per comprendere meglio il suo ruolo specifico all’interno della rete e il modo in cui contribuisce all’efficienza e alla funzionalità complessiva del sistema.
Architettura Client – Server
L’architettura client-server è uno dei modelli più comuni utilizzati nelle reti informatiche per organizzare e gestire la comunicazione tra dispositivi. In questa configurazione, esistono due entità principali: il client e il server.
Il client è un dispositivo terminale o un’applicazione che invia richieste di servizi o risorse. Può essere un computer, uno smartphone, o qualsiasi dispositivo in grado di connettersi alla rete e di interagire con il server. Il server, d’altra parte, è un dispositivo o un’applicazione che risponde alle richieste dei client fornendo le risorse o i servizi richiesti. Questi servizi possono includere l’accesso a file, l’invio di e-mail, la gestione di database, o la fornitura di contenuti web.
Il client invia una richiesta al server, che elabora la richiesta e risponde con i dati appropriati. Questo modello è altamente scalabile e consente di centralizzare le risorse e la gestione, migliorando l’efficienza e la sicurezza della rete.
L’architettura client-server è ampiamente utilizzata in vari contesti, dalle applicazioni aziendali ai servizi cloud, rendendola una componente cruciale delle moderne infrastrutture di rete.
Tipologie di end devices
PC Desktop/Laptop
L’utilizzo tipico di una rete può includere attività come l’invio e la ricezione di e-mail, la navigazione web, il video stqreaming, le videoconferenze e l’uso di applicazioni d’ufficio.
Queste attività generano una varietà di dati, che possono variare notevolmente in termini di dimensioni. Per esempio, l’invio di e-mail e la navigazione web spesso comportano l’uso di pacchetti di dati relativamente piccoli, generalmente tra 100 e 500 byte. Al contrario, il download e l’upload di file, così come lo streaming video, possono richiedere pacchetti molto più grandi, fino a 1500 byte. Tra le applicazioni più comuni utilizzate per queste attività si trovano Microsoft Office, Google Workspace, Zoom, Microsoft Teams e YouTube.
Smartphone/Tablet
L’utilizzo tipico di dispositivi mobili comprende attività come la messaggistica, la navigazione web, lo streaming audio e video, l’uso di applicazioni mobile e le videoconferenze. I dati trasmessi possono variare, con pacchetti piccoli, fino a 100 byte, utilizzati per la messaggistica, mentre pacchetti di dimensioni medie, fino a 1500 byte, sono comuni per la navigazione web e lo streaming. Le applicazioni frequentemente utilizzate per queste attività includono WhatsApp, Instagram, Netflix, Spotify, Facetime e Google Meet.
Stampanti di rete
L’utilizzo tipico delle stampanti in rete riguarda la stampa di documenti, file o immagini inviati dai computer collegati. I dati trasmessi sono generalmente costituiti da pacchetti di dimensioni medie, fino a 1500 byte, inviati durante la trasmissione dei file da stampare. Esempi comuni di utilizzo includono la stampa di documenti aziendali, report e immagini ad alta risoluzione.
Dispositivi IoT (Internet of Things)
L’utilizzo tipico dei dispositivi IoT include sensori ambientali, termostati, telecamere di sorveglianza, luci intelligenti, altoparlanti smart e serrature intelligenti.
Questi dispositivi trasmettono dati molto piccoli, generalmente tra 50 e 500 byte, con una frequenza elevata. I sensori, ad esempio, inviano frequentemente pacchetti di dati di dimensioni ridotte. Tra le applicazioni più comuni si trovano Google Nest, Amazon Alexa, videocamere di sorveglianza IP, sensori di temperatura e umidità e termostati intelligenti.
Videocamere di Sorveglianza IP
L’utilizzo tipico delle telecamere di sorveglianza include il monitoraggio di aree interne ed esterne, la trasmissione di video in tempo reale e la registrazione di eventi. Questi dispositivi trasmettono dati in pacchetti di grandi dimensioni, fino a 1500 byte per pacchetto, necessari per la trasmissione video. Gli esempi comuni di utilizzo comprendono la sorveglianza aziendale, il monitoraggio remoto e la sicurezza domestica.
Server di rete
I server aziendali sono utilizzati per la gestione di dati, file, applicazioni, servizi cloud interni, autenticazione e posta elettronica aziendale. La quantità di dati trasmessi può variare ampiamente in base ai servizi offerti. Ad esempio, i server possono inviare pacchetti di piccole dimensioni per l’autenticazione degli utenti o pacchetti di grandi dimensioni per il download e l’upload di file. Gli esempi di utilizzo includono server di posta elettronica, file server, database server e server di applicazioni.
Smart TV/Set-Top Box
L’utilizzo tipico di questo tipo di connessione riguarda lo streaming di contenuti multimediali in alta definizione da piattaforme online come Netflix, YouTube, Disney+ e simili.
Le caratteristiche in termini di dati prevedono pacchetti di grandi dimensioni per trasmettere video ad alta definizione, arrivando fino a 1500 byte per pacchetto. Esempi di utilizzo includono servizi come Netflix, Amazon Prime Video, Disney+, e Apple TV.
Tabella dei dispositivi
Dispositivo | Pacchetti inviati |
PC Desktop/Laptop | Da piccoli (e-mail) a grandi (streaming) |
Smartphone/Tablet | Simile ai PC, piccoli pacchetti per app |
Stampanti di rete | Pacchetti medi |
Dispositivi IoT | Pacchetti piccoli e frequenti |
Videocamere di Sorveglianza | Pacchetti grandi (video) |
Stampanti 3D | Pacchetti medi |
Server di rete | Varia ampiamente |
Dispositivi di videoconferenza | Pacchetti grandi per video HD/4K |
Smart TV/Set-Top Box | Pacchetti grandi per video HD/4K |