quali tipi di frame esistono nel protocollo http 2 ? | - frame header
- frame data
- frame settings(per la gestione dei messaggi fra server)
- frame window update(controllo di flusso http)
- push_promise(scaricamento anticipato per elementi che serviranno in futuro) |
quali sono le unità di trasmissione nei vari protocolli http? | http1.x messaggio unico composto da uno header e un payload
http2 un messaggio viene suddiviso in più frame ciascuno con uno header e un payload
http3 comunicazione tramite multiplexing ogni stream comunica utilizzando il protocollo UDP |
come è formato un messaggio http3? | lenght 24 lunghezza del frame in byte
type 8 tipo di frame
flags 8
stream identifier 31 identificatore dello stream su cui il messaggio verrà scambiato
payload |
quali sono i vari stati di uno stream? | 1) idle : attesa di una comunicazione
2.1) reserved local : invio una push promise -> lo stream viene riservato
2.2) half closed remote : invio un frame di tipo header -> in questo stream posso solo inviare io
3) open : il client manda uno header oppure riceve uno header -> viene aperto uno stream
4.1) reserved remote : ricevo una push promise -> riservo lo stream alla recezione
4.2) half closed local : ricevo uno header -> su questo stream non posso scrivere
5) closed : riceve o invia un frame con il flag reset o ricevo/invio un end stream -> lo stream viene chiuso |
in cosa consiste lo standard DASH? | dynamic adaptive streaming over http
standard per le trasmissioni di contenuti multimediali, si adatta alle condizioni di rete
all'inizio viene scambiato un manifest MDP dove vengono elencate le varie opzioni di riproduzione(FHD, MP4...) e i vari url dove recuperarli
il buffer del client viene dimensionato in base alla dimensione dei chunk(segmenti multimediali) di contenuto richiesti e in base allo stato della rete |
come sono suddivise generalmente le porte? | 0-1023 sono le porte well known
1024-49151 sono registered ports (porte registrate da compagnie per processi specifici)
49152-65535 porte dinamiche (non collegate specificatamente a nessun servizio) |
quali sono i vari step di una ricerca di un sito web?
fai lo schema | 1) viene interrogato il DNS per ricevere l'indirizzo ip del ricevitore
2) viene aperta una connessione sulla porta 80 del ricevitore
3) inizia la sequenza di request e reply tra server e client
4) chiusura della connessione tcp |
quale è il difetto principale di http1.0? | utilizzando una connessione non persistente non si da sufficiente tempo alla congestion window di crescere e far diventare la connessione efficiente |
quali vantaggi e svantaggi porta http1.1? | il supporto a connessioni persistenti
il supporto al pipelineing delle richieste
non riesce a risolvere lo head of line blocking |
quali vantaggi o svantaggi porta http2 rispetto ad http1.1? | risolve lo head of line blocking utilizzando più streaming concorrenti fra di loro
ha il problema dello head of line blocking di livello 4 |
quali problemi risolve http3 di http2? | http2 ha il problema di head of line blocking di livello 4
http3 lo risolve tramite l'utilizzo del protocollo quic che utilizza udp |
schema degli stati di uno stream di http3 | schema |
che cosa prevede il problema dello head of line blocking di http1.1?
come viene risolto? | hol blocking si verifica in http 1.1 siccome con il pipelining introdotto la sequenza delle risposte deve seguire l'ordine delle richieste, se una risposta è particolarmente lenta da generare allora bloccherà anche quelle successive.
http2 risolve questo problema introducendo l'utilizzo di stream TCP differenti |
che cosa prevede il problema dello head of line blocking di http2?
come viene risolto? | HOL blocking di livello 4 (a livello TCP) si presenta quando uno stream perde dei pacchetti, questi pacchetti persi possono interferire con gli altri stream e rallentare le richieste come in figura.
questo viene risolto da HTTP3 tramite l'utilizzo del protocollo QUIC tramite l'utilizzo di stream UDP separati |