Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono,...

65
Dott. Alexandru Serbanati INF/01 AA. 2009-2010

Transcript of Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono,...

Page 1: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Dott. Alexandru Serbanati

INF/01AA. 2009-2010

Page 2: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Indice del Corso

• Reti telematiche: cosa sono, principi base di funzionamento

• Internet e applicazioni basate su Internet: applicazioni di rete, architettura client-server, browser, applicazioni per browser, pagine dinamiche

• Strumenti per l’interattività • Un esempio pratico: Facebook• Benefici derivanti dall'approccio interattivo

2

Page 3: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Definizione, classificazione, funzionamento di base

3

Page 4: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Reti informatiche

Un insieme di punti (nodi) interconnessi da collegamenti.

Un insieme di punti (nodi) interconnessi da collegamenti.

4

Definizione di rete:

[in Informatica] Un sistema composto da computer, altri dispositivi elettronici (nodi) e connessioni fisiche (collegamenti) che permette lo scambio di informazioni tra i vari nodi.

[in Informatica] Un sistema composto da computer, altri dispositivi elettronici (nodi) e connessioni fisiche (collegamenti) che permette lo scambio di informazioni tra i vari nodi.

Page 5: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

I nodi

5

I nodi inviano,ricevono ed inoltrano dati su una rete. Spesso vengono chiamati host.

I nodi inviano,ricevono ed inoltrano dati su una rete. Spesso vengono chiamati host.

Alcuni esempi di nodi su Internet:• computer semplici (desktop, portatili)• server (siti web, email, web services, DNS, …)• dispositivi mobile (smartphone, PDA)• stampanti• sensori (sistemi antifurto, monitoraggio, telecamere IP, …)• router (fanno parte dell’infrastruttura della rete)

Page 6: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Reti informatiche (2)

6

Scopo:

Condividere le risorse fisiche (potenza di calcolo, archiviazione,stampa …) ed immateriali (software, dati, permessi, …) tra gli oggetti che compongono la rete.

Condividere le risorse fisiche (potenza di calcolo, archiviazione,stampa …) ed immateriali (software, dati, permessi, …) tra gli oggetti che compongono la rete. Classificazione:• Per estensione• Per topologia • Collegamento fisico (wired o wireless)• …

• Per estensione• Per topologia • Collegamento fisico (wired o wireless)• …

Page 7: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Classificazione per estensione

Basata sulla distanza tipica tra due nodi contigui (d):

7

Acronimo Significato d Esempio

WAN Wide Area Network ISDN, GSM, UMTS

MAN Metropolitan Area Network < 50km WiMax

LAN Local Area Network <100m Ethernet, WiFi

PAN Personal Area Network < 10m Bluetooth, ZigBee

BAN Body Area Network < 1m

Il prefisso “W” (WLAN, WPAN, …) può essere inserito per specificare che la connessione è senza fili (wireless).

Page 8: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Topologia delle reti informatiche

8

Organizzazione fisica o logica dei nodi e delle loro connessioni in una rete.

Organizzazione fisica o logica dei nodi e delle loro connessioni in una rete.

Definizione di topologia:

Topologie di rete:•Punto-Punto•Bus•A Stella•Mesh•Ad Albero

Topologie di rete:•Punto-Punto•Bus•A Stella•Mesh•Ad Albero

Page 9: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Classificazione topologica reti

• Punto-Punto: (point-to point)

9

• Bus: tutti i nodi sono connessi conun solo cavo sul quale viaggiano tutte le informaizoni

• A stella: (star) ogni nodo è connessoad un nodo centrale con funzioni dirouter

Page 10: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Classificazione topologica reti (2)• Mesh: reti a morfologia variabile, senzaun’infrastruttura dedicata e wireless. Ogninodo coopera per lo smistamento delleinformazioni inviate dagli altri nodi. La rete Funziona anche in caso di perdita di nodi o ingresso dinuovi nodi nella rete.

10

• Ad Albero: (tree) rete gerarchica, organizzataa livelli. Ogni nodo di livello n è connessoP2P ad un numero di nodi di livello n+1 ead un nodo di livello n-1; ogni nodo di livello n fa da router tra i livelli n-1 ed n+1

