• 沒有找到結果。

We evaluate the proposed solutions by two metrics, execution time and message cost, on our application prototype. The evaluation testbed is six commercial Android smartphones (Google Nexus 4) as shown in Fig. 5.6. The parameters in the experiments are as follows. We assume that z = 7 and use MD5 [25] to generate hash values. In the basic Bloom filter solution, the expected false positive rate f is set to 0.001%. In the iterative Bloom filter solution (2

(a) (b) (c) (d) (e) (f)

Figure 5.3: Screenshots of the prototyped Android app: (a) Touch the “Start” to participate in an MDSN. (b) Select the countries the user visited before. (c) Touch the “MATCH” to start the CPM procedure with nearby users. (d) The answer to the all -common problem. (e) The answer to the β-common problem. (f) The answer to the top-γ-popular problem.

iterations), we respectively set f = 10% and f = 0.01% for the first and the second iterations.

The total false positive rate is also 0.001% as that of the basic Bloom filter solution. In addition, we also use the exact strings of attribute items as the baseline solution. We set the average string length of attribute items to 10.

Message size is the major factor that affects the computation and communication perfor-mance. Recall that we determine the Bloom filter size m by considering the potential number of inserted items n , the expected false positive rate f , and the number of hash functions z.

Here, we study the performance issue of the all -common problem by varying n and f with different numbers of users.

1. Varying n: We vary n from 200 to 1000 in each user’s attribute profile. We observe the execution time, which contains computation and communication time during matching.

Fig. 5.4 shows that basic BF and the IBF solutions perform much better than the baseline solution when n is large. This is because Bloom filter reduces message size with its hashing mechanism. Also, the result shows that Bloom filter is computation-efficient since the execution time increases slightly when n increases. Fig. 5.4 shows that the gap between basic BF and IBF shrinks when the number of users increases. This is because the messages exchanged during the IBF procedure increase as the number of users increases.

Fig. 5.5 shows the message costs of the entire network incurred by these solutions. As expected, IBF significantly outperforms baseline and basic BF solutions in message costs.

This is because IBF uses smaller Bloom filter in each iteration.

2. Varying f : We vary f for IBF in its second iteration from 0.001% to 10%. Note that the value of f in the first iteration is fixed. (We omit the performance of basic BF because it

244

198 216 212 224 243

0

200 400 600 800 1000

Execution time (ms)

n

2 parties baseline basic BF IBF

435

671

765

974

1226

284 275 337 408 435

292 297 292 287 291

0

200 400 600 800 1000

Execution time (ms)

n

3 parties baseline base BF IBF

(a) (b)

362 381 392 418 433

0

200 400 600 800 1000

Execution time (ms)

n

4 parties baseline base BF IBF

540

200 400 600 800 1000

Execution time (ms)

n

5 parties baseline base BF IBF

(c) (d)

200 400 600 800 1000

Execution time (ms)

n 6 parties baseline base BF IBF

(e)

Figure 5.4: Comparison of execution time by increasing the number of inserted items to a Bloom filter with (a) two parties, (b) three parties, (c) four parties, (d) five parties and (e) six parties.

is similar to that of IBF.) In this experiment, we set n = 1000. However, in the second iteration of IBF, the number of attribute items to be inserted is the intersection of two sets. We assume here that the expected size of the intersected set is 50. We then use these values and f to choose the Bloom filter sizes in the first and the second iterations of IBF. Fig. 5.7(a) shows that the execution time only decreases slightly when f increases.

The reason is that the intersected set size of the second iteration (50) is much smaller

4092

330 662 992 1324 1656

0

200 400 600 800 1000

Message cost (bytes)

n 2 parties baseline basic BF IBF

6138

579 1161 1740 2322 2904

0

200 400 600 800 1000

Message cost (bytes)

n 3 parties baseline base BF IBF

(a) (b)

884 1772 2656 3544 4432

0

200 400 600 800 1000

Message cost (bytes)

n 4 parties baseline basic BF IBF

10230

1245 2495 3740 4990 6240

0

200 400 600 800 1000

Message cost (bytes)

n 5 parties baseline Basic BF IBF

(c) (d)

1662 3330 4992 6660 8328

0

