Tải bản đầy đủ (.pdf) (7 trang)

DSpace at VNU: Mobile Peer-to-Peer Approach for Social Computing Services in Distributed Environment

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (750.35 KB, 7 trang )

Mobile Peer-to-Peer Approach for Social Computing
Services in Distributed Environment
Ha Manh Tran

Khoa Van Huynh

School of Computer Science
and Engineering
International University
Vietnam National University

Department of Network and
Service Management
VNPT Dong Thap
VNPT Group


Khoi Duy Vo


Son Thanh Le

School of Computer Science
and Engineering
International University
Vietnam National University

School of Computer Science
and Engineering
International University
Vietnam National University







ABSTRACT
This paper presents a mobile peer-to-peer approach that can
be applied to build social computing services in distributed
environment. This approach features peer-to-peer networks
with the support of mobile devices that allows users to participate in social computing services including data sharing and searching services. Due to the limitations of system resource and network connectivity, mobile peers cannot
easily undertake complicated operations, such as processing
complex queries, indexing and transmitting large amount
of data. This approach employs a super peer peer-to-peer
network to deal with the problem of peer heterogeneity. It
uses workstations as peers to assist mobile peers with insufficient storage, bandwidth and processing capability in dealing with complicated operations, while mobile peers possess
ordinary operations such as publishing and searching data.
We have extended the Gnutella protocol to provide operations on peers and mobile peers. The evaluation of the
prototyping system has performed on a number of laboratory workstations and Android emulators to investigate the
feasibility and scalability of the system.

Categories and Subject Descriptors
C.2 [Computer Communication Networks]: Distributed
Systems—peer-to-peer networks, decentralized online social
networks, mobile applications; H.3.3 [Information Search
and Retrieval]: [software bug report retrieval]

Keywords
Peer-to-Peer Networks, Decentralized Online Social Networks,
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are

not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise, to
republish, to post on servers or to redistribute to lists, requires prior specific
permission and/or a fee.
SoICT’13 December 05-06, 2013, Danang, Vietnam
Copyright is held by the owner/author(s). Publication rights licensed to
ACM. ACM 978-1-4503-2454-0/13/12 ...$15.00.
/>
Social Computing Services, Mobile Computing Services, Software Bug Report Retrieval

1.

INTRODUCTION

Content delivery is the tendency of today data communication. Social networks, peer-to-peer (P2P) networks and
virtual communities, such as Youtube video sharing, Facebook social network, BitTorrent P2P network contribute a
significant amount of digital content to the Internet. These
networks also attract a huge number of users participating in online services, such as online games, multimedia file
searching and sharing, video and audio streaming. With the
growth of mobile and networking technology, users tend to
use mobile devices for these online services on the Internet.
Mobile computing has been recently applied to social networks, P2P networks and virtual communities, where mobile
devices not only use services but also undertake operations
related to network formation and service provision.
Applying mobile devices to the complicated operations
can be demanding, but challenging. Mobile devices contain
a number of limitations of network connectivity, system resource, peripherals and power consumption. The networks
using mobile devices possibly face several problems of intermittent connectivity, processing incapability and data unavailability, thus reducing the performance and reliability of
the networks. We propose a mobile P2P approach that employs an appropriate P2P network with the support of mobile devices to foster user online activities. This approach
first applies the super peer P2P network to support mobile devices as mobile peers for network formation. This

network combines peers and mobile peers to assist peers
with limited storage, bandwidth and processing capability
in dealing with complicated operations, such as processing
complex queries, indexing large databases, or transmitting a
large amount of data. The approach then exploits the data
sharing and searching capability of P2P networks to provide
social computing services on distributed environment. The
contribution is thus threefold:
1. Studying the existing P2P protocols and applications
supporting for mobile devices, then proposing a mo-

227


bile P2P approach with network formation and search
service
2. Implementing several components of the prototyping
system including query handler and data publisher with
the extension of the Gnutella protocol
3. Evaluating the feasibility and scalability of the prototyping system using software bug report datasets, such
as RedHat, Mozilla, Ubuntu, Asterisk, etc.
The rest of the paper is structured as follows: the next section includes some background of P2P networks and mobile
P2P networks, describes the existing P2P frameworks for
building social networks and presents the requirement analysis of a feasible mobile P2P network. Section 3 provides a
study of the existing mobile P2P protocols and the recent development of mobile P2P applications that help choosing an
appropriate P2P protocol and development platform. Section 4 proposes a mobile P2P approach with the detailed design of system architecture, component communication and
protocol support. Several experiments in Section 5 report
the feasibility and scalability of the prototyping system before the paper is concluded in Section 6.

