July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
11
Middlew
are
Supp
ort
for
Voting
and
Dat
a Fu
sion
Dav
eB
akke
nZh
iyua
n “T
roy”
Zhan
Sch
ool o
f Ele
ctric
al E
ngin
eerin
g an
d C
ompu
ter S
cien
ceW
ashi
ngto
n S
tate
Uni
vers
ityP
ullm
an, W
ash.
U
SA
ww
w.e
ecs.
wsu
.edu
Chr
is J
ones
Dav
id K
arr
Dis
tribu
ted
Sys
tem
sD
epar
tmen
tB
BN
Tec
hnol
ogie
sC
ambr
idge
, Mas
s.
US
Aw
ww
.dis
t-sys
tem
s.bb
n.co
m
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
22
Mot
ivat
ion
•Th
e in
crea
sing
dem
and
of a
vaila
bilit
y of
onl
ine
serv
ices
can
be
met
with
repl
icat
ion
of s
erve
rs•
Com
mon
stra
tegy
: act
ive
repl
icat
ion
–R
eque
st is
sen
t to
all o
f the
ser
ver r
eplic
as a
nd
–E
ach
repl
ica
will
pro
cess
the
requ
est a
nd s
end
repl
y–
Mus
t sel
ect 1
for c
lient
app
licat
ion
to re
ceiv
e•
This
sel
ectio
n pr
oces
s is
cal
led
votin
g•
Col
latio
nan
d D
ata
Fusi
onar
e m
ore
gene
ral t
han
votin
g–
No
repl
icat
ed s
erve
rs–
Val
ues
not n
eces
saril
y su
ppos
ed to
be
iden
tical
–S
eem
s to
be
a fu
ndam
enta
l pat
tern
in d
istri
bute
d sy
stem
s
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
33
Voting
Ove
rview
Vot
ing
Def
initi
ons:
•co
llatio
n vo
ting:
cho
osin
g (o
r cre
atin
g) o
ne re
ply
(or r
eque
st)
from
man
y–
Diff
ers
from
syn
chro
niza
tion
votin
g, a
form
of p
essi
mis
tic c
oncu
rren
cy c
ontro
l, al
so c
alle
d “v
otin
g” in
the
liter
atur
e
•ba
llot:
one
requ
est o
r rep
ly fr
om o
ne o
bjec
t rep
lica
(rep
ly[1
])•
vote
: the
pro
cess
of c
hoos
ing/
crea
ting
one
ballo
t fro
m m
any
•by
te-b
y-by
te v
otin
g: v
otin
g al
gorit
hms
com
pare
mar
shal
ed
para
met
er b
uffe
rs o
n a
byte
-by-
byte
bas
is, u
naw
are
of d
ata
type
s, a
lignm
ent,
etc.
–M
ore
on th
is la
ter…
Clie
ntV
oter
Serv
er[1
]re
ply[
1]vo
ted_
repl
y
repl
y[N
]
...
Serv
er[N
]
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
44
Wha
t is N
eede
d•
Mid
dlew
are
supp
ort f
or v
otin
g–
Allo
w v
otin
g on
any
par
amet
er o
r com
bina
tion
of th
em–
Sep
arat
e vo
ting
lang
uage
for r
euse
, ana
lyza
bilit
y–
Hoo
ks to
allo
w c
hang
ing
of v
otin
g al
gorit
hms
at ru
ntim
e–
Vot
ing
man
agem
ent t
o pr
ovid
e cl
ient
tran
spar
ency
–N
ot b
yte-
by-b
yte
votin
g•
App
lies
to m
ore
than
vot
ing:
col
latio
n &
dat
a fu
sion
–In
trusi
on d
etec
tion:
mul
tiple
diff
eren
t pro
bes
mon
itorin
g a
host
/LA
N/d
omai
n–
Ad
hoc
mob
ile n
etw
ork
prot
ocol
s–
Dis
tribu
ted
sens
or n
etw
orks
–P
aral
lel n
eura
l net
s to
est
imat
e po
wer
grid
mar
gins
–H
iera
rchi
cal r
esou
rce
mon
itorin
g an
d ag
greg
atio
n–
Mer
ging
obj
ect s
tate
from
cac
hes
or p
artit
ione
d re
plic
as
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
55
Out
line
of P
rese
ntat
ion
•O
verv
iew
of v
otin
g, c
olla
tion,
and
dat
a fu
sion
•C
urre
nt m
iddl
ewar
e vo
ting:
lim
itatio
ns &
th
eir a
rchi
tect
ural
impl
icat
ions
•V
otin
g V
irtua
l Mac
hine
(VV
M) a
rchi
tect
ure
•R
elat
ed w
ork
& C
oncl
usio
ns
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
66
Limitat
ions
of
Byte
-by-
Byte
Vot
ing
•C
OR
BA
pro
vide
s in
tero
pera
bilit
y ac
ross
1.C
PU
arc
hite
ctur
e2.
Ope
ratin
g sy
stem
3.P
rogr
amm
ing
lang
uage
4.O
RB
(ven
dor)
impl
emen
tatio
n•
CO
RB
A’s
“wire
pro
toco
l” C
DR
:–
Use
s IE
EE
754
enc
odin
g fo
r flo
atin
g po
int v
alue
s’
trans
mis
sion
–B
ut w
ith d
iffer
ent a
rchi
tect
ures
(and
oth
er 3
var
iabl
es
sam
e) c
an h
ave
diffe
rent
inte
rnal
prec
isio
ns a
nd ro
undo
ffdi
ffere
nces
…•
Som
e P
entiu
m m
odel
s ha
ve H
W ro
undi
ng s
witc
h–
Thus
all
4 ab
ove
can
be s
ame,
but
stil
l val
ues
dive
rge!
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
77
Byte
-by-
Byte
Lim
itat
ions
(co
nt.)
•H
ave
to lo
ok a
t the
IDL
to b
e ab
le to
han
dle
–V
aria
ble-
leng
th h
eade
r inf
orm
atio
n w
hich
an
OR
B
impl
emen
tatio
n m
ay fi
ll in
or l
eave
out
–O
ther
wis
e al
ignm
ent o
ff–
Exa
mpl
e: s
yste
m c
onte
xt–
CO
RB
A s
pec
stat
es v
alue
of p
addi
ng b
ytes
is u
ndef
ined
, an
yway
!•
Byt
e-by
-byt
e vo
ting
in p
ract
ice:
–D
evel
oper
s ha
ve n
o pr
oble
ms
in la
b or
sin
gle
LAN
, be
caus
e ve
ry h
omog
enou
s (C
PU
, OS
, lan
guag
e, O
RB
)–
Whe
n fie
lded
or r
elea
sed,
mys
terio
us b
ugs
star
t to
show
up
bec
ause
muc
h m
ore
hete
roge
neou
s–
This
is tr
ue fo
r all
mid
dlew
are,
not
just
CO
RB
A!
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
88
Byza
ntine
Arc
hite
ctur
al I
mplicat
ions
•A
dditi
onal
resu
lt: b
yzan
tine
relia
ble
mul
ticas
ts–
Can
not d
o va
lue
chec
king
with
out h
elp!
(if h
eter
ogen
eity
)•
(exc
ept f
rom
sin
gle
intp
erha
ps)
•A
pplie
s to
Ram
part,
“Pra
ctic
al” (
MIT
), …
Idea
l:Id
eal: IPIPTC
PTC
PM
iddl
ewar
eM
iddl
ewar
e
Mul
ticas
tM
ultic
ast
Rel
iabl
eR
elia
ble
Sec
ure
Sec
ure
Rea
lity:
Rea
lity: IPIP
Mid
dlew
are
Mid
dlew
are
Mul
ticas
tM
ultic
ast
Rel
iabl
eR
elia
ble
Sec
ure
Sec
ure m
arsh
alm
arsh
al
No
clea
n la
yerin
g: tr
ansp
ort n
eeds
N
o cl
ean
laye
ring:
tran
spor
t nee
ds
help
unp
acki
ng d
ata
for v
alue
che
ck!
help
unp
acki
ng d
ata
for v
alue
che
ck!
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
99
Out
line
of P
rese
ntat
ion
•O
verv
iew
of v
otin
g, c
olla
tion,
and
dat
a fu
sion
•C
urre
nt m
iddl
ewar
e vo
ting:
lim
itatio
ns &
thei
r ar
chite
ctur
al im
plic
atio
ns•
Votin
g Vi
rtua
l Mac
hine
arc
hite
ctur
e–
Votin
g Vi
rtua
l Mac
hine
(VVM
)–
Votin
g D
efin
ition
Lan
guag
e (V
DL)
–VD
L Ex
ampl
e
•R
elat
ed w
ork
& C
oncl
usio
ns
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1010
Voting
Virtu
al M
achine
(VV
M)
Nov
el fe
atur
es:
•V
VM
per
form
s vo
ting
on a
pplic
atio
n-le
vel d
ata
–Fi
rst t
o no
t use
byt
e-by
-byt
e vo
ting
that
we
are
awar
e of
–E
mbe
ddab
le in
to C
OR
BA
, DC
OM
, oth
er k
inds
of
mid
dlew
are
(MO
M, p
ublis
h-an
d-su
bscr
ibe,
XM
L-R
PC
, ...)
–V
otin
g m
odul
e th
us n
otem
bedd
ed in
the
appl
icat
ion
•C
ould
be
used
by
a ap
plic
atio
n di
rect
ly if
des
ired
•V
otin
g de
finiti
on L
angu
age
(VD
L) a
llow
s th
e co
ding
of
por
tabl
e, re
usab
le, s
tand
-alo
ne v
otin
g al
gorit
hms
–S
uppo
rts d
ynam
ic v
otin
g(a
ccou
nts
for m
embe
rshi
p ch
ange
s du
ring
a vo
te)
–Fi
rst v
otin
g or
dat
a fu
sion
lang
uage
for m
iddl
ewar
e w
e ar
e aw
are
of
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1111
VVM
Arc
hite
ctur
e
Failu
reno
tific
atio
n
iiop_
msg
[1..N
]
unm
arsh
al
vote
r cor
e
para
mk[
1..N
]
vote
d_pa
ram
k
vote
d_iio
p_m
sg
mar
shal
votin
gst
atis
tics
Vot
ing
Stat
usSe
rvic
e(V
SS)
Ale
rts to
subs
crib
ers
Vot
erM
anag
er
Cur
rent
cond
ition
s &
QoS
requ
irem
ents
curr
ent v
otin
g po
licy
& p
aram
s; w
eigh
ts
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1212
VVM
Failure
Mod
el•
Clie
nt a
nd s
erve
r hos
ts: c
rash
failu
res
•S
erve
r app
licat
ions
: Byz
antin
e•
Ser
ver s
yste
ms
softw
are:
cra
sh–
Cou
ld s
ecur
e w
ith n
etw
ork
atta
chm
ent c
ontro
ller a
laD
elta
-4 N
AC
–C
ould
use
stro
nger
Byz
antin
e pr
otoc
ols
a la
Ram
part
or
“Pra
ctic
al” f
rom
MIT
(bei
ng d
one
now
with
TIS
…)
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1313
Vote
r Co
re S
tate
s &
VDL
Prim
itives
Bra
nchi
ng
exce
ptio
n
exce
ptio
nex
cept
ion
exce
ptio
nex
cept
ion
exce
ptio
nex
cept
ion
Exce
ptio
ns
conf
iden
ceco
nfid
ence
conf
iden
ce v
alue
Con
fiden
ce V
alue
s
Vot
er g
oes
thro
ugh
3 st
ates
:•q
uoru
m: w
ait t
o vo
te•e
xclu
sion
: tos
s ou
t som
e ba
llots
•col
latio
n: c
hoos
e on
e of
the
rem
aini
ng
para
mk[
1..N
]
vote
d_pa
ram
k
excl
usio
nex
clus
ion
unm
arsh
alun
mar
shal
mar
shal
mar
shal
colla
tion
colla
tion
quor
umqu
orum
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1414
VDL
Prim
itives
(co
nt.)
•V
DL
prim
itive
s fo
r quo
rum
, exc
lusi
on, c
olla
tion
–A
s de
scrib
ed, s
ee p
aper
•E
xcep
tions
& br
anch
ing:
con
ditio
ns b
ased
on
–E
laps
ed ti
me
sinc
e fir
st b
allo
t–
Num
ber e
xclu
ded
–P
erce
nt e
xclu
ded
–N
umbe
r rem
aini
ng a
fter e
xclu
sion
–S
tand
ard
devi
atio
n af
ter e
xclu
sion
–…
•
Con
fiden
ce v
alue
s–
Abo
ve c
ondi
tions
for e
xcep
tions
–M
ore
TBD
…w
ork
in p
rogr
ess…
.
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1515
VDL
Synt
ax O
verv
iew
polic
yna
me
[ (pa
ram
eter
s) ]
{
quor
um(q
uoru
m_o
p (p
aram
s))
[thro
wex
_nam
e if
(con
ditio
n) ]*
[exc
lusi
on[la
bel]
(exc
lusi
on_o
p (p
aram
s))
[re
plac
e by
mea
n|m
edia
n|(v
alue
)]
[[th
row
ex_n
ame
if(c
ondi
tion)
]
|
[got
oqu
orum
[(usi
ng (q
uoru
m_o
p(p
aram
s)) m
ore|
tota
l)]
if(c
ondi
tion)
]
]*
]+
…
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1616
VDL
Synt
ax O
verv
iew
(con
t.)
…co
llatio
n(c
olla
tion_
op (p
aram
s))
[[
thro
wex
_nam
e w
hen
(con
ditio
n) ]
|
[got
oqu
orum
[(usi
ng (q
uoru
m_o
p(p
aram
s)) m
ore|
tota
l)]
if(c
ondi
tion)
]
|[g
oto
excl
usio
n [la
bel]
[(usi
ng (e
xcep
tion_
op(p
aram
s)))
] if(
cond
ition
) ]
]*
[con
fiden
ce(c
onfid
ence
_exp
ress
ion)
]
}
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1717
Conf
iden
ce V
alue
s•
Pro
blem
: ret
urni
ng a
vot
e or
an
exce
ptio
n ar
e tw
o ex
trem
e ch
oice
s!•
Issu
e: h
ow “g
ood”
was
the
vote
? •
Con
fiden
ce v
alue
s us
ed in
neu
ral n
etw
orks
and
fu
zzy
logi
c•
Idea
for V
VM
: –
Ret
urn
anot
her v
alue
(s) “
on th
e si
de”,
like
Uni
x er
rno
–O
ptio
nally
use
d by
clie
nt o
r per
haps
aQ
uOde
lega
te o
r ot
her i
nter
med
iate
laye
r to
adap
t…
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1818
Supe
rmaj
ority
Exam
ple
•P
robl
em S
tate
men
t–
Ret
urn
a ba
llot i
f 60%
of th
e ba
llots
are
with
in 1
%of
the
med
ian
of th
e ba
llots
rece
ived
so
far
–O
nly
wai
t 5se
cond
s–
Bal
lot r
etur
ned
shou
ld b
e m
edia
nfro
m th
ose
with
in 1
%•
Not
e: It
ems
unde
rline
d ca
n be
par
amet
ers
to p
olic
y–
Not
sho
wn
here
for s
impl
icity
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
1919
Supe
rMaj
ority
VDL
Code
polic
yS
uper
Maj
ority
{
quor
um(u
ntil
(60
%))
thro
wQ
UO
RU
M_T
IME
OU
T if
(ela
psed
_tim
e >
5000
)ex
clus
ion
(dis
tanc
e(1
%))
thro
wB
AD
_VA
LUE
S if
(pct
_exc
lude
d_to
tal >
40)
goto
quor
um (u
sing
(unt
il(1
)) m
ore)
if
(pct
_rem
aini
ng_t
otal
< 6
0)
colla
tion
(med
ian)
conf
iden
ce(b
allo
ts_r
emai
ning
/ ba
llots
_rec
eive
d)}
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2020
Out
line
of P
rese
ntat
ion
•O
verv
iew
of v
otin
g, c
olla
tion,
and
dat
a fu
sion
•C
urre
nt m
iddl
ewar
e: li
mita
tions
& th
eir a
rchi
tect
ural
im
plic
atio
ns•
Vot
ing
Virt
ual M
achi
ne (V
VM
) arc
hite
ctur
e•
Rel
ated
wor
k &
Con
clus
ions
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2121
Relate
d W
ork
•W
ay to
o m
uch
to li
st h
ere
or e
ven
in (t
his)
pap
er…
.•
Syn
chro
niza
tion
Vot
ing
–Fi
rst b
y Th
omas
of B
BN
(197
9)–
Wei
ghte
d V
otin
g (G
iffor
d, 1
979)
–G
ener
aliz
atio
ns: m
ultid
imen
sion
al, e
tc.
–M
ostly
(exc
ept N
MR
) for
dat
abas
es•
Con
sens
us s
ervi
ce (E
PFL
)–
Diff
eren
t arc
hite
ctur
e: v
otin
g cl
ient
not
one
pro
vidi
ng a
va
lue
–vo
ted_
repl
y m
ight
not
be
one
of in
put b
allo
ts (e
.g.,
mea
n)
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2222
Relate
d W
ork
(con
t.): C
ollation
Vot
ing
•S
IFT
•N
MR
Sys
tem
s•
N-V
ersi
on p
rogr
amm
ing
–N
o vo
tes
on re
ques
ts o
r ind
ivid
ual r
eply
par
amet
ers
–V
ery
limite
d qu
orum
s•
Rec
ent C
OR
BA
repl
icat
ion:
Ele
ctra
, Ete
rnal
(UC
SB
, no
t FT-
CO
RB
A v
ersi
on),
AQ
uA–
No
vote
s on
requ
ests
or i
ndiv
idua
l rep
ly p
aram
eter
s–
Ver
y lim
ited
quor
ums
•Im
mun
e–
Doe
s al
low
vot
ing
on c
lient
requ
ests
and
repl
y pa
ram
eter
s as
a b
lock
•A
ll ab
ove
use
byte
-by-
byte
votin
g &
no
VD
L
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2323
VVM
Collabo
ration
s an
d Te
ch. Tr
ansf
er•
Ana
lysi
s an
d M
anag
emen
t: D
oug
Blo
ugh
et a
l. G
eorg
ia T
ech.
(Fas
t Abs
tract
late
r tod
ay)
•N
etw
ork
Ass
ocia
tes
Inc.
Lab
s (a
.k.a
. Tru
sted
In
form
atio
n S
yste
ms)
–In
tegr
atin
g V
VM
sub
set i
nto
TAO
for b
yzan
tine-
faul
t-to
lera
nt C
OR
BA
–R
eplic
ated
clie
nts
so re
plic
ated
vot
ing
–P
roje
ct IT
DO
S o
n D
AR
PA
OA
SIS
pro
gram
(Jay
Lal
a)•
TriG
eo N
etw
ork
Sec
urity
Inc.
add
ing
to c
omm
erci
al
prod
uct f
or m
anag
ed s
ecur
ity a
nd in
trusi
on
dete
ctio
n•
BB
N T
echn
olog
ies
AP
OD
pro
ject
in O
asis
pro
gram
ev
alua
ting
VV
M
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2424
Futu
re W
ork
•E
xten
d fo
r int
rusi
on d
etec
tion
usag
e•
Sm
all d
evic
e pr
ofile
s an
d di
strib
uted
sen
sor
netw
orks
•R
efin
e V
DL
to b
e m
ore
gene
ral,
cons
iste
nt, …
–M
ultid
imen
sion
al:
med
ian
cent
roid
s, d
ista
nce
dist
ance
func
tion,
etc
.–
Gen
eral
ity: m
ore
stat
istic
al o
pera
tions
–A
pplic
atio
n-tra
nspa
rent
mul
ti-pa
ram
eter
vot
ing
–O
rthog
onal
ity: v
ote
on a
rriv
al ti
mes
, too
?–
Exp
ress
ive
pow
er: f
orm
al s
eman
tics
–S
afet
y: g
uara
ntee
all
VD
L po
licie
s te
rmin
ate
•R
emov
e or
rest
rict g
otos
?•
Use
recu
rsiv
e po
licie
s in
stea
d?
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2525
VVM
and
Fau
lt T
oler
ant
CORB
A•
FT-C
OR
BA
not
requ
ired
to to
lera
te v
alue
faul
ts–
Pla
ceho
lder
repl
icat
ion
styl
e A
CTI
VE
_WIT
H_V
OTI
NG
de
fined
but
not
yet
spe
cifie
d–
Spe
c co
uld
allo
w a
cus
tom
izab
le v
oter
mod
ule,
but
unl
ikel
y•
All
repl
icas
of a
n ob
ject
mus
t be
host
ed b
y in
frast
ruct
ure
from
sam
e O
RB
ven
dor
–C
ould
zer
o ou
t pad
ding
byt
es a
nd re
ly o
n th
is–
Thus
byt
e-by
-byt
e vo
ting
coul
d w
ork
on in
tege
r typ
es–
Wou
ld s
till h
ave
to d
eal w
ith fl
oatin
g po
int (
inex
act v
otin
g)•
VV
M +
FT-
CO
RB
A??
?–
“You
’re d
ead
if yo
u st
anda
rdiz
e be
yond
the
stat
e of
the
prac
tice”
Ric
k S
chan
tz, B
BN
–V
VM
and
vot
ing
in m
iddl
ewar
e is
rece
nt s
tate
of t
he a
rt–
FT-C
OR
BA
wou
ld w
ant a
sm
all V
VM
sub
set,
may
be n
o V
DL
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2626
Conc
lusion
s•
VV
M c
an b
e em
bedd
ed in
to a
ny k
ind
of m
iddl
ewar
e su
bstra
te w
e ar
e aw
are
of–
Just
por
t the
mar
shal
and
unm
arsh
al m
odul
es•
VV
M p
erfo
rms
votin
g on
act
ual a
pplic
atio
n-le
vel
data
par
amet
ers,
not
mar
shal
ed p
aram
eter
buf
fer i
n a
byte
-by-
byte
fash
ion
•V
DL
allo
ws
spec
ifica
tion
of v
otin
g al
gorit
hms
–To
con
trol t
he V
VM
–P
orta
ble
& re
usab
le
•U
RLs
–vv
m.e
ecs.
wsu
.edu
–w
ww
.eec
s.w
su.e
du/~
bakk
en/m
iddl
ewar
e.pd
f
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2828
VDL
Prim
itives
•qu
orum
–un
til k
[%]
–al
l_bu
tk
–ra
ndom
n m
[%]
•ex
clus
ion
–lo
wes
tn [%
]–
high
estn
[%
]–
furt
hest
n [%
]–
dist
ance
e [%
]–
outs
ide_
sigm
ax
–di
stan
ce_n
eigh
bord
–di
stan
ce_c
lust
erd
–cl
uste
r_su
ppor
t d p
[c]
–in
ner k
–ne
ares
t k–
rand
om n
[%
]–
none
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
2929
VDL
Prim
itives
(co
nt.)
•co
llatio
n–
med
ian
–m
ean
–m
ean_
neig
hbor
–m
ode
–ra
ndom
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
3030
Weigh
ted
Voting
in
VDL
•W
eigh
ted
votin
g al
low
s no
n-eq
ual t
reat
men
t of
ballo
ts fr
om d
iffer
ent r
eplic
as–
Mai
n us
e: s
ecur
ity in
vot
ing
on (s
uppo
sedl
y) id
entic
al
repl
icas
–A
lso
can
also
add
rand
omne
ss to
col
latio
n an
d da
ta fu
sion
•O
pera
tions
cur
rent
ly in
2 v
oter
cor
e st
ates
:–
quor
um: w
ait f
or p
oint
s, n
ot b
allo
ts, w
here
eac
h ba
llot’s
ar
rival
is >
= 1
poin
t–
colla
tion:
exp
and
rem
aini
ng b
allo
ts b
ased
on
a w
eigh
ting,
th
en d
o m
ode,
med
ian,
...
–co
llatio
n ex
ampl
e: if
bal
lots
con
tain
{2,3
,4} a
nd w
eigh
ts
are
{1,2
,2},
then
exp
and
to {2
,3,3
,4,4
} and
then
do
med
ian
or m
ode
or m
ean
or ra
ndom
or .
..
July
4, 2
001
© 2
001
Dav
e B
akke
n: V
otin
g V
irtua
l Mac
hine
3131
VVM
Dev
elop
men
t En
viro
nmen
tiio
p_m
sg[1
..N]
unm
arsh
al
vote
r cor
e
para
mk[
1..N
],pa
ram
_typ
es
vote
d_pa
ram
k,pa
ram
_typ
es
vote
d_iio
p_m
sg
mar
shal
CO
RB
A In
terf
ace
Rep
osito
ry (I
R)
Vot
eM
anag
er
para
mpa
ram
_typ
es_t
ypes
look
uplo
okup
tabl
eta
ble
VD
LV
DL
files
filesse
rver
serv
erID
LID
Lfil
esfil
es
idl2
vvm
idl2
vvm
ir2vv
mir2
vvm
vdl2
vvm
vdl2
vvm
vdl2
anal
ysis
vdl2
anal
ysis
curr
ent
curr
ent
votin
g vo
ting
polic
y +
polic
y +
para
ms
para
ms
look
uplo
okup
look
uplo
okup