Next: Metrics and Measurements
Up: Deterministic CPISync
Previous: Deterministic CPISync
  Contents
The PC-PDA model used a Palm IIIxe
with a 16 bit Motorola Dragon ball processor [29] and
8MB of RAM. The palm was synchronized with a Pentium III class
machine with
MB of RAM. We used a serial RS-232 link
operating at
as the link between the PDA and the PC.
Our specific implementation emulates a memo pad implementation. As
data is entered into the palm, evaluations of the characteristic
polynomial (described in the previous section) are updated at
designated sample points. Upon a request for synchronization, the
Palm sends
of these evaluations to the PC,
corresponding to the differences between the data and the two
machines. The desktop compares these evaluations to its own
evaluations and determines the differences between the two
machines, as described in section 3.2 on page
.
We do not address issues about which specific data to keep at the
end of the synchronization cycle in case of conflicts, but several
techniques from database literature explained in [30] are
possible candidates for conflict resolution.
Figure 3.4:
A sample script to illustrate an experiment on
the PC-PDA system
 |
Finite field arithmetic was performed with Victor Shoup's Number
Theory Library and data transferred between the PDA and the PC in
pdb (Palm database) format. This data was converted to
text format using [31]. This data is converted to input
suitable to the CPISync system on the PC using a separate Java
language based string parser. Figure 3.4 shows
a sample script of an experimental run of our system and explains
how the PC-PDA system is setup. Our model uses the Hotsync
middleware of the Palm operating system to transfer data as
pdb files. We have used the default conduit provided in
the Palm OS API [32] for this purpose.
In the experiments we performed, the number of differences between
the data sets held on the PC and the PDA varied from 0 to about
and the size of the data sets varied from
to
.
Since it was not practical to manually introduce these ranges of
data and differences, we implemented an automatic data generator
on the PC and the PDA. The program on the PDA was called
Reconciliation Genie. This program took two inputs - the
size of the database and the number of differences to be
introduced. Instead of actually generating this data set,
genie just calculated the characteristic polynomial of
the data set elements (they were serially ordered). The range of
the data elements could be between
and
in the
finite field
. This particular choice is
because out of the total
elements in the finite field, the
first and last quarter are reserved for sample points (as was
explained in section 3.2.
A complementary program on the PC took the same inputs - the size
of the database and the number of differences to be introduced and
constructed a database accordingly. So for testing purposes, we
simulated a situation wherein we `knew' the number of differences
so as to set up the desired synchronization set size and
difference parameters. It is important to note here that the
CPISync system on the PDA and the PC itself was not a simulation.
Next: Metrics and Measurements
Up: Deterministic CPISync
Previous: Deterministic CPISync
  Contents
Sachin Kumar Agarwal
2002-07-12