Page 11: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Esempi di funzionamento

• Point-to-Point: due persone che parlano

11

• Bus: una tavola rotonda: tutti parlano nello stesso ambiente ed il mezzo ditrasmissione (l’aria) è condiviso

• Star: la messaggeria: tutti i messaggi arrivano alla messaggeria (router) che poi li smista a chi di dovere

Page 12: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Esempi di funzionamento(2)• Mesh: lo studente all’ultimo banco passa un bigliettino a quello del banco davanti per lo studente in prima fila.

12

• Tree: ad una festa, il festeggiato ha invitato alcuni amici (livello1) dicendo loro di allargarel’invito ai loro amici (livello2). Supponiamo chequesti non si conoscano. Se, dopo la festa,un invitato vuole contattarne un altro, dovrà risalire la catena di inviti fino al primo invitatoamico comune

Page 13: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Routing

13

In una rete punto-punto, il mittente ed il destinatario sono scontati (se il messaggio è stato inviato da A, il destinatario è B e viceversa).

I router hanno il compito di istradare i messaggi. In reti più articolate, essi stabiliscono il percorso che i messaggi devono seguire per arrivare dal nodo origine alla destinazione. I router sono nodi.

I router hanno il compito di istradare i messaggi. In reti più articolate, essi stabiliscono il percorso che i messaggi devono seguire per arrivare dal nodo origine alla destinazione. I router sono nodi.

Page 14: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Indirizzo di rete

14

Ogni nodo deve essere identificato tramite un indirizzo di rete. L’indirizzo del destinatario è una informazione necessaria affinché i router istradino correttamente i messaggi.

Ogni nodo deve essere identificato tramite un indirizzo di rete. L’indirizzo del destinatario è una informazione necessaria affinché i router istradino correttamente i messaggi.

In reti più complesse quindi, ogni messaggio deve anche contenere l’identificazione del nodo mittente e di quello di destinazione .

Page 15: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Perché un indirizzo di rete?

15

StudA: come sta il nonno?StudB: potrebbe stare meglioStudA : sta ancora in ospedale, vero?StudB: e per un po’ ci rimarrà

Chat1 (A+B)

StudA: come sta il nonno?StudB: si trasforma in un razzo missileStudC: potrebbe stare meglioStudB: con circuiti di mille valvoleStudA: sta ancora in ospedale, vero?StudB: fra le stelle sprinta e vaStudC: e per un po’ ci rimarrà

Chat (C)

StudC: come faceva la canzone di UfoRobot?StudD: si trasforma in un razzo missileStudD: con circuiti di mille valvoleStudD: fra le stelle sprinta e va

Chat2 (C+D)

come sta il nonno?si trasforma in un razzo missilepotrebbe stare megliocon circuiti di mille valvolesta ancora in ospedale, vero?fra le stelle sprinta e vae per un po’ ci rimarrà

Chat (C)

Anche nelle comunicazione tra esserei umani è importante sapere chi parla a chi…

Page 16: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

L’indirizzo IP

16

L’indirizzo di rete su Internet è di tipo IPv4 e si trova spesso scritto come quattro numeri interi appartenenti all’intervallo da 0 a 255*, separati da punti (“.”).Ogni dispositivo collegato ad Internet ha un suo indirizzo di rete univoco.

Ad esempio, 74.125.39.104 è l’indirizzo di uno dei server di Google.

L’indirizzo di rete su Internet è di tipo IPv4 e si trova spesso scritto come quattro numeri interi appartenenti all’intervallo da 0 a 255*, separati da punti (“.”).Ogni dispositivo collegato ad Internet ha un suo indirizzo di rete univoco.

Ad esempio, 74.125.39.104 è l’indirizzo di uno dei server di Google.* È la rappresentazione con numeri interi dei valori ottenibili con due byte.

Page 17: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Il servizio DNS

17

Ricordarsi gli indirizzi IP degli host è difficile per l’essere umano. Egli invece è da sempre abituato a ricordare nomi…

E’ stato concepito quindi il servizio Domain Name System o DNS.

