Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Ole Kristian Aune og Christian Echtermeyer

...

Widget Connector
urlhttps://www.youtube.com/watch?v=FU3X9NoHt4A

1. Innledning

HTTP/2 tilhører applikasjonslaget, mer nøyaktig som en del av Sesjonslaget og er tett knyttet sammen med SSL/TLS. Det er ikke en erstatning for HTTP/1.x, men kan heller anses som en mer effektiv måte å representere HTTP-protokollen på. Det er IETF (The Internet Engineering Task Force) som har utviklet HTTP/2 og som står for all vedlikehold av HTTP-protokollen.

Skjermbilde 2017-02-26 kl. 16.09.57.pngImage RemovedSkjermbilde 2017-02-26 kl. 16.09.57.pngImage Added

2. Ønsket funksjonalitet  

Hva er det man ønsker å oppnå, hvilke funksjonelle mangler vil man bøte på, hvorfor har man denne tjenesten eller dette systemet.

Hovedtingene man ønsker å oppnå med HTTP/2 er:

...

Beskriv hvordan ting fungerer og gjøres. Oppbygning og struktur. Forklare med illustrasjoner eller skjermklipp, bilder eller analyse av pakkefangst.

HTTP/2 bruker såkalte "frames" for å sende informasjon, der informasjonen er kodet binært. Grunnen til at frames er binære er at dette gjør framing mye enklere. For eksempel er det å finne ut starten og slutten på frames veldig komplisert i HTTP/1.1 og generelt også andre tekstbaserte protokoller. (HTTP/1.1 er en tekstbasert protokoll.) Men når framsene er binære blir dette mye enklere..


I HTTP/2 finnes det forskjellige typer frames, men alle har det samme oppsettett: Lengde, Type, Flagg, Stream, ID, og payload. Det finnes ti forskjellige typer frames i HTTP, men de viktigste og mest fundamentale er Data og Headers.


I HTTP/2 er streams et viktig konsept. En stream er en uavhengig "bi-directional" (går begge veier) sekvens med frames som sendes mellom client og serversiden. HTTP/2 benytter seg av noe som heter multiplexing av streams, dette vil si at pakker fra mange streams er blandet på samme forbindelse og kombineres, før de splittes igjen på den andre siden.

070715_0018_HTTP2Faster2.pngImage Added


Hver stream har en prioritet, eller vekt, som indikerer hvilken stream som skal ansees som den viktigste. Denne attributten kan endres dynamisk under kjøring noe som gjør at nettlesere kan spesifisere hva som skal prioriteres og gjør innlasting mer effektivt, og for eksempel hvis man bytter "tab" i en nettleser vil den automatisk fokusere på nye streams som nå får en høyere prioritet.


HTTP er som kjent en tilstandsløs protokoll, noe som vil forenklet si at hver request må ha med seg nok informasjon til at serveren kan tjene den uten an serveren trenger å lagre info og meta-data fra tidligere requests. HTTP/2 bygger på HTTP og dermed fungerer på samme måte.


HTTP/2 infører også kompressjon for headers gjennom noe som heter HPACK, noe som gjør at HTTP/2 comprimerer mye av headerene, dermed raskere innlasting.

4. Referanser

Når man i den løpende teksten omtaler standarder, organisasjoner eller annet skal dette refereres. Referanselisten føres her (ikke URL i den løpende teksten)


[1]http://httpwg.org/specs/rfc7540.html

...