Reti e Tempo di Risposta
52 Questions
5 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Qual è la definizione di Round-Trip Time (RTT)?

  • Tempo di trasmissione di un file
  • Tempo necessario per chiudere una connessione TCP
  • Tempo di propagazione di andata e ritorno tra due host (correct)
  • Tempo impiegato per inviare una richiesta HTTP
  • Qual è uno svantaggio delle connessioni non persistenti?

  • Non consentono il caricamento di oggetti referenziati
  • Richiedono 2 RTT per ogni oggetto (correct)
  • Non possono gestire più richieste simultanee
  • Richiedono più risorse di rete
  • Cos'è un messaggio di richiesta HTTP?

  • Un messaggio di errore del server
  • Un messaggio ASCII che richiede un'azione (correct)
  • Un formato binario non leggibile
  • Un'informazione per la chiusura della connessione
  • Quale metodo HTTP NON è incluso in HTTP/1.1?

    <p>OPTIONS</p> Signup and view all the answers

    Qual è la somma totale del tempo per la risposta comprensivo di RTT?

    <p>2 RTT + tempo di trasmissione</p> Signup and view all the answers

    In un messaggio HTTP, cosa indica la riga di stato?

    <p>Il protocollo, il codice di stato e l'espressione di stato</p> Signup and view all the answers

    Cosa avviene nelle connessioni persistenti?

    <p>La connessione TCP rimane aperta per più richieste</p> Signup and view all the answers

    Qual è il vantaggio delle connessioni persistenti rispetto a quelle non persistenti?

    <p>Richiedono meno tempo totale per elaborare una richiesta</p> Signup and view all the answers

    Quale tra i seguenti NON è un tipo di messaggio HTTP?

    <p>Errore</p> Signup and view all the answers

    Quali sono i componenti principali dei cookie?

    <p>Una riga di intestazione nel messaggio di risposta HTTP</p> Signup and view all the answers

    Cosa specifica un cookie all'interno di una richiesta HTTP?

    <p>L'ID dell'utente e le sue preferenze</p> Signup and view all the answers

    Qual è lo scopo principale della cache web?

    <p>Soddisfare richieste del client senza coinvolgere il server d'origine</p> Signup and view all the answers

    Cosa NON è una funzione dei cookie?

    <p>Fornire supporto per la crittografia</p> Signup and view all the answers

    In che modo la cache web gestisce le richieste quando un oggetto non è presente?

    <p>Richiede l'oggetto al server d'origine</p> Signup and view all the answers

    Quali dati possono essere memorizzati nei cookie?

    <p>Autorizzazione e stato della sessione</p> Signup and view all the answers

    Quale affermazione sui cookie è vera?

    <p>I cookie possono essere utilizzati per tracciare gli utenti tra diverse sessioni</p> Signup and view all the answers

    Cosa non è un risultato di un sistema di caching web?

    <p>Maggiore sicurezza delle comunicazioni</p> Signup and view all the answers

    Qual è il ruolo del database sul sito in relazione ai cookie?

    <p>Memorizzare gli ID e le entry per i cookie</p> Signup and view all the answers

    Qual è il principale vantaggio del multiplexing in HTTP/2?

    <p>Permette di inviare richieste simultanee su una singola connessione</p> Signup and view all the answers

    Che cosa implica la priorità delle richieste in HTTP/2?

    <p>Ogni richiesta può essere assegnata un peso che influenza la sua elaborazione</p> Signup and view all the answers

    In HTTP/2, cos'è un frame?

    <p>La più piccola unità di comunicazione per i dati</p> Signup and view all the answers

    Cosa accade se un client HTTP/1.x cerca di comunicare con un server HTTP/2?

    <p>Il client riceverà un messaggio di errore</p> Signup and view all the answers

    Qual è l'effetto della compressione dell'header HTTP in HTTP/2?

    <p>Riduce la latenza e i byte trasmessi</p> Signup and view all the answers

    Come vengono gestite le comunicazioni in HTTP/2?

    <p>In una singola connessione TCP con flussi multipli</p> Signup and view all the answers

    Cosa rappresenta un identificativo univoco in un stream?

    <p>Un modo per differenziare tra diversi flussi di dati</p> Signup and view all the answers

    Qual è l'obiettivo del framing binario in HTTP/2?

    <p>Incapsulare e trasferire messaggi HTTP in modo più efficiente</p> Signup and view all the answers

    Che ruolo hanno le dipendenze tra stream in HTTP/2?

    <p>Determinano l'ordine in cui i frame vengono elaborati</p> Signup and view all the answers

    Qual è il significato di pesi assegnati agli stream?

    <p>Influiscono sulla priorità di elaborazione delle richieste</p> Signup and view all the answers

    Qual è la principale differenza tra HTTP/1.1 e HTTP/2 riguardo alle connessioni TCP?

    <p>HTTP/1.1 utilizza più connessioni TCP per stream paralleli.</p> Signup and view all the answers

    Qual è la funzione principale del server push nel contesto di HTTP/2?

    <p>Il server può inviare risorse aggiuntive senza richiesta esplicita.</p> Signup and view all the answers

    Quali sono le tre fasi principali del protocollo TLS?

    <p>Negoziazione, scambio delle chiavi, e cifratura simmetrica.</p> Signup and view all the answers

    Qual è il miglioramento principale fornito da HTTPS rispetto a HTTP?

    <p>HTTPS cripta solo le informazioni di protocollo HTTP.</p> Signup and view all the answers

    Qual è l'effetto della 'S' in HTTPS sulla latenza di connessione?

    <p>Aumenta il ritardo a causa dell'inizializzazione della sessione TLS.</p> Signup and view all the answers

    Che tipo di sistema utilizza FTP per il trasferimento di file?

    <p>Modello client/server.</p> Signup and view all the answers

    Quale porta è normalmente utilizzata per la connessione di controllo in FTP?

    <p>Porta 21.</p> Signup and view all the answers

    Come si stabilisce una connessione dati in FTP dopo l'autenticazione?

    <p>Il server apre una connessione dati su una porta casuale.</p> Signup and view all the answers

    Qual è una limitazione di TLS rispetto a HTTPS?

    <p>Non cripta gli header dei protocolli superiori.</p> Signup and view all the answers

    Qual è il principale vantaggio dell'uso di HTTP/3 e QUIC rispetto a TLS?

    <p>Ridurranno il numero di RTT richiesti per la connessione.</p> Signup and view all the answers

    Qual è il ruolo principale delle Content Delivery Networks (CDN)?

    <p>Servire contenuti a diverse reti ISP dalla stessa infrastruttura</p> Signup and view all the answers

    Quale comando si utilizza per trovare l'indirizzo IP di un nodo della CDN di Facebook?

    <p>ping <a href="http://www.fbcdn.net">www.fbcdn.net</a></p> Signup and view all the answers

    Quale delle seguenti informazioni è necessaria per il client per connettersi a un server tramite una socket TCP?

    <p>Numero di porta e indirizzo IP</p> Signup and view all the answers

    Quale tipo di socket è associato a un trasferimento inaffidabile di dati?

    <p>Datagram socket</p> Signup and view all the answers

    Quale affermazione sui servizi TCP è vera?

    <p>Stabilisce una connessione tra client e server</p> Signup and view all the answers

    Cos'è una socket nel contesto di applicazioni client/server?

    <p>Una porta virtuale per la comunicazione</p> Signup and view all the answers

    Qual è uno dei principali vantaggi delle socket API?

    <p>Consente comunicazione tra diversi sistemi operativi</p> Signup and view all the answers

    Cosa si intende per 'stream socket' in TCP?

    <p>Trasferimento di dati ordinati e affidabili</p> Signup and view all the answers

    Quale affermazione è falsa riguardo al processo server durante la comunicazione TCP?

    <p>Non ha bisogno di un processo in esecuzione</p> Signup and view all the answers

    Qual è la funzione della variabile 'buffer' in una socket TCP?

    <p>Memorizza temporaneamente i dati in transito</p> Signup and view all the answers

    Cosa deve fare il server quando riceve una richiesta di connessione da un client?

    <p>Creare una nuova socket per il client</p> Signup and view all the answers

    Quale delle seguenti è una caratteristica distintiva delle socket Unix?

    <p>Forniscono comunicazione locale tra processi</p> Signup and view all the answers

    La comunicazione tra client e server in un'architettura client/server avviene tramite:

    <p>Socket TCP o UDP</p> Signup and view all the answers

    Un client è responsabile della creazione della socket per:

    <p>Contattare il server e stabilire una connessione</p> Signup and view all the answers

    Study Notes

    Definizione di Round-Trip Time (RTT)

    • Il RTT è il tempo impiegato da un pacchetto per viaggiare da un host a un altro e tornare indietro.
    • Questo tempo include la propagazione di andata e ritorno.
    • Un esempio è il tempo necessario a un piccolo pacchetto per viaggiare da un client a un server e tornare al client.

    Il Tempo di Risposta

    • Include il tempo per l'inizializzazione della connessione TCP;
    • un RTT per la richiesta del file;
    • un RTT per il ritorno della richiesta HTTP e dei primi byte della risposta HTTP;
    • il tempo di trasmissione del file.
    • Il tempo totale è di 2 RTT più il tempo di trasmissione.

    Connessioni non persistenti

    • Richiedono 2 RTT per oggetto.
    • Hanno un overhead del sistema operativo per ogni connessione TCP.
    • I browser spesso aprono connessioni TCP parallele per caricare gli oggetti referenziati.

    Connessioni persistenti

    • Il server mantiene la connessione TCP aperta dopo aver inviato una risposta.
    • I messaggi successivi tra gli stessi client / server vengono trasmessi sulla connessione aperta.
    • Il client invia le richieste non appena incontra un oggetto referenziato.
    • Solo un RTT per tutti gli oggetti referenziati.

    Messaggi HTTP

    • I messaggi HTTP sono di due tipi: richiesta e risposta.
    • I messaggi di richiesta HTTP sono in formato ASCII (leggibile dall'utente).
    • La riga di richiesta include comandi come GET, POST, HEAD.

    Formato generale del messaggio di richiesta HTTP

    • La riga di richiesta indica il comando, l'oggetto richiesto e il protocollo.
    • Le righe di intestazione forniscono informazioni aggiuntive come il nome host o l'agente utente.
    • Un ritorno a capo e un avanzamento riga indicano la fine del messaggio.

    Upload dell'input di un form

    • Il metodo POST utilizza il corpo dell'entità per inviare l'input al server.
    • Il metodo URL utilizza il campo URL della riga di richiesta per inviare l'input al server.

    Tipi di metodi HTTP

    • HTTP/1.0 supporta i metodi GET, POST e HEAD.
    • HTTP/1.1 supporta inoltre i metodi PUT e DELETE.
    • PUT include il file nel corpo del messaggio e lo invia al percorso specificato nel campo URL.
    • DELETE cancella il file specificato nel campo URL.

    Messaggio di risposta HTTP

    • La riga di stato include il protocollo, il codice di stato e l'espressione di stato.
    • Le righe di intestazione forniscono informazioni aggiuntive come la data, il server o l'ultima modifica.
    • I cookie sono utilizzati da molti siti web per memorizzare informazioni sull'utente.
    • Comprendono una riga di intestazione nel messaggio di risposta HTTP, una riga di intestazione nel messaggio di richiesta HTTP, un file cookie mantenuto sul sistema terminale dell'utente e un database sul sito.
    • Il server crea un identificativo unico per l'utente e una voce nel database per quell'ID.
    • L'ID è inviato al client attraverso il campo Set-cookie: nel messaggio di risposta HTTP.
    • Il client memorizza l’ID nel file cookie e lo aggiunge alla richiesta successiva nel campo cookie:.
    • Il server può utilizzare questo ID per personalizzare l'esperienza dell'utente.
    • Autorizzazione
    • Carta di credito
    • Raccomandazioni
    • Stato della sessione dell'utente
    • I cookie possono consentire ai siti di raccogliere informazioni sull'utente.
    • L'utente può fornire al sito il nome e l'indirizzo email.

    Cache web (server proxy)

    • La cache web è un server proxy che memorizza le copie delle pagine web.
    • Questa memorizzazione consente di soddisfare le richieste del client senza coinvolgere il server d'origine.
    • Il browser trasmette tutte le richieste HTTP alla cache.
    • Se l'oggetto è già in cache, la cache lo fornisce direttamente al client.
    • In caso contrario, la cache richiede l'oggetto al server d'origine e poi lo inoltra al client.

    Perché il caching web?

    • Riduce il tempo di risposta per il client.
    • Riduce il carico sul server d'origine.
    • Migliora le prestazioni del sito web.

    HTTP/2.0

    • Consente di trasportare dati web con latenza minima grazie al multiplexing dei flussi e alla priorità delle richieste.
    • HTTP/2 si basa sul protocollo SPDY.

    Multiplexing di flussi

    • Supporta un numero illimitato di flussi su una singola connessione TCP.
    • Aumenta l'efficienza della connessione.

    Priorità delle richieste

    • Il client può inviare quante richieste desidera e assegnarle una priorità.
    • Evita la congestione.

    Compressione dell'header HTTP

    • Diminuisce i byte trasmessi.

    Framing binario

    • È un nuovo livello che codifica e trasferisce i messaggi HTTP.
    • HTTP/2 mantiene la semantica HTTP ma ne cambia la codifica in transito.

    Stream, messaggi e frame

    • Le comunicazioni vengono eseguite all'interno di una singola connessione TCP.
    • Ogni stream ha un identificativo univoco e informazioni opzionali di priorità.
    • Ogni messaggio HTTP è costituito da uno o più frame.
    • Ciascun frame ha un tipo di dati specifico (es. intestazioni HTTP, payload dei messaggi).
    • I frame di diversi stream possono essere intervallati e riassemblati tramite l'identificativo di flusso incorporato.

    Multiplexing di richiste e risposte

    • In HTTP/1.x, più connessioni TCP erano necessarie per eseguire richieste parallele.
    • HTTP/2 elimina questa limitazione, permettendo di eseguire richieste e risposte in parallelo su una sola connessione.
    • Il messaggio HTTP può essere diviso in frame indipendenti, intervallarli e ricomporli dall'altra parte.

    Priorità degli stream

    • L'ordine in cui i frame vengono intervallati e consegnati dal client e dal server influenza le prestazioni.
    • HTTP/2 assegna un peso e una dipendenza a ciascun, consentendo di costruire un "albero di priorità" che indica come ricevere le risposte.

    Connessione HTTP/2

    • Non ha più bisogno di più connessioni TCP per eseguire stream in parallelo.
    • Ogni stream è diviso in frame e gestito con priorità diverse.
    • Tutte le connessioni HTTP/2 sono persistenti.
    • È necessaria solo una connessione per origine.

    Server push

    • Il server può inviare più risposte per una singola richiesta del client.
    • Invia risorse associate senza che il client le richieda esplicitamente.
    • Il server può inviare le risorse associate alla risposta originale in anticipo.

    Transport Layer Security (TLS)

    • È un protocollo crittografico che consente una comunicazione sicura.
    • Fornisce autenticazione, integrità dei dati e confidenzialità.
    • Ha tre fasi principali: negoziazione dell'algoritmo, scambio delle chiavi e autenticazione, cifratura simmetrica e autenticazione dei messaggi.

    HTTPS

    • Invia tutte le richieste e le risposte attraverso una comunicazione cifrata.
    • Utilizza TLS sulla porta 443.
    • Il browser capisce automaticamente che deve usare TLS e invia richieste criptate.
    • Cripta solo le informazioni del protocollo HTTP, non gli header dei protocolli inferiori.
    • Più del 50% dei siti usa HTTPS.

    La "S" aumenta il ritardo di connessione

    • L'inizializzazione di una sessione TLS richiede tempo.
    • Richiede 2 RTT più 1 RTT per la connessione TCP.
    • Le soluzioni includono protocolli più moderni come HTTP/3 e QUIC.

    Capitolo 2: Livello applicazione

    • Tratta i principi delle applicazioni di rete, il web e HTTP, FTP, la posta elettronica (SMTP, POP3, IMAP), DNS, le applicazioni P2P e il cloud computing.

    FTP: file transfer protocol

    • Consente il trasferimento di file da/verso un host remoto.
    • Utilizza il modello client/server.
    • Il client FTP contatta il server FTP alla porta 21 usando TCP.
    • Il server FTP apre una seconda connessione dati usando TCP per trasferire un file.

    Contenuto Delivery Networks (CDN)

    • Facebook ha la propria CDN.
    • È possibile identificare i nodi CDN di Facebook utilizzando l'indirizzo fbcdn.net all'interno del codice HTML di una pagina web.
    • Il comando "ping www.fbcdn.net" restituisce l'indirizzo IP di un nodo CDN.
    • L'indirizzo IP può essere utilizzato per localizzare geograficamente il nodo tramite una ricerca online.

    Programmazione delle Socket

    • Le socket sono interfacce di comunicazione tra il processo di un'applicazione locale e il sistema operativo.
    • Le socket sono aperte, utilizzate e chiuse dalle applicazioni, ma sono gestite dal sistema operativo (SO).
    • Ci sono diversi tipi di socket, inclusi: DARPA Internet Address (Internet Socket), Unix Socket e indirizzi X.25 (X.25 Socket).
    • Il paradigma client/server si basa sulle socket.
    • Le socket API offrono due tipi di servizi di trasporto: datagramma inaffidabile e affidabile, orientato ai byte.

    Programmazione delle Socket con TCP

    • Una socket è una porta tra il processo di un'applicazione e il protocollo di trasporto end-to-end (UDP o TCP).
    • TCP fornisce un trasferimento affidabile di byte tra i processi, chiamato socket di stream (SOCK_STREAM).
    • La connessione TCP passa attraverso buffer e variabili gestite dal sistema operativo e dall'applicazione.
    • Per comunicare, il client deve contattare il server con una socket TCP e specifiche di indirizzo IP e numero di porta del server.
    • Il server, una volta contattato, crea una nuova socket per comunicare con il client.
    • Il server può gestire connessioni con più client utilizzando numeri di porta distinti.
    • TCP offre un trasferimento di byte affidabile e ordinato tra il client e il server, come una "pipeline".

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    reti_cap2.pdf

    Description

    Scopri il concetto di Round-Trip Time (RTT) e il suo impatto sulle prestazioni di rete. Questo quiz esplora il tempo di risposta delle connessioni TCP, sia persistenti che non persistenti, e come questi influenzano il caricamento delle risorse. Testa le tue conoscenze su questi importanti aspetti delle reti di computer.

    More Like This

    Understanding Network Performance Metrics
    27 questions
    Radar Range Calculation Quiz
    30 questions
    Round Table Conference Quiz
    45 questions

    Round Table Conference Quiz

    WorkableLightYear823 avatar
    WorkableLightYear823
    Use Quizgecko on...
    Browser
    Browser