2.


RELATED WORK

A P2P network contains a large number of workstations
that share computing resources including storage, bandwidth
and processor power. Each workstation or peer in the network acts as a client and server to consume and provide services respectively. Peers can dynamically join and leave the
network without causing the instability of other peers. The
network also possesses advantages in reducing collaboration
cost through ad-hoc communication process and providing
high fault-tolerance and scalability. There are three types
of P2P networks: structured, unstructured and hybrid networks.
The structured P2P network is tightly controlled in topology and a peer is fixed in a logical location when connecting
to other peers. This kind of networks uses Distributed Hash
Table (DHT) to generate uniquely consistent identifiers for
peers and resources such that the peers hold the resource
indexes if their identifiers are in the same identifier space.
Lookup queries are forwarded to the peers which are closer
to the resources in the identifier space. The prevailing structured P2P systems are CAN [16], Chord [18], Kademlia [15],
. . . The unstructured P2P network is loosely controlled in
topology and a peer connects to other peers in a random
fashion. Each peer maintains a list of resources in the local
repository. Flooding-based search is a common mechanism
used to find resources in this kind of networks. Peers send
queries to the neighboring peers for queryhits. The key disadvantage of these networks is severe scalability problem
as the number of queries and peers increase. The prevailing unstructured P2P systems are Gnutella [2], Freenet [6],
BitTorrent [7]. The super peer P2P network is a hybrid
network that combines the characteristics of the P2P network with the client-server network to address the problem
of heterogeneous peers, i.e., peers possess various capability
of storage, bandwidth and processing power. The study of
Yang et al. [23] has presented guidelines for designing the

super peer network to take advantage of peer capabilities.
The super peer network comprises many clusters connected
to each other to form either structured or unstructured P2P

networks, in which each cluster contains a super peer and
a set of clients. The clients submit queries to, and also obtain queryhits from, their super peer while the super peers
forward the queries and receive the queryhits on the super
peer network. The latest version of the Gnutella protocol
has included this super peer concept.
The study of Hu et al. [12] has proposed an architecture
that uses mobile agents on Gnutella networks to support
file sharing capability for mobile devices. This study has
used the JXTA framework [1] to implement the architecture.
However, our study applies mobile computing on P2P networks to build data sharing and searching services on mobile
P2P networks. It emphasizes data search capability of mobile P2P networks for social computing services, rather than
only file sharing capability. A mobile P2P network is a P2P
network with both mobile devices and workstations acting
as peers. Differences between a mobile device and a workstation cause several differences between a mobile P2P network
and a P2P network. First, mobile devices face a problem of
intermittent network connectivity due to battery exhaustion, network latency and low bandwidth, signal coverage
and mobility. Second, mobile devices possess limited system
resources including less memory, weak processors and small
storage compared to workstations. Third, mobile devices
contain limited input and output devices. With these disadvantages, mobile peers cannot easily perform complicated
operations on P2P networks, e.g., the shared data on mobile
peers becomes unreliable due to intermittent connectivity;
mobile peers become a bottleneck due to the incapability of
processing queries. To provide a feasible mobile P2P network, the problems of data availability and peer capability
need to be addressed. Moreover, mobile devices also need an
application development environment with the full support

of libraries, e.g., Android platform.
Decentralized online social networks provide various social computing services on distributed environment. These
services improve the limitations of the centralized servers by
using the decentralized servers. Several studies have applied
P2P technology to building decentralized social networks.
Safebook [8] adopts a decentralized architecture relying on
cooperation among users to deal with the user privacy and
provider application. It also builds trust relationship between users for using online applications. LifeSocial [11, 10]
tackles the problem of high administration cost on multimedia online communities that heavily depend on the centralized systems. It uses a P2P framework to construct a
network architecture and extend functions to include social
networking services, such as user profiles, friend lists, groups,
photo albums, etc. This framework has later been applied
for building secure online social networks. PeerSoN [5] resolves the problem of user privacy and Internet connectivity
on social networks. It replaces the centralized authority of
social networks and provides direct data communication between network nodes by using a P2P framework with encryption. It also use distributed storage to foster local services.
Some of the studies have provided the prototyping systems
and API interfaces for implementing services.

