Peer-to-peer systems

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Resourcecontainers:AnewfacilityforresourcemanagementinserversystemsGauravBangaPeterDruschelJeffreyC.MogulDept.ofComputerScienceWesternResearchLaboratoryRiceUniversityCompaqComputerCorporationHouston,TX77005PaloAlto,CA94301gaurav,druschel@cs.rice.edumogul@pa.dec.comAbstractGeneral-purposeoperatingsystemsprovideinade-quatesupportforresourcemanagementinlarge-scaleservers.Applicationslacksufficientcontroloverschedulingandmanagementofmachineresources,whichmakesitdifficulttoenforceprioritypolicies,andtoproviderobustandcontrolledservice.Thereisafun-damentalmismatchbetweentheoriginaldesignassump-tionsunderlyingtheresourcemanagementmechanismsofcurrentgeneral-purposeoperatingsystems,andthebehaviorofmodernserverapplications.Inparticular,theoperatingsystem’snotionsofprotectiondomainandre-sourceprincipalcoincideintheprocessabstraction.Thiscoincidencepreventsaprocessthatmanageslargenum-bersofnetworkconnections,forexample,fromproperlyallocatingsystemresourcesamongthoseconnections.Weproposeandevaluateanewoperatingsystemab-stractioncalledaresourcecontainer,whichseparatesthenotionofaprotectiondomainfromthatofaresourceprincipal.Resourcecontainersenablefine-grainedre-sourcemanagementinserversystemsandallowthede-velopmentofrobustservers,withsimpleandfirmcontroloverprioritypolicies.1IntroductionNetworkedservershavebecomeoneofthemostim-portantapplicationsoflargecomputersystems.Formanyusers,theperceivedspeedofcomputingisgovernedbyserverperformance.WeareespeciallyinterestedintheperformanceofWebservers,sincethesemustoftenscaletothousandsormillionsofusers.Operatingsystemsresearchersandsystemvendorshavedevotedmuchattentiontoimprovingtheperfor-manceofWebservers.Improvementsinoperatingsys-temperformancehavecomefromreducingdatamove-mentcosts[2,35,43],developingbetterkernelalgo-rithmsforprotocolcontrolblock(PCB)lookup[26]andfiledescriptorallocation[6],improvingstabilityunderThispaperwillappearintheProceedingsofthe3rdUSENIXSym-posiumonOperatingSystemsDesignandImplementation(ODSI),NewOrleans,LA,Feb.1999.overload[15,30],andimprovingservercontrolmech-anisms[5,21].Applicationdesignershavealsoat-tackedperformanceproblemsbymakingmoreefficientuseofexistingoperatingsystems.Forexample,whileearlyWebserversusedaprocessperconnection,recentservers[41,49]useasingle-processmodel,whichre-ducescontext-switchingcosts.Whiletheworkcitedabovehasbeenfruitful,ithasgenerallytreatedtheoperatingsystem’sapplicationpro-gramminginterface(API),andthereforeitscoreabstrac-tions,asaconstant.Thishasfrustratedeffortstosolvethornierproblemsofserverscalingandeffectivecon-troloverresourceconsumption.Inparticular,serversmaystillbevulnerableto“denialofservice”attacks,inwhichamaliciousclientmanagestoconsumealloftheserver’sresources.Also,serviceproviderswanttoexertexplicitcontroloverresourceconsumptionpolicies,inordertoprovidedifferentiatedqualityofservice(QoS)toclients[1]ortocontrolresourceusagebyguestserversinaRent-A-Serverhost[45].ExistingAPIsdonotal-lowapplicationstodirectlycontrolresourceconsump-tionthroughoutthehostsystem.Therootofthisproblemisthemodelforresourcemanagementincurrentgeneral-purposeoperatingsys-tems.Inthesesystems,schedulingandresourceman-agementprimitivesdonotextendtotheexecutionofsig-nificantpartsofkernelcode.Anapplicationhasnocon-trolovertheconsumptionofmanysystemresourcesthatthekernelconsumesonbehalfoftheapplication.Theexplicitresourcemanagementmechanismsthatdoexistaretiedtotheassumptionthataprocessiswhatconsti-tutesanindependentactivity.Processesaretheresourceprincipals:thoseentitiesbetweenwhichtheresourcesofthesystemaretobeshared.Modernhigh-performanceservers,however,oftenuseasingleprocesstoperformmanyindependentactivities.Forexample,aWebservermaymanagehundredsorWeusethetermindependentactivitytodenoteaunitofcompu-tationforwhichtheapplicationwishestoperformseparateresourceallocationandaccounting;forexample,theprocessingassociatedwithasingleHTTPrequest.eventhousandsofsimultaneousnetworkconnections,allwithinthesameprocess.Muchoftheresourceconsump-tionassociatedwiththeseconnectionsoccursinkernelmode,makingitimpossiblefortheapplicationtocontrolwhichconnectionsaregivenpriority.Inthispaper,weaddressresourcemanagementinmonolithickernels.Whilemicrokernelsandothernovelsystemsofferinterestingalternativeapproachestothisproblem,monolithickernelsarestillcommerciallysig-nificant,especiallyforInternetserverapplications.Wedescribeanewmodelforfine-grainedresourcemanagementinmonolithickernels.Thismodelisbasedonanewoperatingsystemabstractioncalledaresourcecontainer.Aresourcecontainerencompassesallsystemresourcesthattheserverusestoperformaparticularin-dependentactivity,suchasservicingaparticularclientconnection.Alluserandkernellevelprocessingforanactivityischargedtotheappropriateresourcecontainer,andscheduledatthepriorityofthecontainer.Thismodelallowsfairlyarbitraryinterrelationshipsbetweenprotec-tiondomains,threadsandresourcecontainers,andcanthereforesupportawiderangeofresourcemanagementscenarios.Weevaluateaprototypeimplementationofthismodel,asamodificationofDigitalUNIX,andshow

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功