ID.nl logo
Huis

Hoe Google het web sneller en veiliger maakt met QUIC

Google heeft een netwerkprotocol ontwikkeld om verbindingen tussen browsers en webservers te versnellen: QUIC. Dat doet het protocol onder andere door het onderliggende protocol tcp te vervangen door udp. PCM legt uit hoe dat precies zit.

Het hele web is gebaseerd op http (hypertext transfer protocol), het applicatieprotocol dat afspreekt hoe een browser en webserver met elkaar communiceren. Maar dit is maar één protocol in een hele laag. Onder http werkt traditioneel het transportprotocol tcp (transmission control protocol). Dit is bekend om zijn betrouwbaarheid: het protocol garandeert dat gegevens aankomen. 

Bij het opzetten van een tcp-verbinding gebeurt er al een ‘3-way-handshake’: de zender stuurt een pakket naar de ontvanger, die stuurt een bevestiging terug, en daarna stuurt de zender daarop een bevestiging. En als de zender een pakketje stuurt en geen bevestiging terugkrijgt, stuurt hij het opnieuw.

Al die pakketjes die over en weer gaan, voegen extra vertraging aan elke verbinding toe. Bovendien voegt tls (transport layer security), de opvolger van ssl (secure sockets layer), ook nog eens een uitgebreide handshake toe om sessiesleutels en certificaten uit te wisselen. Zeker als je een versleutelde verbinding opzet, zit je dus talloze pakketjes over en weer te sturen nog voor je maar iets nuttigs kunt doen.

Verschil tcp en udp

Naast tcp is er nog een ander transportprotocol: udp (user datagram protocol). In tegenstelling tot tcp garandeert dat niet dat gegevens daadwerkelijk aankomen. Dit ‘onbetrouwbare’ protocol wordt veel ingezet in toepassingen waar het belangrijker is dat gegevens zo snel mogelijk overgedragen worden en het niet zo erg is dat een deel van de gegevens verloren gaat.

We merken lang niet altijd dat pakketjes verloren gaan

Denk daarbij aan videoconferencing of voip: we merken het waarschijnlijk niet eens als er wat pakketjes verloren gaan. Bij gebruik van tcp zou een verloren pakketje daarentegen opnieuw verstuurd worden en zou het beeld of geluid eventjes haperen door die vertraging.

Als een applicatieprotocol van udp gebruikmaakt en toch wil dat gegevens gegarandeerd aankomen, moet dat protocol zelf een methode daarvoor implementeren. In feite herimplementeert het zo een deel van de functionaliteit van tcp.

Zo werkt QUIC

Wat als je nu op het web tcp inruilt voor udp? Dan zouden de verbindingen al heel wat sneller opgezet worden. En dat is wat Google heeft gedaan: met het protocol QUIC (Quick Udp Internet Connections) neemt het opstarten van een verbinding én het afspreken van tls-parameters samen slechts één of twee pakketjes in. Het resultaat? Je kunt veel sneller een webpagina downloaden.

QUIC draait in de internetprotocolsuite dus boven udp, maar vervangt ook tls. Bovendien vervangt het nieuwe protocol een deel van http/2. Het hele verbindingsbeheer implementeert QUIC immers, en een stuk efficiënter dan het klassieke http. Wat overblijft van http/2 wordt in een http/2-api gestoken, die gebruikmaakt van QUIC.

©PXimport

Waarom udp?

Recentelijk zijn er allerlei inspanningen geleverd om het web te versnellen. In http/2 (zie kader) gebeurt dat bijvoorbeeld met multiplexing: als je een webpagina bezoekt, verlopen alle verbindingen tussen je browser en de webserver over één tcp-verbinding. Dus je browser hoeft niet meer voor elke afbeelding, css-bestand of javascript-bestand een nieuwe tcp-verbinding op te zetten met de bijbehorende vertraging.

Als alles goed gaat, werkt http/2 sneller dan zijn voorganger http/1.1. Maar omdat elk bezoek aan een webserver nu over één tcp-verbinding verloopt, vormt die verbinding een bottleneck. Tcp verwerkt immers alle pakketjes in dezelfde volgorde als ze verzonden zijn. Als de verzending van een pakketje mislukt, verstuurt de zender het pakketje opnieuw.

Udp is een 'onbetrouwbaar' protocol

De ontvanger wacht met het verwerken van de andere pakketjes tot het verloren pakketje arriveert. En hoe meer bestanden je over één tcp-verbinding downloadt, hoe groter de kans dat er ergens wel eens een pakketje verloren raakt en de verbinding dus tijdelijk blokkeert. Kortom: in goede omstandigheden is http/2 sneller dan http/1.1, maar in slechte omstandigheden trager.

