Een nieuwe onderzoeksinfrastructuur om de veiligheid en robuustheid van .nl en het internet te vergroten

De basis voor het toegepaste onderzoek van SIDN Labs

De komende maanden gaan we de onderzoeksinfrastructuur van SIDN Labs herinrichten en verhuizen van Arnhem naar het datacenter van onderzoeksinstituut Nikhef in Amsterdam. Deze infrastructuur is ons belangrijkste instrument om via onderzoek bij te dragen aan het vergroten van de veiligheid en robuustheid van .nl en het internet in Nederland en daarbuiten. We leggen hier alvast uit hoe het nieuwe ontwerp eruitziet zodat andere onderzoeksteams er ook van kunnen profiteren.

Het vertrekpunt: onze oude onderzoeksinfrastructuur

Sinds de begindagen van SIDN Labs voeren we ons onderzoek uit op een aparte on-premisesinfrastructuur. De 3 belangrijkste onderdelen daarvan zijn:

  • Dataplatform: 14 servers waarmee we zo’n 500 terabyte aan internetmetingen opslaan en analyseren, zoals DNS-data van de .nl-nameservers en een beperkte subset van de data uit het Domeinregistratiesysteem (DRS) voor .nl. Hiermee ontwikkelden we bijvoorbeeld richtlijnen voor het runnen van de autoritatieve DNS-services voor .nl en andere DNS-operators. Het platform gebruikt Hadoop.

  • Netwerkproeftuin: een netwerk waarmee we experimenteren met nieuwe technologieën die de security en stabiliteit van internetkernsystemen vergroten of dat op een fundamenteel andere manier aanpakken. Het bestaat bijvoorbeeld uit BGPsec-routers en routers voor een op SCION gebaseerd internet.

  • VM-platform: een standaard systeem voor het managen van virtuele machines (VMs). Hiermee ontwikkelen en evalueren we onze prototypes, bijvoorbeeld om data te visualiseren of om apparatuur in de netwerkproeftuin aan te sturen.

Onze onderzoeksinfrastructuur bevindt zich om veiligheidsredenen in een apart deel van het SIDN-netwerk. Het dataplatform en de netwerkproeftuin beheren we zelf, andere SIDN-collega’s beheren het VM-platform en de verbindingen tussen de 3 onderdelen.

Waarom onze onderzoeksinfrastructuur aanpassen?

De belangrijkste reden dat we onze onderzoeksinfrastructuur aanpassen, is dat deze verouderd is. Zo stammen de servers van ons dataplatform uit 2020 en anderen zelfs uit 2017. Dit omdat we vanuit duurzaamheidsoogpunt regelmatig apparatuur hergebruiken uit SIDN’s productienetwerk. Dat minimaliseert onze investeringen, maar we moeten wel zelf kapotte onderdelen vervangen omdat we geen support meer hebben. Daarnaast zien we dat nieuwe technieken zoals Trino en S3 de defacto-standaard worden in plaats van Hadoop. Daarom willen we ook onze data-analyse toolstack moderniseren.

Ten tweede willen we de onderzoeksinfrastructuur nog strakker scheiden van het SIDN-netwerk. Zo verlagen we verder de kans dat het toch onverhoopt de integriteit, vertrouwelijkheid of de beschikbaarheid van de SIDN-dienstverlening zou beïnvloeden.

Tot slot past onze huidige infrastructuur niet goed bij onze onderzoeksagenda voor BGP-security. Zo koppelt deze niet via een directe link aan een groot internationaal internetknooppunt, waardoor we bijvoorbeeld lastiger ervaring op kunnen doen met BGP en we geen eigen real-time stroom aan BGP-verkeer tot onze beschikking hebben.

Waar moet de nieuwe onderzoeksinfrastructuur aan voldoen?

Tabel 1 toont de 7 belangrijkste eisen die we hebben opgesteld voor onze nieuwe onderzoeksinfrastructuur, in willekeurige volgorde. Ze verschillen van die van SIDN’s productiesystemen zoals het registratiesysteem van .nl, omdat de onderzoeksinfrastructuur onder andere geen hoge beschikbaarheid nodig heeft, maar wel veel meer data verwerkt.

