ID.nl logo
Alles over het nieuwe internetprotocol HTTP/3
© Reshift Digital
Huis

Alles over het nieuwe internetprotocol HTTP/3

Geen enkele internetgebruiker kan buiten het http-protocol. Dat ligt immers aan de basis van de datacommunicatie binnen het wereldwijde web en ook op lokale netwerken zoals een intranet. Intussen is dit protocol aan versie 3 toe en de ondersteuning hiervoor neemt gestaag toe.

Http staat voor hypertext transfer protocol, een applicatieprotocol dat vanaf 1989 werd ontwikkeld onder aanvoering van Tim Berners-Lee, de ‘vader’ van het wereldwijde web. Het is een client-serverprotocol bedoeld om digitale bronnen op te halen

als html-documenten, maar ook afbeeldingen en video, door middel van afzonderlijke berichten in een request-response-structuur. Aanvankelijk was het bedoeld om over een al dan niet met tls-versleutelde tcp-connectie (Transmission Control Protocol) te worden verstuurd, maar ook andere transportprotocollen zijn mogelijk, zoals in http/3.

Om goed te begrijpen wat mogelijkheden van http/3 zijn, moet je eigenlijk weten hoe het http-protocol is geëvolueerd.

1991: Tim Berners-Lee stelde het initiële http-protocol voor (pas later http/0.9 genoemd). Het ging om een simpel protocol, waarbij de verbinding tussen server en client na elk request werd afgesloten. 1996: Http/1.0 was een broodnodige uitbreiding op het eerste ontwerp. waarbij het response object niet langer tot hypertext is beperkt, maar bijvoorbeeld ook een afbeelding kon zijn (hypermedia transfer protocol zou eigenlijk logischer zijn). 1999: Versie http/1.1 focuste zich vooral op het optimaliseren van de snelheid, met functies als keepalive-connecties en extra caching-mechanismen. 2015: Eindelijk werd opvolger http/2 geïntroduceerd. Dit protocol werd initieel gemodelleerd op Googles spdy en beoogde vooral kortere latentietijden, onder meer door efficiënte headercompressie, ondersteuning voor server push en request-prioritering, en request en response multiplexing. 2018: De IETF erkent de naam http/3. Dit protocol is gebaseerd op een eerder rfc-concept: http via quic. De belangrijkste verschuiving is het gebruik van het (snellere) udp in plaats van tcp. Quic implementeert tevens een eigen cryptolaag.

De eerste definitieve publicatie van het http/1.0-protocol dateert alweer van 1996. In deze versie werd voor elke request-response-uitwisseling tussen client en server een nieuwe tcp-connectie gemaakt. Deze werkwijze betekende echter flink wat latency (vertraging) aangezien elk verzoek door een tcp- (en tls-)handshake werd voorafgegaan. Meer zelfs, aangezien tcp absoluut opstoppingen wil vermijden, wordt er bij de initialisatie van zo’n connectie een ‘slow start’-mechanisme ingelast, wat voor verdere vertraging zorgt.

Http/1.1 trachtte dit latency-probleem enkele jaren later aan te pakken door middel van ‘keep-alive’-connecties. In deze revisie kon eenzelfde connectie namelijk verschillende keren worden hergebruikt om afbeeldingen, stijlbladen en scripts te downloaden nadat de webpagina was doorgestuurd. Dat was geen ideale oplossing, aangezien alle afzonderlijke verzoeken nog altijd na elkaar moesten worden uitgevoerd.

Eerst http/2

Het duurde nog meer dan tien jaar er beterschap kwam, met de komst van Googles spdy-experiment (lees als ‘speedy’) en naderhand met http/2. Die zorgden er namelijk voor dat verschillende requests parallel over een enkele tcp-verbinding kon worden verstuurd (multiplexing). Dat leverde vooral voordeel op wanneer een webpagina uit heel wat elementen was opgebouwd. Dit vind je bijvoorbeeld mooi geïllustreerd op https://http2.golang.org/gophertiles.

Een ander voordeel van http/2 is de ondersteuning van push responses. Hierbij kan een server proactief bepaalde pagina-elementen naar de client(cache) sturen, zodat de server hiervoor niet op expliciete requests hoeft te wachten. Volgens zeer recente cijfers van W3Techs zou circa 43 procent van de websites http/2 ondersteunen: een stijging van zo’n 30 procent in één jaar tijd.

