P2P in Windows See-Mong Tan Microsoft Corporation.

13
P2P in Windows P2P in Windows See-Mong Tan See-Mong Tan Microsoft Corporation Microsoft Corporation

Transcript of P2P in Windows See-Mong Tan Microsoft Corporation.

Page 1: P2P in Windows See-Mong Tan Microsoft Corporation.

P2P in WindowsP2P in Windows

See-Mong TanSee-Mong Tan

Microsoft CorporationMicrosoft Corporation

Page 2: P2P in Windows See-Mong Tan Microsoft Corporation.

A P2P Platform in A P2P Platform in Windows?Windows?Well-engineered, supported protocolsWell-engineered, supported protocols

Secure by default, scale without limits, Secure by default, scale without limits, no servers requiredno servers required

Let applications focus on end-user Let applications focus on end-user valuevalue

Platform does the heavy liftingPlatform does the heavy lifting

Simplify deploymentSimplify deploymentBroad reachBroad reach

Enterprise managementEnterprise management

Page 3: P2P in Windows See-Mong Tan Microsoft Corporation.

P2P Platform in Windows P2P Platform in Windows VistaVista Experiences

IPv6IPv6

TeredoTeredoISATAPISATAP

6to46to4

P2P P2P IdentitieIdentitie

s, s, ContactsContacts

PNRPPNRP

People People Near MeNear Me

Serverless Serverless Presence Presence

and and PublicatioPublicatio

nn

ApplicatiApplication on

InvitatioInvitationn

Overlay Overlay NetworkNetwork

ss

Message Message MulticasMulticas

t and t and Web Web

ServicesServices

Shared Shared DatabasDatabas

ee

ReplicatReplicated Filesed Files

App and App and Desktop Desktop SharingSharing

Addressing/Connectivity

Identity & Naming

Discovery & Name Resolution

Session Initiation

Multiparty comm

Application Services

Page 4: P2P in Windows See-Mong Tan Microsoft Corporation.

Addressing/ConnectivityAddressing/ConnectivityExperiences

IPv6IPv6

TeredoTeredoISATAPISATAP

6to46to4

P2P P2P IdentitieIdentitie

s, s, ContactsContacts

PNRPPNRP

People People Near MeNear Me

ServerleServerless ss

Presence Presence and and

PublcatiPublcationon

ApplicatiApplication on

InvitatioInvitationn

Overlay Overlay NetworkNetwork

ss

Message Message MulticasMulticas

t and t and Web Web

ServicesServices

Shared Shared DatabasDatabas

ee

ReplicatReplicated Filesed Files

App and App and Desktop Desktop SharingSharing

Addressing/Connectivity

Identity & Naming

Discovery & Name Resolution

Session Initiation

Multiparty comm

Application Services

Page 5: P2P in Windows See-Mong Tan Microsoft Corporation.

IPv6IPv6Ubiquitous addressingUbiquitous addressing

Enables a world with no NATs!Enables a world with no NATs!

Automatic address configurationAutomatic address configurationNo delay in getting an address on adhoc networksNo delay in getting an address on adhoc networks

Improved connectivityImproved connectivityTeredo enables NAT traversal by tunneling through IPv4Teredo enables NAT traversal by tunneling through IPv4

Native support for IPsecNative support for IPsecAllows seamless operation over both unsecured and Allows seamless operation over both unsecured and secure IP networkssecure IP networks

Compatibility with emerging standardsCompatibility with emerging standardsFederal government mandate to move to IPv6 for their Federal government mandate to move to IPv6 for their internal systemsinternal systems

Page 6: P2P in Windows See-Mong Tan Microsoft Corporation.

Name Resolution & Name Resolution & DiscoveryDiscoveryExperiences

IPv6IPv6

TeredoTeredoISATAPISATAP

6to46to4

P2P P2P IdentitieIdentitie

s, s, ContactsContacts

PNRPPNRP

People People Near MeNear Me

Serverless Serverless Presence Presence

and and PublicatioPublicatio

nn

ApplicatiApplication on

InvitatioInvitationn

Overlay Overlay NetworkNetwork

ss

Message Message MulticasMulticas

t and t and Web Web

ServicesServices

Shared Shared DatabasDatabas

ee

ReplicatReplicated Filesed Files

App and App and Desktop Desktop SharingSharing

Addressing/Connectivity

Identity & Naming

