Kickstarter: Roadmap


Het kickstarter programma begon in 1999. Sindsdien is er heel veel gebeurd op zowel hardware als software gebied. Middels de roadmap proberen we u een kijk te geven op de ontwikkelingen die gaande zijn rond het kickstarter prototype.

Voorwoord

Kickstarter is onze poging om een antwoord te vinden op de vraag, hoe de ideale netwerkcomputer voor kleine netwerken en groepen (bijv. gezin en MKB) eruit moet zien.

In het ideaal beeld hebben we gezocht naar een alles-kunner die makkelijk te veranderen is tijdens het gebruik, draaiend met zo goedkoop mogelijke Unix software/hardware zonder teveel aan prestaties in te moeten boeten.

De huidige stand van zaken

Een eenvoudig Kickstarter-netwerk

Gebruikmakend van virtualisatie-technieken (Xen 3.x) en logical volume-manager (LVM2) is release_04.xxx onze eerste 'LAN-in-a-box' kickstarter. Deze kickstarter kan ook als WAP figureren. Het energie-verbruik ligt rond de 45 Watt voor het huidige P4 systeem dat met behulp van Debian is opgebouwd.

Vooruitblik

De vernieuwingen aan processoren, chipsets en andere hardware zorgen voor veel problemen in de diverse software distributies. We hebben hier veel ervaring in op gedaan en verbinden hier voor kickstarter onze eigen conclusies aan.

We beschouwen het huidige P4 systeem als een end-of-line produkt binnen de I386-architectuur. Alleen minder energie-verbruik en geluidsproduktie hebben we nog op onze verlanglijst staan.

In onze visie wordt een architectuur gekenmerkt door het gebruikte operating system (unix:gnu/linux), het gebruikte netwerk(model:tcp/ip), de compiler(tools:gnu) en de datacodering (uchar of wchar). Een 32 bits architectuur vinden we in de meeste gevallen eigenlijk wel voldoende. Een uitzondering zien we bij virtualisatie (VMM) en grote adresruimte (PAE) toepassingen, die profiteren van de nieuwere 64bit processoren.
De kickstarter VMM zien we het liefst op een (64bits) x86_64-kernel draaien, omdat dit HVM mogelijk maakt, een techniek die virtualisatie met ongemodificeerde kernels mogelijk maakt. De virtuele servers zien we echter liever op een x86_32-kernel draaien.

XEN is door de problemen die in Release_04.008 aan het licht kwamen bij ons uit de gratie geraakt. Daarnaast dient u zich te bedenken dat er sinds kort voor x86_64 kickstarter een beter alternatief is in de vorm van KVM + QEMU.
De komende tijd willen we daarom eerst een VMM bootstrappen (zie methode LFS) en vervolgens een nieuwe virtuele server (de scratchbox) die we als ontwikkelsysteem in gaan zetten voor de virtuele servers.
Eerst moeten we echter onderzoeken wat de impact hiervan is op het prototype en het ontwerp van kickstarter.

Journaal

Het Kickstarter prototype wordt voortdurend herzien. De voorbije releases brengen dit proces in beeld.

Release_04.008

Een upgrade naar debian 5.0. Een geplande hardware upgrade naar AMD64 bleek niet mogelijk. Debian heeft (voor AMD64) nog even tijd nodig, maar uiteindelijk zal dit verwachten wij, wel lukken.
In de tussentijd gaan we verder met de ontwikkeling van een AMD64-systeem rechtstreeks vanaf source. Met (het inmiddels ietwat gedateerde) LFS 6.3 is inmiddels een zeer snel startende 64bit scratchbox opgezet op basis van een linux-2.6.30.4 kernel. Voor Xen 3.4.0 moeten we echter nog terugvallen op een linux-2.6.18.8 kernel, vanwege problemen met ons moederbord. Helaas zien we nu een soortgelijk probleem op ons P4 prototype.
Dat Xen 4.0.1 zowel een 2.6.18 als een 2.6.32 dom0 kernel (de hypervisor) packaged is voor een software engineer veelzeggend: Xen worstelt met acceptatie van haar pvops framework voor de linux 2.6.32 kernel en patched in de tussentijd t.o.v. de 2.6.18 kernel, debian gebruikt op dit moment echter een 2.6.26 kernel en de laatste stabiele linuxkernel is nu 2.6.35.3
Om dit soort problemen het hoofd te kunnen bieden is het voor ons verstandiger om over te gaan op opbouwen vanaf source. De volgende release van het prototype zal naar verwachting ook op een andere VMM draaien.
Als VMM lijkt de QEMU/KVM combinatie veel geschikter voor kickstarter: KVM is toegelaten in de linux sourcetree sinds 2.6.20 en QEMU wordt momenteel gepatched om te kunnen profiteren van KVM.

Release_04.007

Teveel belangrijke uitbreidingen en verbeteringen van het prototype voor het control panel om hier te noemen. Het resultaat: een nog handiger en beter programmeerbaar bedieningspaneel.

Release_04.006

Source reorganisatie van de software voor het control panel.

Release_04.005

Het tweede prototype voor het control panel is inmiddels in gebruik genomen. Dit prototype willen we op de site gaan documenteren.

Release_04.004

