• 沒有找到結果。

Chapter 3 Concepts of Research

3.2 Maintenance of Reputation Scores

3.2.3 Gathering of Reputation Scores

3.2.3.3 Use Complementary Nodes in Reputation Collection

Now, search agents collect reputation scores along their search path for the

es not only collect the

g.15: Requests to the complementary node for additional information

related providers. But the difference in the length of search path between the nodes in the network will still cause the variance in the amount of information gathered.

Similar to the adjustment for reputation storage, we apply the scheme of complementary nodes to the collection of reputation scores.

When a search agent collects reputation scores, he do

aggregated scores along his search path for the provider, but he also send requests to his complementary node and ask the complementary node to collect reputation scores in the same manner and return the results gathered. By the scheme of complementary nodes, even if a node has the shortest search path for the provider, it can still get information from its complementary node.

12

In Fig.15, peer(28) is the node with the shortest search path in the search tree for

.3 Verification of Collected Information

Users search for the resources and contact resource managers to get the

.3.1 Properties of Chord Search tree

As we describe in the previous sections, the structure of the search tree in Chord peer(12). In the original scheme of reputation collection without complementary nodes, peer(28) can only get information from peer(12). But if it sends requests to its complementary node, peer(13), and ask for the scores stored along the search path of peer(13), peer(12) will get the aggregated information from more node than the original condition.

3

information of the resource providers. According to the aggregated scores listed in the data stored in the resource manager, users can directly choose one of the resource providers to get the wanted resources. But if the users do not trust the scores supplied by the resource manager or want to check for the truth of these supplied scores, we need a verification scheme for users to verify their got information.

3

networks has the recursive property. Look at Fig.16 below. We can see that the 32-node search tree is divided into two 16-node trees by cutting the edge marked (-1).

And the 16-node subtree can also be divided into two 8-node trees by the edge marked (-2). From these observations, we can conclude that: by cutting an edge marked (-2k), it will generate a subtree with (N/2k+1) nodes, where N is the total number of nodes in the network.

n

Fig.16: The recursive structure of the search tree in Chord

In our schem

plementary node. The elements of the two

Scheme

torage of reputations, the number of nodes which the ggregated value stored in a peer represents depends on the size of the subtree with e of reputation collection, each peer can get the aggregated scores along the search paths of itself and its com

search paths are two edges marked (-16) and edges marked (-8), (-4), (-2), (-1) respectively. According the conclusion we make, the nodes below the edges marked (-16) must be the root of the subtree with (N/32) nodes. In the case of Fig.16, the nodes are the roots of 1-node trees, which are leaf nodes. Similarly, the node below the edge marked (-8) is the root of the subtree with (N/16) nodes, which is the root of 2-node tree.

root is the peer. That is, the score stored in the root of 16-node tree represents twice as

Fig.17: The nodes in the search paths of peer(15) and peer(26)

In Fig.17, we show the search paths of peer(15) and its complementary node,

res in peer(26). And we mark the nodes along the two search paths by different colors. The two red nodes are leaf nodes, and the blue node is the root of 2-node tree. The green node is the root of 4-node tree while the yellow one is the root of 8-node tree.

After collecting the aggregated scores from these nodes, we can use the sco the two red nodes to verify each other because the weight of the two scores should be the same. Then we use the two scores from red nodes to verify the score from blue node because the sum of the weight of the two red nodes should be equal to the one of the blue node. Because the sequence of the weight of these nodes can be treated as a geometric sequence, we can always merge the scores with smaller weights to verify

4

the score with heavier weight.

The scheme of verification can not only be used by general users, it can also be

.4 Other Improvement of The Mechanism

.4.1 Temporal Change

The environments of DHT-based peer-to-peer networks are dynamic, and the

riod (Ex: one day). And when we aggregate the scores getting used by the search agents to verify the reputations they collect. Search agents collect all the aggregated scores along their search paths and the search paths of their complementary nodes. They can directly get information from the top s layers node in the two paths and then use other collected scores to verify the information.

3

3

