Anteprima
Vedrai una selezione di 20 pagine su 113
Architettura web/Architettura internet Pag. 1 Architettura web/Architettura internet Pag. 2
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 6
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 11
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 16
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 21
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 26
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 31
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 36
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 41
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 46
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 51
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 56
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 61
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 66
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 71
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 76
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 81
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 86
Anteprima di 20 pagg. su 113.
Scarica il documento per vederlo tutto.
Architettura web/Architettura internet Pag. 91
1 su 113
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

SMTP

Questo protocollo costituisce il cuore della posta elettronica su Internet. SMTP trasferisce imessaggi dal mail server del mittente a quello del destinatario. Per illustrare le operazioni di basedi SMTP, presentiamo uno scenario tipico: supponiamo che Alice voglia inviare a Bob un semplicemessaggio ASCII.

  1. Alice invoca il proprio user agent per la posta elettronica, fornisce l'indirizzo di posta di Bob, compone il messaggio e dà istruzione allo user agent di inviarlo.
  2. Lo user agent di Alice invia il messaggio al suo mail server dove è collocato in una coda di messaggi.
  3. Il lato client di SMTP, eseguito sul server di Alice, vede il messaggio nella coda dei messaggi e apre una connessione TCP verso un server SMTP in esecuzione sul mail server di Bob.
  4. Dopo un handshaking SMTP, il client SMTP invia il messaggio di Alice sulla connessione TCP.
  5. Preso il mail server di Bob, il lato server di SMTP riceve il messaggio, che viene posizionato nella casella di Bob.
  6. Bob,

quando lo ritiene opportuno, invoca il proprio user agent per leggere il messaggio. È importante osservare che di solito SMTP non usa mail server intermedi per inviare la posta, anche quando sono collocati agli angoli opposti del mondo.

Protocolli di accesso alla posta

Nell'ipotesi in cui il destinatario esegua il proprio user agent sul proprio pc locale, verrebbe però naturale pensare alla collocazione di un mail server anch'esso sul pc locale. I due mail server parlerebbero direttamente ma esiste un problema per tale soluzione; infatti il pc destinatario dovrebbe rimanere sempre acceso. Piuttosto, un utente manda in esecuzione uno user agent sul pc locale ma accede alla propria casella memorizzata su un mail server condiviso con altri utenti e sempre attivo. Questo server è generalmente gestito dall'ISP dell'utente. Per accedere ai messaggi bisogna usare un protocollo speciale: Post office protocol-versione 3 (POP3)

Il protocollo POP3 (Post Office Protocol versione 3) è un protocollo di accesso alla posta estremamente semplice in quanto breve e di agevole lettura. Dato che il protocollo è tanto semplice, le sue funzionalità sono piuttosto limitate. POP3 entra in azione quando lo user agent (il client) apre una connessione TCP verso il mail server (server) sulla porta 110.

Quando la connessione TCP è stabilita, POP3 procede in tre fasi: autorizzazione, transazione e aggiornamento. Durante la prima fase (autorizzazione) lo user agent invia nome utente e password (in chiaro) per autenticare l'utente. Durante la seconda fase (transazione) lo user agent recupera i messaggi; inoltre, durante questa fase, può marcare i messaggi per la cancellazione, rimuovere i marcatori di cancellazione e ottenere statistiche sulla posta. La fase di aggiornamento ha luogo dopo che il client ha inviato il comando quit, che conclude la sessione POP3; in questo istante, il server di posta rimuove i messaggi che sono stati marcati per la cancellazione.

Sono stati marcati per la cancellazione. Purtroppo a causa del metodo "scarica e cancella" non si possono vedere le mail scaricate su un pc da un altro pc.

IMAP

Per risolvere il problema precedentemente esplicitato si implementa il protocollo IMAP. Molto più potente ma molto più complesso di POP3. Un server IMAP associa a una cartella ogni messaggio arrivato al server. Tali server conservano informazioni di stato sull'utente da una sessione all'altra.

mail browser

Abbiamo anche dove lo user agent è un semplice browser e l'utente comunica con la propria casella tramite HTTP.

DNS

nomi degli host I (hostname), i quali risultano abbastanza appropriati per l'uomo ma forniscono ben poca informazione sulla loro collocazione all'interno di Internet. Essendo costituiti da un numero variabile di caratteri alfanumerici, sarebbero difficilmente elaborati dai server. Per tali indirizzi IP.

motivi, gli host vengono identificati anche dai cosiddetti Al

fine di conciliare i due approcci è necessario un servizio in grado di tradurre i nomi degli host nei loro indirizzi IP. Si tratta del domain name system (DNS), il principale compito del di Internet. DNS è un database distribuito implementato in una gerarchia di server e un protocollo a livello di applicazione che consente agli host di interrogare il database. I DNS server sono generalmente macchine UNIX che eseguono un software chiamato BIND. Il protocollo DNS utilizza UDP e la porta 53. DNS viene comunemente utilizzato da altri protocolli a livello di applicazione per tradurre i nomi di host forniti dall'utente in indirizzi IP. Vediamo cosa succede affinché un host dell'utente sia in grado di inviare un messaggio di richiesta HTTP ad un web server.

  1. La stessa macchina utente esegue il lato client dell'applicazione DNS.
  2. Il browser estrae il nome dell'host dall'URL e lo passa al lato client dell'applicazione DNS.
  3. Il client DNS

invia una interrogazione (query) contenente l'hostname a un DNS server.

4. Il client DNS prima o poi riceve una risposta, che include l'indirizzo IP corrispondente all'hostname

5. Una volta ricevuto l'indirizzo IP dal DNS, il browser può dare inizio a una connessione TCP verso il processo server HTTP collegato alla porta 80 di quell'indirizzo IP.