Il servizio DNS si basa su un archivio delle associazioni nome host –> indirizzo IP e permette di risolvere i nomi degli host in indirizzi IP.

Il servizio DNS si basa su un archivio delle associazioni nome host –> indirizzo IP e permette di risolvere i nomi degli host in indirizzi IP.

Page 18: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Il servizio DNS

18

I nomi host si acquistano o, per la precisione, si acquista la loro associazione ufficiale ad un indirizzo IP. Tale associazione è delegata alla Internet Assigned Numbers Authority (IANA) che mantiene il database ufficiale delle associazioni.

Page 19: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Ma come funziona?!

19

Browser DNS

www.google.comwww.google.com

Richiesta risoluzioneRichiesta

risoluzione

RisoluzioneRisoluzione

Web Server

Indirizzo IPIndirizzo IP209.85.135.106209.85.135.106

Richiesta pag. webRichiesta pag. webInvio

pag. webInvio

pag. web

Page 20: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni di rete e architetture di comunicazione

20

Page 21: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni di rete: cosa sono?

21

@

Page 22: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni di rete: esempi

22

Internet client:• Email client• Web browser (Firefox, Chrome, Internet Explorer)• Instant messaging (Skype, MSN, Gizmo, IRC) • Giochi su Internet (Crysis, World of Warcraft,…)• Software collaborativi (groupware, e-learning, etc)• File sharing• Altre applicazioni (sviluppate ad hoc per scopi specifici)

Internet server:• Email server• Web Server• Database server

Bluetooth• Programma per invio file, biglietti da visita• Navigatori satellitari con GPS esterno collegato via Bluetooth• auricolare senza fili

Page 23: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni di rete: definizione

23

Un’applicazione software è un programma che aiuta un utente a svolgere una specifica attività.

Un’applicazione software è un programma che aiuta un utente a svolgere una specifica attività.

Un’applicazione di rete è un programma che aiuta un utente a svolgere una specifica attività e che, per adempiere a questo scopo, scambia dati con altri programmi remoti tramite una rete informatica.

Un’applicazione di rete è un programma che aiuta un utente a svolgere una specifica attività e che, per adempiere a questo scopo, scambia dati con altri programmi remoti tramite una rete informatica.

Page 24: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni Server

24

Le applicazioni server sonno programmi che gestiscono risorse e forniscono servizi (dati, webservices, accesso a risorse) ad altre applicazioni.

Le applicazioni server sonno programmi che gestiscono risorse e forniscono servizi (dati, webservices, accesso a risorse) ad altre applicazioni.

Disambiguazione:Le applicazioni server spesso sono eseguite su appositi computer progettati per questo specifico compito che vengono chiamati “server”. Nel primo caso si parla di un programma (software), nel secondo di un computer (hardware).

Page 25: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni Peer2Peer (1)

25

Le app. P2P sono applicazioni a se stanti che comunicano tramite una rete con applicazioni omologhe per fini propri (o dettati dall’utente).

Le app. P2P sono applicazioni a se stanti che comunicano tramite una rete con applicazioni omologhe per fini propri (o dettati dall’utente).

N.B.!!Qui parliamo diapplicazioni P2Pnon reti P2P!!!

Page 26: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni Peer2Peer (2)

26

Come esempio si possono citare i software di condivisione in cui ogni applicazione istituisce tante connessioni dirette (uno a uno) con altrettante applicazioni dello stesso tipo.

Le applicazioni peer-to-peer sono applicazioni di rete che scambiano dati con altre applicazioni omologhe, cioè che hanno gli stessi ruoli, capacità e funzioni.

Page 27: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni Client-Server

27

Le app. client-server sono applicazioni che istanziano solo una interfaccia utente sul computer dell’utente. Esse necessitano di dati forniti(tramite rete) da appositi server e (generalmente) inviano anche le informazioni prodotte dall’utente a tale server.

Le app. client-server sono applicazioni che istanziano solo una interfaccia utente sul computer dell’utente. Esse necessitano di dati forniti(tramite rete) da appositi server e (generalmente) inviano anche le informazioni prodotte dall’utente a tale server.Applicazione Client Applicazone Server