Udp heeft dat probleem niet, omdat het een ‘onbetrouwbaar’ protocol is: het garandeert niet dat alle pakketjes aankomen. Als je QUIC boven udp gebruikt, legt een verloren pakketje dus niet de hele verbinding lam, maar heeft het alleen impact op het bestand waartoe het pakketje behoort.

Betrouwbaarheid QUIC

QUIC heeft dus de voordelen van http/2 zonder de bottleneck die tcp bij multiplexing introduceert. Maar geven we door het gebruik van udp nu niet te veel op? Je bent immers niet zeker of je gegevens correct worden overgedragen.

Dat klopt, en daarom implementeert QUIC zelf zijn eigen methode om te garanderen dat gegevens aankomen: forward error correction. Het is te vergelijken met raid5 voor opslag, maar dan voor netwerkpakketjes. Elk verzonden pakketje krijgt dus wat gegevens van andere pakketjes mee. Raakt er een pakketje verloren, dan kan QUIC de inhoud reconstrueren op basis van de andere pakketjes die wel zijn gearriveerd. Zo hoeft het pakketje niet opnieuw verzonden te worden.

De overhead van forward error correction is ongeveer 10 procent. Dat betekent dat QUIC voor elke 10 pakketjes die het verzendt, voldoende informatie meezendt om één verloren pakketje te reconstrueren. Dat lijkt inefficiënt, want je moet 10 procent extra pakketjes verzenden, wat ook extra tijd vraagt. Maar toch is dat nog altijd veel sneller dan verloren pakketjes opnieuw moeten sturen en wachten tot alle pakketjes binnen zijn.

QUIC is versleuteld

Een ander interessant aspect van QUIC is dat de verbinding altijd is versleuteld. QUIC herimplementeert immers de functionaliteit van tls. Zo implementeert het perfect forward secrecy (pfs). Dankzij die eigenschap is je eerdere communicatie nog altijd veilig als er een sessiesleutel uit een QUIC-verbinding wordt gecompromitteerd. Dat wil zeggen: uit een sessiesleutel kun je nooit de voorgaande sleutels afleiden.

QUIC beschermt ook tegen ip-spoofing

QUIC beschermt ook tegen ip spoofing, het vervalsen van het ip-adres van de zender. Daarvoor reikt de server aan de client een ‘source address token’ uit. De server versleutelt het ip-adres van de client en een timestamp van de server en bezorgt de client dat token. De server zendt dat token alleen aan het ip-adres dat in dat token zit. De server gaat ervan uit dat wie het token ontvangt, eigenaar is van het bijbehorende ip-adres. Op elk moment kan de server aan de client vragen om het token te sturen om te bewijzen dat het ip-adres van hem is.

De cryptografie in QUIC is overigens slechts een tussenoplossing. De ontwikkelaars hadden functionaliteit nodig die momenteel niet in tls aanwezig is. Op termijn zal de cryptografie worden vervangen door tls 1.3, waarin de benodigde zaken worden geïmplementeerd.

Goed, zo werkt QUIC dus. Het leuke is dat je er zelf al van kunt profiteren, althans als je de Chrome-browser gebruikt. Lees verder: QUIC inschakelen in Chrome om sneller te browsen. Ook nadelen komen aan bod.

▼ Volgende artikel
In een half uur klaar: gourmetstel schoonmaken stap voor stap
© sara_winter - stock.adobe.com
Huis

In een half uur klaar: gourmetstel schoonmaken stap voor stap

Gezellig, zo'n avondje gourmetten. Maar na afloop blijft er op het gourmetstel vaak aangebakken vet, gesmolten kaas en saus achter. Logisch dat je niet meteen zin hebt om de boel schoon te maken. Als je het slim aanpakt, is alles binnen een half uurtje weer schoon!

In dit artikel

Je leest hoe je je gourmetstel stap voor stap schoonmaakt zonder de antiaanbaklaag te beschadigen. We leggen uit wanneer je het beste begint met schoonmaken, hoe je losse onderdelen en het elektrische deel veilig reinigt en welke fouten je beter niet kunt maken. Ook krijg je praktische tips om je tafel tijdens en na het gourmetten schoon te houden, zodat je na afloop snel klaar bent.

Lees ook: Gourmetten zonder stank: 10 ideeën die écht werken

Laten afkoelen, maar wacht niet te lang