Vediamo quindi che il DNS introduce un ritardo aggiuntivo, talvolta sostanziale, alle applicazioni Internet che lo utilizzano. Oltre alla traduzione degli hostname in indirizzi IP, DNS mette a disposizione altri importanti servizi.

Host aliasing: canonico) Un host dal nome complicato (hostname può avere uno o più sinonimi (alias). Il DNS può essere invocato da un'applicazione per ottenere l'hostname canonico di un sinonimo, così come l'indirizzo IP dell'host.

Mail server aliasing: Un'applicazione di posta può invocare il DNS per ottenere il

nome• canonico di un sinonimo fornito, così come l’indirizzo IP dell’host. Infatti, il record MXpermette al server di posta di una società e al web server di avere hostname (alias).

Distribuzione del carico di rete: Il DNS viene anche utilizzato per distribuire il carico tra• server replicati. I siti con molto traffico vengono replicati su più server, e ciascuno di questi viene eseguito su un host diverso e presenta un indirizzo IP differente. Nel caso di web server replicati, va dunque associato a ogni hostname canonico un insieme di indirizzi IP. Il database DNS contiene questo insieme di indirizzi. Quando i client effettuano una query DNS per un nome associato a un insieme di indirizzi, il server risponde con l’intero insieme di indirizzi, ma ne varia l’ordinamento a ogni risposta. La rotazione DNS distribuisce il traffico sui server replicati.

Funzionamento dei DNS: Un'applicazione che deve tradurre un nome in un IP invocherà il

Lato client del DNS specificando gethostbyname() l'hostname da tradurre. Su molte macchine basate su Linux, è la chiamata di funzione effettuata da un'applicazione per ottenere il servizio di traduzione. Il DNS sull'host prende poi il controllo, inviando un messaggio di richiesta sulla rete. Tutte le richieste DNS e i messaggi vengono inviati all'interno di datagrammi UDP diretti alla porta 53.

Un primo approccio potrebbe essere quello di utilizzare un DNS server contenente tutte le corrispondenze. In questo schema centralizzato, i client dirigono semplicemente tutte le richieste al singolo server e quest'ultimo risponde loro direttamente. Sebbene tale semplicità progettuale sia attraente, sarebbe inappropriata per l'attuale Internet, dotata di un vasto e sempre crescente numero di host. Tra i problemi legati a uno schema centralizzato ricordiamo i seguenti:

  • Un solo punto di fallimento: Se il DNS server si guasta, ne soffre l'intera rete.

Internet.

  • Volume di traffico: Un singolo DNS server dovrebbe gestire tutte le richieste.
  • Database centralizzato distante: Un singolo DNS server non può essere vicino a tutti i client; ciò può creare ritardi significativi.
  • Manutenzione: Il singolo DNS server dovrebbe contenere record relativi a tutti gli host di Internet. Non solo tale database centralizzato sarebbe vasto, ma dovrebbe essere aggiornato frequentemente per tener conto di ogni nuovo host.

In conclusione, un su un singolo DNS server non è in grado di adattarsi alla crescita esponenziale della rete (non è scalabile). Di conseguenza, il DNS è stato progettato in maniera distribuita.

Per trattare il problema della scalabilità, il DNS utilizza un grande numero di server, organizzati in maniera gerarchica e distribuiti nel mondo. Nessun DNS server ha le corrispondenze per tutti gli host in Internet, che sono invece distribuite tra tutti i DNS server.

In prima approssimazione, esistono tre root server, classi di DNS server: i top-level domain (TLD) server e i server autoritativi, organizzati in una gerarchia. Root server: In Internet esistono 13 root server etichettati dalla A alla M. Ai fini di sicurezza e affidabilità, ciascuno di essi è in realtà un cluster di server replicati. Top-level domain server: Questi server si occupano dei domini di primo livello (quali com, org, ecc.) e di tutti i domini di primo livello relativi ai vari paesi. DNS server autoritativo: Ogni organizzazione dotata di host pubblicamente accessibili tramite Internet deve fornire record DNS pubblicamente accessibili che associno i nomi di tali host a indirizzi IP. Il DNS server dell'organizzazione ospita questi record. Un'organizzazione può scegliere di implementare il proprio server autoritativo o di pagare un fornitore di servizi per ospitare questi record su un suo server. DNS server locale: Esiste un DNS server locale che viene utilizzato dai dispositivi all'interno di una rete locale per risolvere i nomi di dominio in indirizzi IP. Questo server locale può essere configurato manualmente o assegnato automaticamente dal provider di servizi Internet.

Importante tipo di DNS, detto che non appartiene strettamente allagerarchia di server, ma che è comunque centrale nell'architettura DNS. Ciascun ISP ha un DNSname server).server locale (default Quando un host si connette a un ISP, quest'ultimo gli fornisceun indirizzo IP tratto da uno o più dei suoi DNS server locali, generalmente tramite DHCP. Un DNSserver locale è solitamente vicino all'host. Quando un host effettua una richiesta DNS, la richiestaviene inviata al DNS server locale, che opera da proxy e inoltra la query alla gerarchia dei DNSserver. L'host dapprima invia un messaggio di richiesta DNS al proprio server locale. Il messaggiocontiene il nome da tradurre. Il server locale inoltra ilmessaggio di richiesta a un root server. Quest'ultimoprende nota del suffisso e restituisce al server locale unelenco di indirizzi IP per i TLD server responsabili delprefisso. Il server locale quindi invia il messaggio dirichiesta a

Dettagli
Publisher
A.A. 2022-2023
113 pagine
2 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher valehaki di informazioni apprese con la frequenza delle lezioni di Architettura Internet 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 Catania o del prof Malgeri Michele.