Tabel 1. Topleveleisen voor het nieuwe onderzoeksinfrastructuur.

Eis

Categorie

De onderzoeksinfrastructuur…

E1

Security

beschermt de integriteit en vertrouwelijkheid van het dataplatform, omdat we daarop .nl-data uit SIDN’s productiesystemen verwerken voor ons onderzoek. SIDN Labs draait zelf echter geen .nl-productiediensten, dus enige downtime is acceptabel.

E2

Kennisborging

helpt ons SIDN-breed nieuwe technische expertise te borgen om de security van .nl en het internet in Nederland en daarbuiten te verhogen, bijvoorbeeld over DNS-management en data-analyse.

E3

Principes

draagt bij aan een decentraal internet en het versterken van de digitale autonomie van Nederland en Europa, hoe klein ook met de beperkte omvang van onze onderzoeksinfrastructuur.

E4

Performance

maakt interactieve en complexe data-analyses mogelijk over al onze datasets zodat we onderzoeksprojecten efficiënt kunnen uitvoeren en gemakkelijk kunnen experimenteren.

E5

Aanpasbaar

is gemakkelijk aanpasbaar voor specifieke onderzoeken en stelt ons in staat configuraties en tools gemakkelijk te delen binnen SIDN en met de internetgemeenschap en onderzoekpartners.

E6

Beheer

verlaagt de beheerslast voor de onderzoekers van SIDN Labs, zoals het updaten van services en systemen en het analyseren van systeemfouten.

E7

Kosten

heeft een voorspelbaar kostenmodel, zodat onderzoekers vrij kunnen experimenteren zonder zich beperkt te voelen door onbekende kosten van verkeer, opslag en rekenkracht van bijvoorbeeld nieuwe data-analysemethodes.

Aanpak: eigen apparatuur bij Nikhef in Amsterdam

De kern van onze aanpak is dat we onze nieuwe onderzoeksinfrastructuur net als nu zelf beheren, maar onderbrengen in het datacenter van onderzoeksinstituut Nikhef in Amsterdam en zoveel mogelijk inrichten met Europese apparatuur en opensourcesoftware. We leggen hier kort uit hoe we daarmee voldoen aan de eisen uit tabel 1.

Ten eerste zijn we met eigen appratuur en opensourcesoftware maximaal aanpasbaar (eis E5). Ook bouwen we kennis op over technieken zoals Kubernetes en het operationeel beheer van de infrastructuur (eis E2) en leveren we een kleine bijdrage aan een decentraal internet en de digitale autonomie van Nederland en Europa (eis E3).

Daarnaast maken we snelle interactieve data-analyses mogelijk (eis E4), omdat compute en data in hetzelfde datacentrum staan. Een alternatieve opzet is dataopslag als een service af te nemen via een snelle glasvezelverbinding, maar dat zou de complexiteit van de infrastructuur en onze hoeveelheid beheerwerk verhogen. Bij Nikhef hebben we daarnaast direct toegang tot een realtimestroom aan BGP-data via directe koppelingen met internetknooppunten zoals AMS-IX en NLix.

Een alternatief is het hele dataplatform (compute en opslag) bij een publieke cloudprovider onder te brengen. Het nadeel hiervan is dat Europese partijen nog onvoldoende volwassen gemanagede versies van tools zoals Apache Spark en Trino bieden, die we nodig hebben voor complexe data-analyses (E4). Hyperscalers uit de VS hebben die wel, maar dan zouden we niet bijdragen aan een decentraal internet en digitale autonomie (E3). Een publieke cloud zou wel onze beheerslast verlagen, maar zou een ‘reserved instance’ vereisen om onze kosten in de hand te houden (E7). Die kunnen we echter niet afnemen bij een provider die ook aan eisen E3 en E4 voldoet.

Een nadeel van onze aanpak is dat we beperkt redundant zijn (E1). Onze infrastructuur zou bijvoorbeeld onbeschikbaar kunnen raken bij een langdurige (stroom)storing in de regio Amsterdam. Dit risico accepteren we, omdat we geen .nl-productiesystemen draaien. Daarnaast biedt Nikhef standaard faciliteiten voor datacentercontinuïteit zoals een noodstroomvoorziening met dieselgenerator. Integriteit en vertrouwelijkheid beschermen we door standaardmaatregelen en de ISO27001-certificering van SIDN.

