Supporting Adaptation of Wireless Communication Protocols

Pervasive devices such as mobile phones and PDAs (Personal Digital Assistants) come with different wireless communication capabilities, for example, WiFi (Wireless Fidelity), Bluetooth, IrDA (Infrared), etc. In order for pervasive devices to interact with each other, they need to have matching (alike) communication capabilities, otherwise such heterogeneous devices would not be able to interact with each other. In this paper we address this issue and propose a system that makes devices with heterogeneous wireless communication capabilities communicate with each other. The proposed system supports adaptation of wireless communication protocols through a proxy, which sits between a client and a server, and supports adaptation of wireless communication protocols. Its functionality involves intercepting a request made by a client with a different wireless communication capability (e.g. Bluetooth) from what the server has (e.g. WiFi), connecting to the server and then sending results back to the client. We have tested the system by implementing a messaging service application and running it on the system. The proxy supports all Bluetooth protocols, i.e. OBEX (Object Exchange), L2CAP (Logical Link Control and Adaptation Protocol), RFCOM (Radio Frequency Communication) and WiFi protocol and can run on (J2MW (Java 2 Micro Edition) enabled mobile phones which support both Bluetooth and WiFi capabilities.

Multiplexing) [1,2]. Accessing information through WiFi is far quicker than the conventional modem over a large network and allows users to connect to internet from any place such as their home, office or a public place without wires.
Wireless devices are able to access information anytime anywhere using these wireless communication The remaining part of the paper is organized as follows: Section 2 provides the related work. Section 3 provides the high-level description of proposed approach.
Implementation and discussion of the proposed approach is presented in section 4. Conclusion is given in section 5 and future work is presented in section 6.

RELATED WORK
Akyildiz, et. al. [13] have developed the NGWS (Next Generation Wireless System), which integrates different wireless technologies (i.e. Bluetooth, WiFi, GPS, 3G Cellular Network). This allows mobile users to access highspeed data (i.e. multimedia services) anywhere and anytime using these different wireless systems. The functionality of their system involves selecting a best network based on user's service needs. For example, if a device is currently accessing a multimedia service using the Bluetooth wireless system and WiFi connectivity has become available, the system would automatically select the WiFi and allow the device to continue accessing multimedia service. To summarize, their system provides adaptation support in terms of switching between various wireless systems based on user's service needs. We also focus on providing adaptation of communication protocol switching but when two devices communicating with each other have different wireless communication protocols.
Vegni [14] argue that the heterogeneous networks for next generation systems can operate together to support seamless mobility, allowing users to remain connected with the services (using heterogeneous networks) while on the move. Mobility support is a form of adaptation in which network connectivity is adapted, i.e. from one network connectivity (e.g. UMTS) to other network connectivity (e.g. WLAN) based on some conditions. The protocol stack is a composition of different protocols and each is suitable for particular conditions. The protocol stack adaptation process involves switching from one protocol to another in reaction to changes in the environment, offering the best possible quality of service.
Another contribution of their research is a proposition of policy-based approach in which adaptation logic is expressed in a high-level policy. The advantage of policybased approach is decoupling between adaptation logic and protocol logic, thus reducing development effort.

THE PROPOSED APPROACH
The The high-level architecture of the proposed system is shown in Fig. 1. The system architecture has three components: Client, Proxy and Server. Each of these components is described in subsequent subsections.

Client
The client in general requests the server for some services or resources. In the proposed system, the client may be Bluetooth-enabled or WiFi-enabled. The Bluetooth client gets connected to the WiFi server through the proxy server to be able to access the services offered by the WiFi server. The sequence diagram for connectivity between Bluetooth client and WiFi server via the proxy is shown in Fig. 2.
Similarly, the Wifi client gets connected to the Bluetooth server through the proxy server to be able to access services offered by the Bluetooth server. The message sequence diagram illustrating the connectivity between WiFi client and Bluetooth server via the proxy is shown in Fig. 3.

Proxy
The key to system design is the proxy component, which is responsible for providing protocol adaptation support.

Server
The server is a software component that waits for clients to connect to it and provides the services requested by the client. The proposed system supports connectivity between (1) Bluetooth client and Wifi Server and (2) WiFi client to WiFi server.

IMPLEMENTATION AND DISCUSSION
The system implementation involves the development of proxy server for establishing communication between client (i.e. Bluetooth client or WiFi client) and server (i.e. Bluetooth server or WiFi server). The system has been tested by developing and running a simple Messaging application on Bluetooth enabled mobile device and WiFi device. Fig. 4 shows a screenshot of the proxy server after it has been started on a mobile device. The search devices option enables the proxy to search all the compatible Bluetooth or WiFi devices within the range.
Before the proxy is run, it is to be ensured that the Bluetooth-enabled and WiFi-enabled servers are active so that proxy is able to search them. Fig. 5 shows the interface of proxy server searching for any Bluetooth and WiFi devices.
The proxy server displays information of all connected Bluetooth or WiFi devices as shown in Fig. 6. If no device is active then the search result displays no device found message. Client application gets connected with the server (i.e. Bluetooth server, WiFi server) through the proxy.
Once devices are connected, the user can proceed to an input screen to enter some text message, which will be sent to the WiFi server (running messaging application) as shown in Figs. 7-8.
Figs. 9-10 show the message exchange between WiFi client and Bluetooth server.

Discussion
The main component of the implemented system is a proxy server, which is capable of supporting different wireless communication protocols (e.g. Bluetooth, WiFi, etc

CONCLUSION
In this paper, we have addressed the research question of what if two pervasive devices want to interact with each other, but having different wireless communication protocols. As a proof of concept, we have designed and implemented the system that enables small devices with dissimilar wireless communication capabilities to communicate with each other. We have tested the system by implementing a messaging service application and running it on the system. One device was Bluetoothenabled and other device was WiFi-enabled and both were able to send and receive messages to/from each other.

FUTURE WORK
The work presented in the paper can further be extended in two directions: (i) The proxy has been implemented for J2ME devices only, which means the system cannot be ported across other platforms, such as Android-based and IOS-enabled devices. The portability can be achieved by providing the cross-platform implementation of the proposed system.
(ii) Currently, the proxy enables Bluetooth-enabled devices to communicate with WiFi enabled devices and vice versa for text-based messages only. The functionality of the proxy can further be extended to support other types of applications, such as FTP, headset, voice communication, printing and video communication.