You are on page 1of 5

Mobile Mules: Modular E-Health Information

Synchronization Framework
Abdel-Karim Al-Tamimi Ala Khalifeh
Computer Engineering Department Electrical and Computer Engineering Department
Yarmouk University, Jordan German Jordanian University, Jordan
altamimi@yu.edu.jo ala.khalifeh@gju.edu.jo

AbstractProviding the capability of connecting and developing countries. Even with the spread of advanced
transferring information between geographically separated networks in the developed countries, the boundaries of good
health centers is one of the major contributions of ICT broadband services are usually limited to highly concentrated
researchers in the health sector. The utilization of this population centers like big cities and dense municipal areas;
advancement is hindered by the low penetration of Internet and do not extend to rural areas. This is due to the higher cost
services in developing countries and especially in rural areas. of infrastructure, or/and the lower returns on the infrastructure
Taking into consideration the recent advances and the wide investments in sparsely populated areas [3]. Transferring data
spread of mobile technologies and devices, we present in this records between datacenters require researchers to assure the
paper an innovative method and a fail-safe system design to
accuracy, the security, the interoperability, the scalability, and
securely and seamlessly transfer and synchronize information
and data records between E-health datacenters. The proposed
the viability of the chosen means of data transfer.
system architecture is scalable and takes into consideration the Transferring and synchronizing data is of a great
interoperability problem that emerges when connecting different importance to e-health services. For instance, the
E-health systems. The proposed solution utilizes the recent synchronization of data records is necessary to keep track of
advances in both mobile and web-based services. the levels of vaccines stocks and supplies amounts [2]. Such
information is important to be kept updated to assure the
Keywords Data communication; Web services; Information
delivery of vaccines and medicines to patients. In addition,
management; Information security; Mobile ad hoc networks;
Interoperability; E-health services; E-health records.
patient information and other medical records are usually
communicated to follow epidemics spread to take the necessary
countermeasures.
I. INTRODUCTION
Using simple methods to transfer data by simply utilizing
This paper presents an innovative solution to the problem portable data storage devices face many technical and security
of transferring data records and information securely between challenges and concerns. First, these devices normally require
geographically separated datacenters, especially when data physical access to both source and destination services
communication services are scarce or expensive to be (typically a server), which raises a lot of concerns about data
considered as a viable mean for transferring information. In security and the possibility of spreading viruses and malicious
this paper, we propose a modular framework that utilizes programs. This possibility increases in rural areas that usually
mobile phones as data carriers to exchange data records have a limited access to the Internet, which limits their ability
between data centers. Mobile phone services are considered a to update the level of datacenters security and readiness to face
major player in transferring data even in developing countries, new security threats.
as the penetration of mobile phone services exceeds the
penetration of landline phone lines. For example, in Africa the In addition, moving data records from one system database
number of mobile phone subscribers is 32 times the number of to another is not a trivial task and requires a high level of
landline subscribers [1]. technical competency. For example, sending entire hard drives
to transfer data requires a high level of technical proficiency on
While electric grid spread covers wide areas in developing both local and central datacenters sides, and requires a
countries, the spread of capable Internet and mobile networks considerable amount of resources. This includes the ability to
that can support data transfer is still limited [2]. With the wide disconnect and re-attach hard drives safely, the ability to copy
spread of mobile phones usage and the continuing decrease of the required data records and the ability to synchronize the
the prices of computational capable smart phones, that recently different databases. In addition, the possibility of spreading
reached sub-100$ price tag, it is feasible to consider smart malicious programs and viruses still exists. Sending the data
phones as a practical mean to manipulate and transfer data using read-only media is still a technically demanding method,
records between datacenters, and thus acting as data mules. and exposes the system to unwanted viruses and programs that
Nowadays, mobile phones come with relatively large storage can be copied from any compromised datacenters.
spaces that can be sufficient for most data transfer applications.
The challenge of transferring data records and especially e- Current approaches of transferring data between datacenters
health records is of a great importance for both developed and either require expensive equipments or/and rely on inefficient
means for both short and long-term setups. This is more $8,500. Such amounts are considered as a hefty sum for most
evident especially when there is a need for transferring large developing countries [4]. Another commonly proposed
amounts of data. Thus, any proposed solution should make sure approach to tackle the problem of transmitting data to/from
that only the minimum number of data records is transmitted to rural areas, as we have mentioned earlier, is the use of satellite
ease the transfer process and allow a better maintenance of the communications. This approach is also considered as an
synchronization level between datacenters. expensive solution for developing countries. As satellite
communications requires both high installation prices and
Several approaches to solve the data connectivity problem considerable amounts as recurring costs.
in rural areas have been proposed in the recent years. One of
the solutions proposed is the use of short message service One of the main concerns when transferring critical
(SMS) messages as a means to transfer data between patients' information is to assure data anonymity, and provide a
datacenters when the data amount sent is assumed always to be high level of security as required by the World Health
of a small magnitude [2]. Another popular approach is to Organization (WHO) [4]. Another main challenge when
connect rural areas datacenters with central datacenters using providing an e-Health service is to assure its interoperability
satellite communications. This approach assumes the ability of with existing Healthcare Information Systems (HISs). This is
the rural communities to pay both initial and annual recurring due to the fact that the technologies the healthcare information
costs. These costs are considered expensive, especially for systems are based on may differ greatly [5]. The use of
economically challenged communities [4]. proprietary formats is another major cause of the
interoperability problems. In addition, using different standards
In this paper, we describe our proposed system that is based has the same effect. For example, systems based on Health
on a modular design and is divided into interchangeable Level 7 version 2 standard are incompatible with systems
components. The system architecture allows mobile phones or based on Health Level 7 version 3 systems [6].
any Internet-enabled device to consume the offered data
synchronization services and act as a data mule to carry data One of the industry major initiatives to overcome
records between datacenters. In addition, we demonstrate how interoperability problem is to store and expose data using
the system design decisions assure the lowest coupling possible XML-based infrastructure that is commonly referred to as
between the different modules, which allow better scalability Electronic Business XML or ebXML. This standard is
and maintainability levels. supported by OASIS and UN/CEFACT to provide an open,
secure and interoperable infrastructure [10]. This approach is
This paper is divided as follows, the next section will also enforced in the integrating Healthcare Enterprise Cross
describe our proposed framework architecture and how it Enterprise Document Sharing (IHE XDS) systems [6]. Using
compares to other proposed solutions in literature. In addition, XML-based systems allows better interoperability between
it provides a detailed explanation of the synchronization systems regardless of the used technology and provides a
process. Section 3 discusses the mobile application design as higher level of maintainability for patient records. When
one of the possible data consumers of the proposed transferring data over expensive and limited capacity media, it
architecture, and the testing scenarios performed to verify the is important to transfer only new or recently modified data
applicability of the system and its ease of use. Section 4 records. This allows central datacenter(s) to be synchronized
concludes this paper with our conclusions and a brief with peripheral datacenter(s) efficiently. Moving a subset of the
discussion of other possible applications of the proposed data minimizes the transferring cost, but at the same time
system. introduces the problem of assuring that the transferred data is
mirrored on all the interested parties accurately.
II. MOBILE MULES FRAMEWORK ARCHITECTURE
Mobile service providers and developers provide different
Many environmental and technical factors need to be means to synchronize personal contacts, emails, and other
addressed when designing a new system for transferring data information with their PCs [7]. Several projects are aiming at
records and especially when targeting rural areas [11]. One of providing database accessibility for mobile users as in the
them is the low reliability and the low coverage of data Amsler Project [8]. Amsler provides the means to perform
transmission media in rural areas. When there is a need to record replications between MySQL servers and Android-
transmit high volumes of data that are usually associated with based devices equipped with SQLite database. Amsler project
patients records, sending data over mobile SMS is considered requires a direct connection to the source database, which
an expensive mean. Since SMS message size is limited to only raises several interoperability and security concerns. In
161 characters. Thus, the high cost of sending SMS messages addition to that, Amsler requires the mobile phone to have a
can be a major prohibiting factor to consider this approach [2]. mobile version of an SQL server, which is not guaranteed on
On the other hand, Global System for Mobile communications all mobile operating systems, and adds a layer of complexity in
(GSM), which has the highest coverage in developing handling exchanged data.
countries, provides a low bandwidth connectivity of only 10-
50kbps and its services are considered unreliable in many Our proposed solution tackles all these concerns by
countries [4]. introducing a modular framework that allows different and
geographically separated systems to communicate and
Another proposed mechanism is to use a combination of synchronize their data. In our framework, we assume that rural
technologies like WiFi, for local centers, and WiMAX, as the datacenters have access to electricity power at least.
backhaul media, to transfer data. Such a setup is estimated to Developing countries can have access to electricity from
cost initially around $125,000 with a recurring annual cost of
various sources like solar, hydroelectric, fossil fuel, geothermal The PC also hosts a webservice that acts as a gateway to the
and wind energy [4]. In addition, in the developing countries, information stored in the database. The webservice exposes the
the widespread of electrical grid exceeds Internet and mobile data using XML-based format to assure the highest
communication grids [2]. compatibility with other systems and devices. In addition, the
webservice exposes the schema or the design of the database to
We also assume that healthcare personnel make frequent ease conducting semantic matching between different
travels to central datacenters locations, which are usually databases when necessary using XML Schema Definition
located at the governance center or at the capital, or any (XSD) file format. As an alternative to using XML, the
Internet-serviced area. Such visits are usually made for various currently popular standardized data encapsulation format:
personal and professional reasons. We also assume that the JavaScript Object Notation (JSON) can be used.
travelling personnel carry WiFi/3G/4G enabled devices. Such
an assumption is not farfetched as we have discussed before The central database has a similar setup with the exception
with the low prices of such smart phones. that the webservice can be accessed with more means than
WiFi, including 3G and 4G communications. The webservice
can be hosted using cloud platforms, like Windows Azure [12],
or using a simple webservice depending on the required
processing capabilities.
The synchronization process between datacenters consists
in its simplest form of three actions that resemble a
handshaking mechanism between the local datacenter and the
central datacenter: first, synchronize to the local datacenter to
retrieve new data records through the available webservice
over WiFi. The second action is to synchronize to the central
datacenter over the available WiFi/3G/4G communications.
The third action to re-synchronize to the local datacenter to
confirm the completion of the data records transfer. In the
Fig. 1. Proposed system architecture
following subsections, we will go into more details about each
Figure 1 shows the proposed system architecture. The of the synchronization steps.
framework consists of three main parts: a local datacenter that
is usually located in rural areas, a central datacenter that is A. Synchronizing to Local Datacenter
usually located in governance central with Internet availability, In this step, the healthcare person uses his/her phone to
and a smart phone device that act as a data mule that carries synchronize to the local datacenter. Only new or modified
and synchronizes information between the local and central records since the last synchronization process are transferred to
datacenters. the mobile. This means that only a differential snapshot of the
data is carried on the phone. Data communication and storage
Using mobile agents such as people, vehicles or even
is secured on both sides, mobile application and data centers,
animals have been proposed before in the literature to provide
with the use of public and private key encryption mechanisms.
wide-area connectivity for sparse sensor networks at the
Other security measures can be easily incorporated to ensure a
expense of higher latencies [9]. These systems usually consist
higher level of security and better authentication mechanisms.
of three tiers: a bottom tier that represents the scattered fixed
For instance, certain security rules can be implemented to
wireless sensor nodes. The middle tier represents the moving
allow only certain devices to access the webservice depending
mobile agents, who have the capability to connect to the other
on their MAC addresses. All transmitted data records are stored
two tiers. The top tier is usually represented with WAN
on the phone in an encrypted format to overcome any security
connected devices.
issues resulting from stolen, lost or compromised phones.
As can be noted from figure 1, we assume that the local
To keep a track of the modified and new records, two data
datacenters have WiFi network capabilities, which is
columns are to be appended to the synchronized data tables.
considered as a viable communication method in rural areas The first column is LastModified which indicates the last time
[4]. The local datacenter setup is considered inexpensive and the record was modified (when performing insert or update
easy to maintain. Once the required services are set, there is actions). The second column is SyncStatus which indicates the
little to no changes needed to be made to assure the availability synchronization status of the data record. When the data record
of the service. The central database center is assumed to have a information is created or modified, the column value is set to
better access to variety of data communication media such as Modified.
WiFi, 3G and 4G. The geographical area that separates the
local and the central datacenters is assumed to have either Once data records are transferred to the mobile phone their
expensive communication media that inhibit transferring large SyncStatus column statuses on the local datacenter are set to
amount of data records, or no data connection media at all. SyncPending. Other data mules are also allowed to
The local datacenter comprises of a PC with a database synchronize to the local datacenter and receive all data records
server that holds local health center information: patients' that their synchronize statuses are set to either Modified or
records, supply and vaccines quantities, and personnel records. SyncPending. This allows multiple data carriers to collaborate
in synchronizing data between datacenters without provide better future services. Finally, a windows phone
compromising the accuracy and the recency of the data. application was created to resemble a possible data mule
application with the needed functionality to carry and
B. Synchronizing to Central Datacenter synchronize data records.
When healthcare personnel visit the location of the central
The proposed system can also be easily integrated into
datacenter or any Internet-serviced area, they can use their
existing systems by creating the required webservices, with
phones to synchronize to the central database. The data transfer
minimal modifications to their database tables (i.e. the addition
is done using the available webservice or cloud-based service.
of the SyncStatus and LastModified data columns). The
The central datacenter can have a similar level of security as
webservices can then connect to the existing databases and
the one discussed before for the local datacenter.
expose its contents securely. The webservice creation can be
The data records transferred to the central database are customized to the datacenter or simply auto-generated using
checked first to see if it is newer than the currently available dialog-based applications. Such applications require the
data records. If it is newer, the data records are synchronized address of the database server and its login credentials, the
and the last modification date is set to the date specified in the database to be synchronized and the tables to be synchronized.
transmitted records. Since in the case when there is more than
The total cost of the proposed communication framework
one data carrier, it is possible to have a data carrier that arrives
hardware, in its simplest form, is less than $200, where $100 is
at time ( t t 0 ) and carries an older version of data records for the used mobile phone, and $50 for each of the WiFi access
than a data carrier that arrived at ( t t0 ). Once the points (one for the local datacenter and one for the central
synchronization process is completed, all data records statues datacenter). This if we assume that the central datacenter is not
on the mobile phone, (i.e. the entire differential data snapshot), to be accessed using the available Internet infrastructure. The
are set to SyncedToCentral. cost of systems maintenance is minimal, since the used
hardware and software setup is greatly simplified.
C. Re-Synchronizing to Local Datacenter It is important to note that the used technologies in our
This stage is necessary to complete the handshake testing can be replaced with newer and better technologies as
mechanism between the local and the central datacenters. By needed to meet the requirements of the E-health system while
re-synchronizing to the local datacenter, the webservice maintaining the general framework of the solution. As an
verifies that all the transferred data has been synchronized example, as we discussed earlier, JSON based webservices can
correctly to the central database. Local datacenter data records replace the used XML-based services. In addition, the WiFi-
that are still marked as SyncPending are the only ones to have based communications between the mobile phone and local
their statuses changed to Synced status. If the data records sent datacenters can be substituted with other medium like
to be synchronized with the central database change during the Bluetooth or Near-field Communication (NFC) if necessary.
synchronization process, their status values change from
The three tested datacenters reside in three geographically
SyncPending to Modified. This mechanism assures that data
separated places in Jordan as shown in figure 2. The distance
records when they change, while the synchronization process is
between the local datacenter (A) [Mgheir, Irbid] and the central
taking place, do not get marked as Synced.
datacenter (B) [Yarmouk University, Irbid] is 10.1 km, and the
In this section, we described the architecture of our distance between central datacenter and the local datacenter (C)
proposed system and the three-step handshaking mechanism [Al Ashrafyeh, Irbid] is 25.9 km. While our system testing
that assures that data records are synchronized correctly. The does not necessitate distant geographical locations for the
proposed mechanism assures the recency of data even when datacenters, we considered this testing scenario as a good
exercise to test the battery usage and the convenience of using
data records are synchronized using multiple mobile devices.
the service in real world scenarios.
In the next section, we discuss the implantation of our system
and the testing process and the obtained results.