3.

MOBILE P2P PROTOCOLS AND APPLICATIONS

The study of Almudena et al. [9] has included the overview
of several existing mobile P2P protocols. Several proto-

228


Table 1: Overview of mobile P2P protocols (as of Jan. 2013)
Protocols

Platform License Update
Proem
Java
No
2001
JMobiPeer
J2ME
No
2005
Mobile Chedar
J2ME
No
2005
Peer2Me
J2ME
No
2007
Gnutella
Android
No
2011
Symella
Symbian
No
2012
BitTorrent
Multiple
No
2013
Proprietary∗

Multiple
Optional
2013

cols along with frameworks have been proposed for years,
such as Proem [13], JMobiPeer [4], Mobile Chedar [14] and
Peer2Me [22]. These protocols share common characteristics
of being without license and using the Java/J2ME platform.
The Symella protocol [3] is a Gnutella-like protocol proposed
for file sharing applications on the Symbian platform. Only
few applications have found on these protocols. According
to our study, BitTorrent protocol [7] and some proprietary
protocols have been heavily used for mobile P2P applications. The BitTorrent protocol contains several advantages
used for file sharing applications on both workstations and
mobile devices. A centralized server maintains torrent files
that track peers participating in torrent, while downloading
files occur on peers. The proprietary protocols apply existing protocols such as SIP signalling protocol [17] to VoIP
applications. These protocols can easily be implemented on
multiple platforms of mobile devices. Table 1 presents the
update of the existing mobile P2P protocols as of January
2013. Items marked with * mean unpublished protocols.
The existing mobile P2P protocols contain multiple remarkable features. We focus on exploiting the resource of
mobile devices not only for file sharing applications but
also mobile search applications. Table 2 reports the sharing and searching capability of the above protocols. Except
for the proprietary protocols used for VoIP applications,
other protocols support file sharing features. All protocols ignore sharing computing resources, thus making them
hard to support computing applications that heavily use system resource on mobile devices. Some protocols such as
Proem, JMobiPeer, Mobile Chedar, Gnutella, Symella and
BitTorrent provide basic search capability that allow peers
to search file names by matching keywords. The Mobile

Chedar and BitTorrent protocols also use servers to support
sharing and searching operations on peers. Among several
protocols, the Mobile Chedar protocol can be most suitable
for mobile search applications except for one limitation of
using Bluetooth technology for communication.
The BitTorrent protocol has been widely applied to file
sharing applications. Table 3 describes an incomplete list of
mobile P2P implementations based on the BitTorrent protocol. The Android OS seems to be a good platform for mobile
applications because a large number of open source implementations run on the Android OS. These implementations
have also attracted a large number of users.

4.

MOBILE P2P APPROACH

Figure 1 plots the architecture of the proposed mobile P2P
system that focuses on data sharing and searching services.
Note that the architecture can also be extended to covering
specific social computing services. There are two kinds of

peers in this system: mobile peer and search peer. Considering several limitations of mobile peers, search peers are
designed to assist mobile peers’ operations while they are
offline due to connection problems, resource constraint or
battery exhaustion. This architecture coincides the architecture of the super peer P2P networks [23], where search
peers acts as super peers, and mobile peers are referred to
as incapable peers, i.e., peers have insufficient capability to
perform complicated operations. The key difference is that
search peers support searching facility by storing, locating
and indexing data for mobile peers, while mobile peers foster sharing facility by publishing all data or a part of data
on search peers.


Figure 1: Mobile P2P system topology
With this system, mobile peers connect to at least one
search peer when they get online. There exist bootstrapping search peers available on the network. Mobile peers
advertise their data and possibly upload a part of their data
to search peers. Therefore, searching data only occurs on
search peers, while retrieving data occurs on both search
peers or mobile peers. Mobile peers send queries to search
peers, and then search peers in turn forward the queries to
other search peers. The queryhits with either the resulting data or the resulting mobile peers are responded to the
querying mobile peers. Mobile peers can also connect to the
resulting mobile peers for downloading the resulting data.
Figure 2 plots the communication of peers and components
in the system. Search peers and mobile peers possess the
same components: peer controller, query handler, data publisher and database. However, the functionality of these
components can be different on each kind of peers.
Peer controller manages communication among peers and
components. This component exchanges information to both

