1 / 48

Bernard Ourghanlian – bourghan@microsoft Chief Technology & Security Officer Microsoft France

Bernard Ourghanlian – bourghan@microsoft.com Chief Technology & Security Officer Microsoft France. Le Peer-to-Peer IPv6 en environnement Windows. Sommaire . Le panorama du Peer-to-Peer Le Peer-to-Peer en environnement Windows : les principes fondateurs Les technologies requises

janice
Download Presentation

Bernard Ourghanlian – bourghan@microsoft Chief Technology & Security Officer Microsoft France

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bernard Ourghanlian – bourghan@microsoft.comChief Technology & Security OfficerMicrosoft France Le Peer-to-Peer IPv6 en environnement Windows

  2. Sommaire • Le panorama du Peer-to-Peer • Le Peer-to-Peer en environnement Windows : les principes fondateurs • Les technologies requises • NAT traversal • Résolution des noms • Graphes, groupes et groupements • Stockage répliqué • Recherche distribuée • La mise à jour Peer-to-Peer pour Windows XP • Résumé • Démonstration : 3 degrees

  3. Le Peer-to-Peer • Le Web correspond fondamentalement un modèle de type client-serveur : l’utilisateur demande une page Web et le serveur Web lui répond • Le Peer-to-Peer, popularisé initialement par Napster ou Gnutella, fonctionne différemment puisque pratiquement toutes les interactions ont lieu entre les clients • On peut définir le Peer-to-Peer comme « un modèle de traitement dans lequel les périphériques client communiquent directement » • Par rapport au traditionnel modèle du client-serveur, le Peer-to-Peer présente les avantages suivants : • Le contenu et les ressources peuvent être partagés à la fois depuis le centre et la bordure du réseau • Un réseau de « pairs » peut être facilement étendu et être plus fiable qu’un seul serveur • Un réseau de « pairs » peut partager sa capacité de calcul, afin de consolider des ressources de traitement pour des tâches de traitement distribuées, plutôt que de se reposer sur un seul calculateur (un supercalculateur, par exemple) • Les ressources partagées des ordinateurs « pairs » peuvent être accédées directement

  4. Le panorama du Peer-To-Peer • Communications temps réel (RTC) • Messagerie instantanée, voix, vidéo • Cela existe aujourd’hui mais la plupart des programmes existants ainsi que leurs protocoles de communication reposent sur l’existence de serveurs • Jeu temps réel / collaboration • La plupart des environnements de jeu distribués reposent sur l’existence d’un site Web permettant aux joueurs de s’affronter • Collaboration • Espace de travail projet permettant d’atteindre un objectif commun • Partage de fichiers avec d’autres personnes • Ce type de partage existe mais n’est pas toujours aisé car les adresses des machines d’extrémité ne sont pas toujours publiées • Distribution de contenu • Concert, réunion de société, classe en ligne, audio, vidéo • Bien souvent, la diffusion « organisée » de fichiers audio et vidéo repose sur l’existence de gros serveurs • Distribution de mise à jour de produits • C’est une méthode efficace pour distribuer les mises à jour de logiciels

  5. Le panorama du Peer-To-Peer • Traitement distribué • Dissection et distribution d’une tâche de calcul • Nécessite que les algorithmes soient parallélisés • Agrégation de ressources machines • Popularisé par le grid computing • Amélioration des technologies de l’Internet • Nouveaux protocoles pour l’Internet • Historiquement, l’Internet a été conçu pour permettre une connectivité de bout en bout ; force est de constater qu’en raison de la raréfaction des adresses et de la prolifération des NAT, on a perdu cette connectivité de bout en bout • IPv6 est la promesse du retour de l’Internet à ses principes de conception originels

  6. Pourquoi du nouveau ? • Limitation du nombre d’adresses publiques • La présence des NATs limite les possibilités de partage • Limitation du système de résolution de noms • Ne gère pas (assez) les adresses dynamiques • Ne fonctionne pas en environnement ad hoc • Ne facilite pas une utilisation aisée « à la maison » • Communication multipoint inefficace • Chacun a une certaine tendance à reconstruire l’infrastructure en fonction de ses besoins

  7. Scénario 2: Peer-To-Peer(Exemple: RTC ou récupération de fichiers) P1 P2 LAN Maison LAN Maison Internet NAT NAT • Avec NAT • Besoin d’apprendre l’adresse « en dehors du NAT » • Fournir cette adresse à l’application « paire » • Besoin de disposer d’une application « compatible NAT » • On peut avoir besoin d’un serveurs d’enregistrement tiers pour faciliter la recherche des pairs

  8. Les principes fondateurs d’une solution Peer-to-Peer • L’objectif long terme de la mise à disposition d’un environnement Peer-to-Peer est le suivant • Permettre aux utilisateurs de communiquer et de partager de l’information de manière sécurisée avec d’autres utilisateurs sans dépendre de serveurs centralisés mais en restant capable de fonctionner encore mieux si des serveurs sont présents • Dans un premier temps, la cible de l’environnement Peer-to-Peer est la mise à disposition d’un environnement de développement permettant aux développeurs de créer des applications Peer-to-Peer • Les applications seront certainement la clé du succès d’IPv6 !

  9. Les principes fondateurs du design d’une solution Peer-to-Peer • Sécurité : robustesse en face d’une défaillance ou d’une attaque • Scalable : capable d’évoluer depuis des réseaux ad hoc jusqu’à l’Internet • Sans serveur : pas de point de défaillance central • Self-tuning : s’adapte à des changements constants • Self-repairing : se répare tout seul • Sharing : permet à nouveau le partage des données et des applications depuis les frontières du réseau

  10. Les problèmes techniques à résoudre en environnement Peer-to-Peer • Le DNS • C’est un autre point de différence majeur entre l’environnement client-serveur et les réseaux Peer-to-Peer • Les serveurs sont généralement enregistrés dans le DNS de telle façon que les clients puissent résoudre le nom de ces serveurs • Les clients ne sont généralement pas enregistrés dans le DNS pour les raisons suivantes • De nombreux clients ont des connectivités temporaires et on peut leur assigner un adresse différente à chaque connexion • Les clients n’ont pas de ressources à partager et ne répondent donc pas aux demandes de ressources

  11. Les problèmes techniques à résoudre en environnement Peer-to-Peer • Les participants d’un environnement Peer-to-Peer ont, par contre, des ressources à partager tout en continuant cependant d’avoir une connectivité temporaire • Ils peuvent utiliser un DNS dynamique mais il n’y a que peu de serveurs DNS sur l’Internet qui supportent le dynamic DNS • Pour avoir du succès, les ordinateurs en environnement Peer-to-Peer ne doivent donc pas reposer sur une infrastructure DNS existante ; il doit donc y avoir un mécanisme permettant de résoudre les noms des pairs qui ne repose pas sur le DNS • Le mécanisme utilisé en environnement Windows Peer-to-Peer est le Peer Name Resolution Protocol (PNRP)

  12. Les problèmes techniques à résoudre en environnement Peer-to-Peer • La sécurité • Dans un environnement Peer-to-Peer, il n’y a pas de serveur centralisé avec des bases de données de sécurité qui peuvent assurer des services de sécurité typiques tels que l’authentification ou l’autorisation • Dans cet environnement, les pairs doivent procurer leur propre authentification • Dans l’environnement Windows Peer-to-Peer, l’authentification est assurée en utilisant des certificats auto-signés de type X.509 • Ces certificats sont créés par chaque pair • Chaque nœud agit comme une autorité de certification, ce qui permet de supprimer la nécessité de déposer le certificat racine dans chaque zone de stockage de confiance de chaque pair

  13. Les problèmes techniques à résoudre en environnement Peer-to-Peer • Chaque pair génère la paire de clés privée/publique et le certificat qui est signé en utilisant la clé privée • Le certificat auto-signé est utilisé pour l’authentification et fournit de l’information sur l’entité « pair » • Comme l’authentification X.509, l’authentification en environnement Peer-to-Peer repose sur une chaîne de certificats qui permettent de remonter à une clé publique digne de confiance

  14. L’architecture de l’implémentation Peer-to-Peer en environnement Windows

  15. Les Technologies clés • NAT Traversal • Résolution des noms • Graphes • Groupes et groupements • Stockage répliqué • Recherche distribuée

  16. NAT Traversal • L’implémentation d’IPv6 sur Windows admet essentiellement deux technologies de transition • Intra-Site Tunnel Addressing Protocol (ISATAP) • Technologie d’affectation et de tunneling automatique qui est utilisé pour fournir une connectivité unicast entre hôtes IPv6 au travers d’un Intranet IPv4 • ISATAP est décrit dans le draft Internet : « Intra-Site Automatic Tunnel Addressing Protocol (ISATAP) » (draft-ietf-ngtrans-isatap-0x.txt) • 6to4 • Technologie d’affectation et de tunelling automatique qui est utilisé pour fournir une connectivité unicast entre hôtes IPv6 au travers de l’Intranet IPv4 (RFC 3056) • Pour plus d’information à propos d’ISATAP et de 6to4, on peut consulter avec profit le livre blanc : « IPv6/IPv4 Coexistence and Migration » (http://www.microsoft.com/windows.netserver/technologies/ipv6/ipv6coexist.mspx)

  17. NAT Traversal • Pour une connectivité IPv6 au travers de l’Internet IPv4, 6to4 est la méthode privilégiée d’affectation d’adresse et de tunelling • Toutefois, 6to4 dépend de l’affectation d’une adresse publique IP à un ordinateur connecté à un réseau privé qui fonctionne comme un routeur 6to4 • Le protocole IPv6 pour Windows XP et Windows Server 2003 peut être utilisé comme routeur 6to4 automatiquement en mettant en service l’Internet Connecion Sharing (ICS) ou manuellement • Malheureusement il reste quelques obstacles • Peu des NAT utilisés aujourd’hui pour connecter la maison ou de petites entreprises disposent déjà d’une possibilité de routage 6to4 • Il peut y avoir plusieurs NAT à traverser ; dans un tel cas, 6to4 ne fonctionne pas • Le protocole utilisé par 6to4 est le protocole 41 ; or la plupart des NAT ne permettent que de retransmettre le trafic TCP ou UDP ; si ce type de trafic est ignoré par le NAT, il sera ignoré et donc non retransmis

  18. NAT Traversal • Pour adresser les besoins d’affectation d’adresses et de tunelling qui fonctionne aussi pour les systèmes hôtes situés à travers des NAT qui ne peuvent aussi être des routeurs 6to4, Microsoft travaille avec l’IETF pour définir Teredo également connu sous le nom de NAT Traversal • Teredo est défini par le draft « Teredo: Tunneling IPv6 over UDP through NATs » (draft-ietf-ngtrans-shipworm-0x.txt, http://www.ietf.org/html.charters/ngtrans-charter.html) • Teredo fonctionne en affectant des adresses globales IPv6 qui sont fondées sur l’adresse publique IPv4 de l’interface NAT qui est connectée à l’Internet et en encapsulant les paquets IPv4 dans, à la fois, une en-tête IPv4 et une en-tête UDP • En utilisant à la fois des en-têtes IPv4 et UDP, la plupart des NAT peuvent traduire le trafic Teredo • Pour plus d’information du Teredo, consulter le livre blanc « Teredo Overview » (http://www.microsoft.com/windowsxp/pro/techinfo/administration/p2p/overview.asp)

  19. NAT NAT La destination envoie alors sa propre « bulle » Teredo v6 Service Le futur trafic peut être envoyé directement aux nœuds Envoi d’une « bulle » Teredo vers l’adresse de destination pour ouvrir la correspondance NAT Envoi de la « bulle » Teredo au relais pour délivrance à la destination Envoi de la demande de service, obtention de l’adresse IPv6 (ex : XX:IPv4:port::/64) 4 1 2 3 5 157.1.1.1 172.1.1.1 Teredo : NAT Traversal Machine A XX::9D01:101:460:XX Machine C XX::AC01:101:464:XX

  20. Résolution de noms et PNRP • Pour permettre la communication entre des pairs, ceux-ci doivent être capables de découvrir la présence des autres et d’en résoudre les emplacements réseau (adresses, protocoles, ports) à partir de leurs noms ou d’autres types d’identificateurs et tout ceci sans recourir au DNS • L’environnement Windows Peer-to-Peer résout ce problème en utilisant un mécanisme qui a les attributs suivants : • Résolution des noms distribuée et sans serveur • Comme en environnement DNS, la liste complète des noms des ordinateurs est stockée dans le « nuage » • Contrairement au DNS, il n’y a pas de serveur pour fournir la résolution des noms ; chaque pair stocke une portion de la liste dans son cache et peut se référer aux autres pairs en cas de besoin (il peut toutefois y avoir un nœud d’amorçage – seed node – pour faciliter l’initialisation mais cela n’est pas obligatoire)

  21. Résolution de noms et PNRP • Utilisation d’identificateurs (ID) à la place de noms • Plutôt que d’utiliser un nom comme un FQDN en environnement DNS, les ID sont utilisés pour identifier les pairs. Les ID sont juste des nombres et ne sont donc pas sujets à des problèmes de langue ou de marque déposée… • Utilisation de plusieurs ID • Chaque calculateur, utilisateur, groupe, périphérique, service ou autre type de pair peut avoir son propre peer ID • Possibilité d’évoluer vers un très grand nombre d’ID • La liste des ID qui est distribuée parmi les pairs utilise un cache à plusieurs niveaux et un système de référence qui permet au mécanisme de résolution de noms d’évoluer jusqu’à plusieurs milliards d’ID tout en requerrant des besoins minimums en ressources sur chacun des nœuds

  22. Résolution de noms et PNRP • Le protocole utilisé pour envoyer des messages de résolution de noms et de découverte des pairs est appelé Peer Name Resolution Protocol • PNRP utilise plusieurs types de « nuages »; un nuage est un groupement de machines qui utilisent des adresses dans un périmètre spécifique (scope) • Un périmètre spécifique est une zone du réseau sur laquelle l’adresse est unique • Les nuages PNRP sont fondés sur les address scopes des adresses IPv6 • Il y a 3 types de nuages • Le nuage global (global cloud) qui correspond au périmètre d’adressage global d’IPv6 et représente tous les calculateurs de l’Internet IPv6 ; il n’y a qu’un seul nuage global • Le nuage spécifique au site correspond au périmètre d’adressage IPv6 du site (site-local adresses) ; il peut y avoir plusieurs nuages spécifiques au site • Le nuage du lien local correspond au périmètre d’adressage IPv6 du lien local (link-local addresses) • Un nuage de type « lien local » correspond a un lien spécifique, typiquement le même que le sous-réseau local • Il peut y avoir plusieurs nuages de type « lien local »

  23. Noms et PNRP ID • Un nom de pair est un point terminal pour la communication, c’est-à-dire une machine, un utilisateur, un groupe, des services, etc. • En fait n’importe quoi pour lequel on a besoin d’une résolution en adresse IPv6 • Les noms de pairs peuvent être enregistrés de manière sécurisée ou non sécurisée • Non sécurisé : chaîne de caractère qui peut être sujette au spoofing ou pour laquelle n’importe qui peut enregistrer un nom en double • Sécurisé : enregistré uniquement par le propriétaire et qui est protégé par un certificat et une signature numérique

  24. Noms et PNRP ID • Les PNRP ID sont définis sur 256 bits et ont la composition suivante : • 128 bits de poids fort : P2P ID, hash du nom de pair affecté au point terminal • Format : Authority, Classifier • Pour les noms sécurisés, Authority est le hash (SHA) de la clé publique du nom de pair en hexadécimal • Pour les noms sécurisés, Authority est le caractère « 0 » • Classifier est une chaîne de caractère qui identifie l’application et qui peut être n’importe quelle chaîne Unicode de jusqu’à 150 caractères de long • 128 bits de poids faible : utilisés pour la localisation du service, nombre généré qui identifie de façon unique les différentes instances du même P2P ID dans le même nuage • Les combinaisons 256 bits des P2P ID et des emplacements de service permettent à plusieurs PNRP ID d’être enregistrés pour la même machine

  25. Noms et PNRP ID • Pour chaque nuage, chaque nœud pair gère un cache de PNRP ID qui comprend à la fois ses propres PNRP ID ainsi que des entrées cachées au fur et à mesure • L’ensemble complet des PNRP ID situés sur tous les nœuds pairs dans un nuage comprend un table de hash distribuée • Il est possible d’avoir des entrées pour un PNRP ID situé sur plusieurs pairs • Chaque entée dans le cache PNRP contient • Le PNRP ID • Une adresse de pair certifiée (CPA – Certified Pair Address) • L’adresse IPv6 du nœud d’enregistrement • Le CPA est un certificat auto-signé qui fournit une protection d’authentification pour le PNRP ID et contient les informations de point terminal pour l’application (adresses, numéros de protocole, numéros de port) • Le processus de résolution de nom consiste donc en la résolution d’un PNRP ID en CPA ; une fois le CPA obtenu, la communication entre les points terminaux peut commencer

  26. 5 450 transmet la requête à 800 800 envoie une réponse authoritative le long du chemin de la requête 6 4 200 transmet la requête au prochain plus proche voisin de 800 450 800 500 200 Créer un identifier et se connecter au nuage 500 ne connaît pas la réponse, il rejette donc la requête de 200 3 350 1 2 200 transmet la requête au voisin le plus proche de 800 Simple résolution de nom

  27. Gestion du cache à plusieurs niveaux • Afin de permettre de garder une taille raisonnable au caches PNRP, les nœuds pairs utilisent un cache à plusieurs niveaux, chaque niveau contenant un nombre maximum d’entrées • Chaque niveau du cache représente n/10m (0≤m<log10n) de l’espace des PNRP ID (2256) • Le niveau le plus bas du cache contient les PNRP ID enregistrés localement et les autres PNRP ID qui sont numériquement proches • Lors qu’un niveau du cache est rempli avec un maximum de 20 entrées, on crée un nouveau niveau de cache • Le nombre maximum de niveaux de cache est de l’ordre de log10(nombre total de PNRP ID dans le nuage) • Avec 100 millions de PNRP ID, on n’a pas plus de 8 = log10(100 000 000) niveaux dans le cache et un nombre comparable de hops pour résoudre les PNRP ID lors de la résolution de nom

  28. Graphe • Un graphe de pairs est un ensemble de nœuds qui sont connectés entre eux pour former un réseau de nœuds couplés dans le but de propager des données sous la forme d’enregistrements ou de flux de données point à point • La construction de ce graphe est fondé sur le mécanisme d’irrigation (flooding) • Ce mécanisme est le processus par lequel les enregistrements sont propagés à tous les utilisateurs connectés à un graphe • Le protocole utilisé effectue les opérations suivantes : • Propagation de l’addition des nouveaux enregistrements à tous les nœuds du graphe • Propagation des mises à jours des enregistrements modifiés à tous les nœuds du graphe • Propagation des suppressions des enregistrements supprimés à tous les nœuds du graphe • Pour effectuer ces opérations, chaque enregistrement est identifié par un GUID, a un numéro de version croissante (ou un numéro de séquence) et est qualifié par un age ou un statut • Un processus de synchronisation s’assure que les pairs ont tous les mêmes ensembles d’enregistrement

  29. Graphe • Un graphe a les propriétés suivantes : • Il est connecté : il y a un chemin entre n’importe quelle paire de nœuds • Il a un petit diamètre : il y a un nombre relativement bas de sauts entre les nœuds situés sur le pourtour du graphe (afin de permettre des propagations rapides) • Il est robuste : le graphe reste connecté même si certains nœuds ou certaines connexions disparaissent • Un graphe est construit en se fondant sur la connexion des nœuds voisins (un voisin est un nœud sur le graphe qui est à la distance de un saut, c’est-à-dire connecté directement par une connexion TCP) • Un node ID est un nombre aléatoire qu’un nœud du graphe choisit quand il se connecte au graphe • Le node ID doit être unique au travers du graphe • Un graphe est identifié par une signature du graphe qui est le plus petit node ID de tous les nœuds connectés au graphe • Cette signature est utilisée pour détecter les cassures dans le graphe (partitions)

  30. La maintenance du graphe • Le protocole d’irrigation définit comment circule l’information dans le graphe • Le protocole de maintenance du graphe définit comment le groupe évolue pour maintenir une connectivité robuste et un diamètre réduit • Un procédure de signature calcule la signature du groupe ; si le groupe subit une partition, chacune des partitions aura une signature différente • Ceci permet de détecter si deux ou plusieurs partitions ont besoin d’être réparées • Des nœuds désignés aléatoirement dans le graphe (appelés contacts) gardent la trace des enregistrements de signature • Une procédure de reconnexion permet aux nœuds d’établir les connexions appropriées • Une procédure de déconnexion permet aux nœuds de quitter le graphe sans y créer un trou

  31. La maintenance du graphe • Quand de l’information est envoyée dans le graphe, un nœud qui a plusieurs connexions recevra plusieurs copies de cette information • Pour décider quelles connexions garder et lesquelles supprimer, un nœud évalue l’information et calcule un index bidirectionnel qui est utilisé pour indiquer l’utilité de l’information qui est envoyée entre des pairs connectés donnés • Cet index a une valeur faible quand l’information envoyée au travers de la connexion a été déjà reçue et n’a donc pas d’utilité • De manière permanente, en fonction de la valeur courante de l’index et de l’information qui est reçue pendant le processus d’irrigation, les nœuds pairs font des ajustements dans la connexion avec les nœuds voisins • Les connexions sont créées et supprimées afin de permettre la convergence du graphe vers une topologie optimale pour le trafic courant

  32. 5 Les nœuds calculent un utility index La forme finale est fondée sur la topologie et la bande passante 6 4 Les données d’irrigation atteindront chaque nœud plusieurs fois 450 800 500 200 Recherche d’un nom, si non trouvé, l’enregistrer Un noeud peut « irriguer » de données tous les autres nœuds du graphe 3 350 1 2 La deuxième recherche trouvera le nom et se connectera Exemple de graphe

  33. Vérifier si le contact est encore actif Si oui, reconnecter le graphe 450 800 500 200 S’il y a une partition les données de contact deviennent obsolètes Les données de contact sont envoyées au reste du graphe Un faible pourcentage de nœuds sont contacts Les informations de contact seront rafraîchies au cours du temps 350 6 2 5 3 4 1 Exemple de partition et de réparation 350 XX::00…00 800 XX::00…01 350 XX::00…00 800 XX::00…01

  34. Sécurité du graphe • Les graphes sont intrinsèquement non sécurisés • Le mécanisme de graphe fournir des moyens permettant d’instancier de la sécurité • Contrôle qui peut se connecter et qui peut envoyer des données au graphe (authentification de connexion, confidentialité, intégrité) • Fournit des moyens de chiffrer le trafic (confidentialité des enregistrements et des messages) • Fournit des moyens de valider les données (intégrité des enregistrements et des messages) • Le SDK est livré avec un Security Provider • Pour plus d’information, consulter le chapitre Adding Security for a Peer Graph (http://msdn.microsoft.com/)

  35. Stockage répliqué • Le stockage répliqué correspond à l’ensemble des enregistrements qui sont publiés de manière sécurisée et synchronisée entre tous les membres du groupe • Les applications enregistrent un nouveau type d’enregistrement • Les nouveaux enregistrements « irriguent » le graphe • La communication (et le mécanisme de réplication) entre les nœuds utilise SSL afin d’assurer le chiffrement et l’intégrité des données • Quand un nouveau membre rejoint un groupe, celui-ci reçoit automatiquement tous les enregistrements du groupe auquel il s’attache • Après la synchronisation initiale, les membres du groupe synchronisent périodiquement leur stockage répliqué afin d’assurer que tous les membres du groupe ont une vue cohérente • Après avoir joint le groupe, les applications peuvent enregistrer de nouveaux types d’enregistrement et commencer de publier de nouveaux types d’enregistrement en utilisant la sécurité du groupe • Quand une application publie un nouveau enregistrement, les mécanismes de sécurité pour le groupe sont appliquées à l’enregistrement et celui-ci est publié de manière sécurisée • Les applications peuvent aussi enregistrer leur intérêt pour le fait de recevoir tous les enregistrements d’un type donné (définition de handlers pour les enregistrements en question) • L’enregistrement est validé et on invoque alors le handler correspondantafin de notifier l’application et lui passer les données

  36. Recherche distribuée • Mécanisme pour rechercher les données dans un groupe • Support de deux modèles de recherche différents • Recherche locale du stockage qui n’envoie pas de requête • Recherche distribuée qui envoie des requêtes aux voisins (ceci n’est pas encore supporté dans la version actuelle) • API commune pour le moteur de recherche • Support d’opérateurs logiques : AND, OR, NOT • Le schéma standard permet la recherche par mot-clé

  37. La mise à jour Peer-to-Peer pour Windows XP

  38. IPv6 et Windows aujourd’hui • IPv6 Developer Edition for Windows XP • Intégré au sein du système d’exploitation, installation triviale • Destiné aux développeurs d’applications, aux déploiements pilotes et aux enthousiastes • Windows XP SP1 • Toujours indiquée comme "Developer Preview" car nous ne voulions pas changer l’interface graphique pour un Service Pack mais la pile IPv6 est prête pour un déploiement et supportée • IPv6 Tech Preview for Windows 2000 • Disponible sur le site Web MSDN depuis mai 2000 • Destiné aux développeurs d’applications et aux premières expérimentation ; pas d’évolution prévue

  39. IPv6 et Windows aujourd’hui • Pile IPv6 Windows CE .NET 4.1 (disponible et supportée) • .NET Server • Pile IPv6 utilisable en production • Testée pour la taille et les besoins de l’entreprise • Pleinement supportée • Comprend des services et des applications compatibles IPv6 • Internet Explorer, RPC, telnet, ftp, etc. • IIS, Windows Media Server, Terminal Server, … • .NET Framework

  40. La mise à jour Peer-to-Peer pour Windows XP • Windows XP SP1 et Windows 2003 Server supportent IPv6 en standard • Cette mise à jour permet le support du Peer-to-Peer en apportant les nouvelles fonctionnalités suivantes : • Mise à jour de la pile IPv6 • IPv6 Internet Connection Firewall (ICF) • Fonctionne automatiquement – statefull filtering • Peut être configuré en utilisant la commande netsh firewall • Teredo • Client • Server • Relay • Teredo host-specific relay • En téléchargement depuis http://msdn.microsoft.com/library/default.asp?url=/downloads/list/winxppeer.asp

  41. La mise à jour Peer-to-Peer pour Windows XP • Les fonctionnalités Peer-to-Peer • Network Address Translator traversal • Améliorations de l’implémentation d’IPv6 permettant au trafic Peer-to-Peer de traverser la plupart des NAT • Name resolution • Support du protocole Peer Name Resolution Protocol (PNRP), un mécanisme de résolution de nom spécifique au Peer-to-Peer qui ne repose pas sur le Domain Name System (DNS) • Graphing and grouping • Le graphing maintient un ensemble de nœuds connectés et procure un mécanisme d’irrigation (flooding) et de réplication de données à travers le graphe. Le grouping définit le modèle de sécurité pour créer et gérer des groupes Peer-to-Peer persistants • Identity management • Permet la création et la gestion d’identités Peer-to-Peer

  42. Résumé • Microsoft Windows XP Peer-to-Peer SDK • Solution universelle de NAT traversal • Mécanisme de résolution de nom sécurisé et scalable • Graphes permettant l’auto-tuning et l’auto-réparation • Notion de security provider afin de permettre la création de groupes • Stockage fiable et répliqué de messages • Support d’une recherche locale et distribuée • Ces fonctionnalités Peer-to-Peer seront intégrées en standard avec la prochaine version de Visual Studio .NET • Une seule expérience pour les développeurs

  43. Démonstration : 3 degrees

  44. 3 degrees • http://www.threedegrees.com/

  45. 3 degrees

  46. 3 degrees : aperçu de la solution Mariage de Messenger & du Peer-to-Peer

  47. 3 degrees : architecture

  48. Questions et Réponses

More Related