gnunet distributed data storage - git.gnunet.org€¦ · gnunet distributed data storage dht and...

102
GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans 1 1 Technische Universit¨ at M¨ unchen Department of Computer Science Network Architectures and Services July, 24 2010

Upload: others

Post on 01-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet Distributed Data StorageDHT and Distance Vector Transport

Nathan S. Evans1

1Technische Universitat MunchenDepartment of Computer Science

Network Architectures and Services

July, 24 2010

Page 2: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Overview

Overview

Distributed Hash Tables

UsageBackgroundKademlia

Restricted Route Networks

GNUnet DHT

MotivationDesignImplementationIssues

Distance Vector Transport

PurposeDesignBenefits

Summary and Conclusion

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 2 / 102

Page 3: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Basics

Shared data storage for P2P networks

Reliably store files, data

Pool bandwidth, storage space

Data remains when publisher disappears

Decentralization

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 3 / 102

Page 4: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Basics

Data identified by keys

Peers store data based on key

Distributed Key/Value mapping

Load balancing

Simple PUT /GET abstraction

Scalable

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 4 / 102

Page 5: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Example - Pool of Nodes

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 5 / 102

Page 6: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Example - Data XYZ Stored in Network

XYZ

XYZ

XYZ

XYZ

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 6 / 102

Page 7: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Example - Data Available when Nodes Lost

XYZ

XYZ

XYZ

XYZ

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 7 / 102

Page 8: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing

Routing is the essential internal function of DHT’s

Enables storage, lookup

DHT’s have distance metric Da,b where a, b are keys or nodeidentifiers

Common DHT’s route requests to next closest node w.r.t key

⇒ Provided closest node is found, a PUT and subsequent GET request fora key will reach the same node, and data will be stored/found properly.

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 8 / 102

Page 9: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Base Topology

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 9 / 102

Page 10: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Peer (1, 1, 2, 2)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 10 / 102

Page 11: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 1

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 11 / 102

Page 12: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 2

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 12 / 102

Page 13: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 3

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 13 / 102

Page 14: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 4

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 14 / 102

Page 15: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 5

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 15 / 102

Page 16: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 6

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 16 / 102

Page 17: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 7

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 17 / 102

Page 18: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 8

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 18 / 102

Page 19: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 9

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 19 / 102

Page 20: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 10

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 20 / 102

Page 21: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 12

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 21 / 102

Page 22: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 13

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 22 / 102

Page 23: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Routing Example - Data Search 14

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 23 / 102

Page 24: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Limitations

Not secure

Eclipse attacksBlock access to dataDoS

Not scalable/decentralized

Routing tables and maintenanceRequire trusted authority

Require well connected graph

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 24 / 102

Page 25: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Base Topology

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 25 / 102

Page 26: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Put Data Normal

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 26 / 102

Page 27: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Get Data Normal

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 27 / 102

Page 28: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Random Mallory 1

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 28 / 102

Page 29: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Random Mallory 2

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 29 / 102

Page 30: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Random Mallory 3

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 30 / 102

Page 31: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Sybil and Mallory

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 31 / 102

Page 32: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Sybil and Mallory 2

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 32 / 102

Page 33: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Sybil and Mallory 3

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 33 / 102

Page 34: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Mallory Surround

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 34 / 102

Page 35: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Mallory Surround 2

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 35 / 102

Page 36: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Basics

DHT Attack Example - Mallory Surround 3

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 36 / 102

Page 37: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Routing

Routes to peer with most matching bits

Assume sufficiently full routing tables

Number of possible nodes is halved at each step

Results in O(log n) steps

Same method used to search a binary tree

Metric is simple, other DHT’s require multiple routing tables toachieve same performance

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 37 / 102

Page 38: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Routing Table

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 38 / 102

Page 39: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Routing Table

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 39 / 102

Page 40: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Routing Table

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 40 / 102

Page 41: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Routing Table

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 41 / 102

Page 42: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Searching for 010

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 42 / 102

Page 43: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Searching for 010

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 43 / 102

Page 44: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Searching for 010

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 44 / 102

Page 45: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Searching for 010

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 45 / 102

Page 46: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Peer 101 Searching for 010

0 1

0 1

0 1 0 1

0 1

0 1 0 1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 46 / 102

Page 47: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distributed Hash Tables Kademlia

Kademlia Today

Kademlia most widely used DHT

“Kad” network used by eDonkey, eMule, aMule

DHT used for searching for and storing “links”

Millions(!) of users

Problems

Highly deterministic routingDoS attacks possibleEclipse, content blocking possibleNAT’d users need “buddy” to participateRequires fully connected topology

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 47 / 102

Page 48: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Restricted Route Networks

Restricted Route Network Topologies

Assumption that any two peers with an IP address can communicatedoesn’t always hold

NATFirewallsMobile NetworksAd-hoc NetworksSensor Networks

DHT’s commonly assume/require universal connectivity

We would like our DHT to function in all the above networks

Build in support for uPnP, NAT punching, etc.

Goal: provide more connectivity to sparsely connected graphs (DV)

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 48 / 102

Page 49: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT Motivation

Motivation

Efficient

Decentralized

Scalable

Secure

ReliableFault-tolerantProvides availability

Operates in diverse topologies

⇒ Build off previous DHT designs

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 49 / 102

Page 50: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT Motivation

Kademlia Comparison

Kademlia similarities

Use ⊕ distance metricRouting table made up of k-buckets⇒ Bucket ki holds peers with matching prefix length iEfficient, binary search like routing (O(log n))

Departure from Kademlia

Randomized, recursive routingForward requests to multiple peersClosest local peers to key store dataDesigned to work in diverse networks, even those without universalconnectivityRouting works with sparse set of connections

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 50 / 102