229


Table 2: Overview of sharing and searching features of mobile P2P protocols (as of Jan. 2013)
Protocols
Multimedia Computing
Search
Server
Resource
Resource
Capability Support

Proem
Yes
No
Yes
No
JMobiPeer
Yes
No
Yes
No
Mobile Chedar
Yes
No
Yes
Yes
Peer2Me
Yes
No
No
Yes
Gnutella
Yes
No
Yes
No
Symella
Yes
No
Yes
No

BitTorrent
Yes
No
Yes
Yes
Proprietary∗
Optional
No
No
Optional

peers and components depending on several types of messages, e.g., a query is forwarded to the query handler component or a request of publishing data is forwarded to the
data publisher component. Query handler is responsible for
query processing. Upon receiving a query, this component
obtains and processes relevant data from the database and
returns the queryhit. This component requires processing
and storage capability, thus mobile peers can only use this
component for downloading the results of the queryhits and
processing very limited database. Data publisher maintains
data items and references from mobile peers. This component creates indexes from the database for search methods.
Mobile peers use this component to keep track on the published data.

data before going offline. The Gnutella protocol supports
five types of messages: ping and pong used to probe the network, query and queryhit used to exchange data, and push
used to deal with peers behind the firewall. Downloading
data is handled separately from this protocol. A Gnutella
message consists of header and content. The attributes of
the header are shown as follows:
Original Gnutella message header
+------------+------------+-----+------+----------------+

| message id | descriptor | ttl | hops | payload length |
+------------+------------+-----+------+----------------+

The message id field is used to detect whether a message
has already arrived at a certain peer before. The payload
descriptor field indicates the type of a message such as, ping
(0×00), pong (0×01), query (0×80), queryhit (0×81) and
push (0×40). The ttl field is the number of times that a
message can be forwarded in the network while the hops field
is the number of times that a message has been forwarded.
The payload length field is the in-byte size of the content
that immediately follows the header. The detailed structure
of the content depending on message types is defined in the
protocol specification [2].
The ping and query messages remain unchanged, while
the pong and queryhit messages are extended to carrying the
publishing data and the resulting data exchanging between
a mobile peer and a search peer, respectively. The attributes
of the pong and queryhit messages are shown as follows:
Original Gnutella pong message
+------+----------+------------+---------+---------------+
| port | ip addr. | num. files | num. kb | optional data |
+------+----------+------------+---------+---------------+

Figure 2: Communication of peers and components
in the mobile P2P system
The Gnutella P2P protocol [2] is most suitable for this
system due to several reasons. First, this protocol supports
super peers for solving the problem of incapable peers, e.g.,
super peers are responsible for routing queries. Second, this

unstructured and flooding-based protocol provides flexible
query processing, thus facilitating both keyword and semantic search methods. Third, this protocol also bolsters data
replication for better data availability. Fourth, there are
multiple open source implementations of this protocol. The
applicability of this protocol to the system is straightforward
because this protocol has already been extended for the P2P
search systems [21, 20]. More specifically, the Gnutella messages need to be changed to enable more efficient search
methods on search peers and allow mobile peers to upload

Original Gnutella queryhit message
+-----------+------+----------+-------+------------+------------+
| num. hits | port | ip addr. | speed | result set | servent id |
+-----------+------+----------+-------+------------+------------+

Upon receiving the ping message from a search peer, a
mobile peer uses the pong message to advertise the publishing data through number of file shared, number of kilobytes
shared and optional data fields. Upon responding the query
message from a mobile peer, a search peer uses the queryhit message to include the resulting data through speed and
result set fields. The information of port and IP address
specifies the downloaded peers. The information of minimum speed and speed discloses the data transmission rate
of the downloaded peers.

5.

SYSTEM EVALUATION

230


Table 3: Overview of mobile P2P implementations based on the BitTorrent protocol (as of Jan. 2013)

Implementations
License
OS
Update Num. of Users
Symtorrent
Freeware
Symbian
2011
100871
WinMobile Torrent
Shareware Windows mobile
2013
90549
Transdroid
Freeware
Android
2013
6077
AndroidTorrent
Freeware
Android
2010
31657
tTorrent Lite
Freeware
Android
2013
11462
aDownloader
Freeware