200 400 600 800 1000

Message cost (bytes)

n 6 parties baseline basic BF IBF

(e)

Figure 5.5: Comparison of message cost by increasing the number of inserted items to a Bloom filter with (a) two parties, (b) three parties, (c) four parties, (d) five parties and (e) six parties.

than that of the first iteration (1000). Because m is proportional to n if f is fixed, the reduced message size is small when varying f in IBF’s second iteration. Fig. 5.7(b) shows the message costs of the entire network in different cases. To sum up, varying f of IBF’s second iteration will not significantly affect the execution time.

Figure 5.6: Application prototyping on Android phones and evaluation testbed.

2Ͳparties 3Ͳparties 4Ͳparties 5Ͳparties 6Ͳparties

1748 1656 1562 1496

2Ͳparties 3Ͳparties 4Ͳparties 5Ͳparties 6Ͳparties

(a) (b)

Figure 5.7: Comparison of (a) execution time and (b) message cost by increasing the expected false positive rate of the IBF.

Chapter 6 Conclusions

In this work, we have presented CPM in an MDSN, which is to identify common attributes among physical neighbors via D2D communications. We consider three CPM problems: all -common, β--common, and top-γ-popular. We propose basic and iterative Bloom filter-based solutions to these problems. We have conducted some evaluations on commercial smartphones to prove that the proposed solutions are communication-efficient. The basic Bloom filter and IBF solutions perform well in execution time when the number of attribute items in each profile is increased. However, the IBF solution incurs lower message costs. We have also demonstrated a prototype on Android smartphones. The application verifies that the proposed solutions are feasible on off-the-shelf smartphones.

Bibliography

[1] Android sdk. http://developer.android.com/sdk/index.html.

[2] M. Bakht, M. Trower, and R. H. Kravets. Searchlight: won’t you be my neighbor? In Proc. of ACM International Conference on Mobile Computing and Networking (MobiCom), 2012.

[3] B. H. Bloom. Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 13(7):422–426, 1970.

[4] E. Bresson, O. Chevassut, D. Pointcheval, and J.-J. Quisquater. Provably authenticated group diffie-hellman key exchange. In Proc. of ACM Conference on Computer and Com-munications Security (CCS), 2001.

[5] A. Broder and M. Mitzenmacher. Network applications of bloom filters: A survey. Internet Mathematics, 1(4):485–509, 2004.

[6] S. Dharmapurikar, P. Krishnamurthy, and D. E. Taylor. Longest prefix matching using bloom filters. In Proc. of ACM Special Interest Group on Data Communication (SIG-COMM), 2003.

[7] P. Dutta and D. Culler. Practical asynchronous neighbor discovery and rendezvous for mobile sensing applications. In Proc. of ACM Conference on Embedded Networked Sensor Systems (SenSys), 2008.

[8] N. Eagle and A. Pentland. Social serendipity: Mobilizing social software. IEEE Pervasive Computing, 4(2):28–34, 2005.

[9] L. Fan, P. Cao, J. Almeida, and A. Z. Broder. Summary cache: A scalable wide-area web cache sharing protocol. ACM Trans. on Networking, 8(3):281–293, 2000.

[10] Foursquare. http://foursquare.com/.

[11] A. Gupta, A. Kalra, D. Boston, and C. Borcea. Mobisoc: A middleware for mobile social computing applications. Mobile Networks and Applications, 14(1):35–52, 2009.

[12] P. Jokela, A. Zahemszky, C. E. Rothenberg, S. Arianfar, and P. Nikander. Llipsin: Line speed publish/subscribe inter-networking. In Proc. of ACM Special Interest Group on Data Communication (SIGCOMM), 2009.

[13] A. Kandhalu, K. Lakshmanan, and R. R. Rajkumar. U-connect: a low-latency energy-efficient asynchronous neighbor discovery protocol. In Proc. of International Conference on Information Processing in Sensor Networks (IPSN), 2010.

[14] N. Kayastha, D. Niyato, P. Wang, and E. Hossain. Applications, architectures, and protocol design issues for mobile social networks: A survey. Proceedings of the IEEE, 99(12):2130–2158, 2011.