Web browser Web server

Client di posta elettronica (Outlook, Eudora, …) Server di posta elettronica

World of Warcraft Battle.net

Page 28: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

28

Applicazioni Client-Server

Client

Client

Client Client

Client

Client

L’architettura client-server è un ambiente centralizzato. Tutte le risorse sono gestite dall’applicazione server che è il punto nevralgico dell’architettura.

L’architettura client-server è un ambiente centralizzato. Tutte le risorse sono gestite dall’applicazione server che è il punto nevralgico dell’architettura.

Client

ATTENZIONE!!Client = Applicazione ClientServer = Applicazione con funzioni di server (esso è eseguito sul computer server)

Server

Page 29: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

App. Client-Server: esempio

29

Il browser web è il più classico esempio di applicazione client nel paradigma client-server:Il browser visualizza il contenuto di una pagina web fornita da un web server.

Richiesta paginaRichiesta pagina

Invio paginaInvio paginaHTMLHTML

Page 30: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Applicazioni distribuite

30

Le applicazioni distribuite possono essere anche viste come un’unica grande applicazione suddivisa tra tanti computer…

Le applicazioni distribuite sono programmi in esecuzione su diversi computer che comunicano e scambiano dati tra di loro tramite una rete per raggiungere uno scopo unico condiviso.

Le applicazioni distribuite sono programmi in esecuzione su diversi computer che comunicano e scambiano dati tra di loro tramite una rete per raggiungere uno scopo unico condiviso.

Page 31: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

31

App. distribuite: SETI@HomeProgetto che usa computer collegati ad Internet per analizzare lo spettro radio proveniente dal cosmo alla ricerca di segnali provenienti da intelligenze aliene. Il compito è molto difficile data l’immensa mole di dati e viene suddiviso tra tutti i computer degli utenti aderenti all’iniziativa. Chi vuole, può scaricare un’applicazione che installerà sul proprio PC e che contribuirà al processo di calcolo globale.

Page 32: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

32

Page 33: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Non solo dati

33

• e-mail• feed RSS• browser > contenuto statico• browser > Rich Internet Application (RIA)• AJAX - Asynchronous JavaScript and XML• Flash / Flex• JFX• WPF

• applicazioni web a se stanti

• e-mail• feed RSS• browser > contenuto statico• browser > Rich Internet Application (RIA)• AJAX - Asynchronous JavaScript and XML• Flash / Flex• JFX• WPF

• applicazioni web a se stanti

Ci sono diversi strumenti di comunicazione basati sul web:

Page 34: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Feed RSS

34

RSS è un formato che definisce una struttura adatta a contenere un insieme di notizie in un file di testo semplice. Le notizie hanno a loro volta una struttura interna standard.

RSS è un formato che definisce una struttura adatta a contenere un insieme di notizie in un file di testo semplice. Le notizie hanno a loro volta una struttura interna standard.

RSS: Real Symple Syndacation

Le notizie vengono pubblicate in modo semplice su server web come file .xml. I file .xml sono file di testo che racchiudono informazioni (sotto forma di testo) strutturate (secondo lo standard XML).

Page 35: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Feed RSS

35

L’utente, sottoscrive i feed tramite app. client che controllano regolarmente i server sottoscritti dall’utente (al quale l’utente è abbonato). Le app. client scaricano le news e le visualizzano.

L’utente, sottoscrive i feed tramite app. client che controllano regolarmente i server sottoscritti dall’utente (al quale l’utente è abbonato). Le app. client scaricano le news e le visualizzano.

XMLXML

Canale

Titolo

LinkDescri

zNotizia

Titolo

LinkDescri

zNotizia

Titolo

LinkDescri

z

Page 36: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Esempio di feed RSS<?xml version="1.0"?>

<rss version="2.1"> <channel> <title>SdC News</title> <link>http://www.comunicazione.uniroma1.it</link> <description>News e articoli dalla facoltà</description> <webmaster>[email protected]</webmaster>

</channel> </rss>

36