Android
2013
36509
Swarm Torrent Client Shareware
Android
2013
39675
RuTracker Downloader
Freeware
Android
2013
75864
Torrent Downloader
Freeware
Android
2013
124675
Torrent Engine
Freeware
Android
2013
10234
uTorrent Remote
Freeware
Android
2013
10483

Memory Usage (MB)


250

Search peer

200
150
100
50
0
20
40
60
80
100
Number of Bug Reports (x1000)

Figure 3: Memory usage for different bug datasets
on search peers
Search peers are required to possess sufficient resource capability, while mobile peers play a role of incapable peers.
The first experiment measures the memory usage of a peer
for different bug datasets. Figure 3 shows that a peer needs
approximately 200 MB RAM memory to store 100.000 bug
reports. This memory usage is reasonable for a workstation
with a normal hardware configuration. A mobile peer possibly uses approximately 10 MB RAM memory to load a small
number of 5.000 bug reports. Note that bug reports are various in size ranging from few kilobytes to few megabytes.
A Gnutella peer in the Gnutella network obtains the resulting data indexes in the queryhit messages and then per-

10
Traffic Generation (MB)


We have used a Java open source implementation of the
Gnutella protocol that can run on workstations. We have
extended this implementation to run on Android emulators
with data sharing and searching capability. Note that the
Gnutella protocol basically supports simple keyword based
search method, while our system aims at providing more
complicated search methods. We have used software bug
datasets [19] to evaluate data sharing and searching operations on the mobile P2P system. Bug reports are crawled
from several bug tracking systems, such as Bugzilla RedHat,
Bugzilla Mozilla, Launchpad Ubuntu, Asterisk Mantis, etc.
A bug report usually contains meta-data for administrative
activity and text description for problem solving, which allow the system to provide both keyword and semantic search
methods. The experiments mainly focus on the feasibility
and scalability of the system. In particular, we evaluate
memory usage, network traffic generation, data availability
and response time on the system.

8

Gnutella peer
Search peer
Mobile peer

6
4
2
0
20

40

60
80
Number of Queries

100

Figure 4: Average traffic generation comparison for
the Gnutella peer, the search peer and the mobile
peer

forms downloading the resulting data from the other peers.
The download process is separate from the query process
that usually generates a lot of network traffic on the network.
A search peer in the proposed system uses the queryhit messages to carry the resulting data except for situations that
mobile peers refuse to publish data to peers. Publishing
data to peers improves data availability due to the intermittent connectivity problem of mobile peers. The network
traffic generated by peers therefore increases on the network
considerably as the number of queries increases. The second experiment compares the average traffic generated by
the Gnutella peer, the search peer and the mobile peer using different query sets, as shown in Figure 4. We have
set 30 most relevant bug reports for each queryhit message
and the content of each bug report significantly contributes
the size of the message while the Gnutella queryhit message
only specifies short file names. A mobile peer only sends
queries, receives queryhits and ignores the majority of the
query process, thus generating less network traffic.
Mobile peers can choose to publish all data, a part of data
or no data on search peers. Data availability thus depends
on the existence of mobile peers, given an assumption that
search peers are rarely offline. The third experiment compares three situations using different churn rates. Churn
rate presents the number of peers moving out the network

over a certain period of time. We have tested on 20 mobile
peers with mobile peer rate set to 10% to 50% (or 1 to 5),
e.g., with the mobile peer rate of 10%, there are 2 mobile
peers publishing no data, 2 mobile peers publishing 50% of

231


Data Provision (MB)

250
200
150
100
Churn rate 10%
Churn rate 20%
Churn rate 40%

50
0
0

1

2
3
4
Mobile Peer Rate

5


Figure 5: Data availability for different sets of mobile peers
data, and the remaining mobile peers publishing all data.
Each mobile peer contains a bug dataset of 5.000 bug reports that provide approximately 10 MB data at maximum.
Figure 5 shows that data availability slowly reduces as the
mobile peer rate increases. With the churn rate of 40% and
the mobile peer rate of 50%, the amount of data published
on the network reduces approximately 50%. Note that data
is unavailable because mobile peers refuse to upload data to
peers before going offline. Replication can help resolving the
problem.

Number of Bug Reports

200