[15] P. K. Y. Lai, S.-M. Yiu, K. P. Chow, and C. F. Chong. An efficient bloom filter based solution for multiparty private matching. In Proc. of International Conference on Security and Management (SAM), 2006.

[16] M. Li, N. Cao, S. Yu, and W. Lou. Findu: Privacy-preserving personal profile matching in mobile social networks. In Proc. of IEEE Conference on Computer Communications (INFOCOM), 2011.

[17] X. Liang, X. Li, K. Zhang, R. Lu, X. Lin, and X. S. Shen. Fully anonymous profile matching in mobile social networks. In IEEE Journal on Selected Areas in Communications, 2012.

[18] M. C. Little, S. K. Shrivastava, and N. A. Speirs. Using bloom filters to speed-up name lookup in distributed systems. The Computer Journal, 45(6):645–652, 2002.

[19] S. Liu, L. Kang, L. Chen, and L. Ni. Distributed incomplete pattern matching via a novel weighted bloom filter. In Proc. of International Conference on Distributed Computing Systems (ICDCS), 2012.

[20] Loopt. http://www.loopt.com.

[21] Mobiluck. http://www.mobiluck.com.

[22] M. Motani, V. Srinivasan, and P. S. Nuggehalli. Peoplenet: Engineering A wireless virtual social network. In Proc. of ACM International Conference on Mobile Computing and Networking (MobiCom), 2005.

[23] C. Peng, G. Shen, Y. Zhang, and S. Lu. Point&Connect: Intention-based device pairing for mobile phone users. In Proc. of International Conference on Mobile Systems, Applications, and Services (MobiSys), 2009.

[24] A.-K. Pietil¨ainen, E. Oliver, J. LeBrun, G. Varghese, and C. Diot. Mobiclique: Middleware for mobile social networking. In Proc. of ACM Workshop on Online Social Networks (WOSN), 2009.

[25] R. Rivest. The MD5 message-digest algorithm. In IETF RFC (1321), 2003.

[26] M. Steiner, G. Tsudik, and M. Waidner. Diffie-hellman key distribution extended to group communication. In Proc. of ACM Conference on Computer and Communications Security (CCS), 1996.

[27] J. Teng, B. Zhang, X. Li, X. Bai, and D. Xuan. E-shadow: Lubricating social interac-tion using mobile phones. In Proc. of Internainterac-tional Conference on Distributed Computing Systems (ICDCS), 2011.

[28] M. Terry, E. D. Mynatt, K. Ryall, and D. Leigh. Social Net: Using patterns of physical proximity over time to infer shared interests. In Proc. of ACM SIGCHI Conference on Human Factors in Computing Systems (CHI), 2002.

[29] Y. Wang, T.-T. Zhang, H.-Z. Li, L.-P. He, and J. Peng. Efficient privacy preserving matchmaking for mobile social networking against malicious users. In Proc. of IEEE In-ternational Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), 2012.

[30] Wi-fi peer-to-peer (P2P) specification. https://www.wi-fi.org/knowledge-center/

published-specifications.

[31] Android 2.2 platform highlights - portable hotspot. http://developer.android.com/

sdk/android-2.2-highlights.html.

[32] F.-J. Wu, F.-I. Chu, and Y.-C. Tseng. Cyber-physical handshake. In Proc. of ACM Special Interest Group on Data Communication (SIGCOMM), 2011.

[33] Z. Yang, B. Zhang, J. Dai, A. C. Champion, D. Xuan, and D. Li. E-SmallTalker: A distributed mobile system for social networking in physical proximity. In Proc. of

Inter-[34] R. Zhang, Y. Zhang, J. Sun, and G. Yan. Fine-grained private matching for proximity-based mobile social networking. In Proc. of IEEE Conference on Computer Communica-tions (INFOCOM), 2012.

[35] Y. Zhao and J. Wu. B-sub: A practical bloom-filter-based publish-subscribe system for human networks. In Proc. of International Conference on Distributed Computing Systems (ICDCS), 2010.

[36] H. Zhong, L. Bi, Z. Feng, and N. Li. Research on the design method of mobile social network services. In Proc. of International Conference on Information Management, Innovation Management and Industrial Engineering (ICIII), 2008.

相關文件