III. SYSTEM IMPLEMENTATION AND TESTING


Our system implementation has been divided into three
phases: creating an E-Health system that comprises of two
local datacenters and a central datacenter. Then creating three
webservices (two local and one central webservices) to allow
the used mobile phones to access and synchronize data with the
local and central databases. Local datacenter webservices were
implemented using ASP.NET SDK 3.5, and the central
webservice was implemented using Windows Azure cloud
platform [12]. The usage of cloud-based services allows faster
information convergence, especially when multiples of mobile
mules are connected simultaneously, and better computational
capabilities on the central datacenter side that can be used to Fig. 2. The geographical distribution of the tested datacenters
gather information about local data centers and process them to
We have implemented the Mobile Mules client application the number of the records to be synchronized. The battery
using Windows Phone 7.1 SDK as shown in figure 3. In our usage in all the tested cases was negligible (less than 1% drop
testing we used two LG Optimus 7 phones running Windows of battery status after each test run), which supports our claim
Phone OS version 7.5. The application has a minimalistic of the system high performance and applicability in real time
design and contains two pages: the main page is where the user scenarios. The overall feedback from the testers indicated the
can synchronize to the local and central datacenters and solution high level of usability and a seamless synchronization
overlook the synchronization process progress. The second process. In the next section, we will conclude our paper and
page is the settings page, where the users can update the discuss some of the possible applications of our system that
webservices URL paths for the datacenters when necessary. stretch beyond e-health services.