Een ander nadeel is dat we met een eigen infrastructuur onze beheerslast niet verlagen (eis E6). 3 collega’s van SIDN’s operationele teams draaien daarom sinds kort voor gezamenlijk 1 FTE mee in het Labs-team om de onderzoeksinfrastructuur mee op te zetten en te beheren en SIDN-breed kennisdeling te bevorderen (E2).

Tot slot brengt onze aanpak extra kosten met zich mee door de extra FTE en de afschrijvingskosten van een significante hardware-investering. De jaarlijkse kosten zijn daarmee wel voorspelbaar (E7) en over 5 jaar gerekend zijn ze vergelijkbaar of zelfs lager dan met een publiccloudprovider, als die aan onze eisen zou hebben voldaan.

Ons nieuwe technisch ontwerp

Figuur 1 geeft een overzicht van het ontwerp van onze nieuwe infrastructuur, dat we hebben verdeeld over 2 racks (A en B) bij Nikhef. We bespreken het hieronder kort.

Figuur 1. Ontwerp van onze nieuwe onderzoeksinfrastructuur.

Dataplatform op basis van Kubernetes

Voor het nieuwe dataplatform gebruiken we Kubernetes, dat net als alle andere tools van het dataplatform opensource is. Opensource Kubernetes gebruiken we ook voor het nieuwe registratiesysteem voor .nl, waarmee we deze kennis SIDN-breed kunnen delen.

Op Kubernetes draaien we tools zoals Apache Spark en Trino voor complexe data-analyses, bijvoorbeeld om DNS-query’s en DMAP-data te combineren. Een andere toepassing is ENTRADA, ons systeem voor de opslag en analyseren van grote hoeveelheden DNS-query’s van de DNS-servers van .nl.

Het dataplatform draait op een cluster van 12 servers, waarop we ook onze onderzoekdata opslaan, zoals DNS-query’s, DMAP-data en een beperkte subset van DRS-data. Hiervoor gebruiken we MinIO S3 als opslagtechnologie, dat veel wordt gebruikt voor data-analyse, bijvoorbeeld in de onderzoekscommunity.

VM-platform op basis van Proxmox

Ons nieuwe VM-platform bestaat uit 4 servers die gebruik maken van Proxmox, een opensource virtualisatieplatform. We nemen hier vrijwillig een supportcontract voor af, zodat we ook de doorontwikkeling van Proxmox ondersteunen.

Netwerkproeftuin uitgebreid met nieuwe timeserver

We voegen een nieuwe stratum-1 NTP-server toe aan onze netwerkproeftuin. De server gebruiken we voor ons NTP-onderzoek en is onderdeel van onze publieke tijdservice, TimeNL. De nieuwe server krijgt zijn tijdsignaal van VSL, dat de officiële Nederlandse tijd levert op basis van Cesium-atoomklokken.

De rest van onze netwerkproeftuin verhuizen we nagenoeg 1-op-1 vanuit de oude situatie.

Backbone van Europese netwerkapparatuur

De backbone van onze infrastructuur bestaat uit routers, firewalls en switches die het dataplatform, het VM-platform en de netwerkproeftuin met elkaar en met het internet verbindt. De backbone-apparatuur is van Europese makelij. Als upstreams naar het internet gebruiken we SURF en NLix.

Securitymaatregelen

De backbone hebben we dubbel uitgevoerd (network A en B in Figuur 1), zodat we bij de hele infrastructuur kunnen komen, mocht 1 van onze 2 upstreams uitvallen. Voor backups gaan we gebruik maken van de off-site S3-dienst van een Nederlandse aanbieder.

De integriteit en vertrouwelijkheid van onze infrastructuur beschermen we door standaardmaatregelen zoals 2FA en rolgebaseerde toegang voor SIDN Labs-onderzoekers. De maatregelen toetsen we via de ISO27001-certificering van SIDN.

We horen graag jullie feedback!

Het herontwerpen van onze onderzoeksinfrastructuur was een hele klus. Neem gerust contact op als je meer wilt weten, want we hebben lang niet alles kunnen vertellen.