<item> <title>Vacanze di Pasqua</title> <link>http://www.tibetnews.com/headlines/10062007_001.html</link> <description>Si comunica che l'attività didattica è sospesa da sabato 27/03 a Mar 6/3 compresi. </description> <pubDate>10 Mar 2010</pubDate> </item> <item> <title>L’acqua è bagnata</title> <link>http://www.mysite.com/lacquabagnata</link> <description>Ricerca scientifica d’avanguardia alla Sapienza dimostra che l’acqua è bagnata</description> <pubDate>8 Mar 2010</pubDate> </item>

XMLXML

Canale

Titolo

LinkDescri

zNotizia

Titolo

LinkDescri

zNotizia

Titolo

LinkDescri

z

Page 37: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

HTML 2HTML 2

Web – Contenuto statico

37

Richiesta paginaRichiesta pagina

Invio paginaInvio paginaHTML 1HTML 1

Richiesta paginaRichiesta pagina

Invio paginaInvio pagina

Rich internet applications

Page 38: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Rich Internet Applications (1)

38

Le RIA sono applicazioni (Applications) web che sfruttano Internet per fornire alcune funzionalità e che sono più complesse (Rich) delle semplici pagine web statiche.

Le RIA sono applicazioni (Applications) web che sfruttano Internet per fornire alcune funzionalità e che sono più complesse (Rich) delle semplici pagine web statiche.

Un’applicazione web è un’applicazione software che viene eseguita in un browser e comunicano tramite Internet.

Un’applicazione web è un’applicazione software che viene eseguita in un browser e comunicano tramite Internet.

Page 39: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Rich Internet Applications (2)

39

Nelle RIA (applicazioni web client–server), l’elaborazione dei dati/input dall’utente è delegata in gran parte al client, come anche il cambiamento di ciò che l’utente visualizza.

Nelle RIA (applicazioni web client–server), l’elaborazione dei dati/input dall’utente è delegata in gran parte al client, come anche il cambiamento di ciò che l’utente visualizza.

Flash è generalmente utilizzato per• creare/visualizzare animazioni• contenuti multimediali in streaming• sviluppare applicazioni interattive

Flash è generalmente utilizzato per• creare/visualizzare animazioni• contenuti multimediali in streaming• sviluppare applicazioni interattive

Page 40: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

AJAX

40

AJAX (Asyncronous Javascript and XML) è un modello di progettazione ed uno standard che permette di creare applicazioni web client-server.

AJAX (Asyncronous Javascript and XML) è un modello di progettazione ed uno standard che permette di creare applicazioni web client-server.

AJAX è la base tecnologica per la creazione di applicazioni web interattive o intelligenti che non necessitino di plugin.

Page 41: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

AJAX (2)

41

AJAX utilizza:• JavaScript per la parte di programmazione lato client (browser)• XML come sintassi per il trasferimento dei dati • HTTP come protocollo di comunicazione tra il server ed il client.

AJAX utilizza:• JavaScript per la parte di programmazione lato client (browser)• XML come sintassi per il trasferimento dei dati • HTTP come protocollo di comunicazione tra il server ed il client.

Page 42: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

AJAX – lato client

42

Il cambiamento può includere la modifica o rimozione di qualsiasi elemento della pagina (testo immagini, pulsanti) nonché l’aggiunta di nuovi elementi.

Il linguaggio JavaScript è inserito all’interno delle pagine HTML (embedded) e viene eseguito dal browser. JavaScript permette il cambiamento immediato e in locale della pagina secondo i criteri definiti dallo sviluppatore, senza richiedere una nuova pagina al server.

Il linguaggio JavaScript è inserito all’interno delle pagine HTML (embedded) e viene eseguito dal browser. JavaScript permette il cambiamento immediato e in locale della pagina secondo i criteri definiti dallo sviluppatore, senza richiedere una nuova pagina al server.

Page 43: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

calcola.htmlcalcola.html

Senza AJAX

43

Richiesta paginaRichiesta pagina

Invio paginaInvio paginapagina.htmlpagina.html

Richiesta paginaRichiesta pagina

Invio paginaInvio pagina

Calcola