Page 51: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Base Example

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 51 / 102

Page 52: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 1 (Normal)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 52 / 102

Page 53: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 2 (Randomized)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 53 / 102

Page 54: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 3 (Randomized)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 54 / 102

Page 55: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 4 (Randomized)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 55 / 102

Page 56: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 5 (Randomized)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 56 / 102

Page 57: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 6 (Failure)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 57 / 102

Page 58: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 7 (Split)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 58 / 102

Page 59: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Example 8 (Randomized and split)

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 59 / 102

Page 60: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - Base

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 60 / 102

Page 61: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - 1 Malicious

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 61 / 102

Page 62: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - Split-route

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 62 / 102

Page 63: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - Out-route

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 63 / 102

Page 64: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - 3 Malicious

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 64 / 102

Page 65: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Get Example - Route around

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 65 / 102

Page 66: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Surround Data

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 66 / 102

Page 67: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Insert Redundancy

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 67 / 102

Page 68: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT GNUnet DHT Examples

GNUnet DHT - Mallory and Sybil fail

0 1 2 3 4 50

1

2

3

4

5

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 68 / 102

Page 69: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT Implementation

Implementation

DHT implemented in both 0.8 and 0.9 versions of GNUnet

Kademlia style routing table, randomized recursive routing

Routing table from connected peers

Testing and evaluation framework

Start GNUnet peersConnect in certain topologyInsert/retrieve data, log high and low level results

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 69 / 102

Page 70: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

GNUnet DHT Issues

Remaining Issues

Determining topology (and therefore network size) is difficult

Need to know for appropriate routing

More testing with malicious peers and churn needed

Routes through network are found, not always efficiently

Simulate large number of well connected peers

⇒ More complete routing tables ≈ better routing: can we improve ourtables?

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 70 / 102

Page 71: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Purpose

Fisheye Bounded Distance Vector

Efficient routes betwen nodes can be determined using distance vectorprotocol

Every node publishes complete routing informationData disseminated to all nodes; so best routes are found

Distance vector requires lots of communication and state

Limit routing information shared by hops to target

Gives each node a complete “Fisheye” view of their localneighborhood

Using FBDV in GNUnet provides more peers than available by onlydirect connections

Restricted route networks can become better connected!

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 71 / 102

Page 72: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Design

Design

Distance vector implemented as transport plugin

When peers connect, they gossip their known neighbors

Gossiped peers can be communicated with via gossiper

Assume a network of three peers, A, B and C

A connects to B, then B connects to C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 72 / 102

Page 73: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - Peers A, B, C connected in line

A CB

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 73 / 102

Page 74: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - Peer B gossips C to A, A to C

A CBC:B:1 A:B:1

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 74 / 102

Page 75: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - Peers A and C “connected” via B

A CB

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 75 / 102

Page 76: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - Peer D joins, connects to C

A CB D

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 76 / 102

Page 77: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - Peer C gossips B, A to D

A CB DB:C:1A:C:2

D:C:1D:B:2

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 77 / 102

Page 78: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Example

Example - D “connected” to B, A via C

A CB D

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 78 / 102

Page 79: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: Services for peers A, B, C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 79 / 102

Page 80: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE A receives message for C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 80 / 102

Page 81: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE A hands to TRANSPORT A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 81 / 102

Page 82: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT A hands to DV A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 82 / 102

Page 83: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: DV A hands to CORE A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 83 / 102

Page 84: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE A hands to TRANSPORT A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 84 / 102

Page 85: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT A hands to TCP A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 85 / 102

Page 86: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: Message sent via TCP to Peer B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 86 / 102

Page 87: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TCP B hands to TRANSPORT B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 87 / 102

Page 88: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT B hands to CORE B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 88 / 102

Page 89: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE B hands to DV B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 89 / 102

Page 90: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: DV B hands to CORE B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 90 / 102

Page 91: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE B hands to TRANSPORT B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 91 / 102

Page 92: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT B hands to TCP B

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 92 / 102

Page 93: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: Message is sent via TCP to peer C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 93 / 102

Page 94: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TCP C hands to TRANSPORT C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 94 / 102

Page 95: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT C hands to CORE C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 95 / 102

Page 96: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE C hands to DV C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 96 / 102

Page 97: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: DV C hands to TRANSPORT C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 97 / 102

Page 98: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: TRANSPORT C hands to CORE C

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 98 / 102

Page 99: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Detailed Example

Under the Hood

CORE A

TRANSPORT A

DV A

TCP A

CORE B

TRANSPORT B

DV B

TCP B

CORE C

TRANSPORT C

DV C

TCP C

Figure: CORE C delivers message from A

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 99 / 102

Page 100: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Distance Vector Transport Benefits

Benefits of FBDV

Provide more available peers to DHT

Local routing very efficient, transport selection further optimizes

Sparse topologies have better chance for routing

Allows DHT routing algorithm to remain more general

Shifts connection overhead from file handles to memory/CPU

DV messages essentially onion encrypted/routed

⇒ DV may be used in the future for long lived Tor style “circuits” toprovide anonymity!

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 100 / 102

Page 101: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Summary and Conclusion

The End

GNUnet should have a DHT

Distributing storageReplicationReliability, scalability

DHT should be efficient, secure

Must compromiseDecide which goals most importantBuild on existing designsRandomized routing

DHT should work in diverse topologies

Requires flexible routingUse DV to help “secluded” peers

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 101 / 102

Page 102: GNUnet Distributed Data Storage - git.gnunet.org€¦ · GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans1 1Technische Universit at Munchen Department

Summary and Conclusion

Questions?

N. Evans (TUM) GNUnet Distributed Data Storage July, 24 2010 102 / 102