Anteprima
Vedrai una selezione di 7 pagine su 28
Fondamenti di Informatica: appunti completi Pag. 1 Fondamenti di Informatica: appunti completi Pag. 2
Anteprima di 7 pagg. su 28.
Scarica il documento per vederlo tutto.
Fondamenti di Informatica: appunti completi Pag. 6
Anteprima di 7 pagg. su 28.
Scarica il documento per vederlo tutto.
Fondamenti di Informatica: appunti completi Pag. 11
Anteprima di 7 pagg. su 28.
Scarica il documento per vederlo tutto.
Fondamenti di Informatica: appunti completi Pag. 16
Anteprima di 7 pagg. su 28.
Scarica il documento per vederlo tutto.
Fondamenti di Informatica: appunti completi Pag. 21
Anteprima di 7 pagg. su 28.
Scarica il documento per vederlo tutto.
Fondamenti di Informatica: appunti completi Pag. 26
1 su 28
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

PACKET SWITCHING

Le reti distribuite lavorano attraverso una commutazione di pacchetto (Packet Switching): una tecnica per

condividere un canale di comunicazione tra più nodi in modo non deterministico, suddividendo

l’informazione da trasferire in pacchetti trasmessi individualmente o in sequenza. La scelta del termine

avvenne per battezzare questa tecnologia di trasmissione di dati e si deve a Donald Watts Davies, fisico del

British National Physical Laboratory. Grazie a questo sistema il gestore non interveniva sulla modalità di

comunicazione attraverso la gestione dei canali, ma poteva differenziarsi a livello di servizio.

Vedi: https://en.wikipedia.org/wiki/Packet_switching#/media/File:Packet_Switching.gif

IL PROGETTO ARPANET FINO ALLA NASCITA DI INTERNET

Lo sviluppo di Internet avvenne tramite diversi contribuiti. Nel 1958 venne creato il progetto ARPA che

aveva l’obiettivo di aumentare i finanziamenti per lo sviluppo scientifico. Licklider, importante informatico

statunitense, lavorò per ARPA e al sistema di reti distribuite. Quando nacque la NASA, ARPA si concentrò

prevalentemente sull’informazione e sulle telecomunicazioni. Nel 1969 così nacque ARPANET, un progetto

per interconnettere 4 università americane. Il progetto fu sempre accessibile e non militare, come si cercò

di far credere successivamente. Questo processo si rafforzò col tempo e negli anni ’70 iniziarono i primi

esperimenti tra reti e nel 1977 avvenne la prima interconnessione tra due reti: ARPANET venne connessa

con SATNET di Londra. Verso la fine degli anni ’70, nacque una rete più economica della National Science

Foundation (NSF). Nel 1984 il CERN di Ginevra creò la sua prima rete: TCP/IP. Verso la fine degli anni ’80 poi

le reti iniziarono a fondersi fino ad arrivare alla nascita di INTERNET nel 1991, principalmente dovuta al

CERN (fusione tra CERNET e NSFNET).

Un contributo importante fu sicuramente fornito da piccole aziende informatiche di supporto. Con la

nascita del Personal Computer, vi fu una rivoluzione per queste piccole aziende. Il progetto Macintosh del

1984 fu elaborato per combattere il dominio delle grandi aziende.

Nello stesso periodo, nacque un movimento parallelo antagonista, diventato poi commerciale. Inizialmente

erano giovani appassionati, poi diventarono veri e propri imprenditori del campo. Nel 1977 Ward

Christensen iniziò la realizzazione e distribuzione gratuita del programma open-source “MODEM”, una

demodulazione del segnale audio che passa attraverso la rete telefonica. Nel 1979 nacquero poi le BBS:

Bulletin Board System, le quali connettevano calcolatori sfruttando la rete telefonica e un modem. Nel

1987 poi nacque la MCI Mail, la prima rete commerciale via modem e nel 1991 le BBS entrarono con ARPA

in Internet. Questa cultura inizialmente si diffuse attraverso comunità antagoniste, alla ricerca di canali

