eMule

advertisement
eMule
What is eMule?

Merkur

http://www.emule-project.net/
Features






reliable network
Queue and Credit
system
completely free
Intelligent Corruption
Control
Preview function
Auto priorities and
Source management






Web services and web
server
download organization
wide range of search
complex Boolean searches
messaging and friend
system
build in IRC client
Rating and Score

Score =
Rating x [Waiting time in the queue [s]] / 100

clients.met
eMule connection
eMule connection
eMule connection
eMule connection
Mods

Open source

Update

Each one has different function
Mods

Anti-CreditThief

Boost Friends

Multiple Instances

SLS (Save/Load Sources)

Upload Slot Control

USS (Upload Speed Sense)
Kademlia: A Peer-to-peer Information
System Based on the XOR Metric
Lookup Problem


Given a data item X stored at some dynamic
set of nodes in the system, find it.
This problem is an important one in many
distributed systems, and is the critical
common problem in P2P systems.
DHT




Distributed hash table
Skip-list like routing: Chord
Multiple Dimensions routing: CAN
Tree like routing: Kadamlia
Chord
CAN
Kademlia




For each nodes, files, key words, deploy
SHA-1 hash into a 160 bits space.
Every node maintains information about files,
key words “close to itself”.
The closeness between two objects measure
as their bitwise XOR interpreted as an
integer.
D(a, b) = a XOR b
Kademlia Binary Tree




Treat node as leaves in a binary tree.
For any given node, dividing the binary tree into a
series of successively lower subtree that don’t
contain the node.
For any given node, it keeps touch at least one node
(up to k) of its subtrees. (if there is a node in that
tree.) Each subtree possesses a k-bucket.
Every node keeps a list of (IP, Port, Node id) triples,
and (key, value) tuples for further exchanging
information with others.
Kademlia Binary Tree
Subtrees of a node 0011……
Kademlia Search
When node 0011…… wants search 1110……
Kademlia Protocol




PING: to test whether a node is online
STORE: instruct a node to store a key
FIND_NODE: takes an ID as an argument, a
recipient returns k closest nodes from its
current knowledge.
FIND_VALUE: behaves like FIND_NODE,
unless the recipient received a STORE for
that key, it just the stored value.
Kademlia Lookup




The most important is to locate the k closest nodes to
some given node ID.
Kademlia employs a recursive algorithm for node
lookups. The lookup initiator starts by picking a nodes
from its closest non-empty k-bucket.
The initiator then sends parallel, asynchronous
FIND_NODE to the α nodes it has chosen.
α is a system-wide concurrency parameter, such as 3.
Kademlia Lookup



the initiator resends the FIND_NODE to nodes it has
learned about from previous RPCs.
If a round of FIND_NODES fails to return a node any
closer than the closest already seen, the initiator
resends the FIND_NODE to all of the k closest
nodes it has not already queried.
The lookup could terminate when the initiator has
queried and gotten responses from the k closest
nodes it has seen.
Kademlia Keys Store



To store a (key,value) pair, a participant locates the k
closest nodes to the key and sends them STORE
RPCs.
Additionally, each node re-publishes (key,value)
pairs as necessary to keep them alive,
For Kademlia’s current application (file sharing), we
also require the original publisher of a (key,value)
pair to republish it every 24 hours. Otherwise,
(key,value) pairs expire 24 hours after publication.
P2P Open Questions

Operation cost
–
–
–

Fault tolerance and concurrent change
–

Handle well, for the use of k-buckets
Proximity routing
–

As low as other popular protocols
Look up, O(logN)
Join or leave, O(log2N)
Kademlia can choose from α nodes that has lower latency
Indexing and keyword search
Other filesharing Method
1.
2.
3.
4.
BT(BitTorrent)
Clubbox
Foxy
Web based
About BT and author


Author:Bram Cochen,2002
Homepage:http://bitconjurer.org/
Torrent file and Tracker






For a new user:
1.Get Torrent file to know tracker
2.By tracker to interact with other member
Tracker:member list and location
Torrent file: 1.Tracker location
2.part file of complete name
BT summary


Have to search for torrent file
Have to connect to tracker
–


Recently with the help of DHT, tracker is no longer
necessary
High speed for hot files
Lifetime is shorter than eMule
ClubBox






Korea software
100GB space for free
Have to become member first
Download ClubBox software
File sharing style
Some restriction
ClubBox character





Three level member  different power
Box Points to determine whether can level up
Share more,get more Box Points
Constant download speed about 50kb/s
If we collect enough money points,we can
download up to 3000 kb/s for once
ClubBox summary




Provide a way like ftp
Although its tedious rule,it’s also a good
way for sharing files
We have to go to the forum for files
It has higher security
Web based



User friendly
For free
Many restrictions for files
–
–

Size
Lifetime
Slow access for people in Taiwan
Web based

Upload
–
–
–

http://rapidshare.de
http://www.megaupload.com
http://www.sendspace.com
Abbreviate URL
–
–
http://tinyurl.com
http://0rz.tw
Foxy




A new and hot p2p software recently
Simple interface
Just key in and search
Without any restriction
Foxy controversy
Advantage
Disadvantage
First glances
Under the surface
High Speed
Return all files even it’s a
fake file
Unlimited request, waste
almost all bandwidth and
resource
Easy to use
Hide many details
Powerful Search
Comparsion
BT
Speed
Emule
Convenience
Foxy
Web
V
X
V
X
V
X
V
V
V
Security
Search
power
Clubbox
X
V
V
Reference





http://en.wikipedia.org/wiki/Skiplist 20070409
Hari Balakrishnan, M. Frans Kaashoek, David Karger, Robert Morris,
Ion Stoica. Looking up data in P2P systems. Communications of the
ACM, Volume 46 , Issue 2 (February 2003), SPECIAL ISSUE:
Technical and social components of peer-to-peer computing Pages:
43 – 48
Maymounkov, P., and Mazieres, D. Kademlia: A peer-to-peer
information system based on the XOR metric. In Proceedings of the
1st International Workshop on Peer-to-Peer Systems, Springer-Verlag
version, Cambridge, MA (Mar. 2002); kademia.scs.cs.nyu.edu.
Stoica, I., et al. Chord: A scalable peer-to-peer lookup service for
Internet applications. In Proceedings of ACM SIGCOMM, San Diego
(August 2001); www.pdos.lcs.mit.edu/chord.
http://www.emule-project.net/home/perl/general.cgi?l=30
Reference



http://tw.knowledge.yahoo.com/question/?qid=1105070613541
(20070408)
http://www.gamez.com.tw/showthread.php?t=193301 (20070409)
http://blog.xdite.net/?p=311 (20070409)
Download