3x5 = ?Clicca sul pulsante per far comparire un cerchio con il risultato

pagina.htmlcalcola.html

15

Page 44: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Con AJAX

44

Richiesta paginaRichiesta pagina

Invio paginaInvio paginapagina.htmlpagina.html

Calcola

3x5 = ?Clicca sul pulsante per far comparire un cerchio con il risultato

pagina.html

15processamento nel browser!!

processamento nel browser!!

Page 45: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

AJAX – lato server

45

L’applicazione server deve interpretare e processare le richieste che i client inviano tramite protocollo HTTP ed eventualmente inviare dati ai client.

L’applicazione server deve interpretare e processare le richieste che i client inviano tramite protocollo HTTP ed eventualmente inviare dati ai client.

I dati non devono necessariamente essere pagine web, ma anche solo elementi di queste (testo, immagini, video, etc). La loro trasmissione avviene tramite XML.

I dati non devono necessariamente essere pagine web, ma anche solo elementi di queste (testo, immagini, video, etc). La loro trasmissione avviene tramite XML.

AJAX non richiede uno specifico linguaggio di programmazione lato server (PHP, JSP, …).

Page 46: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

AJAX

46

Non richiede plugin quindi è compatibile con tutti i browser senza ulteriori installazioni.

Essendo eseguito dal browser, non è ottimizzato e, per riprodurre effetti complessi, richiede maggiori quantità di risorse. Offre possibilità limitate rispetto ad altre RIA

Non richiede plugin quindi è compatibile con tutti i browser senza ulteriori installazioni.

Essendo eseguito dal browser, non è ottimizzato e, per riprodurre effetti complessi, richiede maggiori quantità di risorse. Offre possibilità limitate rispetto ad altre RIA

www.ajaxdaddy.com

Esempi:www.gmail.com

Page 47: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Plugin

47

I plugin sono applicazioni software non autonome, che necessitano di un ambiente (un altro programma) per funzionare e con il quale interagiscono per aumentarne le funzionalità.

I plugin sono applicazioni software non autonome, che necessitano di un ambiente (un altro programma) per funzionare e con il quale interagiscono per aumentarne le funzionalità.

Page 48: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Adobe Flash

48

Adobe Flash (ex Macromedia Flash) è una piattaforma multimediale per la creazione e la fruizione di contenuti multimediali ed interattivi per browser web.

Adobe Flash (ex Macromedia Flash) è una piattaforma multimediale per la creazione e la fruizione di contenuti multimediali ed interattivi per browser web.Flash richiede l’installazione di un plugin nel browser.Flash richiede l’installazione di un plugin nel browser.

Le applicazioni flash possono essere distribuite anche come applicazioni autonome (file eseguibili) ma solo per sistemi Windows.

Page 49: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Adobe Flash

49

Flash è generalmente utilizzato per:• creare/visualizzare animazioni• contenuti multimediali in streaming• sviluppare applicazioni interattive

Flash è generalmente utilizzato per:• creare/visualizzare animazioni• contenuti multimediali in streaming• sviluppare applicazioni interattive

dyc.saab-web.com/microsites/aero_x/GLOBAL/en/index2.shtml

www.sony.com/index.php

www.youtube.com

http://www.andyfoulds.co.uk/amusement/pen_ink.htm

Esempi:

http://www.2advanced.com/

Page 50: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

50

JavaFX richiede la presenza sul computer dell’ambiente Java (che però è spesso già installato per altri motivi).Si basa su Java, e può integrare codice Java al suo interno: è una buona scelta per società che hanno già risorse umane con esperienza in Java.JavaFX permette la creazione di widget che possono essere trascinati da un sito sul desktop, continuando a funzionare.

JavaFX richiede la presenza sul computer dell’ambiente Java (che però è spesso già installato per altri motivi).Si basa su Java, e può integrare codice Java al suo interno: è una buona scelta per società che hanno già risorse umane con esperienza in Java.JavaFX permette la creazione di widget che possono essere trascinati da un sito sul desktop, continuando a funzionare.http://www.javafx.com/samples/

Oracle (Sun) JavaFX

Page 51: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

