Post on 25-Dec-2015
FreenetFreenet
AnonymityAnonymity
Napster, Gnutella, Kazaa do not provide anonymityUsers know who they are downloading
fromOthers know who sent a query
FreenetDesigned to provide anonymity among
other features
FreenetFreenet
Data flows in reverse path of query Impossible to know if a user is initiating or forwarding a query Impossible to know if a user is consuming or forwarding data
“Smart” queries Requests
get routed to correct peer by incremental discovery
* Figure from “Protecting Freedom of Information Online with Freenet”, Ian Clarke and Scott Miller. IEEE Internet Computing, Jan/Feb 2002
FreenetFreenet
Peer-to-peer indexing and searching service
Peer-to-peer file downloading Files served use the same route
as searches (not point-to-point) Provides for anonymity
FreenetFreenet
Completely anonymous, for producers or consumers of information
Resistance to attempts by third parties to deny access to information
Goals: Anonymity for producers and consumers Deniability for information storers Resistance to denial attacks Efficient storing and routing Does NOT provide
Permanent file storage Load balancing
FreenetFreenet
Somewhat similar to Gnutella but… As file passes through ‘vine-like’
framework, the file makes a copy of itself at each point along its route
Implemented encryption to hid the originating point of the file
Vision of open source project is to allow all information, copyrighted or not, to be distributed anonymously and untraceable in a p2p network
http://www.freenet.org
Freenet historyFreenet history
Final Year project Ian Clarke , Edinburgh University, Scotland, June, 1999
Sourceforge Project, most active V.0.1 (released March 2000) Latest version(Sept, 2001): 0.4
What is Freenet and Why?What is Freenet and Why?
Distributed, Peer to Peer, file sharing system
Completely anonymous, for producers or consumers of information
Resistance to attempts by third parties to deny access to information
Us er
User
User User
UserUser
User User
•Each user acts independently
•There is no central directory server
•Peers directly change file information among each other in a query
Architecture of Gnutella and FreenetArchitecture of Gnutella and Freenet
File Discovery Mechanisms in File Discovery Mechanisms in Freenet: Chain ModeFreenet: Chain Mode A request for a file can be forwarded
through many different nodes. If a node does not have the document that
the requestor is looking for, it forwards the request to one of its neighbor that is more likely to have the document The messages form a chain as each node
forwards the request to the next node Message times out after passing through a
certain number of nodes, so that huge chains don’t form.
The chain ends when the message times out or when a node replies with the data.
File Discovery Mechanisms in File Discovery Mechanisms in Freenet: Chain ModeFreenet: Chain Mode
Us er
User
User User
UserUser
User User
A
B
C
D
E
F
G
H *
Computer A send its query to its neighbor B, which forwards it to one of its neighbor D, which in turn forwards it to one of its neighbor G, finally, the query reach H who has the requested data
The reply is passed back through each node that forwarded the request, back to the original node that started the chain
Advantages and Disadvantages Advantages and Disadvantages of Chain Mode in Searchingof Chain Mode in Searching
Advantages: Fast discovery with less network
traffic in average case Search stops once the requested file
is found More scalable
Disadvantages: Slow discovery in worst case
Worst Case Scenario in Chain Worst Case Scenario in Chain Mode DiscoveryMode Discovery
Us er
User
User User
UserUser
User UserC
D
E
F
User
User
A
B
H*
J
IComputer H has the requested file, but the query never reaches it because of poor routingdecision at computer G
Instead, the query ends up with no file found
G
FreenetFreenet
It aims: To allow people to distribute material
anonymously. To allow people to retrieve material
anonymously. To make the removal of material almost
insuperably difficult. To operate without central control.
operation of freenetoperation of freenet
Searches are only passed to one other servent, which pass it on. After no positive response from that chain, another servent is tried.
But the entire document sought is passed along, unless it is too large
Servents keep caches of popular documents until no one asks for it for a long time.
popular documents frequent and close to users.
searching on freenetsearching on freenet
You basically can not search on freenet.
Each document has an identifier The identifier and the document can
not be changed. This will make it difficult to use it
on its own as a device for people to exchange copyrighted material.
Some security and authentication Some security and authentication issuesissues
How to ensure anonymity: Nodes can lie randomly about the
requests and claim to be the origin or the destination of a request
Hop-To-Live values are fuzzy Then it’s impossible to trace back a
document to its original node Similarly, it’s impossible to discover
which node inserted a given document.
ScalabilityScalability
X-axis: # of nodes Y-axis: # of
pathlength The relation
between network size and average pathlenth.
Initially, 20 nodes. Add nodes regularly.
Fault ToleranceFault Tolerance
X-axis: # of nodes failing
Y-axis: # of pathlength The median pathlength
remains below 20 even when up to 30% nodes fails.
Small world ModelSmall world Model
X-axis: # of nodes failing
Y-axis: # of pathlength Most of nodes have
only few connections while a small number of news have large set of connections.
It follows power law
Is it Perfect?Is it Perfect?
How long will it take to search or insert? Trade off between anonymity and searching
efforts: Chord vs Freenet Have no idea about if search fails due to
no such document or just didn’t find it. File lifetime
Freenet doesn’t guarantee a document you submit today will exist tomorrow