Netflix heeft op de EuroBSD-conferentie uit de doeken gedaan welke systemen er worden gebruikt voor het aanbieden van videostreams. Nou is dat op zich niet zo bijzonder, maar de optimalisaties die het bedrijf heeft doorgevoerd om de doorvoer van 400 Gbit/s te behalen is wel iets dat de interesse wekt.
Ontwikkelaar Drew Gallatin heeft in een lezing laten weten dat de populaire streamingdienst gebruik maakt van servers die draaien op de AMD Epyc-7502P met 32 cores en 256 GB ddr4-3200 ram. Voor de netwerkverbinding worden twee Mellanox ConnectX-6 Dx gebruikt, die vier 100GbE-verbindingen bieden. De systemen draaien op FreeBSD. Door de geheugenbandbreedte komt de troughput normaal gesproken niet hoger dan 240 Gbit/s, maar de ontwikkelaar heeft de systemen geoptimaliseerd, waardoor de datasnelheden konden worden verhoogd naar 400 Gbit/s.
Gallatin heeft dat voor elkaar gekregen door de datatransport rechtstreeks te laten verlopen via de netwerkhardware via een tls-offload. De FreeBSD-kernel biedt deze mogelijkheid en zo wordt de cpu verlicht.
De eigenlijke TLS-sessie wordt nog steeds tot stand gebracht in de userspace, maar de gebruikte sleutels migreren dan uiteindelijk met behulp van de kernel naar de netwerkhardware, waar de codering plaatsvindt. Een omweg via de processor is niet meer nodig.
Het team heeft TLS-offloading met Intel-hardware nog niet kunnen testen. Daarnaast heeft het team al hardware-prototypes waarmee netwerkverbindingen tot 800 Gbit/s mogelijk zouden kunnen zijn, maar die zijn nog niet getest.
Een slide uit de presentatie van Netflix-ontwikkelaar, Drew Gallatin
Bron: FreeBSD (PDF)