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
🍕 Effe wachten… Met deze oven staat er in tweeënhalve minuut een verse pizza op tafel!
© sonyakamoz - stock.adobe.com
Huis

🍕 Effe wachten… Met deze oven staat er in tweeënhalve minuut een verse pizza op tafel!

Niks zo lekker als een verse pizza. Jammer alleen dat het altijd zo lang duurt voordat-ie klaar is. Dat probleem is nu opgelost: AEG komt met een inbouw combi-stoomoven die een speciale pizzastand heeft. Pizza erin en 2,5 minuut* later is het genieten geblazen. Mangiare!

*Om het even in perspectief te zetten: 2,5 minuut, dat is net lang genoeg om de vaatwasser uit te ruimen, je tanden goed te poetsen of één gemiddelde track op Spotify te beluisteren. Helemaal niks dus.

View post on Instagram
 

In een gewone oven duurt het bakken van een verse pizza al gauw 10 tot 12 minuten. De AEG TX7PB62FSB is dus echt supersnel. Dat komt omdat er een speciale pizzastand op zit met een indrukwekkende maximale temperatuur van 340°C. Dankzij deze enorme hitte bak je in slechts 150 seconden een pizza met een perfecte, luchtige en krokante korst. Het is dan ook niet voor niets dat deze oven officieel is goedgekeurd door de Scuola Italiana Pizzaioli, de Italiaanse Pizza Academy.

En het mooie is: ook wie geen principe della cucina (inderdaad, keukenprins) is maakt hiermee de lekkerste pizza's. Het EXCite Touch Display fungeert als je persoonlijke assistent in de keuken. Het scherm vertelt je exact wanneer je de pizza in de oven moet schuiven en wanneer hij er weer uit mag. Voor de voorbereiding kun je rekenen op de AEG-app, die je helpt bij het kneden van authentiek Napolitaans deeg, het bereiden van de perfecte tomatensaus én de nodige inspiratie biedt. Bovendien krijg je er een speciale bakplaat en pizzaschep bij. Succes gegarandeerd dus.

©AEG

Na afloop van een legendarische pizza-avond hoef je niet op te zien tegen het schoonmaken. De pyrolytische zelfreinigingsfunctie brandt vet en resten op hoge temperatuur weg tot as, waardoor je alleen nog maar een vochtig doekje over de binnenkant van de oven hoeft te halen.

Behalve voor die legendarische pizza-avonden is deze ruime oven van 72 liter ook handig voor allerlei andere gerechten. Je wisselt makkelijk tussen de broodbakfunctie met deegrijsfunctie en technieken zoals garen op lage temperatuur of het dehydrateren van fruit en kruiden. Wil je een ovenschotel gratineren, een quichebodem krokant krijgen met alleen onderwarmte of snel iets ontdooien, dan kies je simpelweg de stand die daarbij past. Zelfs aan de details is gedacht, met functies voor het voorverwarmen van borden, het warmhouden van maaltijden en een slimme stand voor inmaken.

Hebben? Effe wachten… effe wachten… zoals het er nu naar uitziet is de AEG TX7PB62FSB vanaf maart bij alle bekende aanbieders verkrijgbaar.

Bekijk alle inbouwovens van AEG op Kieskeurig.nl

▼ Volgende artikel
Gerucht: Resident Evil: Code Veronica-remake verschijnt volgend jaar
Huis

Gerucht: Resident Evil: Code Veronica-remake verschijnt volgend jaar

Het ziet er naar uit dat een remake van Resident Evil: Code Veronica ergens in de eerste helft van 2027 uitkomt.

Er gaan al geruime tijd geruchten over een remake van Resident Evil: Code Veronica. Resident Evil-insider Dusk Golem meldt al geruime tijd dat Capcom aan een remake van de game werkt, alsmede een remake van Resident Evil 0.

Nu heeft de betrouwbare insider NateTheHate zich ook uitgesproken over de remake. Hij claimt ook dat de remake ergens in de eerste helft van 2027 verschijnt. Het is dan ook waarschijnlijk dat de game ergens dit jaar wordt aangekondigd.

De meest recente remake van een Resident Evil-game is de remake van Resident Evil 4. Die game werd zeer goed ontvangen. Hoewel veel fans vermoedden dat de volgende remake die van Resident Evil 5 zou betreffen, lijkt het er op dat mensen hier voorlopig nog op moeten wachten, omdat Code Veronica - en mogelijk ook Resident Evil 0 - eerst aan de beurt zijn.

View post on X

Over Resident Evil: Code Veronica

Resident Evil: Code Veronica kwam in 2000 uit op Sega's laatste console, de Dreamcast, en later ook naar andere platforms. De game speelt zich ongeveer drie maanden na de gebeurtenissen uit Resident Evil 2 en 3 af. In het spel proberen Claire Redfield en haar broer Chris een uitbraak van het zombievirus op een afgelegen eiland en een onderzoeksfaciliteit in Antarctica te overleven.

De oorspronkelijke game bevatte de traditionele, ietwat ouderwetse besturing van de eerdere Resident Evil-delen voordat Resident Evil 4 een modernere besturing introduceerde. Wel werden de voorgerenderde achtergronden uit eerdere delen vervangen voor 3D-omgevingen en een dynamische camera.

Nog meer Resident Evil

Hoewel de Resident Evil-reeks in de jaren negentig ontstond, blijft de gamefranchise erg relevant, mede dankzij de remakes en nieuwe delen. Op 27 februari verschijnt het negende hoofddeel in de serie, genaamd Resident Evil: Requiem.

In Requiem besturen spelers twee personages: Grace Ashcroft en Leon S. Kennedy. Beide personages bieden een verschillende speelstijl. De segmenten met Leon - onder andere bekend uit Resident Evil 2 en Resident Evil 4 - zijn erg op actievolle schietgevechten gericht. Leon kan daarnaast ook de kelen van vijanden doorsnijden. Hij heeft ook een bijl waarmee hij aanvallen kan afweren. Grace's segmenten zijn juist erg gericht op spanning en horror en draaien vooral om het vermijden van intense gevechten.

Onlangs werden er nog nieuwe beelden van de game getoond, die hier zijn te bekijken. Resident Evil Requiem verschijnt op 27 februari (pre-orderen kan nu al) voor PlayStation 5Xbox Series X en S, Nintendo Switch 2 en pc. Op 27 februari zullen ook Resident Evil 7 en Resident Evil Village (het achtste deel) op Nintendo Switch 2 uitkomen.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.