alternativi, poi però esse riuscirono ad integrare le proprie intenzioni alle esigenze dello sviluppo di

Internet. Attorno a ciò nacque la cultura Hacker, che oggi tende ad avere una connotazione negativa, ma in

realtà rappresenta chi riesce a raggiungere un contenuto o scoprire delle nuove modalità di navigazione in

rete. Il termine iniziò ad essere associato alla criminalità a causa della nascita di un movimento

contrastante.

WWW: WORLD-WIDE WEB

Nel 1989, un gruppo di ricercatori informatici del CERN di Ginevra ricevette l’incarico di realizzare un

meccanismo per la rapida diffusione di articoli e appunti tra i ricercatori del centro. Tim Berners-Lee e

Robert Cailliau identificarono Internet attraverso una navigazione ipertestuale e SGML, elementi chiave per

questo meccanismo. Fu Tim Berners-Lee nel 1990 a realizzare un browser-editor sulla piattaforma NeXT,

che egli chiamò World-Wide Web (poi denominato Nexus). Attraverso il web, l’informatica divenne

accessibile anche a tutti coloro che non avevano una preparazione scientifica. Nel 1991 fu rilasciata una

nuova versione del browser, che diventò universale. Berners-Lee e Cailliau mostrarono durante una

conferenza il primo prototipo della loro applicazione, ma ottennero scarso successo e il progetto fu

bocciato da gran parte della comunità scientifica. Il riconoscimento a Berners-Lee come padre fondatore di

Internet è forse riduttivo dato il complicato processo storico e informatico da cui deriva Internet. La

crescita fu esponenziale, poiché nel 1994 si registravano circa 1500 server.

Il successo di questo ambiente applicativo rispetto agli altri presenti fu dovuto al raggiungimento di utenti

non tecnici e quindi comuni, inoltre lo strumento testo fu utilizzato come strumento di condivisione. Altre

applicazioni Internet concorrenti al Web erano:

- FTP: capace di possedere un meccanismo di scambio file che non gestiva la visualizzazione, ma

semplicemente scambiava i file;

- ARCHIE: prediligeva la ricerca all’interno di testi e quindi era in grado di indicizzare il contenuto di

molti archivi pubblici presenti in Internet;

- WAIS: un server che forniva servizi di ricerca avanzati solo per documenti di testo;

- GOPHER: presenta ridotte differenze rispetto al Web e consentiva la creazione di link che portavano

a dei testi o a delle directory.

Erano presenti anche applicativi che si concentravano sullo sviluppo di capacità ipertestuali, con delle

funzionalità più avanzate rispetto al Web, come Hypercard e Toolbook. Hypercard lavorava, ad esempio,

attraverso delle icone che raggruppavano dei documenti dello stesso genere. Microcosm, invece, era un

server pensato per collegare individui che volevano collegare tra di loro delle applicazioni. Infine, Hyper-G

era un sistema Client-Server complesso e completo che consentiva di collegare diversi nodi, grazie ad un

protocollo complesso.

Ciò che rafforzò la posizione del Web fu sicuramente una semplificazione ottenuta sia sul piano

dell’accettazione della tecnologia, sia sulla scalabilità tecnica (ossia la capacità di poter sopportare dei

contesti distribuiti, privi di un controllo centralizzato, che consentivano un’espansione dell’ambiente). I

punti di forza che consentirono al Web di prevalere su tutti gli altri applicativi furono:

1. Punto di partenza fu la tecnologia comunemente usata dagli utenti;

2. Protocollo semplificato;

3. Navigazione ipertestuale semplificata;

4. Modello dati semplificato;

5. Possibilità di raggiungere delle funzionalità specifiche attraverso una stratificazione di livelli.

L’architettura del Web si basa su tre standard che interagiscono in modo trasparente, ovvero nel senso

che le caratteristiche di uno standard non modificano quelle dell’altro, ma lo completano:

- Identificazione: URI – Uniform Resource Identifier

Il Web è uno spazio informativo in cui ogni elemento di interesse è chiamato risorsa ed è associato

