OPERETTA: An Optimal Energy Efficient Bandwidth Aggregation System

advertisement
OPERETTA:AnOptimalEnergyEfficient
BandwidthAggregationSystem
KarimHabak†,KhaledA.Harras‡,andMoustafaYoussef†
†Egypt-JapanUniversityofSc.andTech.(E-JUST)
‡CarnegieMellonUniversityinQatar
IEEESECON‘12
Agenda
•
•
•
•
•
•
Motivation
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
Motivation
Motivation
Exponentialincreasein
mobiledatademand
•
•
FCCNationalbroadbandPlan
•
500MHzofadditionalspectrum
•
Technicalandbusinessinnovationsthatincreaseefficiencyof
spectrumutilization
Motivation
•
•
Exponentialincreasein
mobiledatademand
Theproliferationofmulti-homed
ormulti-interfaceenableddevices
SocketAPI
Motivation
•
•
•
Exponentialincreasein
mobiledatademand
Theproliferationofmulti-homed
ormulti-interfaceenableddevices
CurrentOSsallowsyou
touseonlyoneinterface
evenifmorethanone
isconnectedtotheInternet
SocketAPI
Motivation
•
•
•
•
Exponentialincreasein
mobiledatademand
Theproliferationofmulti-homed
ormulti-interfaceenableddevices
CurrentOSsallowsyou
touseonlyoneinterface
evenifmorethanone
Batteryoperateddevices’
isconnectedtotheInternet usersmaypreferincreasing
Energyawareness
thebatterylifetimemore
thanthroughput
Motivation
Motivation
• Currentsolutionsfaceasteepdeployment
barrier
– Updatingservers,application,clientskerneland
infrastructure
• Currentsolutionsfocusonlyinmaximizingthe
throughput
Agenda
•
•
•
•
•
•
Motivation
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
DesignGoals
• Goal1:Deployability
• Goal2:Adaptabilitytosystem’s
ACE
parameters
Scheduler
• Goal3:Energyawareness
ICE
• Goal4:Optimality
• Goal5:Capturetheuser
preferences
• Goal6:Minimizetheuserinvolvement
OPERETTAArchitecture
SchedulingGranularity
Connectionlevelscheduling
Packetlevelscheduling
Doesnotrequireanyserverorinfrastructure Requiresupdatingthelegacyserverand/or
updates
thenetworkinfrastructure
Utilizetheavailableinterfaceswhilehaving
multipleconcurrentconnections
Utilizetheavailableinterfacesevenifonly
singleconnectionisrunningonthesystem
Achieveshighperformancegainsbutnot
optimal
Canreachtheoptimalperformance
OPERETTAArchitecture
• Application
Characteristics
Estimator
– Qualitative
measurements
– Quantitative
measurements
OPERETTAArchitecture
• Interface
Characteristics
Estimator
– Estimatesthe
availablebandwidth
andenergy
consumptionratesat
eachinterface
– Usesdestination
basedestimatesin
caseofOPERETTAenabledservers
OPERETTAArchitecture
• BatterySensor
– Sensestheavailable
batterylevelinthe
device
OPERETTAArchitecture
• UserInterface
Module
– Obtainsuser’s
preferencesand
interfaceusage
policies
– Example
• Selectingscheduling
policies
• Assigningcertain
Applicationsto
certaininterfaces
OPERETTAArchitecture
• Modedetection
module
– Abackground
processlisteningon
specificport
– Specifieswhether
theserveris
OPERETTA-enabled
ornot
OPERETTAArchitecture
• Scheduler
– Schedulesthe
packetsand/orthe
connectionsonthe
differentnetwork
interfaces
OPERETTAArchitecture
• ReceivedData
ReorderingModule
– Usedonlyinpacket
orientedmode
– Reorderthepackets
beforegivingthem
totheapplication
Agenda
•
•
•
•
•
•
MotivationandBackground
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
SystemModel
• Mobiledeviceequippedwithminterfaces
rj
• Eachinterfacewithdatarateandenergy
consumptionratea j
• Thedeviceisrunningasetofapplications
sharingtheinterfaces
SystemModel
• OPERETTA’sgoalistoassignstreamsto
interfaces
– Minimizetherequiredenergy(E)
– Achieveadesiredthroughput(T)
• TheModeDetectionModulethendetermines
whethertheoperationmodeisconnectionSn = 1
Sn = 0
based(),orpacket-based()if
theotherendisOPERETTA-enabled.
UtilityFunction
• Usedtodeterminetheusersrequiredlevelof
Τtarget
throughput()
Userutilityparameter
Τtarget = ri pmin + α
∑ rj
j ≠ i pmin
Thedataratefortheminimumpowerconsuminginterface
Thedataratefor
interfacej
ObjectiveFunction
• Minimizetheoverallsystem’senergy
consumption
Theoverallenergyconsumption
minimize E = ∑ E j
j
Theenergyconsumptionofinterfacej
Equals1ifstreamnisassignedtointerfacej
Equals0otherwise.
n
aj ⎛
⎞
minimize E = ∑ ⎜ ω j ∑ Li (1 − Si )+ Ln S n xnj ⎟
j rj ⎝
i =1
⎠
Theratioofpacketsassignedtointerfacej
Thecurrentsystemloadforstreami
Minimizetheenergyforbothpacket-orientedandconnection
orientedstreams
SystemConstraints
• TargetThroughput
∀j,Δ j =
n
n
Thecurrentsystemload
i =1
i =1
L
ω j ∑ Li (1 − Si ) + ∑ Li Si xni
rj
≤
Ttarget
Thetimeneededforinterfacejtofinishitsload
Eachinterfacehastofinishitsloadbeforeacertaintimein
ordertoobtaintherequiredthroughputlevel
SystemConstrains
• IntegralAssociation
m
∑x
nj
+(1 − S n ) = 1
i =1
Ifthenewstreamisconnection-oriented,itshouldbe
assignedtoonlyoneinterface
SystemConstrains
• PacketLoadDistribution
m
∑ω
j
=1
j =1
Forpacket-orientedstreams,theirtotalloadshouldbe
distributedoverallinterfaces
SystemConstrains
• Variableranges
ω j ≥ 0,1 ≤ j ≤ m
xnj ∈ {0,1},1 ≤ j ≤ m
SchedulingAlgorithm
• Determiningω
⎛
Lr j − Ttarget ∑ Li Si xij ⎞
⎜
⎟
i
ω j = min⎜1 − ∑ ωk ,
⎟
Ttarget ∑ Li (1 − Si ) ⎟
⎜ k ≤ j −1
i
⎝
⎠
• Throughputmaximization
inpacketorientedmode
ωj =
rj
∑r
i
i
Agenda
•
•
•
•
•
•
MotivationandBackground
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
Implementation
• OPERETTAMiddleware
– ItisimplementedasaLayeredService
Provider(LSP)
– ItisinstalledasapartoftheTCP/IP
stackinWindowsOS
– Itinterceptssocket-basedconnection
requestsandassignpropernetwork
interfacestothemordistributetheir
dataacrossthedifferentinterfaces
Network
Application
(e.g.Firefox)
Winsock2
API
WS2_32.DLL
SPI
OPERETTA
Middleware
BaseProtocol
(e.g.TCP/IP)
Implementation
• OPERETTAMonitoringApplication
– Itisusedtocapturestheuserpreferencesand
interfaces’usagepolicies
– ItisalsousedtomonitorOPERETTAmiddleware
anditsestimates
Agenda
•
•
•
•
•
•
MotivationandBackground
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
Environment
WiFi
1Mbps,634mWatt
Bluetooth
6Mbps
0.7Mbps,95mWatt
GSM
2Mbps,900mWatt
NIST-NET
ParametersandMetrics
• Parameters
– Applicationscharacteristics(smallload22.38KBandlargeload
285KB)
– ConnectionsHeterogeneity(13smallconnection/secand1large
connection/sec)
– TheRatioofOPERETTAenabledservers(gamma)
– Networkinterfacescharacteristics
– Userpreferences
– UtilityFunctions
– Robustnesstoestimationerrors
• Metrics
– Throughput
– AverageEnergyconsumptionperunitdata
Results
• Withasfewas25%oftheserversbecomingOPERETTAenabled,
OPERETTA’sperformancereachesthethroughputupperbound,
highlightingitsincrementaldeploymentandperformancegains.
Results
• OPERETTAschedulercapturestheuser’sneeds
Results
• RoundRobindoesnottaketheinterfacesheterogeneityintoaccount
• OPERETTAoutperformsweightedroundrobinsinceittakethe
applicationscharacteristicsintoaccount
Agenda
•
•
•
•
•
•
MotivationandBackground
OPERETTAArchitecture
OptimalScheduling
Implementation
Evaluation
ConclusionandFutureWork
ConclusionandFuture
• OPERETTAisDeployable
• OPERETTA’shighperformancegains
– 150%enhancementinthroughputwithnochangesto
theservers
– Reachesthemaximumachievablethroughputwith25%
oftheserversareOPERETTAenabled
• DirectionsforextendingOPERETTA
– Implementation
– Objective
– Environment
Thankyou
KarimHabak
Karim.habak@ejust.edu.eg
http://karim-habak.co.cc/
Download