Search peer
Mobile peer

150

environment, particularly data sharing and searching services. This approach allows mobile devices to undertake
complicated operations including data sharing and searching operations on P2P networks. Due to the limitations of
system resource and network connectivity of mobile devices,
the architecture design of the proposed mobile P2P system
needs to consider: (i) search peers with storage and processing capability that can perform searching operations,
(ii) mobile peers with data publishing capability that can
improve data availability, and (iii) both keyword and semantic search methods. We have found that several existing mobile P2P protocols do not focus on data sharing and
searching on P2P networks using mobile peers. We have
implemented the prototyping mobile P2P system with the

above requirements. The system recruits the Gnutella P2P
protocol where peers possess sufficient processing and storage capability to accommodate large databases and perform
queries on the databases, while mobile peers can only publish
and download relevant data. The experiments evaluate the
feasibility and scalability of the system using several metrics: memory usage, network traffic generation, data availability and response time. The experimental results reveal
that while search peers use more memory and generate more
network traffic, mobile peers still use reasonable system resource. Moreover, data availability and time response are
acceptably affected by the leaving of mobile peers due to
intermittent connectivity. Future work considers the possibility of extending the mobile P2P approach to other social
computing services including distributed user profile storage
and information sharing group.

7.

100

ACKNOWLEDGMENTS

This research work is funded by Vietnam National Foundation for Science and Technology Development (NAFOSTED) under grant number 102.02-2011.01.

50
0
2

3

4
5
6
7

8
Time Consumption (s)

9

Figure 6: Time consumption for obtaining number
of bug reports on search peers and mobile peers
The system requires fast response time that cannot be
easy to achieve on the P2P networks because of the dependence of peer capability. The fourth experiment measures the time consumption of the query process for different datasets, as shown in Figure 6. A mobile peer sends
each query to its search peer that in turn forwards to other
search peers and also replies to the mobile peer if it possesses
data relevant to the query. Time consumption is therefore
measured by recording wall time on search peers and mobile
peers when they obtain queryhits. Each queryhit contains
30 relevant bug reports at maximum. With the same period
of time, mobile peers receive fewer bug reports than search
peers, e.g., mobile peers and search peers receive 40 and 60
bug reports respectively after 5 seconds. Response time to
mobile peers is higher than search peers using a laboratory
network.

6.

CONCLUSIONS

We have proposed the mobile P2P approach that can be
applied to building social computing services on distributed

8.


REFERENCES

[1] JXTA Project. Last access in
Mar. 2012.
[2] Gnutella Protocol Specification version 0.4. />2001. Last access in Mar. 2013.
[3] Symella. />2006. Last access in Jan. 2013.
[4] M. Bisignano, G. D. Modica, and O. Tomarchio.
JMobiPeer: A Middleware for Mobile Peer-to-Peer
Computing in MANETs. In Proc. 1st International
Workshop on Mobility in Peer-to-Peer Systems
(ICDCSW ’05), pages 785–791, Washington, DC,
USA, 2005. IEEE Computer Society.
[5] S. Bucheggerand, D. Schi´’oberg, L. H. Vu, and
A. Datta. PeerSoN: P2P Social Networking: Early
Experiences and Insights. In Proc. 2nd ACM EuroSys
Workshop on Social Network Systems (SNS ’09),
pages 46–52. ACM, 2009.
[6] I. Clarke, O. Sandberg, B. Wiley, and T. W. Hong.
Freenet: A Distributed Anonymous Information
Storage and Retrieval System. In Proc. International
Workshop on Design Issues in Anonymity and
Unobservability, pages 46–66, Heidelberg, Germany,
2000. Springer-Verlag.

232


[7] B. Cohen. Incentives Build Robustness in Bittorrent.
In Proc. 1st Workshop on Economics of Peer-to-Peer
Systems, 2003.

