12.01.2015 Views

Download - Academy Publisher

Download - Academy Publisher

Download - Academy Publisher

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Figure 1. : Topology of distributed unstructured P2P<br />

In Gnutella, nodes use flooding to forward messages.<br />

If the average of the degrees of the nodes is n and the<br />

c<br />

hops of the messages of the Ping or Query is h, then<br />

when active node sends a message of Ping or Query there<br />

h<br />

would be ( nc<br />

−1)<br />

−1<br />

n ⋅ messages of Ping or Query at<br />

c<br />

nc<br />

−2<br />

the worst[6]. The number is an exponential growth<br />

function on the h. It would consume a lot of bandwidth<br />

while the h is big because there would be a lot of<br />

messages. But when the h is little, the search scopes<br />

would be small and lead to can’t find the needed<br />

resources.<br />

To reduce the number of messages in the<br />

distributed unstructured network, there are three<br />

methods about this problem listed as follows.<br />

(1) Based on improved the mechanism of<br />

forwarding method. This method is improving the<br />

algorithm of flooding by doing not forward message to<br />

all neighbors. Literature[7] put forward Directed BFS. In<br />

this way all nodes preserve statistical data such as the<br />

delay to neighbors. Peer would select some optimal nodes<br />

to sends messages. The number of messages can be<br />

reduced largely by this way. Intelligent-BFS put forward<br />

by Literature[4] is similar to Directed BFS. It sends<br />

messages to the neighbors which have most return results.<br />

k-Walker[5] is that every active nodes sends k different<br />

Walker and every Walker can select next node by random.<br />

If the hops are h there would be k×h messages at worst<br />

and reduce the number of messages largely. Literature[8]<br />

gave a method called hybrid periodical flooding, HPF.<br />

(2) Based on cache. This way contains index cache<br />

and content cache. Literature[1] found that the network<br />

communications on the edge of ISP are reduplicated<br />

mostly and the ratio of hitting the target in the cache<br />

reaches 67 percent while web cache is only 30 to 60<br />

percent. Some systems put the index to normal nodes. All<br />

nodes preserve the indexes about files on the nodes when<br />

there are certain hops between them. When the Peer<br />

receives the query, it can provide response for the<br />

nearby Peer. With locality of query, literature [2,9] put<br />

forward every peer cache the results of search through<br />

itself. Literature[10] studied the KaZaa network by<br />

simulation and showed that content cache could reduce<br />

the demand of bandwidth.<br />

(3) Based on topology optimization. Literature [11]<br />

discussed the mismatch between overlay network and<br />

physical network, has designed a method called<br />

Location-Aware Topology Matching, LTM and assessed<br />

the efficiency of LTM in dynamic and statistically<br />

network. The result of the experiment showed that LTM<br />

can reduce 75 percent of traffic and 65 percent the query<br />

response time. Literature[12] proposed a distributed<br />

solution of non-structural overlay network does not<br />

match the problem ACE (Adaptive Connection<br />

Establishment). The simulations show this method can<br />

reduce the cost of 65 percent for each query and 35<br />

percent response time.<br />

The methods above are cutting high-cost connections,<br />

establishing low-cost connections, but there are short of<br />

proof of the correctness of matching operations, and no<br />

analysis of their matching method would bring forth the<br />

negative impact of net. In addition, all these methods<br />

eliminate mismatching after the mismatching appearance.<br />

This will produce a lot of messages for eliminate<br />

mismatching.<br />

C Distributed Structured P2P<br />

There are a lot of researches about how to construct a<br />

highly structured system because of the poor scalability<br />

of unstructured systems. The point of current researches<br />

is how to find information effectively and most recent<br />

results are based on DHT (Distributed Hash Table) which<br />

is a distributed discovery and routing algorithm. These<br />

algorithms don’t use flooding like Gnutella but through a<br />

distributed hash function. While enter the keywords it<br />

maps to a certain node, and establish a connection with<br />

the node through different rules of routing. The typical<br />

representatives are Chord, CAN [13,14].<br />

Chord use the compatible with the hash function to<br />

assign m bits NodelID to every node and m bits DataID<br />

to every resource. All nodes make up a logistic hoop by<br />

NodleID mod 2 m . The data of k is stored in the first one<br />

whose NodelID>=DataID and the node is called the<br />

successor nodes of the data k and labeled successor(k).<br />

When there are N nodes in system each node preserves<br />

the other O(log (N)) nodes information and store it to<br />

routing table called Finger Table. In this table, the item<br />

i contains the information of node j and meet<br />

j=successor(n+2 i-1 ) where 1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!