states of peers may change temporally. Suppose something happened to a peer so that it had poor performance before. Then the reputation scores assigned to it would be lower and the score about it listed in the resource manager may be lower then other providers. If the performance of this peer recovers suddenly, we hope that the scores in the resource manager can reflect the current condition as soon as possible. So we try to reduce the influence of the scores previously stored when computing the aggregating scores.

We set a time pe

from different time periods, we reduce the weight of the scores of the previous time period. For example, suppose there are time periods: tn-1, tn (as Fig.18). In the end of tn-1, we aggregate the scores and get Raggr[tn1]. We use Raggr[tn1] as the initial value of the time interval tn to aggregate the scores received en generating the aggregated scores of the time interval t

in tn . Wh

n, we reduce the weight of Raggr[tn1]:

[ ] * [ 1]

[ ] 1

aggr n n

n

obv aggr

R t f R t

R t

f +

= + , where 0≤ < f 1

[

1

]

aggr

R t

n Raggr[tn]

tn-1 tn

The aggregation of the scores in different tim

obv[ ] R tn

Fig.18: e interval.

Chapter 4 Research Result

In this chapter, we will prove the scalability of our mechanism. We will also show some results of our research.

4.1 The Influences of Skip Distance

In our scheme of reputation storage, every peer uploads its reputation to the upper nodes along the search path. Peers determine which peers to upload according to the skip distance. After receiving the scores uploaded by other peers, each peer combines them and stores an aggregated score. The number of nodes which the aggregated score represents actually depends on the location of the peer in the search tree. In the search tree of a 2m-node Chord network, every node is the root of a subtree with 2k nodes, where k is between 0 and m. When k=0, this node must be a leaf node.

And if k=m, the node must be the root node of the search tree. A peer receives the reputations uploaded by the nodes in the subtree whose root node is it. So the numbers of nodes which an aggregated score represents is directly proportioned to the size of the subtree whose root is the keeper of the score. Another factor which will influence the number of nodes which a aggregated score represents is the skip distance. In the trees with the same size, different skip distance will cause different storage conditions so that the number of node from which a peer will receive reputations will also be different. Next, we discuss the relation between the skip distance and the number of nodes from which a peer receives reputations.

4.2 The Relations between Search Trees and Pascal Triangle

By analyzing the searching trees of Chord, we can observe that each layer of the Pascal triangle corresponds to a searching tree with a specific number of layers. And the entries in one layer of the Pascal triangle give the numbers of nodes with different depths in the corresponding searching tree. The Fig.19 below is a part of the Pascal triangle where Pld means the d-th entry in the l-th layer of the Pascal triangle:

d

Pld 0 1 2 3 4 5 6 ……

0 1 1 1 1 2 1 2 1 3 1 3 3 1 4 1 4 6 4 1 5 1 5 10 10 5 1 6 1 6 15 20 15 6 1

...

l

...

Fig.19: Pascal triangle.

As mentioned above, the l-th layer of the Pascal triangle corresponds to the searching tree with height = l (we define the height of a tree as the maximum distance from root to other nodes). And the d-th entry in this layer respectively gives the number of nodes with depth = (l - d) in this searching tree. Now we take the searching tree with 32 nodes as example. The height of the searching tree of 32-node Chord network is 5. Fig.20 shows such tree structure. It also shows the number of nodes and the number of leaf nodes in each layer with different depths. We write the information in table format (Table.1). We can see that the numbers of nodes in layers with depths

= (5, 4, 3, 2, 1, 0) are (1, 5, 10, 10, 5, 1) respectively, which is the same as the layer with l = 5 in the Pascal triangle.

Fig.20: The number of nodes in each layer of the search tree

depth Number of nodes

5 1 4 5 3 10 2 10 1 5 0 1

Table.1: The number of nodes in each layer of the search tree.

4.3 The Number of Nodes Which An Aggregated Score Represents

When skip distance = s, each peer will receive the reputations from the nodes which are s, 2s,… layers lower than it in the search tree. In the previous sections, we mentioned that the number of nodes which are several layers lower than root is relational to the Pascal triangle. Therefore, when skip distance = s, the number of nodes from which a peer will receive reputations about a certain provider can be computed by summing some certain elements in the Pascal triangle. For example, if a node is the root of a 32-node Chord search tree, and suppose s = 2, we can get the value by computing the sum of the P50, P52, and P54, which is 1 + 10 + 5 = 16. From

