Architetture di rete. 4. Le applicazioni di rete

Documenti analoghi
TECN.PROG.SIST.INF. I Socket Roberta Gerboni

Anni 80: reti locali di PC terminali dotati di intelligenza propria, che condividono risorse pregiate, come stampanti, dischi, etc.

Programmazione in Rete

Terminologia e concetti fondamentali La struttura di Internet (hardware e software):

LABORATORIO di Reti di Calcolatori

Introduzione. Obiettivo: Sommario: Introduzione alle reti di telecomunicazioni approccio:

MODELLI ISO/OSI e TCP/IP

MODELLI ISO/OSI e TCP/IP

Internet (- working). Le basi.

Mariarosaria Napolitano. Architettura TCP/IP. Corso di: Laboratorio di tecnologie informatiche e telematiche

Corso di Informatica

Organizzazione della lezione

Capitolo 16 I servizi Internet

10/11/2018 Informatici e di Telecomunicazioni

Conseguenze Algoritmiche del fenomeno small world

Reti di Telecomunicazione Lezione 6

Informatica: arte e mestiere 3/ed

Introduzione. Livello applicativo Principi delle applicazioni di rete. Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio 2-1

Reti di Calcolatori ed Internet. Reti di Calcolatori ed Internet. Reti di Calcolatori. Reti di Calcolatori. Architettura dei Servizi di Rete

Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete

Internet come funziona?

Reti informatiche. 2. Internet e navigazione

INTRODUZIONE A RETI E PROTOCOLLI

Parte II Lezione 5 (29)

Programmazione in Rete

Remote file access sulla grid e metodi di interconnesione di rete

Collaborazioni on-line

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 8 novembre Corso di laurea in Economia

Programmazione modulare

Reti di Calcolatori ed Internet

Architetture Client/Server e World Wide Web

Lo strato di Trasporto

Introduzione alla rete Internet

Le Reti Informatiche

Introduzione alla rete Internet

ISTITUTO TECNICO INDUSTRIALE M. FARADAY Programmazione didattica

Le reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete

ISO OSI. International Standard Organization Open System Interconnection

3: Architettura TCP/IP

Modulo 2 Architetture dei SD Lezione 1

Introduzione a Internet e World Wide Web

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

Uso di Internet: Esempio. Prof. Franco Callegati

14/12/2018 Informatici e di Telecomunicazioni

Programmazione in Rete

Capitolo 16 I servizi Internet

Reti, Web e comunicazione Parte seconda

Laboratorio di Informatica Corso di laurea in Lingue e Studi interculturali. AA Paola Zamperlin. Internet. Parte prima

Reti Informatiche Edizione N

Le Reti Telematiche. Le reti telematiche. Le Reti Telematiche. Sistema di comunicazione

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Interazione tra processore, cache, memorie e dispositivi di I/O

CONFRONTO CON ISO/OSI

Lezione n.1 Sistemi P2P: Introduzione

Basi di Dati Architetture Client/Server

Introduzione alla rete Internet

Reti (introduzione) Internet in breve: insieme di reti locali (LAN) interconnesse da router. 2 tipi di LAN

Reti di calcolatori. Ing. Maria Mirto. mail:

UD 3 PROTOCOLLO ISO-OSI

Lezione 3 Introduzione allo stack protocollare TCP/IP. Prof.ssa Gaia Maselli

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Programmazione modulare

Reti e servizi internet

Reti di comunicazione. Appunti Fonte: M. Addomine D. Pons - Informatica - Zanichelli

PARTE 1 richiami. SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

LE RETI DI COMPUTER. Il modello TCP/IP, Indirizzi IP

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Reti di Calcolatori:

Sistemi di elaborazione delle informazioni

Introduzione alle applicazioni di rete

L interfaccia Socket

Introduzione alle reti ed al TCP/IP

Reti di Calcolatori. Concetti introduttivi. Il modello ISO/OSI ed il protocollo TCP/IP

Indirizzi IP, Classi, Subnetting, NAT

RETI DI CALCOLATORI II

Ci sono 3 principali tipi di P2P:

API Socket di Berkeley

Reti Informatiche Edizione N

La tecnologia Ethernet

Reti: cenni storici. Who s who

Le Reti Informatiche

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Gestione delle Reti di Telecomunicazioni

Reti di Calcolatori:

Informatizzazione APVE LEZIONE 2: INTERNET

MODELLI ISO/OSI e TCP/IP

Lezione 3 Introduzione allo stack protocollare TCP/IP. Prof.ssa Gaia Maselli

Modulo 1 Software e Reti. Prof.ssa Francesca Rammairone

Connettività e Comunicazione

01/12/2018 Informatici e di Telecomunicazioni

Modelli e Sistemi di Elaborazione Peer-to-Peer

Architettura di rete. Modelli di Riferimento: TCP/IP e OSI. Modello di riferimento OSI. Modelli di riferimento. architettura di rete

Applicazioni di rete

Docenti Marco Cirrito, Lorenzo De Carli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