Discovery & Name Resolution

Session Initiation

Multiparty comm

Application Services

Page 7: P2P in Windows See-Mong Tan Microsoft Corporation.

PNRPPNRP

PNRP = Peer Name Resolution PNRP = Peer Name Resolution ProtocolProtocol

PNRP securely resolves a name to the PNRP securely resolves a name to the current IP addresses and port that the current IP addresses and port that the name is registered atname is registered at

Name anything (hosts, applications, Name anything (hosts, applications, processes, …)processes, …)

Operates at Internet scaleOperates at Internet scale

Page 8: P2P in Windows See-Mong Tan Microsoft Corporation.

Multiparty CommunicationsMultiparty CommunicationsExperiences

IPv6IPv6

TeredoTeredoISATAPISATAP

6to46to4

P2P P2P IdentitieIdentitie

s, s, ContactsContacts

PNRPPNRP

People People Near MeNear Me

ServerleServerless ss

Presence Presence and and

PublcatiPublcationon

ApplicatiApplication on

InvitatioInvitationn

Overlay Overlay NetworkNetwork

ss

Message Message MulticasMulticas

t and t and Web Web

ServicesServices

Shared Shared DatabasDatabas

ee

ReplicatReplicated Filesed Files

App and App and Desktop Desktop SharingSharing

Addressing/Connectivity

Identity & Naming

Discovery & Name Resolution

Session Initiation

Multiparty comm

Application Services

Page 9: P2P in Windows See-Mong Tan Microsoft Corporation.

Multiparty CommunicationMultiparty CommunicationIdentified by nameIdentified by name

Used to locate some existing Used to locate some existing members and connect to themmembers and connect to them

Active members publish mesh Active members publish mesh name so others can find themname so others can find them

Mesh self-organizes active Mesh self-organizes active participantsparticipants

Adjusts to changing membershipAdjusts to changing membership

Resilient connectivityResilient connectivity

Dynamically optimized based on Dynamically optimized based on traffic patternstraffic patterns

Page 10: P2P in Windows See-Mong Tan Microsoft Corporation.

Application ServicesApplication ServicesExperiences

IPv6IPv6

TeredoTeredoISATAPISATAP

6to46to4

P2P P2P IdentitieIdentitie

s, s, ContactsContacts

PNRPPNRP

People People Near MeNear Me

ServerleServerless ss

Presence Presence and and

PublcatiPublcationon

ApplicatiApplication on

InvitatioInvitationn

Overlay Overlay NetworkNetwork

ss

Message Message MulticasMulticas

t and t and Web Web

ServicesServices

Shared Shared DatabasDatabas

ee

ReplicatReplicated Filesed Files

App and App and Desktop Desktop SharingSharing

Addressing/Connectivity

Identity & Naming

Discovery & Name Resolution

Session Initiation

Multiparty comm

Application Services

Page 11: P2P in Windows See-Mong Tan Microsoft Corporation.

Peer ChannelPeer Channel

Targets high throughput, low latency Targets high throughput, low latency applications at large scaleapplications at large scale

Part of the Windows Communication Part of the Windows Communication Foundation (WCF) in .NET 3.0Foundation (WCF) in .NET 3.0

Quite popular amongst enthusiastsQuite popular amongst enthusiasts

Page 12: P2P in Windows See-Mong Tan Microsoft Corporation.

Open problem areasOpen problem areas

Power management -> How to let PCs Power management -> How to let PCs go to sleep, and wake up only when go to sleep, and wake up only when addressedaddressed

Metered connections -> How to Metered connections -> How to reduce protocol chattinessreduce protocol chattiness

Distributed hash tables for enterprise Distributed hash tables for enterprise data centers and broad Internet usedata centers and broad Internet use

Maintaining QOS and network friendly Maintaining QOS and network friendly operation for media streamingoperation for media streaming

Page 13: P2P in Windows See-Mong Tan Microsoft Corporation.

ResourcesResources

Website: Website: http://www.microsoft.com/p2p

Blog: Blog: http://blogs.msdn.com/p2p

Discussion forum: Discussion forum: http://forums.microsoft.com/msdn/shohttp://forums.microsoft.com/msdn/showforum.aspx?forumid=1505&siteid=1 wforum.aspx?forumid=1505&siteid=1 (accessible from website)(accessible from website)

Email: peerfb at microsoft.comEmail: peerfb at microsoft.com