this, we can know that when s =2, the root of a 32-node search tree will receive the reputations from totally 16 nodes.

By continuously analysis, we compute the conditions under different values of network size and skip distance. When the size of identifiers is m, the size of the network is 2m. Table.2 lists the numbers of nodes from which the roots of trees with different sizes m receive reputations under different value of skip distance s. And Fig.21 shows the ratio of the number of reputations a node receives to the number of the tree whose root is the node.

m s=2 s=3 s=4 s=5 s=6 s=7 s=8

1 1 1 1 1 1 1 1

2 2 1 1 1 1 1 1

3 4 2 1 1 1 1 1

4 8 5 2 1 1 1 1

5 16 11 6 2 1 1 1

6 32 22 16 7 2 1 1

7 64 43 36 22 8 2 1

8 128 85 72 57 29 9 2

9 256 170 136 127 85 37 10

10 512 341 256 254 211 121 46

11 1024 683 496 474 463 331 166

12 2048 1366 992 859 926 793 496

13 4096 2731 2016 1574 1730 1717 1288

14 8192 5461 4096 3004 3095 3434 3004

15 16384 10922 8256 6008 5461 6451 6436 16 32768 21845 16512 12393 9829 11561 12872 17 65536 43691 32896 25773 18565 20129 24328 18 131072 87382 65536 53143 37130 34885 43912 19 262144 174763 130816 107883 77540 62017 76552 20 524288 349525 261632 215766 164921 116281 130816

Table.2: The result of computation under different values of m and s.

0.00%

Length of hashed identifiers in Chord

The ratio of the information stored in the root to the total number of the nodes in the network s=2

s=3

Fig.21: The ratio of the reputations stored in the root of a tree to the total number of nodes in the tree

With the increasing of the value of m, the ratio will converge to (1/s). For example, when s=8, the ratio converges to (1/8) = 12.5%. That is, the root of a tree will get reputation from (1/8) of the nodes in the network. Therefore, the more the value of s is, the less each node has to maintain. But the number of nodes which the aggregated score can represent also becomes less than the conditions with smaller value of s.

4.4 The Information Can Be Collected in the Reputation Collection

As mentioned in section 3.2.3.2, the information contained in the whole search path can be got from the nodes in the top s layers of the search path. So the next to discuss is how much information which a user can get in the scheme of reputation collection.

In the section 4.3, we describe the information contained in the aggregated scores stored in a node. So we know that the root of the whole search tree will keep the score

containing the aggregated value of the opinions of (N/s) nodes. Taking the longest search path as example, the size of the subtree below a node is a half of the size of the subtree below its parent node. In Fig.32, peer(n) is the root of the 32-node tree. while peer(n-1), peer(n-3), peer(n-7), peer(n-15), peer(n-31) are the roots of the 16-node, 8-node, 4-node, 2-node, 1-node tree respectively.

n

Fig.22: The search tree of a 32-node Chord network

along the search path, the top node keeps the information from (N/s) nodes, So

and the second node keeps the information from (N/2s). If we collect scores from the nodes in the top s layers of the search path, we can compute the amount of

non-repeated information collected by:

1 along the longest search path will converge to the aggregated opinions of 2 1

( )(1 ) 2s

s

of the nodes in the networks. Table.3 shows the result of the actual comp can see that the more the value of s is, the slowest the ratio converges to

utation. We 1 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00%

2 75.00% 75.00% 75.00% 75.00% 75.00% 75.00% 75.00%

number of nodes in the network

.3: ratio of e collec d inform tion alon the lon est path o the tot

able.3. We can see the convergence of the ratio under ifferent values of s in the figure.

Fig.23 shows the graph of T

Length of hashed identifiers in Chord

The ratio of the information collected along the lch path to the total number of the nodes in the net s=2

s=3

Fig.23: The ratio of the collected information along the longest path to the total number of nodes in the network

f the longest search path is the shortest path in the arch tree. So the information collected in the complementary path is only the The complementary path o

se