RETI DI CALCOLATORI II

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Programmazione modulare

La rete di reti: Internet

Transcript:

Architetture di rete 4. Le applicazioni di rete

Introduzione L avvento di tecnologie (hw, sw, protocolli) di rete avanzate ha permesso la nascita di architetture software molto evolute che permettono lo scambio di dati e una distribuzione del calcolo impensabile fino a qualche decennio fa.

Creare il futuro Il principale scopo delle reti (sia LAN che INTERNET) è quello di condividere dati mediante applicazioni. Ogni giorno usiamo queste applicazioni: social-network, banking-online, registro elettronico, drop-box, games, etc. Noi siamo chiamati a pensare e quindi creare questi tipi di applicazioni.

Applicazioni di rete e livello di applicazione

Modello ISO/OSI e le applicazioni Nel modello ISO/OSI e TCP/IP il livello delle applicazioni si occupa di implementare le applicazioni di rete che vengono utilizzate dall utente finale. Il programmatore non si preoccupa di come i livelli inferiori funzionano, ma usa le primitive di comunicazione messe a disposizione dai diversi protocolli (API) API = Application Programming Interface

Livello di applicazione E uno strato protocollare che mette a disposizione i protocolli mediante i quali le applicazioni possono comunicare tra host remoti presenti nella rete

Protocolli del livello applicazione Usati dalle varie applicazioni di rete: - email - web - giochi - streaming - condivisione P2P

Applicazioni di rete Un applicazione di rete è costituita da un insieme di programmi che vengono eseguiti su due o più computer contemporaneamente: questi interagiscono usando anche risorse comuni (es. database) mediante la rete che li connette. applicazione di rete è detta applicazione distribuita; utilizza messaggi per far comunicare processi in esecuzione su host differenti e distanti

Socket Il processo mittente identifica il processo destinatario del messaggio in modo univoco utilizzando indirizzo IP (per indentificare l host) e la porta (per identificare il processo)

Socket del mittente e del destinatario Un socket consente la comunicazione attraverso la rete usando la pila TCP/IP, le API mettono a disposizione del programmatore gli strumenti necessari a codificare la connessione e l utilizzo del protocollo di comunicazione.

Composizione di un applicazione di rete L applicazione di rete è in pratica composta da due parti: - una user agent che funge da interfaccia tra l utente e la rete - es. in un web browser è l interfaccia utente che permette la visualizzazione e la navigazione di un iper-testo - l implementazione dei protocolli che permettono all applicazione di integrarsi - es. in un web browser è il motore che si occupa di inviare le richieste e ricevere le risposte

Scelta architettura Il primo passo che il programmatore (l architetto) deve effettuare è la scelta della tipologia di architettura da usare: - client/server - peer-to-peer - ibride

Client - Server Un server che ha un IP statico viene raggiunto da richieste di numerosi client. Un client non comunica con altri client, ma può comunicare con più server contemporaneamente. Se un server deve soddisfare più client, per evitare la congestione, si utilizza una server farm:unico hostname, ma più indirizzi, trasparenti ai client (es. Amazon, Google, Facebook)

Peer-to-peer (P2P) Un sistema P2P è formato da un insieme di entità autonome (peer = coetaneo), capaci di auto-organizzarsi, che condividono un insieme di risorse distribuite presenti all interno di una rete. Comunità di host fondata sul paradigma: dare e ricevere. Esempi: Emule, etc Il sistema utilizza tali risorse per fornire una determinata funzionalità in modo completamente o parzialmente decentralizzato.

P2P decentralizzato Un peer è sia client che server, risorse identificate da IP statico, meccanismi di indirizzamento propri. Il sistema di adatta al continuo cambiamento dei nodi partecipanti mantenendo connettività e prestazioni accettabili senza richiedere un server centralizzato. Sistema altamente scalabile

P2P centralizzato Abbiamo un server centrale (directory server) che conserva le informazioni sui peer (index o mapping). Il server centrale non memorizza dati, ma solo le informazioni dei dati contenuti nei peer. Esempio: Napster

P2P ibrido E simile al P2P decentralizzato, con l aggiunta di peer (super-peer) che hanno una funzione di indicizzazione. Questi peer sono determinati dinamicamente da un algoritmo, gli altri nodi prendono il nome di leaf-peer (foglia)

I messaggi non sono tutti uguali Tutti i protocolli hanno in comune il compito: trasferire messaggi. Ma in base ai dati e ai requisiti funzionali è necessario scegliere il protocollo più adatto. Classi di requisiti: - affidabilità - ampiezza della banda: garanzia di larghezza minima (es. diretta TV) - temporizzazione: non ci devono essere ritardi (es. giochi, voip) - sicurezza: riservatezza dei dati

Alcuni esempi

UDP vs TCP UDP (User Datagram Protocol) - protocollo di trasporto senza connessione, poco affidabile, ma più veloce (temporizzazione) TCP (Transfer Control Protocol) - protocollo orientato alla connessione, affidabile ma lento

Esempi