Zet het gourmetstel na gebruik uit en trek de stekker uit het stopcontact. Laat het geheel afkoelen tot het handwarm is. Wacht je te lang, dan koeken vet en kaas vast en wordt schoonmaken lastiger. Haal losse onderdelen zoals pannetjes, spatels en bakplaatjes eraf voordat je begint met schoonmaken.

Losse onderdelen schoonmaken

Gourmetpannetjes en bakplaatjes hebben meestal een antiaanbaklaag. Die blijft het mooist als je ze niet hardhandig schoon schrobt. Leg ze in warm water met een beetje afwasmiddel en laat ze tien tot vijftien minuten weken. Aangekoekte resten laten dan vanzelf los. Gebruik daarna een zachte spons of borstel en spoel alles goed af. Controleer altijd even de handleiding: sommige onderdelen kun je in de vaatwasser doen, andere juist niet.

©Saskia van Weert

Zo maak je het elektrische deel veilig schoon

Terwijl de pannetjes, spatels en losse bakplaatjes staan te weken, ga je door met het verwarmingselement. Dat element zelf mag nooit nat worden. Zie je vetspetters of etensresten, veeg die dan weg met keukenpapier zodra het gourmetstel is afgekoeld. Voor hardnekkiger vuil gebruik je een licht vochtige doek met een klein beetje afwasmiddel. Knijp de doek goed uit en zorg dat er geen water bij het snoer of in openingen komt. Droog alles direct na met een schone doek.

De bak- of grillplaat weer vetvrij krijgen

Heeft je gourmetstel een losse bak- of grillplaat, haal dan eerst het overtollige vet weg met keukenpapier. Leg de plaat vervolgens in warm water, zodat aangekoekte resten kunnen losweken. Is de bakplaat vast onderdeel van het gourmetstel, dan kun je deze uiteraard niet in water onderdompelen. Neem in dat geval de plaat af met een licht vochtige doek zodra hij is afgekoeld, eventueel met een beetje afwasmiddel. Zo voorkom je dat vet tijdens het schoonmaken uitsmeert. Gebruik vooral geen schuursponsjes of schrapers om het vet weg te krijgen, want die beschadigen de coating en zorgen ervoor dat eten de volgende keer sneller blijft plakken. 

Watch on YouTube

Veelgemaakte fouten bij het schoonmaken van een gourmetstel

Aangekoekte resten wegkrabben met een mesje of staalwol lijkt misschien slim (want: snel), maar beschadigt de antiaanbaklaag blijvend. Ook bij het elektrische deel gaat het vaak mis. Het verwarmingselement onderdompelen in water is onveilig en kan het gourmetstel onbruikbaar maken. Alles direct in de vaatwasser zetten is ook geen goed idee. Vaatwasprogramma's duren vaak lang en werken op hoge temperaturen. Antiaanbaklagen en dunne metalen onderdelen kunnen daardoor sneller slijten of kromtrekken. Twijfel je, dan is met de hand afwassen altijd de veiligste keuze.

Vergeet je tafel niet!

Vetspetters en gemorste saus zijn bijna niet te voorkomen. Leg daarom vooraf een afwasbaar tafelkleed of gebruik een papieren tafelkleed. Dat kan na het gourmetten rechtstreeks de vuilnisbak in. Houd tijdens het eten keukenpapier of doekjes bij de hand om gemorste resten meteen weg te vegen. Is de tafel toch vies geworden, neem hem dan zo snel mogelijk af met warm water en een mild schoonmaakmiddel.

Schoon wegzetten voor de volgende keer

Laat alle onderdelen volledig drogen voordat je het gourmetstel opbergt. Berg je alles nog vochtig op in de doos of kast, dan kunnen er snel muffe geurtjes ontstaan. Bewaar pannetjes en platen apart van elkaar, eventueel met een vel keukenpapier ertussen. Berg pannetjes en platen apart op, eventueel met een velletje keukenpapier ertussen. Zo voorkom je krassen. Zo is het volgende keer alleen nog maar een kwestie van de boel weer tevoorschijn halen en lekker gaan eten. Veel gourmetplezier!

▼ Volgende artikel
Wat is HDR10+ en wanneer zie je het verschil?
© ER | ID.nl
Huis

Wat is HDR10+ en wanneer zie je het verschil?

Ben je op zoek naar een nieuwe televisie? Grote kans dat de afkortingen je om de oren vliegen. 4K, OLED, QLED... en dan ook nog die eindeloze lijst aan HDR-formaten. Vandaag zoomen we in op een specifieke term die je vaak op de doos ziet staan, vooral bij televisies van Samsung, Panasonic en Philips: HDR10+. Is het een marketingkreet of zie je het echt?

