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 (D)</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 (B)</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 (C)</p> Signup and view all the answers

Cosa avviene nelle connessioni persistenti?

<p>La connessione TCP rimane aperta per più richieste (A)</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 (A)</p> Signup and view all the answers

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

<p>Errore (A)</p> Signup and view all the answers

Quali sono i componenti principali dei cookie?

<p>Una riga di intestazione nel messaggio di risposta HTTP (C)</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 (D)</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 (B)</p> Signup and view all the answers

Cosa NON è una funzione dei cookie?

<p>Fornire supporto per la crittografia (C)</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 (D)</p> Signup and view all the answers

Quali dati possono essere memorizzati nei cookie?

<p>Autorizzazione e stato della sessione (C)</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 (D)</p> Signup and view all the answers

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

<p>Maggiore sicurezza delle comunicazioni (B)</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 (C)</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 (C)</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 (B)</p> Signup and view all the answers

In HTTP/2, cos'è un frame?

<p>La più piccola unità di comunicazione per i dati (A)</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 (B)</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 (B)</p> Signup and view all the answers

Come vengono gestite le comunicazioni in HTTP/2?

<p>In una singola connessione TCP con flussi multipli (D)</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 (A)</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 (C)</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 (C)</p> Signup and view all the answers

Qual è il significato di pesi assegnati agli stream?

<p>Influiscono sulla priorità di elaborazione delle richieste (B)</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. (A)</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. (A)</p> Signup and view all the answers

Quali sono le tre fasi principali del protocollo TLS?

<p>Negoziazione, scambio delle chiavi, e cifratura simmetrica. (C)</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. (C)</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. (B)</p> Signup and view all the answers

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

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

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

<p>Porta 21. (A)</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. (B)</p> Signup and view all the answers

Qual è una limitazione di TLS rispetto a HTTPS?

<p>Non cripta gli header dei protocolli superiori. (B)</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. (A)</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 (B)</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> (B)</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 (D)</p> Signup and view all the answers

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

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

Quale affermazione sui servizi TCP è vera?

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

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

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

Qual è uno dei principali vantaggi delle socket API?

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

Cosa si intende per 'stream socket' in TCP?

<p>Trasferimento di dati ordinati e affidabili (B)</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 (A)</p> Signup and view all the answers

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

<p>Memorizza temporaneamente i dati in transito (A)</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 (B)</p> Signup and view all the answers

Quale delle seguenti è una caratteristica distintiva delle socket Unix?

<p>Forniscono comunicazione locale tra processi (A)</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 (C)</p> Signup and view all the answers

Un client è responsabile della creazione della socket per:

<p>Contattare il server e stabilire una connessione (A)</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

Use Quizgecko on...
Browser
Browser