Compared with traditional Internet technologies, peer-to-peer technologies has functions to realize resource discovery, resource sharing, and load balancing in a highly distributed manner. In addition to the Internet, new networks such as home network, ad-hoc network and sensor network are emerging. An easy prediction is the emergence of a new environment in which many sensors, people, and many different kinds of devices coexist, move, and communicate with one another over such heterogeneous networks. Peer-to-peer technology is one of the most important and suitable technologies for such ubiquitous networking since it supports discovery mechanisms, simple one-to-one communication, free and extensible distribution of resources, and distributed search to handle the enormous number of resources. The authors have designed and implemented a peer-to-peer networking platform for realizing applications, which include various applications for mobile phones. This chapter presents their peer-to-peer networking architecture, protocols, and applications for mobile phones.
In the proposed architecture, bidirectional communication entities, called peer-to-peer nodes, construct a peer-to-peer network by establishing peer-to-peer connection between them. The peer-to-peer nodes communicate one another using the peer-to-peer connections. Each peer-to-peer node has a unique ID. The key elements of our architecture are defined as follows.
Peer-to-peer node: Peer-to-peer node is an independent, bidirectional communication entity. In our architecture, it can be a mobile device, a PDA, a personal computer, a server, a workstation, or any of a variety of devices. Each node has a unique ID and communicates using the ID independent from physical networks.
Peer-to-peer network: The term “peer-to-peer network” means a logical collection of peer-to-peer nodes that have a common interest and obey a common set of policies. The connection between peer-to-peer nodes is established on mutual trust. Each peer-to-peer node can enter or depart the peer-to-peer network at its convenience. Messages are sent from one peer-to-peer node to another directly or via some intermediary peer-to-peer nodes. Routing information is discovered by broadcasting an inquiry message to the network.
Peer-to-peer message: This is data object which is sent and received between peer-to-peer nodes. The peer-to-peer message is a basic unit of exchanging data and has a unique ID.
Peer-to-peer connection: This is a communication channel established between peer-to-peer nodes. The peer-to-peer messages are transmitted across the peer-to-peer connections.
The proposed Peer-to-Peer architecture is shown in Figure 1.