SLIDE 1 Xenrelay: An Efficient Data Transmitting Approach for Tracing Guest Domain
Hai Jin, We nzhi Cao, Pingpe ng Yuan, Xia Xie Cluste r and Gr id Computing L ab Se r vic e s Computing T e c hnique and Syste m L ab Huazhong Unive r sity of Sc ie nc e & T e c hnology 430074, Wuhan, China
SLIDE 2 Contents
Intr
Re late d wor
k
Xe nr
e lay De sign and imple me ntation
E
xpe r ime ntal r e sults
E
xample of Xe nr e lay’s Value
Conc lusion
SLIDE 3 Introduction
Wide spr
e ad vir tualization utilization motivate s de e pe r inve stigation of the pe r for manc e implic ations
tualization.
T
r ac e analysis is an impor tant te c hnology
De signe r
s of tr ac e tool r unning in vir tualization e nvir
:
E
a c h Doma in ha s its own a ddre ss spa c e
Sma ll size d tra c e da ta a nd fre que nt tra c e e ve nts tra c e da ta be ha ndle d in use r spa c e
SLIDE 4
Introduction
Xe nr
e lay
tra nsfe rs la rg e a mounts of da ta from the g ue st doma in
ke rne l to the privile g e d doma in use r- spa c e
Sta tic sha re d me mory a nd two ma pping me thods A non- notific a tion me c ha nism
SLIDE 5 Related work
Se ve r
al pe r for manc e tools ar e imple me nte d in Xe n
Xe noprof
a syste m- wide statistic al pr
Xe nMon
pe r
for manc e monitor ing tool
Xe nMon c olle c ts e ve nt log with Xe ntr
ac e
Xe nr
e lay is base d on r e layfs
SLIDE 6 Related work
Shar
e d me mor y buffe r s
Xe nSoc ke t Xwa y Xe nL
T
hose appr
t of pr
ac e data tr ansmission
More hype rc a ll, more ove rhe a ds He a d a nd othe r da ta for pa c king da ta tra c e tool should not re ly on subsyste m
SLIDE 7
Xenrelay Overview
Main issue of Xe nr
e lay
c re a te a c ha nne l throug h thre e la ye rs c ontrol the da ta tra nsmission without loc k a nd
notific a tion
Xe nr
e lay c ontains:
re la y c ha nne l API
SLIDE 8
Xenrelay Overview
SLIDE 9
Design and implementation
T
r ansmitting at the high spe e d
Channe l de sign
c ha nne l buffe rs, buffe r position struc ture , c ha nne l
informa tion struc ture
c ha nne l buffe r is a produc e r- c onsume r c irc ula r buffe r bloc ks until the tra nsa c tion is c omple te multiple xe d I/ O a nd Poll()
SLIDE 10
Design and implementation
Channe l imple me ntation
Alloc a te hig h- orde r a ddre ss Ma p no- c onsiste d pa g e s into c onsiste d pa g e s a g g re g a te buffe r
po sitio n str uc tur e into a me mory pa g e
a ssig ns a n e xplic it size to da ta ite ms
Channe l bootstr
ap and te ar down
Xe nStore me c ha nism
SLIDE 11 Design and implementation
Data r
e lay
Doe s not split da ta Doe s not pa rse the da ta
Channel buffer
Padding fill the buffer
SLIDE 12
Discussion
Ope r
ation se que nc e
Ope n - > Conne c t - > Write - > Re a d - > Disc onne c t - >
Close
Ope n - > Write - > Conne c t - > Re a d
be safe e asy to make data ove r
flow
Close - > Disc onne c t
me mor
y le ak in gue st domain
SLIDE 13
Discussion
Data ove r
flow
write fa ste r tha n re a d suspe nds writing a nd c a use loss of ne w da ta
Re lay file
only the da ta in the e nd of file is va lid
SLIDE 14 Experimental testbed
E
xpe r ime nt se tup
A se rve r- c la ss ma c hine
two Inte l Xe on E
5310 CPUs (1.6 GHz and four c or e s CPUs)
4GB Me mor
y
500GB SAT
A disk (r
ps)
Xe n ve rsion 3.3.1 a nd linux ke rne l ve rsion 2.6.18_X64 E
a c h g ue st doma in ha s 1 VCPU, 512MB me mory a nd 10GB disk ima g e
SLIDE 15 Experimental testbed
Data tr
ansmission sc e nar ios
Ne tfront- Ne tba c k Xe nL
ne tpe r
f’s T CP_ST RE AM te st
Xe nre la y
Move a fixe d size of data in r
e lay c hanne l fr
Dom0 r e pe ate dly
100MB data in total
SLIDE 16 Experimental results
T
hr
In Xe nre la y, re a ding me ssa g e size = writing me ssa g e
size
SLIDE 17 Experimental results
T
hr
e ading me ssage size
writing me ssa g e size = 26 byte s re a ding me ssa g e size >= writing me ssa g e size
SLIDE 18
Applications of Xenrelay (1)
Use Xe nr
e lay to c r e ate a bloc k tr ac e toolkit
In g ue st doma in ke rne l, tra c e s I/ O e ve nts a nd use s
Xe nre la y to tra nsfe r it
In privile g e d doma in ke rne l, tra c e s I/ O e ve nts a nd
use s re la yfs to tra nsfe r it
T
r ac e point
T
r ac e data
de vic e numbe r, the e ve nt time sta mp, the sta rt se c tor
numbe r, the numbe r of ha ndle bloc k, the e ve nt type a nd the ope ra tion type
SLIDE 19 19
U-Q2D 0-Q2D 0-D2C U-T 0-T
U-Q2D:
generic_make_request to elv_next_request
U-T: elv_next_request to
generic_make_request in dom0
0-Q2D:
generic_make_request in dom0 to elv_next_request
0-D2C: block device
handling request
0-T: blkback returning
blkfront
SLIDE 20
Applications of Xenrelay (2)
e valuate typic al c ombinations of the I/ O sc he dule r
s
Gue st Doma in Sc he dule T
e st
Change gue st domain’s Sc he dule F
ix dr ive r domain’s Sc he dule and use Noop sc he dule
Drive r Doma in Sc he dule T
e st
Change dr
ive r domain’s Sc he dule
F
ix gue st domain’s Sc he dule and use Noop sc he dule
A single 100MB file was r
e ad
SLIDE 21 Applications of Xenrelay (3)
Re sult of tr
ac ing
Gue st doma in sc he dule te st
Noop schedule CFQ schedule AS schedule
U-Q2D: generic_make_request to elv_next_request U-T: elv_next_request to generic_make_request in dom0 0-Q2D: generic_make_request in dom0 to elv_next_request 0-D2C: block device handling request 0-T: blkback returning blkfront
SLIDE 22 Applications of Xenrelay (4)
Re sult of tr
ac ing
– Dr
ive r domain sc he dule te st
Noop schedule CFQ schedule AS schedule
SLIDE 23
- Me rg e b lo c k numb e r a nd size
– Gue st do ma in sc he dule te st
Applications of Xenrelay (5)
SLIDE 24
- Me rg e b lo c k numb e r a nd size
– Driver do ma in sc he dule te st
Applications of Xenrelay (6)
SLIDE 25 Conclusion
Xe nr
e lay is a unifie d, e ffic ie nt, and simple me c hanism for tr ansfe r r ing data
Xe nr
e lay pr
ts for use r s who tr ac e subsyste ms to r e c or d and r e lay data
SLIDE 26
Thank you!
Questions ?