51

Silverlight è una piattaforma per lo sviluppo di applicazioni web per la creazione di contenuti multimediali e di applicazioni interattive per browser web.

Silverlight è una piattaforma per lo sviluppo di applicazioni web per la creazione di contenuti multimediali e di applicazioni interattive per browser web.

Microsoft Silverlight

Page 52: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

52

Silverlight necessita di un plugin per funzionare.Silverlight necessita di un plugin per funzionare.

Microsoft Silverlight

http://www.silverlight.net/content/samples/1.0/page-turn/default.html

Silverlight utilizza un meccanismo che separa lo sviluppo dell’interfaccia grafica dallo sviluppo della logica applicativa. Questo meccanismo è utilizzato anche dalla piattaforma .Net di Microsoft.

Page 53: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Comparativa

53

Soluzione RIA Requirements

AJAX -*

Adobe Flash / Flex Adobe Flash plugin

JavaFX Java Runtime

Microsoft Silverlight** Microsoft Silverlight plugin

**Disponibile solo su sistemi operativi Windows e Mac (non Linux, Unix, Solaris)

*AJAX richiede solo che il browser possa interpretare il linguaggio JavaScript. Da molti anni tutti i browser supportano Javascript

In una pagina web si possono utilizzare anche tutte le soluzioni nello stesso tempo.

In una pagina web si possono utilizzare anche tutte le soluzioni nello stesso tempo.

Tuttavia, Flash, JFX e Silverlight sono soluzioni omologhe. Va quindi scelta una di esse al momento della progettazione.

Page 54: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

Web 2.0

54

http:

//up

load

.wik

imed

ia.o

rg/w

ikip

edia

/com

mon

s/e/

e5/W

eb_2

.0_M

eme_

map

.png

Page 55: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

55

Web – Cos’è?

Con la parola Web si intende l’insieme di nodi di Internet atti a contenere, ricevere/trasmettere informazioni e che usano il linguaggio HTML per lo scambio delle informazioni che quindi sono visualizzabili tramite un browser.

Con la parola Web si intende l’insieme di nodi di Internet atti a contenere, ricevere/trasmettere informazioni e che usano il linguaggio HTML per lo scambio delle informazioni che quindi sono visualizzabili tramite un browser.

Il Web è un sottoinsieme di Internet. Non tutti i server sono server Web per esempio.

Il Web è un sottoinsieme di Internet. Non tutti i server sono server Web per esempio.

Page 56: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

56

Non vi è una definizione comunemente accettata del concetto di Web 2.0Non vi è una definizione comunemente accettata del concetto di Web 2.0

E il Web 2.0?

Vi sono differenti definizioni di Web 2.0. Tutte identificano degli insiemi di innovazioni riguardanti il Web che considerano radicali. Quello che c’era prima viene definito Web 1.0 ed al “nuovo” Web è assegnato l’appellativo “2.0”.

Page 57: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

57

Wiki: il concetto di Web 2.0 è associato alle applicazioni web che facilitano:• la condivisione delle informazioni• l’interoperabilità• lo user centered design• la collaborazione sul Web.

Wiki: il concetto di Web 2.0 è associato alle applicazioni web che facilitano:• la condivisione delle informazioni• l’interoperabilità• lo user centered design• la collaborazione sul Web.

Definizioni di Web 2.0 (Wiki)

“Il termine Web 2.0 fu coniato nel 1999 da Darcy DiNucci nel suo articolo Fragmented Future”

Fonte http://en.wikipedia.org/wiki/Web_2.0

Page 58: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

58

La condivisione nel Web 2.0

Condivisione: sebbene il Web sia da sempre volto al fornire informazioni, con il tempo [passaggio da 1.0 a 2.0], gli strumenti utilizzabili per condividere informazioni sono migliorati e aumentati in numero.

Page 59: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

59

La condivisione nel Web 2.0

• Web Content Management Systems - (software web per la gestione dei contenuti) hanno reso possibile scindere la creazione dei contenuti dei siti da quella di programmazione web. Questo ha permesso l’approccio di molti autori poco avezzi alla tecnologia all’ambiente del Web.

