Podcast
Questions and Answers
Quale protocollo è utilizzato per la posta elettronica?
Quale protocollo è utilizzato per la posta elettronica?
- SMTP (correct)
- FTP
- HTTP
- SIP
Quale protocollo è principalmente associato al trasferimento di file?
Quale protocollo è principalmente associato al trasferimento di file?
- RTP
- Telnet
- HTTP
- FTP (correct)
Chi è riconosciuto come l'inventore del World Wide Web?
Chi è riconosciuto come l'inventore del World Wide Web?
- Vint Cerf
- Linus Torvalds
- Marc Andreessen
- Tim Berners-Lee (correct)
Quale protocollo utilizza tipicamente UDP per le applicazioni di telefonia Internet?
Quale protocollo utilizza tipicamente UDP per le applicazioni di telefonia Internet?
Qual è il protocollo a livello di trasporto comunemente utilizzato per il web?
Qual è il protocollo a livello di trasporto comunemente utilizzato per il web?
Quale protocollo è indicato da RFC 854?
Quale protocollo è indicato da RFC 854?
Quale protocollo è utilizzato per la trasmissione di multimedia in streaming?
Quale protocollo è utilizzato per la trasmissione di multimedia in streaming?
Quale delle seguenti affermazioni è vera riguardo a Tim Berners-Lee?
Quale delle seguenti affermazioni è vera riguardo a Tim Berners-Lee?
Quale passaggio non è necessario quando un utente in Australia cerca di accedere a www.networkutopia.com?
Quale passaggio non è necessario quando un utente in Australia cerca di accedere a www.networkutopia.com?
Qual è una caratteristica distintiva dell'architettura P2P?
Qual è una caratteristica distintiva dell'architettura P2P?
In cosa consiste il processo di risoluzione DNS per accedere a www.networkutopia.com?
In cosa consiste il processo di risoluzione DNS per accedere a www.networkutopia.com?
Quale dei seguenti protocolli non è parte della posta elettronica?
Quale dei seguenti protocolli non è parte della posta elettronica?
Quale affermazione sul confronto tra Server-Client e P2P nella distribuzione dei file è corretta?
Quale affermazione sul confronto tra Server-Client e P2P nella distribuzione dei file è corretta?
Qual è il ritardo medio calcolato nella situazione descritta?
Qual è il ritardo medio calcolato nella situazione descritta?
Quale codice di stato viene restituito se l'oggetto non è stato modificato?
Quale codice di stato viene restituito se l'oggetto non è stato modificato?
Qual è l'obiettivo principale del supporto HTTP per le cache?
Qual è l'obiettivo principale del supporto HTTP per le cache?
Cosa indica la richiesta HTTP 'If-modified-since'?
Cosa indica la richiesta HTTP 'If-modified-since'?
Qual è uno degli obiettivi di HTTP/2?
Qual è uno degli obiettivi di HTTP/2?
Cosa rappresenta HTTP/2 rispetto a HTTP/1.0 e HTTP/1.1?
Cosa rappresenta HTTP/2 rispetto a HTTP/1.0 e HTTP/1.1?
Qual è il valore del ritardo totale menzionato nel contesto?
Qual è il valore del ritardo totale menzionato nel contesto?
Cosa comporta il protocollo HTTP/2 riguardo alle connessioni?
Cosa comporta il protocollo HTTP/2 riguardo alle connessioni?
Qual è la modalità principale di distribuzione di file nel sistema server-client?
Qual è la modalità principale di distribuzione di file nel sistema server-client?
Qual è il tempo necessario per il client i di scaricare un file di dimensione F con un bit rate di download di di?
Qual è il tempo necessario per il client i di scaricare un file di dimensione F con un bit rate di download di di?
Quale di queste affermazioni è vera riguardo al tasso di upload in un sistema P2P?
Quale di queste affermazioni è vera riguardo al tasso di upload in un sistema P2P?
Cosa rappresenta la funzione dP2P nel contesto della distribuzione di file P2P?
Cosa rappresenta la funzione dP2P nel contesto della distribuzione di file P2P?
Qual è il ruolo del tracker nel sistema BitTorrent?
Qual è il ruolo del tracker nel sistema BitTorrent?
Come avviene l'interazione tra un peer e i suoi vicini nel sistema BitTorrent?
Come avviene l'interazione tra un peer e i suoi vicini nel sistema BitTorrent?
Cosa succede quando un peer diventa un 'leecher' in un torrent?
Cosa succede quando un peer diventa un 'leecher' in un torrent?
Qual è l'importanza della divisione del file in chunk nel sistema BitTorrent?
Qual è l'importanza della divisione del file in chunk nel sistema BitTorrent?
Quale protocollo è utilizzato per inviare messaggi di posta elettronica da un client a un server?
Quale protocollo è utilizzato per inviare messaggi di posta elettronica da un client a un server?
Cosa implica la tecnica del 'rarest first' in BitTorrent?
Cosa implica la tecnica del 'rarest first' in BitTorrent?
Come viene stabilita la preferenza tra peer nel sistema BitTorrent?
Come viene stabilita la preferenza tra peer nel sistema BitTorrent?
Che tipo di connessione utilizza SMTP per trasferire i messaggi?
Che tipo di connessione utilizza SMTP per trasferire i messaggi?
Quale codice di stato indica che il messaggio è stato correttamente ricevuto dal server?
Quale codice di stato indica che il messaggio è stato correttamente ricevuto dal server?
Quando un peer seleziona un nuovo partner casualmente, quale termine si usa nel BitTorrent?
Quando un peer seleziona un nuovo partner casualmente, quale termine si usa nel BitTorrent?
Qual è il formato richiesto per i messaggi inviati tramite SMTP?
Qual è il formato richiesto per i messaggi inviati tramite SMTP?
Cosa descrive il termine 'tit for tat' nel contesto delle relazioni tra peer?
Cosa descrive il termine 'tit for tat' nel contesto delle relazioni tra peer?
Qual è il principale svantaggio di un sistema server-client rispetto a P2P?
Qual è il principale svantaggio di un sistema server-client rispetto a P2P?
Qual è il ruolo dell'agente utente in un sistema di posta elettronica?
Qual è il ruolo dell'agente utente in un sistema di posta elettronica?
Quale delle seguenti affermazioni è vera riguardo al trasferimento di messaggi tramite SMTP?
Quale delle seguenti affermazioni è vera riguardo al trasferimento di messaggi tramite SMTP?
Quale comando SMTP viene utilizzato per inviare un messaggio dal client al server?
Quale comando SMTP viene utilizzato per inviare un messaggio dal client al server?
Cos'è una coda di messaggi in un server di posta?
Cos'è una coda di messaggi in un server di posta?
Quale comando viene utilizzato per recuperare un file da una directory corrente tramite FTP?
Quale comando viene utilizzato per recuperare un file da una directory corrente tramite FTP?
Qual è la porta utilizzata da SMTP per il trasferimento dei messaggi?
Qual è la porta utilizzata da SMTP per il trasferimento dei messaggi?
Quali sono le tre fasi del trasferimento tramite SMTP?
Quali sono le tre fasi del trasferimento tramite SMTP?
Qual è la funzione principale del server di posta ricevente?
Qual è la funzione principale del server di posta ricevente?
Cosa indica il codice di stato 425 in una risposta FTP?
Cosa indica il codice di stato 425 in una risposta FTP?
Cosa indica l'operazione STOR in FTP?
Cosa indica l'operazione STOR in FTP?
Qual è la principale differenza tra SMTP e HTTP?
Qual è la principale differenza tra SMTP e HTTP?
Study Notes
Applicazioni Internet
- Le applicazioni Internet utilizzano un protocollo di livello applicazione, un protocollo di trasporto e un livello di rete sottostante.
- Esempi di applicazioni Internet:
- Posta elettronica, utilizza SMTP [RFC 2821] e TCP
- Accesso a terminali remoti, utilizza Telnet [RFC 854] e TCP
- Web, utilizza HTTP [RFC 2616] e TCP
- Trasferimento file, utilizza FTP [RFC 959] e TCP
- Multimedia in streaming, utilizza HTTP (es.YouTube) con TCP o UDP e RTP [RFC 1889]
- Telefonia Internet, utilizza SIP, RTP e protocolli proprietari (es.Skype) e solitamente UDP
Il Web e HTTP
- Tim Berners-Lee ha inventato il World Wide Web e ha receivedo l'ACM Turing Award.
- Gli utenti cercano di accedere a un sito web tramite DNS e HTTP.
HTTP e Cache
- Obiettivo del supporto HTTP per le cache: non inviare un oggetto se la cache ha una copia aggiornata dell'oggetto.
- La cache specifica la data della copia dell'oggetto nella richiesta HTTP tramite "If-modified-since".
- Il server non invia l'oggetto se la copia nella cache è aggiornata, con codice di stato HTTP/1.0 304 Not Modified.
HTTP/1.0 e HTTP/1.1
- HTTP/1.1 è una versione migliorata di HTTP/1.0, più efficiente e flessibile.
- HTTP/1.1 offre connessioni persistenti, ottimizzando le prestazioni.
- HTTP/1.1 supporta il pipelining delle richieste, consentendo di inviare più richieste su una singola connessione.
HTTP/2.0
- HTTP/2 è un'evoluzione di HTTP/1.1, focalizzato sulle prestazioni.
- HTTP/2 utilizza un'unica connessione per ogni sito web.
- HTTP/2 implementa Multiplexing, che consente di inviare più richieste simultaneamente su una singola connessione.
FTP
- FTP è un protocollo per il trasferimento di file tra client e server.
- FTP usa una connessione di controllo TCP "out-of-band" per i comandi e una connessione dati TCP per i trasferimenti di file.
- I comandi comuni di FTP: USER, PASS, LIST, RETR, STOR.
- I codici di ritorno comuni di FTP: 331, 125, 425, 452.
Posta elettronica
- La posta elettronica utilizza tre componenti principali: agente utente, server di posta e il protocollo SMTP.
- L'agente utente (o mail reader) permette di comporre, modificare e leggere i messaggi di posta elettronica.
- Il server di posta contiene le caselle di posta degli utenti e la coda di messaggi in uscita.
- SMTP [RFC 2821] usa TCP per trasferire i messaggi di posta elettronica dal client al server tramite la porta 25.
- SMTP utilizza un'interazione comando/risposta per il trasferimento dei messaggi.
- Il formato dei messaggi SMTP è ASCII a 7 bit.
DNS (Domain Name System)
- DNS è un sistema di mapping tra nomi di dominio (es. www.networkutopia.com) e indirizzi IP (es. 212.212.71.4).
- Quando un utente cerca di accedere a un sito web:
- Query al server DNS locale
- Il server DNS locale contatta il server TLD (Top Level Domain)
- Il server TLD fornisce il record al server DNS locale
- Il server DNS locale fornisce la risposta all'utente
- L'utente può aprire una connessione HTTP al server web.
P2P (Peer-to-Peer)
- Architettura P2P pura:
- Non esiste un server centrale sempre attivo.
- I peer (nodi) si collegano direttamente tra loro.
- Non è necessario che i peer siano sempre attivi o abbiano indirizzi IP stabili.
- Tre argomenti chiave delle reti P2P: distribuzione di file, ricerca informazioni, caso di studio: Skype.
- La distribuzione di file P2P è più efficiente rispetto al modello Server-Client, con un tempo di distribuzione di file minore.
Cloud Computing
- Il cloud computing offre servizi come storage, elaborazione e software tramite connessioni di rete.
- I principali modelli di cloud computing:
- SaaS (Software as a Service): accesso a software tramite il cloud.
- PaaS (Platform as a Service): accesso a piattaforme di sviluppo e runtime tramite il cloud.
- IaaS (Infrastructure as a Service): accesso a infrastrutture hardware e software tramite il cloud.
Programmazione Socket
- Le socket sono interfacce di programmazione per la comunicazione tra programmi tramite una rete.
- La programmazione socket implica la creazione di un socket, il binding dell'indirizzo, l'ascolto di connessioni, la connessione a remote host, la comunicazione via socket, la chiusura del socket.
Distribuzione di file: server-client
- Il server invia in sequenza N copie del file F a tutti i client
- Il tempo necessario per la distribuzione del file è dato da NF/us, dove us è il bit rate di upload del server
- Il tempo impiegato da ciascun client per scaricare il file è F/di, dove di è il bit rate di download del client
- Il tempo totale per distribuire il file a N client usando l'approccio client/server è dcs = max { NF/us , F/min (di ) }
- Il tempo di distribuzione aumenta linearmente con il numero di peer
Distribuzione di file: P2P
- Il server deve inviare una sola copia del file nel tempo F/us
- Ogni client impiega un tempo F/di per scaricare il file
- È necessario scaricare un totale di NF bit per tutti i client
- Il tasso di upload più veloce è dato da us + i ui, dove ui è il bit rate di upload del i-esimo peer
- Il tempo totale per distribuire il file usando P2P è dato da dP2P = max { F/us , F/min(di ) , NF/(us + i ui) }
Confronto tra server-client e P2P: esempio
- Il tempo di distribuzione P2P è inferiore rispetto al tempo di distribuzione server-client quando il numero di peer è alto
- Questo perché P2P sfrutta la capacità di upload dei client e non dipende solo dal server
Distribuzione di file: BitTorrent
- BitTorrent è un sistema di distribuzione di file P2P
- Il file è diviso in parti di 256 kByte
- Quando un peer entra in un torrent, non possiede alcuna parte del file, ma le accumula nel tempo
- I peer possono entrare e uscire dal torrent a piacimento
- Una volta ottenuto l'intero file, un peer può lasciare il torrent (leech) o rimanere collegato (seeder)
BitTorrent (1)
- I peer si registrano su un tracker per ottenere la lista dei peers nel torrent
- I peer si collegano ad un sottoinsieme di peer vicini (neighbors)
- Mentre scaricano il file, i peer caricano le loro parti su altri peer
BitTorrent (2)
- I peer hanno diversi sottoinsiemi del file in un dato istante
- Un peer (Alice) chiede a ciascun vicino la lista dei chunk che possiede
- Alice invia richieste per i suoi chunk mancanti usando la tecnica rarest first
- Alice invia le sue parti ai 4 peer che le stanno inviando i chunk con la frequenza più alta (peer "non soffocati").
- Alice sceglie casualmente un altro peer ogni 30 secondi e inizia a inviargli chunk (optimistically unchoked).
- I "top 4" e il "nuovo entrato" non sono soffocati, mentre gli altri peer non ricevono nulla.
BitTorrent: occhio per occhio (tit for tat)
- Alice sceglie casualmente un peer (Bob) e diventa uno dei suoi 4 fornitori preferiti
- Bob, in cambio, diventa uno dei 4 fornitori preferiti di Alice
- La strategia "occhio per occhio" consente di trovare i partner migliori e ottenere il file più velocemente
P2P: ricerca di informazioni
- Un indice nei sistemi P2P è una Distributed Hash Table (DHT) che associa le informazioni alle loro posizioni negli host
File sharing (es.
- La distribuzione di file peer-to-peer può essere usata per condividere informazioni tra utenti, ad esempio musica, film, giochi, ed altri contenuti digitali
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Questo quiz esplora le applicazioni Internet e il protocollo HTTP, coprendo i protocolli di trasporto e rete sottostanti. Scopri come la posta elettronica, il web e altri servizi utilizzano questi protocolli per funzionalità ottimali. Mettiti alla prova con domande sulla storia di Internet e sul funzionamento delle cache.