virtualisation légère du réseau dans react os

Post on 20-Jul-2015

104 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Virtualisation légère du réseau dans ReactOS

Implémentation des Network Namespace dans le kernel ReactOS

Daniel Maxime – Level IT - 2014

Pourquoi ?

• Mise en place de système d’information privé dans un réseau « cloud » (public)

Virtualisation

• Hyperviseur de type 2

• Hyperviseur de type 1

• Isolation

Hyperviseur type 2

• VirtualBox, VMware Player, …

• Fonctionne sur grand nombre de plateforme

• Système hétérogènes

• Permet l’émulation de matériel

• Lourd en ressources

Hyperviseur type 2

Hyperviseur type 1

• KVM, VMware ESXi, Hyper-V, XEN, …

• Système dédié à la virtualisation

• Systèmes hétérogènes

• Meilleur rentabilité matériel par rapport à l’hyperviseur type 1

• Reste relativement lourd en ressources

Hyperviseur type 1

Isolation

• Un seul kernel

• Instanciation de différentes parties du système (processus, réseau, montage, …)

• Demande peu de ressources

• Système homogène uniquement

Isolateur

Pourquoi faire de l’isolation ?

• Lancer un processus est plus rapide que lancer un système d’exploitation complet

• Peu de ressources gaspillée inutilement

Crash ?

• Même combat mais à un autre niveau

• Crash de l’hyperviseur -> les VM sont down

• Crash du kernel -> la machine est down

Réseau – Couche 1 (physique)

Réseau – Couche 2 (Ethernet)

Réseau – Couche 2 (Ethernet)

Port Adresse MAC

1 00:00:AA:BB:CC:DD

2 00:11:AA:BB:CC:DD

3 FF:11:AA:BB:CC:00

Réseau – Couche 3 (IP)

Réseau switché

Requête ARP

Réponse ARP

Réseau routé

Trame Ethernet

Paquet IP

Paquet IP encapsulé dans une trame Ethernet

Une requête type

Stack IP d’un OS

ReactOS

• Réécriture de l’implémentation de Microsoft Windows NT sous licence GNU GPL

• Binairement compatible

• Loin d’être fini

Kernel Mode/User Mode

• Kernel: espace noyau (driver, gestion de la mémoire et des processus, lien avec le hardware), accès global au système

• User: espace utilisateur (applications classiques), accès restreint et sécurisé au système

Kernel Mode/User Mode

Kernel Mode/User Mode

ReactOS

• Accès au code source du kernel et du user-mode

• Modification et Proof-Of-Concept sur un système suivant l’architecture Microsoft

Isolation du réseau

• Plusieurs stack réseau

• Isolation ethernet et IP

• Table de routages, ARP, …

• Switch virtuel

Test d’isolation

Isolation

Topologie de test

Développement futur

• Vrai switch virtuel (avec VLAN, etc.)

• Support de virtualisation de processus complet

top related