• Motori di ricerca evoluti – La condivisione dell’informazione passa anche attraverso la ricerca dell’informazione da parte dell’utente. L’evoluzione dei motori di ricerca ha visto il passaggio dal 1) pubblicazione sui motori di ricerca alla 2) indicizzazione automatica, al 3) page ranking per finire con 4) la “ricerca naturale”. Passo successivo la ricerca semantica

• Utenti che generano informazioni – Nello scenario 2.0, spesso sono gli utenti a produrre informazioni che poi verranno condivise affinche siano consumate dagli altri utenti (v. Facebook, Twitter, Flickr, il fenomeno dei blog, ecc.)

Page 60: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

60

Interoperabilità e Web 2.0

Interoperabilità: si raggiunge utilizzando standard e serve • per l’integrazione dei dati/delle informazioni• per creare servizi • per poter fornire all’utente dei servizi complessi senza richiedere ogni volta l’installazione di un’applicazione• per la comunicazione tra computer (Machine-to-Machine computing o M2M)

Page 61: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

61

Definizioni di Web 2.0 (O’Reilly)

Fonte http://www.bitmama.it/articles/14-Cos-Web-2-0

il Web 2.0, è quanto è riuscito a sopravvivere alla bolla speculativa di Internet definitivamente scoppiata intorno al 2001.

“Primo uso di Web 2.0 è di Dale Dougherty (Vice presidente del O’Reily) nel 2001”

Tim O’Reilly: Il passaggio si ha quando il Web comincia ad essere visto come piattaforma.

Tim O’Reilly: Il passaggio si ha quando il Web comincia ad essere visto come piattaforma.

Page 62: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

62

Caratteristiche salienti del Web 2.0:• contenuto ottenuto da mashup (o integrazione) di dati da più fonti• applicazioni sul Web (client-server) che non sono più eseguite in locale • all’utente vien fornito il servizio e non l’applicazione• architettura partecipativa

Caratteristiche salienti del Web 2.0:• contenuto ottenuto da mashup (o integrazione) di dati da più fonti• applicazioni sul Web (client-server) che non sono più eseguite in locale • all’utente vien fornito il servizio e non l’applicazione• architettura partecipativa

Definizioni di Web 2.0 (O’Reilly)“Il valore del software è proporzionale alla scala e al dinamismo dei dati che esso aiuta a gestire.”

Il software non deve più essere licenziato agli utenti… gira sui server di proprietà dell’azienda

Page 63: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

63

Tassonomia: scienza della classificazioneFolksonomia: classificazione, spesso collaborativa, basata sull’esperienza

Tassonomia: scienza della classificazioneFolksonomia: classificazione, spesso collaborativa, basata sull’esperienza

Tassonomia vs folksonomia

Nel paradigma Web 2.0, sono gli utenti a categorizzare i contenuti associandovi collaborativamente dei tag (etichette). L’evoluzione futura dei motori di ricerca è legata• alla folksonomia (come giudizio collettivo)• all’interpretazione semantica dei contenuti (ad es Pipl) oltre che delle richieste (ad es. Hakia)

Page 64: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

64

Tag cloud di “tag cloud”

http://w

ww

.myinternetm

arketinggroup.com/blog/?p=595

Page 65: Dott. Alexandru Serbanati INF/01 AA. 2009-2010. Indice del Corso Reti telematiche: cosa sono, principi base di funzionamento Internet e applicazioni basate.

65

Il Web 2.0 NON è una tecnologia Il Web 2.0 NON è una tecnologia

Cosa non è il Web 2.0

• perché non vi è ancora una definizione• perché riguarda i cambiamenti (spesso interconnessi) prodotti dall’utilizzo di diverse tecnologie

Il Web 2.0 NON è Internet (o una porzione di esso)Il Web 2.0 NON è Internet (o una porzione di esso)

Internet è la rete di cui fa parte il Web. Internet è utilizzato anche dai server di posta, dall’instant messaging e dalle applicazioni dedicate. Contiene anche l’infrastruttura di rete (routing, DNS, …). Di fatto Internet è la rete utilizzata dal Web.