Toch lost ook http/2 niet alle problemen op. Immers, ook wanneer er slechts bij één request dataverlies optreedt, bijvoorbeeld ten gevolge van netwerkopstopping, heeft dat een impact op alle request/responses binnen diezelfde tcp-connectie.

Quick Udp Internet Connections / Quic

Precies het feit dat tcp diverse mechanismen opzet voor een betrouwbare transmissie, maakt het in deze tijden van multimediaal internet niet het meest geschikte transportmiddel voor http. Daarom ook zet http/3 in op een nieuw internet transportprotocol, bedacht door Google: quic (Quick Udp Internet Connections).

Quic-datastreams maken gebruik van dezelfde verbinding zodat er geen extra handshakes of slow starts nodig zijn. Bovendien worden deze streams onafhankelijk van elkaar doorgestuurd, zodat dataverlies bij de ene stream doorgaans geen impact op de andere streams heeft.

©PXimport

De ‘magie’ achter deze techniek is eigenlijk simpel: quic-pakketten worden bovenop udp-datagrammen ingekapseld. Udp op zich mag dan een minder betrouwbaar protocol zijn dan tcp, het feit dat er nauwelijks controlemechanismen zitten ingebouwd maakt het protocol wel merkbaar sneller.

Komt daarbij dat de quic-implementaties, inclusief de (beperkte) opstopping-controle-algoritmen, zich in ‘user space’ bevinden. Dit maakt het makkelijker om het quic-protocol te updaten, zonder dat het onderliggende besturingssysteem betrokken wordt – wat wel het geval is bij tcp. Verder combineert quic de typische tcp-handshake met die van tls 1.3, waardoor authenticatie en encryptie standaard voorzien zijn en bovendien minder vertraging veroorzaken dan via tls/tcp.

Hearder-compressie

Je zou je natuurlijk de vraag kunnen stellen waarom men een nieuwe http-revisie nodig achtte en niet gewoon http/2 (dat al ondersteuning biedt voor multiplexing) bovenop quic inzette. Dat heeft vooral te maken met de header-compressie. Deze zorgt ervoor dat er minder bytes vereist zijn om headers te versturen, met allerlei relevante informatie voor client en server.

In http/2 wordt hiervoor het hpack-formaat gebruikt en de werking hiervan steunt grotendeels op een specifieke volgorde van http-requests en -responses. In tegenstelling tot hpack garandeert de header-compressie van quic (qpack genoemd) geen vaste volgorde tussen de verschillende streams. Qpack is dus niet zomaar compatibel met http/2, wat heeft geleid tot een nieuwe http-revisie. Daarbij komt dat sommige eigenschappen van http/2 (zoals flowcontrole per stream) al in quic zelf zitten ingebouwd, zodat ze uit de eigenlijke http/3-specificatie konden worden weggehaald.

Actuele status

De naam http/3 werd al in november 2018 door het IETF (Internet Engineering Task Force) goedgekeurd en is momenteel nog een rfc-draft, op weg dus naar een definitieve rfc-status. Volgens cijfers van W3Techs ondersteunt op het moment van schrijven circa 4,7 procent van alle websites dit nieuwe protocol. Dat lijkt weinig, maar de trend lijkt onomkeerbaar: op 1 januari van dit jaar bijvoorbeeld was dat nog geen 2,3 procent.

Heel wat grote sites ondersteunen het protocol inmiddels al, waaronder Google, YouTube en Facebook. geekflare.com/http3-test kun je terecht voor twee online tests waarmee je nagaat of een bepaalde site al ondersteuning biedt – probeer het bijvoorbeeld uit met facebook.com. Ontvang je graag een e-mailnotificatie wanneer nog andere bekende sites overstag gaan, dan kun je je hiervoor inschrijven via de site van W3Techs.

Ook op clientniveau zit er duidelijk beweging. Zo ondersteunen Google Chrome (sinds september 2019 in de Canary-build en sinds december 2019 in Chrome 79) evenals Firefox vanaf versie 72.0.1 het nieuwe http-protocol. In deze laatste moet je de functie weliswaar zelf nog even activeren. Dat doe je als volgt. Tik about:config in en zoek naar network.http.http3.enabled. Klik op de knop Omschakelen om de functie op True in te stellen.