Het is een bekend scenario: je staat in de elektronicawinkel of scrolt door een webshop, en de specificatielijst van je droomtelevisie lijkt wel een geheimtaal. Fabrikanten beloven gouden bergen met termen die indrukwekkend klinken, maar waarvan de betekenis vaak vaag blijft. Toch is het zonde om deze termen zomaar te negeren, want achter die cryptische afkortingen gaan technieken schuil die je filmavond aanzienlijk kunnen upgraden. Het gaat tegenwoordig namelijk niet meer alleen om hoeveel pixels je scherm heeft, maar vooral om de kwaliteit van die pixels. Om te begrijpen waarom die plus in de naam HDR10+ zo belangrijk is, moeten we terug naar de basis.

Eerst even terug: Wat is HDR ook alweer?

HDR staat voor High Dynamic Range. Simpel gezegd zorgt deze techniek ervoor dat de beelden op je tv een groter contrast en meer kleuren hebben. Het zwart is dieper zwart en de felle lichten, zoals een explosie of de zon, knállen echt van je scherm zonder dat de rest van het beeld flets wordt. De standaardvorm hiervan heet HDR10. Dit is de basislaag die bijna elke moderne 4K-televisie ondersteunt. Maar HDR10 heeft één beperking: hij bepaalt aan het begin van de film de instellingen voor helderheid en contrast, en houdt die vervolgens de hele film vast.

©ER | ID.nl

De plus maakt het dynamisch

Hier komt HDR10+ om de hoek kijken. Die plus staat eigenlijk voor dynamische metadata. In plaats van één instelling voor de hele film, stuurt HDR10+ extra informatie mee naar je tv. Hierdoor kan de televisie het beeld scène voor scène of zelfs frame voor frame aanpassen. Zie het als een lichttechnicus die continu aan de knoppen draait om te zorgen dat elk specifiek shot er perfect uitziet, in plaats van dat hij het licht aan het begin instelt en daarna rustig koffie gaat drinken.

Wanneer zie je het verschil echt?

Klinkt goed op papier, maar merk je dit in de praktijk? Het antwoord is ja, vooral in films met veel wisselingen tussen licht en donker. Stel, je kijkt een film die begint met een scène in een zonovergoten woestijn, gevolgd door een scène in een pikdonkere grot. Bij standaard HDR10 stelt de tv zich in op het gemiddelde van de hele film. Omdat die woestijn zo fel is, kan de grot-scène er daarna wat te donker of dichtgelopen uitzien, waardoor details in de schaduw wegvallen.

Bij HDR10+ krijgt je tv, zodra de camera de grot in gaat, een seintje dat het donker wordt en het contrast moet worden aangepast. Hierdoor zie je opeens wél de details op de rotswanden en de texturen in de schaduw, terwijl de felle scènes nog steeds spathelder blijven. Kortom, HDR10+ haalt meer detail uit zowel de donkerste schaduwen als de felste hooglichten, precies op het moment dat het nodig is.

©Gorodenkoff - stock.adobe.com

Wat heb je nodig?

Om van HDR10+ te genieten, moeten alle schakels in de ketting kloppen. Allereerst heb je een geschikte televisie nodig. Vooral Samsung is de grote aanjager van HDR10+, maar ook merken als Panasonic, Philips en TCL ondersteunen het vaak. Let er wel op dat LG en Sony meestal kiezen voor de concurrent Dolby Vision.

Daarnaast moet de content (de film of serie die je kijkt) in HDR10+ geschoten zijn. Amazon Prime Video is de grootste aanbieder van HDR10+-materiaal op streaming-gebied, maar ook Apple TV+ en Google Play Movies bieden het aan. Netflix gebruikt helaas voornamelijk concurrent Dolby Vision. Tot slot ondersteunen veel 4K Ultra-HD Blu-rays het formaat ook als je liever fysieke schijfjes kijkt.

Direct aanschaffen dan maar...?

Is HDR10+ een reden om je huidige tv direct bij het grofvuil te zetten? Nee, dat niet. Maar sta je op het punt een nieuwe tv te kopen, bijvoorbeeld een Samsung, dan is het wel een hele fijne bonus. Het zorgt ervoor dat je films en series ziet zoals de regisseur ze bedoeld heeft: levendig, contrastrijk en vol detail. En ze hoeven tegenwoordig al helemaal niet meer de wereld te kosten.