Op het huidige prototype is inmiddels de orange-netwerkkaart vervangen door een draadloze netwerkkaart. We draaien daardoor met een tainted-kernel. Dit is maar voor tijdelijk, omdat de netwerkdrivers voor de draadloze kaart pas recentelijk aan de kernel source zijn toegevoegd.
Verdere wijzigingen in de netwerklaag worden niet verwacht. De gebruiker moet in het vervolg dus kiezen voor of een vastbedrade orange interface of een draadloze wap op green.

Release_04.003

Inmiddels is kickstarter uitgebreid met een wap voor WPA-PSK beveiligde lijnen. WPA-EPA vereist aanpassing aan de al bestaande PKI en wordt daarom tot de volgende PKI herziening uitgesteld.
De wap is via een transparent bridge op de green-zone aan te sluiten. De wireless interface komt dan in plaats van de orange interface. Gebruikers die echter de orange interface willen blijven gebruiken, kunnen de green interface vervangen door de wireless kaart.

In de huidige prototype opstelling wordt de kickstarter via een transparent bridge met het internet verbonden en is de dhcp-server op de modem uitgezet. Jammer genoeg is dit niet op elk modem in te stellen. We onderzoeken daarom een alternatief dat gebruik maakt van routing en proxy-arp op de red interface.

Proxy-arp op de green interface om de greenservers op de lokale zone van het modem te zetten is interessant voor gebruikers die gebruik willen maken van de wap op de modem. De dhcp-server op de ks1 moet in een dergelijk geval wel uitgezet worden dus mogelijk verliest u functionaliteit op de green zone (bijvoorbeeld: winsserver en bootserver, beperkt aantal firewall-rules op de modem).
Door de green interface te laten vervallen en proxy-arp op de red interface te leggen heeft een kickstarter nog maar een physieke interface nodig. Dit kost wel wat bandruimte naar de green-servers, maar dit zal juist voor draadloze (54Mb/s) netwerken niet merkbaar zijn.

Release_04.002

Het tweede prototype is inmiddels in gebruik. In onderzoek is of een ingebouwde WAP (met ieee-802.X authenticatie/ieee-802.11i ondersteuning) op de kickstarter is te realiseren. Deze uitbreiding wordt vooral ingegeven door de snelle opkomst van notebooks.

Release_04.001

In ontwikkeling is het Kickstarter Control Panel: een web-interface voor de bediening. Het eerste prototype draait inmiddels en is stabiel en operationeel.
De komende tijd wordt aan het tweede prototype gewerkt dat vooral meer overzicht moet gaan bieden. Aan enkele loose-ends in de configuratie wordt nog gewerkt.

Release_04.000

Inmiddels zijn we overgegaan op Debian-etch op alle servers. Voor het eerst was het voor ons mogelijk om alle systemen op te zetten, zonder vanaf source te hoeven compileren.
Onze ervaringen met Debian-etch gaven ons zoveel zelfvertrouwen dat we op een eigen firewall/router ontwerp zijn overgegaan en een aantal services hebben vervangen en/of uitgebreid (DNS/DHCP/HTTP).
We zitten momenteel weer helemaal in de zeventiger-jaren sfeer en brengen dit naar buiten in ons produkt. Overzicht en inzicht zijn de nieuwe leading targets geworden. Dit is natuurlijk ook in lijn met onze freespirit-missie.
Toepassing van Xen (para)virtualisatie betekent voor de gebruiker meerdere (virtuele) computers in een behuizing :-). Dit is onze eerste 'lan-in-a-box' Kickstarter.
Grappig is dat deze release veel lijkt op een IBM VM/370 en waarschijnlijk ook dezelfde problemen moet zien te overwinnen om te kunnen overleven. Hoe succesvol XEN uiteindelijk kan worden is in feite in handen van de CPU fabrikanten, die overigens wel met deze trend meegaan. XEN op een recente CPU kan (veel) meer dan op de door ons gebruikte Pentium III-500MHz. Misschien lukt het deze keer wel..
Onze eigen ervaringen met XEN leren ons dat XEN voor Kickstarter een enorme aanwinst is.

Release_03.000

De lan-server is nu plug and play en standaard uitgerust met twee netwerkinterfaces. Hierdoor is de lan-server op meerdere manieren inzetbaar geworden.
Het opzetten van een kickstarter netwerk is nu niet veel meer dan het (al dan niet live) inpluggen van wat netwerkkabels geworden (d.w.z. aan de server kant).
Een andere noviteit is dat de lan-server nu een DOSinterface biedt voor de beheerder. Ook wordt er nu een KDE desktop geboden; de lan-server draait nu onder PCLinuxOS 0.93.

Release_02.002

Op de webserver draaien nu http, smtp, imap en ftp services. PAM integratie betekent dat veel server-software vanaf source gecompileerd moest worden. Tenslotte is er een begin gemaakt met de opzet van PKI.
De webserver draait onder debian 3.1.

Release_02.001

Scheiding van firewall/router (ipcop) en lan-server (sol 17.00) met als voornaamste voordeel dat de security-updates minder impact hebben op de lan-server. De server van de klant hoeft hierdoor niet steeds bij elk security-alert bijgewerkt te worden. Dit geeft veel meer rust voor de beheerders van het netwerk en de systemen.

Ook de web-server functionaliteiten moeten in de toekomst draaien op een aparte server i.v.m. de talloze security-updates. De introductie van de web-server is uitgesteld tot release_02.002.

Release_01.001

Alles-in-een server gebaseerd op een main-stream distributie (debian).