▼ Volgende artikel
Waar voor je geld: 5 accuboormachines met een hoog review-cijfer
© ID.nl
Huis

Waar voor je geld: 5 accuboormachines met een hoog review-cijfer

Bij ID.nl zijn we gek op producten waar je niet de hoofdprijs voor betaalt of die door gebruikers een hoge waardering krijgen. Op Kieskeurig.nl kunnen kopers van producten een review achterlaten en hiermee aangeven hoe goed (of slecht) ze een product vinden. Wij vonden vijf accuboormachines die door gebruikers zijn gewaardeerd met een 7 of hoger.

Consumentenreviews zijn een van de beste manieren om erachter te komen of een product goed of slecht is. Op Kieskeurig.nl kunnen kopers van producten aangeven wat ze ervan vinden, zodat ze potentiële nieuwe kopers kunnen helpen een aankoopbeslissing te maken. Wij vonden vijf accuboormachines die door kopers op Kieskeurig.nl zijn voorzien van een waardering van minimaal 7 van de 10 punten.

Metabo PowerMaxx BS 

De Metabo PowerMaxx BS is een compacte schroefboormachine met een Li‑ion‑accu. Dit model weegt circa 2,08 kg in de verpakking en is voorzien van een koolborstelloze motor. De machine heeft twee snelheden en werkt op 10,8 volt, waardoor hij geschikt is voor lichte boor- en schroefklussen. Door het ergonomische ontwerp ligt het toestel prettig in de hand en kun je nauwkeurig werken. De set wordt geleverd met oplader, bits en een koffer. Gebruikers waarderen het apparaat met een hoge score (9,8). Door de relatief lage spanning is hij met name bedoeld voor kleinere klussen in huis.

DeWalt DCD777S2T

Deze DeWalt schroefboormachine werkt met een 18 V Li‑ion‑accu en heeft een compacte behuizing. Hij beschikt over twee snelheden en een 13 mm boorkop. Het gewicht in de verpakking is 3,85 kg en de boormachine wordt geleverd met twee accu’s en een oplader. Dankzij de stevige koffer kun je de machine makkelijk meenemen. Het model heeft een reviewscore van 9,0 en is daarmee geschikt voor deze selectie. De brushless motor zorgt voor een langere levensduur en meer kracht per acculading. De machine is van recente bouwjaar en wordt nog steeds verkocht.

Bosch PSB 18 LI‑2 Ergonomic

De Bosch PSB 18 LI‑2 Ergonomic is een klopboormachine voor gebruik met 18 volt. Het apparaat is uitgerust met een brushless motor en wordt geleverd met een Li‑ion‑accu en lader. Dankzij de ergonomische grip ligt het toestel comfortabel in de hand. Het maximale koppel is geschikt voor klussen in hout, metaal en lichte steen. In de verpakking zit een koffer zodat je alles netjes kunt opbergen.

Makita DDF485RFJ

De Makita DDF485RFJ is een 18 V accu‑schroefboormachine met een brushless motor. Het apparaat heeft twee versnellingen en een metalen boorkop van 13 mm. De machine wordt geleverd in een Mbox met twee 3,0 Ah accu’s en lader, zodat je langere tijd achtereen kunt werken. Dankzij de ergonomische handgreep en het gewicht van circa 5 kg inclusief verpakking ligt het toestel stabiel in de hand. De machine behaalt een goede gebruikerswaardering en is geschikt voor zwaardere schroef- en boorklussen.

Makita DF457DWE

De Makita DF457DWE is een accuboormachine die vooral bedoeld is voor huis-, tuin- en keukenklussen. Hij werkt op een 18 V Li‑ion‑accu en wordt geleverd met twee accu’s en een oplader. De machine heeft twee snelheden en een 13 mm boorkop, waardoor je zowel kunt schroeven als boren. Het toestel wordt geleverd in een koffer zodat je het gemakkelijk kunt opbergen. Ondanks dat het model al enkele jaren op de markt is, is deze Makita nog steeds verkrijgbaar bij diverse winkels.

▼ Volgende artikel
Matter uitgelegd: de nieuwe standaard voor een zorgeloos slim huis
Zekerheid & gemak

Matter uitgelegd: de nieuwe standaard voor een zorgeloos slim huis