IV. DISCUSSION AND CONCLUSIONS


In this paper, we present a viable solution to transfer and
synchronize data records between datacenters securely and
effortlessly. The system's modular design allows the integration
of different technologies to achieve a high level of security,
interoperability, and usability. The usage of cloud platforms
can allow a faster information convergence and better
processing capabilities to be performed on the gathered data
records. Although the main aim of this proposed solution is to
connect and transfer data from rural datacenters, the system can
also be used when there are security concerns for sending data
over the Internet. The applicability of this design extends the
realm of E-health systems, and can also be used to synchronize
any geographically separated datacenters while providing the
Fig. 3. Mobile-Mule mobile application
necessary security and authentication levels.
We have conducted several experiments to measure the
speed of the synchronization process with different magnitudes REFERENCES
of data records and their battery consumption. Table 1 details [1] International Telecommunication Union, Information Society Statistical
the average time required in milliseconds to synchronize the Profiles 2009. Africa. Available: http://www.itu.int.
data records to a datacenter. We have chosen the worst [2] R. Anderson et al. "Smart Connect: last mile data connectivity for rural
health facilities," In Proceedings of the 4th ACM Workshop on
scenario, where all the records have been recently modified and Networked Systems for Developing Regions (NSDR '10). ACM, New
thus are needed to be synchronized. Patient data records York, NY, USA, , Article 5 , 6 pages. DOI=10.1145/1836001.1836006.
information were randomly generated and each has 1KB of [3] Economic Research Report No. ERR-78, August 2009.
information. Phone-webservices communications were [4] A. Zalzala et al. (2013) Rural e-health infrastructure development. User-
performed over IEEE 802.11g WLANs. Each of the testing Driven Healthcare: Concepts, Methodologies, Tools, and Applications.
scenarios has been repeated 15 times and we calculated the IGI Global, 2013.
[5] O. Olugbara et al. (2006). An architectural framework for rural
mean and the standard deviation of the recorded times. The ehealthcare information infrastructure with web service-enabled
selected numbers of records in these experiments were chosen middleware support. In: HELINA COM Available at:
after surveying local health centers personnel of the typical http://www.sim.hcuge.ch/helina/6.pdf (Accessed Jan 2014).
weekly and monthly modified records numbers. [6] A. Dogac, T. Namli, A. Okcan, et al., "Key Issues of Technical
Interoperability Solutions in eHealth and the RIDE Project". Available at
http://www.srdc.com.tr/publications/2007/eChallengesRide2007.pdf
TABLE I. MOBILE MULES SYNCHRONIZATION TEST RESULTS (Accessed Jan 2014).
[7] CompanionLink Software Inc. Synchronizing ACT! With Phones The
Number of Data Time to Synchronize (ms) Definitive Guide. Available at:
Records Average Time (ms) Standard Deviation (ms) http://www.companionlink.com/affinity/act-mobile-sync-guide.pdf
50 471.4 144.5 (Accessed Jan 2014).
100 472.6 85.5 [8] Amsler Project. Available at http://fyrecloud.com/amsler (Accessed Jan
2014).
500 1500.7 175
[9] R. Shah, S. Roy, S. Jain, W. Brunette, Data MULEs: Modeling a
1000 4849.1 316.6
Three-tier Architecture for Sparse Sensor Networks, IEEE SNPA
5000 35366 1180.6
Workshop, May 2003.
[10] ebXML. Electronic Business eXtensible Markup Language. Available at
As can be noted from table 1, the time needed to http://www.ebxml.org (Accessed Jan 2014).
synchronize data records is less than a second for 100 records, [11] A. Hammond and J. Paul, A new model for rural connectivity, World
and it barely exceeds half a minute when synchronizing 5,000 Resource Institute Whitepaper. May 2006. Avaialble at :
http://cohesion.rice.edu/Conferences/Hewlett/emplibrary/A_New_Mode
records. It can also be noted that there is a small difference l_for_Rural_Connectivity.pdf (Accessed Jan 2014).
between the time recorded for 50 records and 100 records. This [12] Microsoft Windows Azure. Available at http://www.windowsazure.com
is because there is a minimum time required to establish the (Accessed Jan 2014).
connection between the phone and the webservice regardless of

You might also like