o Chaque contexte possède un CA qui signe les certificats des noeuds et celui que la virtual-switch utilise. Le noeud et la virtual-switch échangent leur certificat. Pour l'instant on assume que si les certificats sont trustés, la session SSL devrait passer. Il y a aussi une whitelist de tous les noeuds qui sont autorisés. Ce qui fait que même si tu as un certificat valide, et que tu n'es pas dans la whitelist, ta connexion ne fonctionnera pas.
o Les certificats sont poussés au moment du provisioning, le mode ADH est simplement utilisé la première fois. Une fois que le noeud a téléchargé ses certificats, il y a un step-up et la connexion se fait en utilisant les certificats et AES256-SHA. Il peut en effet avoir un MITM actif à ce moment-là. Tu peux regarder notre code de provisioning2 qui est en cours et qui utilise une méthode plus solide que celle de notre prototype, et qui utilise aussi du Ephemeral DH: https://github.com/netvirt/netvirt/tree/prov2
o La communication TCP est présentement seulement entre la virtual-switch et le controlleur.
o Les noeuds et la virtual-switch se parlent en UDP (plus précisément en utilisant UDT) voir: http://udt.sourceforge.net/
o Il faut absolument un serveur central qui fait provisionning des noeuds et la découverte des noeuds connectés. Par contre le transfert de données se fait en P2P, à moins d'avoir un réseau qui bloque le UDP hole punching.
[^] # Re: Description technique
Posté par nib . En réponse au journal NetVirt - solution de réseautique virtuel. Évalué à 2.
Bonjour,
o Chaque contexte possède un CA qui signe les certificats des noeuds et celui que la virtual-switch utilise. Le noeud et la virtual-switch échangent leur certificat. Pour l'instant on assume que si les certificats sont trustés, la session SSL devrait passer. Il y a aussi une whitelist de tous les noeuds qui sont autorisés. Ce qui fait que même si tu as un certificat valide, et que tu n'es pas dans la whitelist, ta connexion ne fonctionnera pas.
o Les certificats sont poussés au moment du provisioning, le mode ADH est simplement utilisé la première fois. Une fois que le noeud a téléchargé ses certificats, il y a un step-up et la connexion se fait en utilisant les certificats et AES256-SHA. Il peut en effet avoir un MITM actif à ce moment-là. Tu peux regarder notre code de provisioning2 qui est en cours et qui utilise une méthode plus solide que celle de notre prototype, et qui utilise aussi du Ephemeral DH: https://github.com/netvirt/netvirt/tree/prov2
o La communication TCP est présentement seulement entre la virtual-switch et le controlleur.
o Les noeuds et la virtual-switch se parlent en UDP (plus précisément en utilisant UDT) voir: http://udt.sourceforge.net/
o Il faut absolument un serveur central qui fait provisionning des noeuds et la découverte des noeuds connectés. Par contre le transfert de données se fait en P2P, à moins d'avoir un réseau qui bloque le UDP hole punching.
j'espère que ca répond à tes questions !