a un identificatore univoco (URI). URL (Uniform Resource Locator) è un sottoinsieme;

- Interazione: HTTP – Hyper Text Transfer Protocol

C’è un protocollo di comunicazione (HTTP) che permette di scambiare messaggi su una rete

informatica (TCP/IP);

- Formato dati: HTML – Hyper Text Markup Language

I Server e i Client negoziano la corretta identificazione del formato dati con cui la risorsa è

rappresentata (XHTML, JPG, JSON, etc.).

HTTP

All’interno di una rete sono presenti due nodi: uno può assumere il ruolo di Server e l’altro di Client, ossia

ricevere richieste o fornire delle risposte. Ogni richiesta non è nient’altro una richiesta fatta dal Client al

Server, il quale decide se può fornire la risposta o meno (errore 404). Il protocollo HTTP è generico e non è

vincolato dai dati. HTTP è Client-Server ed è privo di stato, ossia non mantiene informazioni che perdurano

tra una connessione e l’altra. Il Client ogni volta ricrea da zero il contesto necessario. Il protocollo è molto

semplice: il Client fa una richiesta (nel frattempo una serie di altre richieste viene eseguita) e il Server

fornisce una risposta. All’interno di questo processo sono presenti delle applicazioni che svolgono dei ruoli

diversi e avviano processi interni o di terze parte durante lo schema base chiamata-risposta. In particolare,

si possono presentare User agent, Origin-server, Proxy, Gateway o Tunnel.

L’User agent è un browser o robot che richiede delle risorse; l’Origin-server mantiene la risorsa richiesta; il

Proxy è un’applicazione intermedia che mantiene copia delle richieste più frequenti che fornisce al Client

come se fosse l’Origin-server; il Gateway svolge una funzione simile al Proxy, ma il Client non è

consapevole della sua richiesta; il Tunnel è un’applicazione che inoltra passivamente le richieste che

ottiene.

Il protocollo di per sé è privo di stato e per questo sono state studiate delle modalità che tengono traccia

delle attività dell’utente. I Cookies sono appunto un blocco di dati opaco lasciato in consegna ad un Client

che mantiene così lo stato di precedenti connessioni e lo manda al Server di pertinenza ogni volta che

richiede un documento. Così, alla prima richiesta di un Client, il Server fornisce la risposta ed un header

aggiuntivo, il cookie, con dati arbitrati, e con la specifica di usarlo per ogni successiva richiesta.

Uno dei fattori che ha determinato il successo del Web è stato URI. Il principale elemento mancante infatti

era proprio una sintassi universale con cui identificare le risorse di rete. Esso è indipendente dal

protocollo, è uno spazio di nomi gerarchico basato su un set di caratteri ristretto (per evitare problemi di

cattiva codifica) ed è opaco: non dipende da URI definire una semantica di una risorsa.

Per andare a ricercare una risorsa, vi è innanzitutto un protocollo (http), spesso una modalità di

autenticazione che resta criptata (login) così come il servizio (host) o la porta (8080), che identifica le

applicazioni attive. Seguono path, ovvero il percorso all’interno del sistema operativo che normalmente

porta ad un file (come .html), e la query, delle copie di parametro valore. Al termine vi è il nodo, una

sezione del file.

I linguaggi di markup sono linguaggi opportuni per strutturare e marcare i documenti in maniera

indipendente dall’applicazione, favorendo riusabilità, flessibilità e apertura delle applicazioni complesse. I

Tag sono etichette e marcatori che identificano porzioni di testo. Così si ha modo per identificare e

processare le porzioni di testo contrassegnate da una certa marcatura. In questo modo un algoritmo può

ricercare nel testo un numero maggiore di elementi grazie a queste etichette identificative. Altri marcatori,

invece, sono strutturali ed invisibili nella pagina visualizzata, ma utili per identificare le sezioni e per

rispettare la s

Dettagli
Publisher
A.A. 2017-2018
28 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher NicoUni di informazioni apprese con la frequenza delle lezioni di Fondamenti di Informatica per Scienze umanistiche e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Milano o del prof Ceravolo Paolo.