distributed peer to peer name resolution
Download
Skip this Video
Download Presentation
Distributed Peer-to-peer Name Resolution

Loading in 2 Seconds...

play fullscreen
1 / 19

Distributed Peer-to-peer Name Resolution - PowerPoint PPT Presentation


  • 226 Views
  • Uploaded on

Distributed Peer-to-peer Name Resolution. Christian Huitema Architect, Windows Networking Microsoft Corporation. Enable each PC to be a server Serve ad-hoc groups Promote and use IPv6, directly attach the users to the Net Provide a server-less DNS for IPv6 Platform for developers.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Distributed Peer-to-peer Name Resolution' - Lucy


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
distributed peer to peer name resolution

Distributed Peer-to-peer Name Resolution

Christian Huitema

Architect, Windows Networking

Microsoft Corporation

vision the user to user web
Enable each PC to be a server

Serve ad-hoc groups

Promote and use IPv6, directly attach the users to the Net

Provide a server-less DNS for IPv6

Platform for developers

Vision: The user to user web!

Mainframe

PC

Web

P2P

Centralized

Personal

Distributed Peer-to-peer Name Resolution

making windows a great platform for p2p
Making Windows a great platform for P2P

Firewall

Traversal

Sockets, DNS, files, print, ….

Firewall, NAT

IPv6

Multicast?

Security?

DNS?

Graphs

Group

Membership

P2P Names

Distributed Peer-to-peer Name Resolution

naming the key to p2p development
Naming: the key to P2P development
  • Provide each computer with a name
    • Each computer is a server
  • Names must be stable
    • Resolve names to addresses
  • Also name groups, users…
    • Find a member of a group,
    • Find the location of a user

Distributed Peer-to-peer Name Resolution

peer to peer name resolution
Identity = 128-bit number

No trademark!

Nodes manage a cache of “records”

Identity

IPv6 address

Proof (certificate)

Secure, Scalable, Robust, Private, Usable…

Peer-to-Peer Name Resolution

Look up initiated

Distributed Peer-to-peer Name Resolution

design goal 1 security
Names should resolve to the intended address,

One should not be able to fake an identifier

But one should not impose a central server…

Design Goal 1, Security:

Hello, I am [email protected]

Distributed Peer-to-peer Name Resolution

secure use certificates prove the name
Secure: use certificates, prove the name
  • Record = Identity, IPv6 Address, Proof
  • Sign [identity, address] with local private key
    • Check signature before placing in cache
  • Host Identity = hash (public key)
  • Group member Id = hash (group key)
    • Group membership, certified by group key
  • Generic = hash (authority’s key, Name)
    • Validity certified by “authority”

Distributed Peer-to-peer Name Resolution

design goal 2 scalable
Scale to the size of the Internet!

Assume at least one name per node.

Scale without a central server.

Design Goal 2: Scalable

1,000

10,000

100,000

1,000,000

10,000,000

100,000,000

1,000,000,000

Distributed Peer-to-peer Name Resolution

scalable a hierarchical cache
Circular space, centered on self

Cache levels:

First level: 360°

Second level: 36°

Etc.

Query:

Forward to “nearest”

Gain one level

log base X of (N) levels, 2.X Entries per level

Scalable: a hierarchical cache

Distributed Peer-to-peer Name Resolution

scalable cache management
Scalable cache management
  • Initial cache:
    • from memory, from neighbor
    • Proactive requests, “tell the network”
  • Update:
    • Learn from queries, requests
    • Try to fill each level, then replace
  • Finest level:
    • Learn about all “immediate neighbors”

Distributed Peer-to-peer Name Resolution

design goal 3 robust
Design Goal 3: Robust
  • No central point of control, no central point of failure.
  • Large distributed system: some nodes will fail at any time.
  • Uncontrolled systems: some nodes may be actively conspiring against us… but hopefully not too many.

Distributed Peer-to-peer Name Resolution

robust reputation randomization
Robust: reputation & randomization
  • Neighbor reputation: from query completion + verification
  • Forward query: random choice, use reputation
  • Cache replacement: random & reputation
  • Timers, removal of failing entries from the cache

Distributed Peer-to-peer Name Resolution

design goal 4 privacy
Design Goal 4: Privacy
  • Some information is sensitive: location, membership in groups, documents…
  • Control who can learn what you publish!

Distributed Peer-to-peer Name Resolution

privacy control the scope of publication
Privacy: control the scope of publication
  • Peer-to-peer name cloud = set of caches
  • Parallel clouds
    • Ad hoc, on the same “link”
    • In the same “site”
    • Within a group (group = authority)
    • The whole Internet
  • Enforcement:
    • Check membership of requestor
    • Don’t forward outside of scope
    • Don’t cache out of scope records

Distributed Peer-to-peer Name Resolution

design goal 5 immediately usable
Design Goal 5: immediately usable
  • On the Internet, Name = Domain Name
  • Used for Web Page, E-Mail, FTP
  • Limited availability, requires a contract and a permanent IP address.

Distributed Peer-to-peer Name Resolution

usable gateway to the dns
Global DNS name:

.pnrp.net

Use in URL, e-mail

Enables bootstrap

Central DNS gateway:

Publish NS record,

Join P2P cloud,

Forward requests

Local gateway:

P2P aware resolver

Usable: gateway to the DNS

Target Node: Reply on the same path

Look up initiated

PNRP.net

Distributed Peer-to-peer Name Resolution

peer to peer naming summary
Numbers are our friends: hosts, groups, URL

Scale to the size of the Internet, peer-to-peer, no server.

Prototype tested with 50,000 nodes

Secure, Private, Robust, Usable

Peer-to-peer Naming: Summary

Target Node: Reply on the same path

Look up initiated

PNRP.net

Distributed Peer-to-peer Name Resolution

peer to peer roadmap
Peer-to-Peer Roadmap
  • UPnP Enabled NATs – End of ‘01
  • IPv6 Service Deployment – End of ‘01
  • P2P SDK Design Review – End of ‘01
  • P2P SDK beta – Q1-02
  • P2P SDK v1 – Q3-02

Distributed Peer-to-peer Name Resolution

call to action
Call to Action
  • Support IPv6 in your Applications
  • Leverage UPnP NAT Traversal Today
  • Participate in Software Design Review

Distributed Peer-to-peer Name Resolution

ad