Ordinateur
Un ordinateur est un système de traitement de l'information programmable tel que défini par Alan Turing et qui fonctionne par la lecture séquentielle d'un ensemble d'instructions, organisées en programmes, qui lui font exécuter des opérations logiques et arithmétiques. Sa structure physique actuelle fait que toutes les opérations reposent sur la logique binaire et sur des nombres formés à partir de chiffres binaires. Dès sa mise sous tension, un ordinateur exécute, l'une après l'autre, des instructions qui lui font lire, manipuler, puis réécrire un ensemble de données déterminées par une mémoire morte d'amorçage. Des tests et des sauts conditionnels permettent de passer à l'instruction suivante et donc d'agir différemment en fonction des données ou des nécessités du moment ou de l'environnement.
Nftables
Le moteur de noyau nftables ajoute une simple machine virtuelle au noyau Linux, capable d'exécuter du bytecode pour inspecter un paquet réseau et de décider de la manière dont ce paquet doit être traité. Les opérations implémentées par cette machine virtuelle sont intentionnellement rendues basiques. Il peut extraire des données du paquet lui-même, consulter les métadonnées associées (interface entrante, par exemple) et gérer les données de suivi de connexion. Des opérateurs arithmétiques, binaires et de comparaison peuvent être utilisés pour prendre des décisions en fonction de ces données. La machine virtuelle est également capable de manipuler des ensembles de données (généralement des adresses IP), ce qui permet de remplacer plusieurs opérations de comparaison par une recherche d'ensemble unique.