Wil jij een slimme woning waarin alles gewoon werkt? Met de komst van Matter behoort de wirwar aan verschillende apps en protocollen definitief tot het verleden. Deze universele standaard zorgt ervoor dat al je apparaten naadloos met elkaar communiceren. We leggen uit hoe deze techniek jouw slimme huis naar een hoger niveau tilt zonder ingewikkelde installaties.

Je herkent het vast: je koopt een slimme lamp die vervolgens niet samenwerkt met je favoriete app. De nieuwe smarthome-standaard genaamd Matter maakt daar voorgoed een eind aan. In dit artikel leggen we uit wat deze techniek precies inhoudt en waarom het de manier waarop je jouw huis automatiseert fundamenteel verandert. Het draait namelijk allemaal om eenvoud en universele samenwerking tussen apparaten.

Universele taal voor al je apparaten

Matter is in de basis een communicatieprotocol dat ervoor zorgt dat apparaten van verschillende fabrikanten dezelfde taal spreken. Voorheen zat je vaak vast aan een specifiek ecosysteem zoals Apple HomeKit, Google Home of Amazon Alexa. Met de komst van Matter maakt het merk van de hardware niet langer uit voor de app die je gebruikt om alles te bedienen. Het is een softwarematige laag die boven op je bestaande wifi-netwerk of het nieuwe Thread-netwerk draait om verbindingen betrouwbaar en snel te maken. Hierdoor hoef je bij de aanschaf van een nieuwe sensor of schakelaar alleen nog maar te letten op het kenmerkende logo.

©Matter

Waarom Matter, eh, matters...

De grootste winst voor jou als gebruiker zit 'm in de eenvoud van het installatieproces en de betrouwbaarheid van het systeem. Elk product dat over de officiële ondersteuning beschikt, kun je simpelweg scannen met een QR-code, waarna het direct wordt toegevoegd aan je netwerk. Omdat grote techreuzen de handen ineen hebben geslagen, hoef je niet meer bang te zijn dat een nieuwe aankoop onbruikbaar blijkt in je huidige setup. Bovendien werkt Matter lokaal in plaats van via de cloud. Dat heeft als grote voordeel dat je privacy beter gewaarborgd is en dat je lampen ook gewoon aangaan als je internetverbinding er onverhoopt een keer uitligt.

De rol van Thread en lokale snelheid

Hoewel Matter de taal is die gesproken wordt, hebben de apparaten ook een manier nodig om die signalen fysiek te versturen. Veel moderne apparatuur maakt hiervoor gebruik van Thread, een energiezuinig protocol dat een zogenaamd mesh-netwerk vormt. Hierdoor versterken apparaten elkaar en wordt het bereik in je hele woning vergroot zonder dat je extra steunpunten hoeft te plaatsen. De combinatie van deze technieken zorgt voor een razendsnelle reactietijd. Je merkt dit direct in de praktijk omdat de vertraging tussen het indrukken van een knop in je app en de daadwerkelijke actie van het apparaat vrijwel nihil is.

©ER | ID.nl

En de toekomst...?

Hoewel de techniek nog volop in ontwikkeling is, breidt de ondersteuning zich razendsnel uit naar nieuwe productgroepen zoals robotstofzuigers, slimme sloten en zelfs huishoudelijke apparaten. Fabrikanten brengen regelmatig software-updates uit voor oudere apparatuur om deze alsnog compatibel te maken met de nieuwe standaard. Dat zorgt voor een duurzamere benadering van elektronica, omdat je niet direct al je hardware hoeft te vervangen om te profiteren van de nieuwste mogelijkheden. Het bouwen van een slim huis wordt hiermee eindelijk een overzichtelijke ervaring waarbij de techniek volledig in dienst staat van jouw gemak.

Populaire merken met Matter-compatibiliteit

Binnen de wereld van Matter zie je een aantal fabrikanten die momenteel de toon zetten met hun ondersteuning en innovatie. Philips Hue is een grote naam die via hun bridge ondersteuning biedt aan vrijwel hun gehele assortiment slimme verlichting. Nanoleaf biedt creatieve verlichtingsoplossingen die direct uit de doos samenwerken met andere systemen, terwijl TP-Link met de Tapo-serie betaalbare opties biedt voor slimme stekkers en sensoren die moeiteloos integreren in elke moderne woning.