[8] L. A. Cutillo, R. Molva, and T. Strufe. A
Privacy-Preserving Online Social Network Leveraging
on Real-life Trust. Communications Magazine,
47(12):94–101, 2009.
[9] A. D´ıaz, P. Merino, L. Panizo, and A. M. Recio. A
Survey on Mobile Peer-to-Peer Technology. In Proc.
XV Conference on Concurrency and Distributed
Systems (JCSD ’07), pages 59–68, Nov. 2007.
[10] K. Graffi, C. Gross, D. Stingl, D. Hartung,
A. Kovacevic, and R. Steinmetz. LifeSocial.KOM: A
Secure and P2P-based Solution for Online Social
Networks. In Proc. IEEE Consumer Communications
and Networking Conference (CCNC ’11). IEEE
Computer Society, 2011.
[11] K. Graffi, S. Podrajanski, P. Mukherjee, A. Kovacevic,
and R. Steinmetz. A Distributed Platform for
Multimedia Communities. In Proc. 10th IEEE
International Symposium on Multimedia (ISM ’08),
pages 208–213. IEEE Computer Society, 2008.
[12] T. H. Hu, B. Thai, and A. Seneviratne. Supporting
Mobile Devices in Gnutella File Sharing Network with
Mobile Agents. In Proc. 8th IEEE Symposium on
Computers and Communications (ISCC ’03), pages
1035–1040. IEEE Computer Society, 2003.
[13] G. Kortuem, J. Schneider, D. Preuitt, T. Thompson,
S. Fickas, and Z. Segall. When Peer-to-Peer comes
Face-to-Face: Collaborative Peer-to-Peer Computing
in Mobile Ad hoc Networks. In Proc. 1st International
Conference on Peer-to-Peer Computing (P2P ’01),
pages 75–, Washington, DC, USA, 2001. IEEE

Computer Society.
[14] N. Kotilainen, M. Weber, M. Vapa, and J. Vuori.
Mobile Chedar–A Peer-to-Peer Middleware for Mobile
Devices. In Proc. 3rd IEEE International Conference
on Pervasive Computing and Communications
Workshops (PERCOMW ’05), pages 86–90,
Washington, DC, USA, 2005. IEEE Computer Society.
[15] P. Maymounkov and D. Mazi`eres. Kademlia: A
Peer-to-Peer Information System Based on the XOR
Metric. In Proc. 1st International Workshop on
Peer-to-Peer Systems (IPTPS ’01), pages 53–65,
London, UK, 2002. Springer-Verlag.
[16] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and
S. Schenker. A Scalable Content Addressable Network.
In Proc. Conference on Applications, Technologies,
Architectures, and Protocols for Computer
Communications (SIGCOMM ’01), pages 161–172,
New York, NY, USA, 2001. ACM Press.
[17] J. Rosenberg, H. Schulzrinne, G. Camarillo,
A. Johnston, J. Peterson, R. Sparks, M. Handley, and
E. Schooler. SIP: Session Initiation Protocol. RFC
3261 (Informational), June 2002.
[18] I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and
H. Balakrishnan. Chord: A Scalable Peer-to-Peer
Lookup Service for Internet Applications. In Proc.
Conference on Applications, Technologies,
Architectures, and Protocols for Computer
Communications (SIGCOMM ’01), pages 149–160,
New York, NY, USA, 2001. ACM Press.


[19] H. M. Tran, G. Chulkov, and J. Sch¨
onw¨
alder.
Crawling Bug Tracker for Semantic Bug Search. In
Proc. 19th IFIP/IEEE International Workshop on
Distributed Systems: Operations and Management,
pages 55–66. Springer-Verlag, 2008.
[20] H. M. Tran, S. T. Le, S. V. U. Ha, and T. K. Huynh.
Software Bug Ontology Supporting Bug Search on
Peer-to-Peer Networks. In Proc. 6th International
KES Conference on Agents and Multi-agent Systems –
Technologies and Applications (AMSTA ’13). IOS
Press, 2013.
[21] H. M. Tran and J. Sch¨
onw¨
alder. Heuristic Search
using a Feedback Scheme in Unstructured
Peer-to-Peer Networks. In Proc. 5th International
Workshop on Databases, Information Systems and
Peer-to-Peer Computing. Springer-Verlag, 2007.
[22] A. Wang and K. Saxlund. Peer2Me - Rapid
Application Framework for Mobile Peer-to-Peer
Applications. In Proc. International Symposium on
Collaborative Technologies and Systems (CTS ’07).
IEEE Press, 2007.
[23] B. Yang and H. Garcia-Molina. Designing a
Super-Peer Network. In Proc. 19th International
Conference on Data Engineering (ICDE’03), page 49,
Los Alamitos, CA, USA, 2003. IEEE Computer
Society.


233



×