aggregated score stored in the root node which has been gathered in the original path.

That means that the complementary path does not aid reputation collection. But for other search paths, the nodes in the top s layers of their complementary paths will help to increase the information collected totally because the information additionally got is not repeated in the original path. So we can conclude that the information each peer can get in our approach represents the opinions of at least 2 1

( )(1 ) 2s s

chanism on

en the size of the network

− of all the nodes in the network when the network is large enough.

The amount of information each peer can collect in our me ly depends on the value of s. Therefore, we can conclude that: wh

doubles, the amount of information a peer can get will also double. That is, our algorithm is a scalable algorithm.

Chapter 5 Conclusion and Future Works

In this chapter, we will describe the conclusions of our research. Then we will also describe some future works of out works.

5.1 Conclusions

We present an algorithm for global trust and reputation management in DHT-based peer-to-peer networks. It includes the maintenance of the reputation scores and the aggregation of collected reputations. By the algorithm, each user can store the reputation scores assigned to a certain peer along the searching path for this peer. When users need some resources, they only need to search for the resource in the original manner. They can get the collected and aggregated scores supplied by the search agent and then make selection of resource providers directly according to the scores. If they do not trust the scores supplied by the search agents, they can also perform the verification scheme to verify the scores and make proper selection.

In our algorithm, peers in the DHT-based networks can get reputation scores in a fix ratio to the number of node in the network by contacting at most ⎡log2N⎤ nodes, where N is the total number of peers in the networks. In fact, when the network is large enough, peers can get at least the opinions of 2

( )(1 2

1s) N

s − nodes in the network, where s is the skip distance. The skip distance is a variable which can be determined in advance. So the mechanism in our approach is scalable.

5.2 Future Works

In our work, we focus on the management of reputation scores and trust relations in the DHT-based peer-to-peer networks. We don’t limit the using of the reputation system. In fact, reputation systems can be multi-scoring. That is, users assign reputations in several manners. The method of assigning reputation scores influences the evaluation of reputation scores, and it also influences the precision of the decision making as a matter of course. To make the selection of resource provider more precisely, the assignments of reputations and trustworthiness are both worth researching. Additionally, we can also improve the verification scheme in our work. A more precise verification scheme can protect users from malicious behaviors more significantly.

The storage of reputations is another issue worth researching in this work. How to keep the convenience of reputation storage and collection and the distributed property of the DHT-based peer-to-peer networks is an important issue for us to continuously discuss.

Reference

[1] E.K.Lua, J.Crowcroft, M. Pias, R.Sharma and S. Lim. “A Survey and Comparison of Peer-to-Peer Overlay Network Scheme”, In IEEE Communications And Tutorial, March, 2004.

[2] I. Stoica, R. Morris, D. Karger, M.F. Kaashoek, H. Balakrishnan. “Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications” In SIGCOMM’01, ACM, August 27-31, 2001.

[3] E. Damiani, S.D.C.d. Vimercati, S. Paraboschi, P.Samarati, F. Violante. “A Reputation-Based Approach for Choosing Reliable Resources in Peer-to-Peer Networks” CCS’02, ACM, Washington, DC, USA. November 18-22, 2002.

[4] R. Dingledine, N. Mathewson, P. Syverson. “Reputation in P2P Anonymity Systems”.

[5] eBay website. www.ebay.com.

[6] L. Xiong, L. Liu. “A Reputation-Based Trust Model for Peer-to-Peer eCommerce Communities”, In Proceedings of the IEEE International Conference on E-Commerce (CEC’03), 2003.

[7] B.K. Alunkal, I.Veljkovic, G.v. Laszewski, K. Amin. “Reputation-Based Grid Resource Selection”.

[8] A. Josang, E. Gray, M. Kinateder. “Analysing Topologies of Transitive Trust”.

[9] M. Richardson, R. Agrawal, P. Domingos. “Trust Management for the Semantic Web”.

[10] S.D. Kamvar, M.T. Schlosser, H. Garcia-Molina. “The EigenTrust Algorithm for Reputation Management in P2P Networks”. WWW2003, Budapest, Hungary. May 20-24, 2003.

相關文件