搜索
您的当前位置:首页正文

Growth Code

来源:六九路网
GrowthCodes:MaximizingSensorNetworkData

Persistence

AbhinavKamra

ColumbiaUniversityNewYork,USA

kamra@cs.columbia.edu

JonFeldman

GoogleInc.NewYork,USA

jonfeld@google.com

ABSTRACT

Sensornetworksareespeciallyusefulincatastrophicoremergencyscenariossuchasfloods,fires,terroristattacksorearthquakeswherehumanparticipationmaybetoodangerous.However,suchdisas-terscenariosposeaninterestingdesignchallengesincethesensornodesusedtocollectandcommunicatedatamaythemselvesfailsuddenlyandunpredictably,resultinginthelossofvaluabledata.Furthermore,becausethesenetworksareoftenexpectedtobede-ployedinresponsetoadisaster,orbecauseofsuddenconfigurationchangesduetofailure,thesenetworksareoftenexpectedtooper-ateina“zero-configuration”paradigm,wheredatacollectionandtransmissionmustbeinitiatedimmediately,beforethenodeshaveachancetoassessthecurrentnetworktopology.Inthispaper,wedesignandanalyzetechniquestoincrease“persistence”ofsenseddata,sothatdataismorelikelytoreachadatasink,evenasnetworknodesfail.Thisisdonebyreplicatingdatacompactlyatneighbor-ingnodesusingnovel“GrowthCodes”thatincreaseinefficiencyasdataaccumulatesatthesink.WeshowthatGrowthCodespre-servemoredatainthepresenceofnodefailuresthanpreviouslyproposederasureresilienttechniques.

CategoriesandSubjectDescriptors:E.4[CodingandInforma-tionTheory]:Formalmodelsofcommunication

GeneralTerms:Algorithms,Design,Experimentation.Keywords:NetworkResilience,LDPCcodes.

1.INTRODUCTION

Oneofthemotivatingusesofsensornettechnologyisthemon-itoringofemergencyordisasterscenarios,suchasfloods,fires,earthquakes,andlandslides.Sensingnetworksareidealforsuchscenariossinceconventionalsensingmethodsthatinvolvehuman∗CNS-0435168,ThisworkwassupportedinpartbyNSFgrantsfromMicrosoft,ANI-0133829,IntelandCisco.

ITR-0325495andANI-0238299,researchgiftsPermissiontomakedigitalorhardcopiesofallorpartofthisworkforpersonalorclassroomuseisgrantedwithoutfeeprovidedthatcopiesarenotmadeordistributedforprofitorcommercialadvantageandthatcopiesbearthisnoticeandthefullcitationonthefirstpage.Tocopyotherwise,torepublish,topostonserversortoredistributetolists,requirespriorspecificpermissionand/orafee.

SIGCOMM’06,September11–15,2006,Pisa,Italy.Copyright2006ACM1-59593-308-5/06/0009...$5.00.

VishalMisra

ColumbiaUniversityNewYork,USA

misra@cs.columbia.edu

DanRubenstein

ColumbiaUniversityNewYork,USA

danr@cs.columbia.edu

participationwithinthesensingregionareoftentoodangerous.Thesescenariosofferachallengingdesignenvironmentbecausethenodesusedtocollectandtransmitdatacanfailsuddenlyandunpredictablyastheymaymelt,corrodeorgetsmashed.

Thissudden,unpredictablefailureisespeciallytroublingbecauseofthepotentiallossofdatacollectedbythesensornodes.Often,therateofdatageneratedwithinasensornetworkgreatlyexceedsthecapacityavailabletodeliverthedatatothedatasinks.Withsomanynodestryingtochanneldatatothesinknode,thereiscongestionanddelayintheneighborhoodofthesink.Thisphe-nomenoncanbedescribedasafunnelingeffect[11],wheremuchofthedatatryingtoreachthesinkisstalled.Itisduringthistimethatdataisespeciallyvulnerabletolossifthenodesstoringthedataaredestroyedordisconnectedfromtherestofthenetwork.Evenifstate-of-the-artcompressiontechniquessuchasdistributedsourcecoding[33]orroutingwithre-codingareapplied[8],therecanbeasignificantdelaybetweenthetimeaunitofdataisgeneratedandthetimeatwhichitreachesthesink.Wedefinethepersistenceofasensornetworktobethefractionofdatageneratedwithinthenetworkthateventuallyreachesthesink.

Thegoalofthispaperistoinvestigatetechniquestoincreasethepersistenceofsensornetworks.Toourknowledge,thisisthefirstpaperthatconcernsitselfwiththisparticularproblem.Oursolutionsarebasedontheobservationthateventhoughthereislimitedbandwidthtoforwarddatatowardsthesink,therestillre-mainssufficientbandwidthforneighboringnodestoexchangeandreplicateoneanothers’information.Whilesuchreplicationdoesnotincreasetherateatwhichdatamovestowardthesink,itdoesincreasethelikelihoodthatdatawillsurviveassomeofthestoragepointsfail.

Wefirstfocusonprovidingpersistenceinasensornetworkthatisdeployedtotakea“snapshot”readingofaparticularregion:eachnode’sprimarytaskistotakeasinglereadingandrelaythisread-ingtoasinkwhoseposition(withrespecttothenode)isnotnec-essarilyknown.Thisscenarioislikelyindisastersettingswheregettinganinitialreadingisessential,andnodesmustbe“dumped”intotheregionwithlimitedornoplanningandconfiguration,andwherethetopologymaychangerapidlyduetonodefailures(burn-ingup,gettingcrushed,etc.).Suchnetworkscanbethoughtofas“zero-configuration”,wheredatacollectionandtransmissionmustbeinitiatedimmediately.Hence,nodeshavelittleopportunitytolearnaboutspecificsofthetopologywithinwhichtheyarede-ployed,asidefromsomelimitedinformationdescribingtheirim-mediatesurroundingarea.Globalinformation,suchasthelocation

ordirectionofasink,orthecompletesensornetworktopologyareunknown.Evenifthenodesgettoknowthelocationanddirectionofsink(s)andareabletosetuparoutingtree,nodefailureswillre-sultinfrequentdisruptionsandcausetheroutingsetuptobecomeinvalid.

WedesignanoveldataencodinganddistributiontechniquethatwerefertoasaGrowthCode.Thiscodeisdesignedtoincreasetheamountofinformationthatcanberecoveredatasinknodeatanypointintime,suchthattheinformationthatcanberetrievedfromafailingnetworkisincreased.Thesecodesarealsoeasilyim-plementedinadistributedfashion-anotherimportantcriterionforsensornetworks.Thecodegrowswithtime:initiallycodewordsarejustthesymbolsthemselves,butovertime,thecodewordsbe-comelinearcombinationsof(randomlyselected)growinggroup-ingsofdataunits.Awell-designedcodewillgrowataratesuchthatthesizeofthecodewordreceivedbythesinkisthatwhichismostlikelytobesuccessfullydecodedanddeliverpreviouslyunre-covereddata.

InadistributedsensornetworkwherethenodesemployGrowthCodestoencodeanddistributedata,thesinkreceiveslowcom-plexitycodewordsinthebeginningandcodewordsofhigherandhighercomplexitylateron.Identifyingtheoptimaltransitionpointsatwhichthecodeswitchestohighercomplexitycodewordsisanon-trivialtask.Weprovethatsuchacodewherethecomplexityofcodewordsincreasesmonotonicallyisoptimalinrecoveringthemaximumamountofdataatanytimeprovidedthetransitionpointsarecarefullychosen.

WeformallyanalyzeGrowthCodesandfindcloseupperboundsforthetransitionpoints.Inaperfectsourcesetting,wherethesinkreceivescodewordsthatexactlyfitacertaindesireddegreedistri-bution,wecomparetheperformanceofadegreedistributionbasedonGrowthCodeswithotherwellknowndistributionssuchasSoli-tonandRobustSoliton[18].Furthermore,wesimulatevariousdistributednetworkscenarios(includingsomemimickingdisasterscenarios)toevaluatetheperformanceofGrowthCodes.Wefindthatinallthestudiednetworkscenarios,ifthesensornodesusetheencodingprotocolbasedonGrowthCodes,thesinknodeisabletoreceivenoveldataatleastasfastasanyotherprotocolandinmostcases,isabletorecoverallsymbolsinlessthanhalfthetimecomparedtowhennocodingisused.

Wethenshowhowtoextendgrowthcodestonetworksettingsinwhichnodesmustmakeperiodicmeasurementsoftheexistingregion.Tothisend,weprovidethemainfeaturesofapracticalimplementationofGrowthCodes.Usingthesefeatures,wealsoimplementthesecodesonrealmote-basedsensordevicesandper-formexperimentswhichshowusingGrowthCodesresultsinmuchfasterrecoveryofdistributedsensordata.

Therestofthepaperisorganizedasfollows:Thenextsectiondetailssomepreviousrelatedwork.InSection3,weformulatetheproblemanddescribethenetworksettinginwhichitisemployed.Section4describesthevarioussolutionapproachesincludingthenovelapproachbasedonGrowthCodesandtheencoding/decodingalgorithmsused.InSection5wemathematicallyanalyzetheen-codingprotocolbasedonGrowthCodesandproveinterestingprop-ertiesofthesaidprotocol.WecompareGrowthCodeswithothercodingschemesinaperfectsourcesettinginsection6.InSec-tion7,wedescribethepracticalaspectsofimplementingGrowthCodes.WepresentsimulationandexperimentalresultsinSections8and9tostudytheperformanceofourprotocolinvarioussensornetworksettings.Section10describeshowtohandlesensornodeswhichgeneratedataperiodically.WeconcludeinSection11.

2.RELATEDWORK

Muchofthecodingworkinsensornetworkstargetedtowardsincreasingtheefficiencyofdatatransmissiontosinkpointsuti-lizessourcecoding,whichtakesadvantageofspatialandtemporalcorrelationsindatatocompressthedatatobedelivered.Exam-plesincludesystemslikeTSAR[25]andPRESTO[19]thatusewaveletcompressiontoreducetheoverheadsintransmittingcorre-lateddata.Alocalclusteringschemewhichisnear-optimalacrossarangeofspatialcorrelationsissuggestedin[32]althoughtheyignoretemporalcorrelationsandlossesinthenetwork.

Ourwork,incontrast,canbeviewedasadistributedchannelcodingwherecodingisperformedtomoreeffectivelyrecoverfromstochasticlossesofinformation(inourcase,failingnodes).Mostworkinthisareaisfocusedonefficientlyrecoveringalldata,andformanyoftheschemes,datacannotbepartiallyrecovered.ThecanonicalcodingschemeistheoptimalblockerasureReed-Solomoncodes[17]whichhavebeenadaptedforerasure-resilientdatatrans-fer[21].ThehighcomputationalcostsforencodinganddecodingthesecodeshaspushedresearchinthedirectionofLDPCcodes,suchastheclassofDigitalFountaincodes[16],thatincludeTor-nadocodes[20]andLTcodes[18].Byerset.al.optimizelargetransfersin[14]usingcodesbyhavingthesourcere-codedataasitlearnsfromreceiverswhatinformationtheystillrequire.Considineet.al.[15]proposeaheuristicforgeneratinggooddegreedistribu-tionswhichcanbeusedtoconstructlowcomplexityerasurecodes.Theseschemesnotonlyemphasizetherecoveryofalldata,butarealsocentrallyencoded,andcannotbetriviallyappliedinsettingswherethedataisdistributedtobeginwith.

Distributedencodingschemesthataimtorecoveralldataper-mitnodestore-codedataen-routetothedestinationhavealsobeenshowntobeamoreefficientmeansofcommunication[27].Aparticularareaofrecentinterestistheapplicationofnetworkcod-ingwithinmulticastenvironments(e.g.,[29,9],whereithasbeenshownthatsimplelinearcodesareveryefficient[24].In[31,5],acodingschemeisconstructedtofacilitaterecoveryofpopulardatabyreplicatingcodedversionsofthedataatmultiplenodes.Kattiet.al.[3]proposethatnodesguesswhatdataothernodesalreadyhaveandexploitlocalcodingopportunitiestoreducetheconsumedbandwidth.

Somestudiestrytocombinesourceandchannelcoding.In[23],atechniqueispresentedthatusesLDPCcodesandsourcecodingacrosstwoorthreecorrelatedsourcestoimprovetheenergyeffi-ciencyoftransmissioninasensornetwork.Marcoet.al.[12]ex-plorethetradeoffbetweenefficientSlepian-Wolfcodingandpacketlosses.TheyintroducevariationsintheSlepian-Wolfdistributedcodingtoaddsomeredundancy.

Toourknowledge,theonlyworkthatfocusesonpartialrecoveryisPriorityEncodingTransmission[4]whichprioritizesdataandprovidesreliabledeliveryofhighprioritydataatlowcost,attheexpenseofincreasedoverheadtoalsorecoverlowprioritydata.Drawbacksofthisschemeinasensornetsenvironmentarethehighrecoverycostformuchofthe(lowerpriority)data,andthatthereisnoknownwaytoefficientlydistributetheencodingprocess.DirectedDiffusion[10]usesdynamicallychosenbestpathsandin-networkdataaggregationindistributedsensingenvironmentstoachieveenergyandbandwidthefficiency.

3.PROBLEMSETUP

Ourformulationconsistsofasensornetworkwhosegeneralcon-figurationissimilartothatconsideredinalargebodyofwork.WeconsideranetworkconsistingofNsensornodeswheredatasensedbyanodedescribingpropertiesofitsimmediatesensingregionis

tobeforwardedtoasinkforfurtherprocessing.Therateatwhichthenodesasanaggregategeneratedatamaygreatlyexceedthecommunicationcapacityofthenetworksuchthatforwardingbe-comescongested,anddatamustresidetemporarilyinthenodesbeforebeingdeliveredtothesink.Furthermore,themajorityofthenodescannotdirectlytransmittothesink,andhenceothernodesmustactasintermediateforwardingagentsofdata.Theseinterme-diatenodeshavesomecomputationalpowertomanipulatedataintransit,i.e.,theycancompressorrecodedatatoincreasedeliveryefficiency[34,33].

Therearealsosomespecificstoourformulationthatdistinguishourenvironmentfrommuchpreviouswork.Weareconcernedwithmonitoringdangerousemergencyordisasterareas,suchasearth-quakes,floods,orfires.Often,nodesmustbedeployedquicklyinresponsetotheemergency,preventinganopportunitytostaticallyoptimizethedeployment.Evenifthenetworkisplannedbefore-hand,thedisasteritselfmaysignificantlyalterthenetworkcon-figuration,makingthepre-plannedconfigurationobsolete.Thesespecificstranslatetoourproblemasfollow:

•Ourinitialstudywillassumethateachnodetakesasingleread-ingatasinglepointintime,andthenetworkobjectiveistodeliverasmanyofthesereadingsaspossibletothesinkandasquicklyaspossible.

•Thenetworkis“zero-configuration”,suchthatnodesmustop-erateknowingonlyabouttheirimmediatesensingenvironment:theonlytopologyinformationavailabletoanodeisitssetofneighborswithwhomitcancommunicatedirectly.Thisiseitherbecausethedataisurgentlyneeded,ornodesareexpectedtohaveextremelylimitedlifetimes.Thelatterpropertynotonlyleaveslimitedtimeforthenetworktoconfigure,butalsoinducesrapidvariationintopology,whichwouldlikelyobviateanyconfigurationthatwasconstructedbasedonpreviousobservationsoftopology.

•Ourprimaryconcernisthepersistenceofdata:ourgoalistominimizetheamountofdatalostduetofailuresofnodesastheemergencyprogresses(e.g.,thefirespreads,rockscontinuetobombardanarea,orfloodwaterscontinuetogrow).Traditionalas-sumptions,likepowerconservation[22,26]andoptimizedrouting[7,36]aresecondaryissuesandarenotaddressedindetailinthispaper.

3.1SensorNetworksthatNeedPersistence

28x1x1x1x1In the beginning:Nodes 1 and 3 x31exchanging codewords3x1x3x3x3x38x8x4⊕x3x8⊕x7x1⊕x42Later on:Node 1 xis destroyed: 1⊕x4Symbol xx12⊕x8survives in the 1network3x3x2⊕x8x6⊕x3x4⊕x5Figure1:Localizedviewofthenetwork.Inthebeginning,thenodesexchangedegree1codewords,graduallyincreasingthedegreeovertime.Evenwhenanodefails,itsdatasurvivesintheanothernode’sstorage

Figure1depictsthesensornetworkfromthepointofviewofasinglenodeattwodifferenttimes.EachsensornodeintheN-nodenetworkisarbitrarilyplacedtosenseitsdata,andconnectstoasmallsubsetofnodeswithwhomitcancommunicatedirectly.Therearesinklocationswheredatacanbecollected,butinazero-configurationsetting,theselocationsarealmostalwaysunknowntothesensingnodes.Thearrowsinthefigureindicatethecommu-nicationbetweennodesinanattempttomovethedata,hopefullytowardsasink.Initiallythenodehasonlycopiesofitsowndata,butovertime,itwillalsocontain(encoded)copiesofothernodes’data,suchthatthefailureofanothernode(inthefigure,node1)doesnotnecessarilyresultinthelossofthatnodes’data.

Thetypeofdisasterimposesaspecifictypeoffailureprocessofnodesinthenetwork.Forinstance,inafireorflood,onewouldprobablyexpectnodefailurestobespatiallyandtemporallycorre-lated,whereanodeismorelikelytofailifitsneighborhasrecentlyfailed.Inanearthquakeorrock-storm,thefailureprocessisproba-blybestviewedasasequenceofrandomlyselectedregionsfailingovertime,whereallnodeswithinaregionarewithinclosespatialproximityofoneanotherandfailsimultaneously,withdifferentre-gionsfailingatindependenttimes.

Thefailureofnodesinaregiontranslatestoalossofmemoryintheglobalnetwork,andanyinformationstoredinthesefailedregionsislostunlessitisduplicatedelsewhereorisalreadydeliv-eredtothesink.Datathatisretrievedviatheinformationcollectedatthesinkisreferredtoasrecovereddata.InFigure1,thenodesexchangecodewordsthatconsistoforiginaldataorXOR’dcon-glomeratesoforiginaldata.Lateron,eventhoughanodefails,itsdatasurvivesinthenetwork.

Atahighlevel,ourgoalistotrytofindthebestwaytorepli-cateinformationinthesensornetworktomaximizethequantityofrecovereddataatalltimest,evenasnodesfailinthenetwork.

3.2NetworkDescriptionandAssumptions

Eachnodeisequippedwithsomememoryandprocessingpowersothatthereisroomforreplicationofinformation.The“best”waytoreplicatewilldependonthecapabilitiesofthevariousnodes,aswellasvariouspropertiesofthedata(e.g.,spatialandtemporalcorrelation,priority,presumedaccuracy).Asinknodeabsorbsdataatarateλs,whereλsdependsonthenumberofsensornodestowhichthesinkconnects.Inthenetwork,theneighboringnodescanexchangedataatasecondrateλe.

Sincewearemakingapreliminaryforayintotheproblemofper-sistence,webelieveitismostappropriatetothoroughlyanalyzethebasicdesignofapersistenceprotocolinasomewhatconstraineddesignspace.Ouranalysisanddescriptionoftheprotocolmakesthefollowingassumptionsaboutthesensornetworkingenviron-ment,thoughlaterinthepaper,weextendtheprotocolandshowexperimentswheretheseassumptionsarerelaxed.

•Nodeconfigurationsarehomogeneous:eachnodehasasimilarmemorysizeC.Thedatacollectedateachsensorhasanidenticalstoragesizeofc,andwerefertothissize-cdataunitasasymbol.Hence,anodecanideallystoreupto󰀆C/c󰀇symbols.Weassumefornowthatthecodewordsalsorequiresizec1.

•Dataisnotcompressed,andallgenerateddataisofequalim-portance.Thisassumptionignoresthepotentialspatialcorrelationsthatoftenexistamongsenseddata[32,13]aswellasthelikeli-hoodthatsomedatageneratedismoreimportantthanothers(e.g.,atnodesclosertoregionsofanomalousactivity).

1

scribeInpractice,someadditional“header”issueintheSectionsetofsymbols7.

encodedinthecodeword.spaceisnecessaryWeaddresstothisde-4.THEBASICPERSISTENCEPROCEDURE

Havinglaidoutourpreliminarynetworkmodelintheprevioussection,wearenowreadytodescribeourbasicpersistencepro-cedure.Wedividethetimeintorounds.Weemphasizethatthisdivisionismerelytofacilitatethedescriptionandevaluationofourtechniques.ThedescribedtechniquesareeasilyextendedtoanasynchronousenvironmentasweshowinSection7.Ineachround,neighboringnodesexchangeinformation.Sinkpointsattachtoasubsetofnetworknodesandareabletoretrieveafixedamountofinformationineachround.

•Ineveryround,eachnodedecideswhatinformationitmusttransmittoitsneighbor,andhowtheincominginformationfromitsneighboringnodesisstored.•Ineveryround,eachsinkcollectsnewcodewordsymbolsanddecodesthisinformationtoretrievetheoriginaldata.Initially,anodefillsitsmemorywithcopiesofitsowndata.Ineachround,anodehastheopportunitytomoveorreplicatecode-wordsthatexistinitsmemorytoanothernode.Sincethelocationofthesinkisunknown,andsincealldataisofequalimportance,weuseasimplealgorithmwhereanoderandomlychoosesaneighborandarandomcodewordinitsmemoryandexchangesthiscode-wordwithoneofthecodewordsstoredintheselectedneighbor’smemory.Theonlycaveattothisexchangeisthateachnodekeepsacopyofitsoriginaldata(thiscopywillbeusedintheencodingpro-cessdescribedlater).Periodically(perhapsonceeveryMrounds,orperhapsMtimesaround),thesinksamplescodewordsfromnearbynodes.Unlessotherwisespecified,weassumeM=1,i.e.,thatλs=λe.

Toincreasetheefficiencyofdatarecoveryatthesink,nodescanchoosetoencodethedatatobesent.Weconsiderseveralcodingvariants:

Nocoding:Nodessimplyexchangetheoriginalsymbols.Thesinkislikelytoreceivemanyduplicates.InthewellstudiedCouponCollectors’Problem[30],ithasbeenshownthatiftheNoriginalsymbolsaregenerateduniformlyrandomly,thesinkneedstore-ceiveapproximatelyO(NlogN)symbolstorecoverallNoriginalsymbols.

RandomLinearcodes[35]:Here,theNoriginalsymbolsareassumedtobeelementsofsomefinitefieldandeachcodewordisalinearcombinationofallNsymbols,withthecoefficientsalsobeingmembersofthesamefinitefield.However,theencod-ing/decodingcomputationalcomplexityofthesecodesisveryhighandhence,asmentionedinSection2,theyareimpracticalinoursensornetworksetting.

Erasurecodes:Nodescanstoreandexchangecodewordsym-bolsformedusingerasurecodes.Thesecaneitherbeoptimalera-surecodessuchasReed-Solomon[17]orerasurecodesbasedonsparsebipartitegraphssuchasTornado[20]orLTcodes[18]whichtradeefficiencyofthecodeforfastencoding/decodingtime.Con-sideringthelowcomputationalpowerthatsensornodeshaveandthelimitedtimetheywillhaveavailabletoperformtheencoding,onlycodeslikeLTCodeswhichhavefastencoding/decodingalgo-rithmsarepracticalinourscenario.

EachcodewordisanXORofasubsetoftheNoriginalsymbols.ThenumberofsymbolswhichareXOR’dtogetherisreferredtoasthedegreeofthecodeword.Thesecodeschoosethedegreeofeachcodewordtofitapre-determineddegreedistributionπwhichisaprobabilitydistributionoverthedegreeslengths.

AsimpleXORencoderbasedonthedegreedistributionπworksasfollows:

1.Chooseadegreed,whered=iwithprobabilityπi.

2.RandomlychooseddistinctsymbolsoutoftheNsymbolsx1,...,xN.ConstructthecodewordsymbolbyXOR-ingthedsymbols.IthasbeenshownthatifthesinkreceivesanexpectednumberoflittlemorethanNsuchencodedsymbols,itcandecodealloftheNoriginalsymbolswithhighprobability.OneofthesimpledegreedistributionsusedinLTcodesistheSolitondistribution[18]whichrequiresthesinktoreceiveexactlyNcodewordstorecoverallNsymbols.Unfortunately,thisdistributionhasahighvariancewhichmeansthatthereisanon-negligibleprobabilitythatthesinkwillneedmanymorecodewordsinpractice.RobustSolitonisamodifiedformofSolitondistributionandperformsmuchbetterinpractice.Weemphasizetwodrawbacksinapplyingthesecodestoourdomainhere:

•Itisnotstraightforwardtoimplementtheencodingprocessinadistributedsettingsuchthattheappropriatedegreedistributionisobtained.

•Thesecodesarenotdesignedtomaximizetheamountofinfor-mationrecoveredbythesinkwhenonlyasmallnumberofcode-wordsarereceived,butareattemptingtominimizethenumberofcodewordsneededtoretrievealldata.WewillshowthatGrowthCodesout-performtheirSolitoncounterpartsinthisaspect.

4.1GrowthCodes

x1In the beginning:Sinkx3Recovered Symbolsx5⊕x8Later on:

Sinkx2⊕x3Recovered Symbolsx1xx53Figure2:GrowthCodesinaction:Thesinkreceiveslowdegreecodewordsinthebeginningandhigherandhigherdegreelateron

GrowthCodesisalinearcodingtechniquethatencodesinfor-mationviaacompletelydistributedprocess.ThetechniquenotonlyensuresthatthesinkisabletorecoverallNofthedatafromonlyalittlemorethanNcodewordsymbols,butalsothatdataisefficientlyrecoveredwhenonlyasmallnumberofcodewordsisreceived.

WemotivatethedevelopmentofGrowthCodesusingthefollow-ingtoyproblem.Considerasinkthatisattemptingtocollectdataoveraseriesofrounds.ThedatacanbeXOR’dtogethertogener-atefixed-sizecodewords.Supposethesinkcanselectthedegree2ofthearrivingcodeword,butthesetofsymbolsthatformthecode-wordareselecteduniformlyatrandom.Alsosupposethesink’sgoalatanytimeistomaximizetheexpectednumberofsymbolsithasrecoveredbythattime.Atanytimet,giventhecollectionofcodewordsthesinkhasalreadyreceived,whatshouldthesinkchooseasthedegreeofthenextarrivingcodeword?

Clearly,forthefirstcodeword,thedegreeshouldbeone.Suchacodewordwillproduceonesymbolwhereasanycodewordof2

XOR’dOnceagain,togetherthetodegreeformtheofacodeword

codewordisthenumberofsymbolshigherdegreewillproducenosymbols.Ifthetotalnumberofsym-bolsNislarge,thenthesinkwillalsodowelltorequestthatitssecondreceivedcodewordbeofdegreeone.Ifthesinkcontin-uestorequestcodewordsofdegreeone,eventuallyapointwillbereachedwhereacodewordofhigherdegreewillverylikelybede-codablegiventheinformationreceived,andanothercodewordofdegreeonewillverylikelycontaindatathathasalreadybeenre-ceived.Itisnothardtofollowthislogicthroughtoseethatasmorecodewordsarereceived,the“best”degreeforthenextcode-wordcontinuestogrow.Wewillexplorethisphenomenonmoreformallyinthenextsection.

Figure2depictstheworkingoftheGrowthCodesprotocol.Thesinknodereceiveslowdegreesymbolsinthebeginningfromwhichitisabletoimmediatelyrecoverdata.Lateron,thesinkreceivedhigherdegreesymbolswhicharemoreefficientinrecoveringmoredata.

Inacompletelydistributedsensornetworksettingsuchasours,wherethenodeshavelimitedstorageandmeagercomputationalresources,asuitableencodingprotocolisonewhichiseasilyim-plementablebythenodesandwhichisalsoefficientintermsofthenumberofsymbolsthatcanberecoveredbythesinkforagivennumberofreceivedcodewords.

GrowthCodesarenovelinthatthecodewordsusedtoencodeafixedsetofdatachangeovertime.Codewordsinthenetworkstartwithdegreeoneand“grow”overtimeastheytravelthroughthenetworken-routetothesink.Thisresultsisthethesinkreceivingcodewordswhosedegreegrowswithtime.Usingsuchadesign,ifthenetworkisdamagedatanytimeandthesinkisnotabletoreceiveanyfurtherinformation,itcanstillrecoverasubstantialnumberoforiginalsymbolsfromthereceivedcodewords.

Inordertofacilitateformalspecificationoftheprocedureforen-codinganddecodingGrowthCodes,wemustfirstintroducesometerminologywewilluse:

DEFINITION4.1.GivenasetXoforiginalsymbolsandacode-wordsymbolsofdegreed,thedistanceofsfromsetX,dist(s,X),isthenumberofsymbolsoutofthedsymbolsXOR’dtogethertoforms,whicharenotpresentinX.

Thedecoder,D,thatweuseforourGrowthCodes(tobeimple-mentedatthesink)willperformitsdecodinginanidenticalfash-iontowhatistraditionallyusedinallSparseBipartitegraph-basedcodingschemessuchasLTCodesandTornadoCodes.Thiswillal-lowustofairlycomparetheperformanceofGrowthCodestopriorcodingschemes:

•LetAbethesetofcodewordsreceivedandXbethesetofsymbolsalreadydecoded(whereXisinitially0).

•Ifthereexistsanycodewordsforwhichdist(s,X)=1,thendecodethemissingsymbolencodedins(byXOR’ingswiththesymbolsinXthatwereusedtogenerates),andaddthatsymboltoX.

ThedecodingprocessusedbythesinkisanonlineversionofdecoderDsuchthatthecodewordsaredecodedon-the-flyastheyarereceivedandthecodewordswhichcannotbedecodedatthemomentarestoredforlateruse.Wenotethatsymbolswhosedis-tanceisgreaterthan1fromXcouldpotentiallybecombinedtoextractdatasymbolsusingsophisticatedbutmorecomputationallyexpensivetechniques(e.g.,gaussianelimination).

Asequenceofincreasingvalues,K1,...,KNarehard-codedintothenodespriortotheirdeployment.ThevalueofKiindicatesthepointintime(i.e.,thenumberofroundsafterthedatawasgen-erated)wheresuchdatashouldbeencodedincodewordsofdegreenolessthani.IfaftertimeKi,acodewordofdegreesmallerthaniistobeexchangedwithaneighbor,thesendingnodewillXOR

thecodewordwithitsowndatasymbolpriortoexchangingit.Incasethecodewordalreadycontainsthedatasymbolofthesendingnode,nothingisdoneandthecodewordisexchangedasis.Even-tually,afterbeingexchangedfromnodetonode,thecodewordwillbeexchangedbyanodewhosedatasymbolisnotcontainedinthecodeword.Then,thatdatasymbolcanbeXOR’dintothecodewordanditsdegreeincreased.

5.

GROWTHCODESFORDISTRIBUTEDENCODINGANDONLINEDECODING

InthissectionweprovesomebasicpropertiesofGrowthCodeswhicharecriticalinfindinggoodvaluesforthedegreetransitionpoints,{Ki},thepointsintimewherethecodeshouldincreaseindegree.The“best”timeforanetworkdependsnotonlyonthewaythecodersareimplemented,butalsoonthetopologyofthenetwork.Sincewearedesigningcodesforazero-configurationnetwork,topologyinformationisnotavailable.Hence,ourcodeswillbedesignedundertheassumptionthatwhenthesinkreceivesacodewordofdegreed,thedatacontainedinthatcodewordisuniformlydrawnatrandom.Ifthesensornetworkperformsagood“mixing”ofdatapriortothedatareachingthesink,thisassumptionisnotunreasonable.

Solvingfortheoptimaltransitionpointsisnon-trivialforthede-coderDdescribedintheprevioussection.Thedifficultyisthatthedecodermaintainsamemoryofpreviouslyreceivedcodewordsthatcouldnotbeusedatthetimeoftheirarrival,butcanbeusedlateronasfurthercodewordsarriveandadditionaldatasymbolsarede-coded.Fortractabilityoftheanalysis,wewillconsiderarestricteddecoderthatthrowsawayanycodewordsitreceiveswhichcannotbedecodedimmediately,anddoesnotmaintainthemforlateruse.Duetolackofspace,alltheproofsareomittedbutareavailableinourtechnicalreport[6].

5.1RestrictedDecoder

Wedefineadecodingalgorithmthatislesspowerfulthande-coderD.Onemightneverusethisdecoderinpractice,butitisusedheresinceitissimplertoanalyzeandwillhelpusproveboundsonthetransitiontimesKiofGrowthCodes.

Adecoderisfedasequenceofsymbols,s1,s2,...,sk.Foradecoderα,wedefineα(s1,s2,...,sk)tobethenumberofsym-bolsthatαcandecodewhenfedthesequences1,s2,...,skinthatorder.

DEFINITION5.1.DecoderS,givenafixedsequenceofcode-wordsymbolss1,s2,...,sk,worksasfollows:InitiallythesetXofrecoveredsymbolsisempty.1.Leti=0.

2.Fromtheremainingsymbols,choosesymbolsiofthelowestdegree.Ifdist(si,X)=1,decodeanewsymbolandaddtosetX.3.Ifdist(si,X)=0ORdist(si,X)>1,throwsiasunus-able.4.Incrementiandgotostep2.Repeatuntilallsymbolshavebeenconsidered.DecoderSismoreconstrainedthandecoderD:Sconsiderscode-wordsinafixedorderonlyandthrowsawayallcodewordswhichcannotbedecodedimmediately(butcouldbeofusetoDatalaterpointinthedecodingprocess).Moreformally,thiscanbestatedasfollows:

LEMMA5.2.Givenasequenceofsymbolsσ=s1,s2,...,sandareorderingofthesesamesymbolsσ󰀂=s󰀂1,s󰀂󰀂

k,

D(s1,s2,...,sk)≥S(s󰀂1,s󰀂2,...,s󰀂

2,...,sk.Then

k)foranysequenceσandanyreorderingσ󰀂ofthatsequence.

DecoderSworksonasequenceofsymbolssortedinnon-decreasingorderoftheirdegrees.OnecanalsoviewSasadecoderoper-atinginanenvironmentwherecodewordsarriveintheorderofnon-decreasingdegree.

5.2

Findingcoderthebest-degreecodewordsforde-S

LetusconsiderourdecoderSwhichdoesnotmaintainprevi-ouslyreceivedcodewords.Whenattemptingtodecode,itcanonlyutilizethedatathatithasreceivedpreviouslyandthenextarriv-ingcodeword.Thefollowinglemmasaddressthe“best”degreethatthenextcodewordshouldhaveasafunctionofthenumberofalready-decodeddatasymbols.

LEMMA5.3.Letρr,dbetheprobabilityofsuccessfullydecod-ingrandomlychosenadegreedsymbolreadybeenrecovered.Thenρr,d=(r

whenrsymbolshaveal-d−1)(N−r)(N.d)LetRirepresentthenumberofsymbolsrecoveredbyasinkwhencodewordsofsizegreaterthaniprovideagreaterlikelihoodforprovidingrecoverythanthoseofdegreelessthani.Wewillshowthat,fordecoderS,

R1=

N−12,...,RiN−1

i=i+1

∀i∈[1,N−1].(1)

LEMMA5.4.ρr,i≥ρr,i+1aslongasr≤Ri=

iN−1

i+1Theaboveresultvalidatesourearlierintuitionthatwhenthenumberofrecoveredsymbolsissmall,lowdegreecodewordsarebetterandasthenumberofrecoveredsymbolsincreases,higherdegreecodewordsarebetter.

TheresultprovesthatbeforeR1=N−1

2symbolshavebeenrecovered,degree1codewordsarethemostuseful.AfterthatuntilR2symbolshavebeenrecovered,degree2codewordsarethemostusefulandsoitgoes.

LEMMA5.5.Ifρr,i<ρr,jforsomeir

Thisresultbasicallystatesthatoncedegreejcodewordshavebecomemoreusefulthanlowerdegreecodewords,theywillre-mainsoevenwhenmoresymbolsarerecovered.ThismonotonicitypropertyisessentialforGrowthCodeswhichstartwithlowdegreecodewordsandswitchtohigherandhigherdegreecodewordswithtime.

5.3PropertiesofDecoderD

Nowweconsidersomepropertiesoftheofflineversionofde-coderD,whichcanthenbeappliedtotheonlineversionofdecoder

DtohelpdesignGrowthCodes.

THEOREM5.6.WhenusingdecoderDtorecoversuchthatr≤R1=N−1

rsymbols,

,theoptimaldegreedistributionhas

symbolsofonlydegree1.

2

THEOREM5.7.WhenusingdecoderDtorecoverRN−1

1=

dataunits,theexpectednumberofencodedsymbolsrequired2

is

RKX1−1

1=N

.

i=0

N−iTheorems5.6and5.7showthatifmostofthenetworknodesfailandasmallamountofthedatasurvives,thennotusinganycodingisthebestwaytorecovermaximumnumberofdataunits.WegeneralizetheseproofsinTheorems5.8and5.9.

jNTHEOREM−1

5.8.Torecoverrsymbolssuchthatr≤Rj=,theoptimaldegreedistributionhassymbolsofdegreenolargerj+1

thanjLet

Rj−1

Kj=KX

󰀀N󰀁j−1+

󰀀i󰀁j

i=R(j−1)

j−1

(N−i)

(2)

THEOREM5.9.TorecoverRjN−1

j=j+1

symbols,atmostKj

symbolsarerequiredinexpectation

5.4

ACodes

NewDegreeDistributionbasedonGrowthAccordingtotheanalysisinsection5.3,weobservethatitisbesttouseonlydegree1symbolstorecoverthefirstR1sym-bols,onlydegree2symbolstorecoverthenextR2−R1symbolsandsoon.Furthermore,anexpectednumberofK1encodedsym-bolsarerequiredtorecoverR1symbols,anexpectedmaximumK2codewords(recallthatK1istheexactexpectednumberwhile{Ki,i>1}areupperboundsontheexpectednumberofcode-wordsrequired)arerequiredtorecoverR2symbolsandsoon.Thissuggestsanaturalprobabilitydistributiononthedegreesoftheencodedsymbols.Inparticular,ifweneedtoconstructatotalofkencodedsymbols,weshouldhaveK1degree1symbolssothatwecanrecoveranexpectedR1symbolsfromthem,K2−K1degree2symbolssothatwecanrecoveranexpectedR2−R1symbolsfromthemandsoonaslongastheksymbolsarenotyetreceived.Adegreedistributioncanthusbedefinedas

π¯∗(k):π∗

Ki−Ki−1k−Ki−i=max(0,min(

k,1

k

))(3)WecallthistheGrowthCodesdegreedistribution.

IntheencodinganddataexchangeprotocolbasedonGrowthCodes,sensornodescanconstructcodewordsthatfitthedesireddegreedistributionπ¯∗(k).BychoosingthedegreetransitionpointsasK1,K2,...etc,thenodesgeneratecodewordsaccordingtothedistributionπ¯∗(k)wherekvarieswithtime.Ifasinknodereceives1codewordperround,itwillreceivedegree1codewordsforthefirstK1rounds,followedbydegree2codewordsuntilroundK2andsoon.Iftherearemultiplesinknodesandtheyreceivemanycodewordsperround,thenjustbyscalingthevaluesofKi,thedesiredeffectcanstillbeeasilyachieved.

6.

PERFECTSOURCESIMULATION

MODEL

GrowthCodesdegreedistributionasdefinedinEquation3growsmonotonicallyincomplexitywithtimeandhencegivesitselfnicelytoanimplementationinadistributedenvironment(wherethesourcedataisdistributedtobeginwith)asdescribedinSection4.1.ItisdifficulttocompareGrowthCodeswithotherwellknowndegreedistributionssuchasSolitonsinceitisnotclearhowthesedistri-butionscanbeimplementedinadistributedscenario.Thedatasymbolsareinherentlydistributedtobeginwithanditisimpossi-bletogenerateatrulyrandomcodewordofaspecificdegreeunlessallsymbolsarefirstaggregatedatasinglenode.Thisproblemis

Average Output of various degree distributions

1000

800derevocer 600

slobmys ega 400

revA 200

No Coding

Robust SolitonSoliton

0

Theoretical Upper Bound

Growth Codes

0

500

1000 1500 2000

2500

3000

Number of codewords used

Figure3:Comparingtheperformanceofvariousdegreedistri-butionsinaperfectsourcesetting.Nischosentobe1000

bypassedintheGrowthCodesprotocolbygraduallyincreasingthedegreesofcodewordsgeneratedinacompletelydistributedman-ner.

Forsakeofcomparison,letusassumeitispossibletoimplementanydegreedistributioninadistributedsettingsothatthesinkre-ceivescodewordsexactlyfollowingthisdistribution.Wenoweval-uatehowtheGrowthCodesdegreedistributioncomparestootherwellknowdegreedistributionsinsuchascenario.Wecallthistheperfectsourcesimulationmodelsincewegeneratecodewordsac-cordingtoaspecificdegreedistributionandassumethatallthesecodewordsarereceivedatthesink.

Wehavethefollowingscenario:Thereisonesourceandonesink.Thesourcehasallsymbolsx1,...,xN.Itconstructscode-wordsaccordingtosomedegreedistributionπ,i.e.,acodewordofdegreedisconstructedwithprobabilityπdandeverycodewordofdegreedwithuniformprobability.Thesinkreceivesthecodewordsonebyoneanddecodesthemonthefly.Ifthesinkcannotdecodeacodewordatanytime,itisstoredforlaterusewhenmoresymbolshavebeenrecovered.NotethattheGrowthCodesdegreedistribu-tionasdefinedinEquation3changeswithtime,sothathigherandhigherdegreecodewordsaregeneratedastimegoeson.Wewanttoevaluatehowmuchdatacanberecoveredbythesinkforagivennumberofreceivedcodewords.ThesinkusestheonlineversionofdecoderDasdescribedinSection4.1torecoverdataonthefly.WecomparewiththeSolitonandRobustSolitondistributionswherethevaluesofRobustSolitonparameterscandδarechosentobe0.9and0.1respectivelyassuggestedbytheauthorsin[18].Toassesstheadvantageofusingcodingifatall,wecomparewithanocodingschemewhereeachcodewordisarandomlyselecteddegree1symbol.

Figure3depictsthenumberofsymbolsrecoveredatthesinkforanygivennumberofcodewordsreceivedaccordingtothecorre-spondingdegreedistribution.Theresultsarefromameanof100simulationruns.Thetopmostcurveplotsthetheoreticalboundonthemaximumnumberofsymbolsthatcouldberecoveredbythatpointintime(i.e.,themin(k,N))wherekisthenumberofcode-wordsreceivedatanypoint.

Ifnocodingisused,thesinkisabletodecodeasubstantialnum-berofsymbolsinthebeginning.Asmoresymbolsarerecovered,theCouponCollector’seffectkicksinandthenocodingisnotasgoodanymore.SolitonandRobustSolitonaccumulatealotofhighdegreecodewordswhichcannotbedecodeduntilasubstan-tialnumberofsymbolshavebeenrecovered.Thisiswhywesee

asuddenjumpinthecurveforRobustSoliton.Formaximumdatarecoveryatanytime,itiseasytoseethatGrowthCodesperformthebest.

7.

PRACTICALIMPLEMENTATIONOFGROWTHCODES

Uptonow,wehavemadesomeratherstrongassumptionsaboutthesensingnetworkenvironmenttofacilitatethepresentationandevaluationofGrowthCodes.Here,weaddressseveralofthelimi-tations

7.1Removingthenotionofa“round”

OurpreviousdescriptionofGrowthCodesrequirednodestoex-changeinformationoveraseriesofrounds.Thereis,however,noexplicitneedforsynchronizingmultipleexchanges.Allthatisnec-essaryisthatthedegreedistribution“grows”atapproximatelytherightrate.Therateatwhichthecodesgrow(especiallyinitially)isslowenoughthatevenifthetimeatwhichnodesinitialize(i.e.,sensetheirdataandattempttoexchangedatawithothernodes)varies,weexpectlittlevariationintheresults.OurTOSSIM-basedsimulationsandexperimentsdemonstratethisclaim.

7.2CoefficientOverhead

1id1logN bitsFigure4:StructureofacoefficientwhennocodingisusedAsalludedtoearlier,eachcodeword,regardlessofwhetheritcontainsoriginal(degreeone)symbolsorabonafideXORoforig-inalsymbols,mustincludeacoefficientthatdescibesthesymbolsfromwhichitisformed.WeassumethateachsensornodehasauniqueID,andthatitprependsthisIDtoitssymbol.AcodewordofdegreeimustthereforecontainioftheseIDsforthedecoder(sink)toknowhowtodecodethepacket.

m bytes0degreeid1id2id37 bitslogN bits(a) d log(N) < N

1001011000100017 bitsN bits(b) d log(N) ≥N

Figure5:Structureofacoefficientwithmultipledegreecode-words

•Nocoding:Whennocodingisused,eachcodewordisal-waysdegree1.AsshowninFigure4,onlyasingleIDisnecessarytospecifythecoefficient.Thefirstbitisalways1andthelastlog(N)bitsspecifywhichsymbolmakesupthedegree1codeword.

•WithCoding:Whencodewordscanbemorethandegree1,theycanbespecifiedintwoways:inabitformatandinlog(N)format.Thefirstbytespecifieshowtheremainingbytesareconstructed.Thefirstbitofthefirstbyteis1ifthecoefficientisspecifiedinlog(N)formatand0whenitisspecifiedinthebitformat.

Whenthedegreedofacodewordislow(inparticular,thanN

less

log(N)),lessspaceisconsumedbylistingtheIDsofthedsymbolsthatmakeupacodeword.Inthiscase,thecoef-ficientisconstructedintheformatasshowninFigure5(a).Thedsymbolidentifierseachofsizelog(N)arepackedintoasfewbytesaspossible.

Whenthedegreeishigh(higherthanN

log(N)),lessspaceisconsumedbyreservingabitforeachoftheNpossiblesym-bolsthatformacodeword.AsshowninFigure5(b),a1bitsignifiesthepresenceofaparticularcomponentand0speci-fiestheabsence.

Ifthesizeofasymbolislarge,thentheseoverheadsarenegligi-ble.However,theyareclearlylessnegligiblewhenthedatasizesaresmall.However,wenotethatGrowthCodesgrowslowly,andthedegreeofthecodewordis,forthemajorityofthetime,fairlysmall.InSection10,whenweconsiderhowtoforwardfromnodesthatgeneratedataperiodically,wewilldemonstratehowtofurtherreducetheamortizedcostofthesecoefficients.

8.EXPERIMENTSONAGRIDNETWORK

18Growth Codes 15 node simulation in 5x3 gridC Simulator with 15 nodes in 5x3 grid 16Growth Codes on micaz motes with 15 nodes in 5x3 gridRouting with 15 nodes in 5x3 grid 14 12derevoc 10eR slob 8myS 6 4 2 0 0 20 40 60 80 100 120 140Time (seconds)

Figure6:Datarecoveryona5x3gridnetwork.Thesinknodeisinthemiddleofthegrid

Inthissection,weintroduceaC-simulatorthatwewrotetoeval-uatetheperformanceofthevariouscodingschemes.Inaddition,weuseTinyOS[2]andtheaccompanyingsimulatorTOSSIMtosimulateanetworkofnodeswithourimplementationoftheGrowthCodesprotocol.Finally,weusemicazmotesfromCrossbow[1]totesttheprotocolinarealsetting.Wealsoperformexperimentstocomparewithrouting,weuseMultiHopRouter,aroutingproto-colincludedinTinyOSformote-basedsensornetworks.Wemod-ifytheSurgeapplication(whichusesMultihopRoutertosetupandmaintainaforwardingtree)tosimulateanetworkofnodeswhichusethisforwardingtreetoroutedatatowardsthesinknode.

BecausenodistributedencodingschemesexistfortheSolitondistributions,wecanonlycomparehowGrowthCodesachievefasterdatadisseminationtothesinknode(s)comparedtowhennocodingisusedinthenetwork.

30

Growth Codes 25 node simulation in 5x5 gridRouting with 25 nodes in 5x5 grid

25

20

derevoceR 15

slobmyS 10

5

0

0 100 200 300

400

500 600 700 800

Time (seconds)

Figure7:Datarecoveryintheeventofnodefailuresona5x5gridnetwork.Thesinknodeisinthemiddleofthegrid

Ourpurposeinpresentingtheresultsoftheexperimentsandsim-ulationsistwofold.Firstly,wedemonstratethatrelaxingsomeoftheassumptionsofourabstractmodeldoesnotresultinadegra-dationofperformance.Indeed,thesimulationresultsofourroundbasedC-simulatorwiththemodelingabstractionspresentmatchcloselywiththeresultsobtainedwithTOSSIMandthemotesex-periment.Thus,introducingrealdevices,aMACprotocolandnodeswithlimitedmemoryandcomputationalpowerdoesnotdis-tortthebiggerpictureoftheperformanceofGrowthCodes.AfterestablishingthefidelityofourCsimulator,weemployittoper-formlargersimulationsinlatersections,wherewearenotlimitedbythesizeofourphysicaltestbedorthevagariesoftheTOSSIMsimulator.Secondly,ourclaimsonthebenefitsofGrowthCodesinazero-configurationsettingaresubstantiated.

InFigure6,weseehowthevariousschemescompare.Thenet-workconsistsof15nodesarrangedina5x3gridtopology.Theradiorangeissetsuchthatanodecancommunicateonlywithitsx-andy-axisneighbors(andnotdiagonally).Themiddlenodeonthegridisthesink.UsingGrowthCodes,eachnodessendsoneofitscodewordsymbolstoarandomneighborevery1second.WeobservethatboththeTOSSIMandtheCsimulatoraswellasthemicazmotesareabletotransmitalldatatothesinkinabout40sec-onds.Withmultihoprouting,eachnodesendsitsdatatowardsthesinkevery1second,butittakesawhilefortheforwardingtreetobeestablished.Ifthenext-hopforanodehasnotbeenestablished,thenodebroadcastsitsdata.Weobservethatthesinkreceivesdatafromit4neighborsfairlyquicklybutafterthatthereisahugelagduringwhichtimetheroutingisbeingsetup.Thismaybeanar-tifactoftheparticularimplementationofMultiHopRouterusedinTinyOS,butsincethisistheonlysuitableroutingprotocolavailableonTinyOSweuseitforcomparisonpurposes.WeaimtocomparewithbetterroutingprotocolsavailableontheTinyOSplatforminfuture.

WenowlookathownodefailuresaffectdatarecoveryandhowGrowthCodescanrecoverfromthem.Weusea5x5gridtopol-ogyandassumethatnodesgeneratenewdataevery300seconds.Usingrouting,aftertheforwardingtreehasbeenestablished,thenodescangettheirdataacrossveryquickly.Lateron,att=600seconds,whennewdataisgeneratedoneofthenodesclosetothesinkfails.Att=650,threemorenodeswhichwereroutingthroughthealreadyfailednodealsofailbeforetheyhaveachancetore-establishtheirpathstothesink.ThisresultsintheirdataneverreachingthesinkandascanbeobservedfromFigure7,thecurve

neverreachesthemaximumdatarecoveryof25.Ontheotherhand,theGrowthCodesallowsdatatoberecoveredfromthethreenodesmentionedabovebydisseminatingtheirdatatootherneighboringnodes.Whiletheexperimentisdesignedtohighlighttheadvan-tageofGrowthCodes,suchscenariosarelikelytobecommoninlargesensornetworkswherenodesfailwithafairdegreeofregular-ity.GrowthCodesperformwellwithminimalrelianceontransientcomponents,e.g.,optimizedroutes,thattakealongtimetorecom-puteoncebroken.Itisthisabilitythatmakesthemparticularlywellsuitedforlarge-scalesensornetworks.

Notethatintheaboveexperiments,weorganizemicazmotesintoagridtopologybyalgorithmicmeans,i.e.bymodifyingtheimplementationsothateachnodeisawareofandcancommunicatewithonlythenodesadjacenttoitinthegridtopology.Nodesphys-icallyarrangedinagridformationstillshowerraticradioconnec-tivityandhenceitisdifficulttoimposeagridtopologybymeansofphysicalplacementalone.

9.

GROWTHCODESINADISTRIBUTEDSETTING

Inthefollowingsections,welookathowfastGrowthCodescanhelpthesinkrecoverdatainacompletelydistributedenvironment.Weevaluatetheefficacyofthecodingtechniquebothasafunc-tionoftheunderlyingtopologyandasafunctionofthesizeofsetoffailednodes.Wecomparewitharandom“diffusion”schemewherenodesrandomlyexchangedatawiththeirneighborsjustasinGrowthCodesbutnocodingisused.

InallsimulationsweusetheroundbasedCsimulatorandun-lessotherwisestated,weassumethatasensornodehasastoragecapacityC=10,i.e.,thenodecanstoreupto10codewordsym-bolsatanygiventime.Witheachnode,havingastoragememoryofC=10,amaximumof10Ncodewordscanbestoredinthenetworkatanytime.Thisissufficienttofacilitategoodspreadandmixingofsymbolsgeneratedbythenodes.Wealsoperformedsim-ulationswithlargervaluesofC,buttheresultswerenotnoticeablydifferentfromwhatispresentedbelow.

9.1GrowthCodesinaRandomTopology

Data Persistence in a Sensor Networkwith Random Topology (N = 500)

1

0.8derevocer s 0.6

lobmys fo no 0.4

itcarF 0.2

Growth Codes, Random Network(R=0.3)

No Coding, Random Network(R=0.3)

0

Growth Codes, Clique Network

0

200

400 600 800

1000

Time (=number of codewords received at the sink)

Figure8:Datarecoveredatthesinkina500noderandomnetworkofradiusR=0.3asmoreandmorecodewordsarereceived

Inanypracticaldeploymentofsensornodesinageographicalarea,typicallythenetworkconsistsofwirelesssensornodesthathaveacertainrangewithinwhichtheycancommunicate.Insucha

Data Persistence in a Sensor Networkwith Random Topology (N = 500)

1

0.8derevocer s 0.6

lobmys fo no 0.4

itcarF 0.2

Growth Codes, Random Network(R=0.2)

No Coding, Random Network(R=0.2)

0

Growth Codes, Clique Network

0

200

400 600 800

1000

Time (=number of codewords received at the sink)

Figure9:Datarecoveredatthesinkina500noderandomnetworkofradiusR=0.2asmoreandmorecodewordsarereceived

scenario,thenodesaggregateinanaturaltopologydefinedbythewirelessrangeofthenodes.

Wesimulatethisnetworkasa1x1square,byplacingsensornodesuniformlyatrandomwithinthesquare.Apairofnodes,isconnectedbyalinkiftheyarewithinadistanceRfromonean-other.TheparameterRiscalledtheradiusofthenetwork.Thisissimilartotheconnectivitymodelusedwithin[28].

Weassumeeachnodeinthenetworkinitiallygeneratesasymbolxi.Thereisonesinkthatisattachedtoasinglerandomnodeinthenetwork.Henceitisabletoreceiveonecodewordsymbolineachround.Therefore,theroundnumberisthesameasthenumberofcodewordsreceivedatthesink.ThenodesfollowtheencodinganddataexchangeprotocolbasedonGrowthCodesasdescribedinSection4.1.

Wecomparewiththecasewhenthenetworknodesdonotencodeanydatabutinsteadexchangetheoriginalsymbols.Tofacilitateafaircomparison,whennotusinganycoding,thesensornodesbehaveinexactlythesamewayaswhentheyuseGrowthCodesexceptthattheydonottransitiontodegreeshigherthan1.Henceallthecodewordsgeneratedareofdegree1.

Wenowcomparehowinarandomlyformednetworkwherethedensityofnodesandlinkswillvaryfromregiontoregion,GrowthCodescanbeusedtodeliverdataatafastratetothesinknode.Weconsidera500nodenetwork.Thesinkisattachedtoarandomnodeinthenetwork.

Figure8depictsthefractionofdatarecoveredbythesinkasafunctionofthenumberofreceivedcodewordsinarandomnetworkwithradiusofR=0.3.Theresultsareanaverageof100sim-ulationruns.OntheX-axis,thenumberofcodewordsreceivedbythesinkareplottedwhiletheY-axisisthefractionofsymbolsrecoveredfromthereceivedcodewords.

ArandomnetworkwitharadiusofR=0.3isfairlywellcon-nected.Forcomparisonpurposes,weplotthefractionofdatare-coveredasafunctionofnumberofcodewordsreceivedinanet-workwithcliquetopology.TheperformanceofGrowthCodesisroughlythesameinbothtopologies.

WenowevaluatethedatarecoveryrateusingGrowthCodeswhenthenetworkhasaradiusofR=0.2implyingthatthenet-workismuchsparser.FromFigure9wecanobservethatthedatadeliveryrateofGrowthCodesdoesnotdeteriorateverymucheveninamuchsparserrandomnetwork.

Weobservethatwhenthenumberofreceivedcodewordsissmall,

thetwoprotocolsrecoverdataatthesamerate(sinceinthebe-ginning,GrowthCodesproduceonlydegree1codewords).Ontheotherhandwhenasubstantialnumberofcodewordshavebeenreceived,theGrowthCodesprotocolcanachievemuchfasterre-coveryrates.UsingGrowthCodes,thesinkisabletorecoverallsymbolsmuchearlierthanwhennocodingisused.

Time to recover 3/4th of the symbols

1000Growth Codes - 3/4 data recovery

No Coding - 3/4 data recovery

900s 800lobmys 700 eht fo h 600t4/3 rev 500

ocer ot 400 emiT 300 200 100

0 100

200 300 400 500 600 700 800

Number of nodes (= Number of distinct data units)

Figure10:Timetakentorecover75%ofthedataina500nodenetworkwhenthenodesuseGrowthCodesversusnocoding

Time to recover all symbols

7000

Growth Codes - complete recoveryNo Coding - complete recovery

6000

s 5000

lobmys lla 4000

revocer 3000

ot emiT 2000

1000

0

0 100

200 300 400 500 600 700 800

Number of nodes (= Number of distinct data units)

Figure11:Timetakentorecoverallthedataina500nodenetworkwhenthenodesuseGrowthCodesversusnocodingFigure10depictshowmanyroundsonaveragearerequiredbe-forethesinkisabletorecover75%oftheoriginalNsymbols.OntheX-axis,wevarythenumberofsensornodesinthenetworkwhichisthesameasthetotalnumberofsymbols(sinceeachsensornodegeneratesonesymbol).OntheY-axis,wemeasurethetimetakentorecover75%ofthesymbols.Figure11depictsthetimetakentorecoverallthesymbols.

Torecover75%ofthedata,bothprotocolsrequirethenumberofcodewordstobelinearinthenumberofnodesNwiththeGrowthCodesprotocolrequiringasmalleramount.RecoveringallthesymbolsusingGrowthCodesstillappearslinearinthenumberofnodes,however,withoutcoding,thenumberofcodewordsrequiredshowaclearnon-linearincrease.Sincetheunencodedretrievalpro-cessiscloselyrelatedtotheclassicalCouponCollector’sProblem,itisnotsurprisingtoseetheunencodedversionrequirealongtimetoacquirethelastfewsymbols.

9.2GrowthCodesinDisaster-ProneNetworks

Time of Disaster=250, Radius of Disaster=0.2, N=500 nodes

1

knis eh 0.8

t ta derevoc 0.6

er atad lanigi 0.4

ro fo noitcarF 0.2

With Coding: r=0.2, t=250 0

Unencoded: r=0.2, t=250

0

100

200

300

400 500 600 700

800

900

1000

Number of codewords received

Figure12:Datarecoveredatthesinkina500noderandomnetworkinadisasterscenarioofimpactradiusr=0.2attimet=250

Growthcodesareparticularlyeffectiveforinformationcollec-tionindisaster-proneareaswherethewholenetworkorpartsofitmaybedestroyedoraffectedinsomeway.Forexample,intheeventofaflood,asubsetofthesensornodesmaygetsubmergedandstopfunctioning.Inthecaseofanearthquake,awholeregioncontainingsensornodesmaygetdestroyed.Typically,theeffectofthedisasteronthesensornetworkwillshowstrongspatialcorrela-tioninthesensethatnodesclosetooneanotheraremorelikelytoeithersurvivetogetherorgetdestroyedtogether.

Wesimulateadisasterinasensornetworkbydisablingpartofthenetworkatthetimeofthedisaster.Wedefinersuchthatatthetimeofthedisaster,allnodeswithinrdistanceofthecenteroftheimpactaredisabled.Thisineffect,changesthetopologyofthenetworksincethedisablednodesandalllinksconnectingthembecomenon-functional.

Wenowdiscusshowthetimeofdisasterandtheradiusofim-pactaffectsthenetwork’sabilitytodeliverdatatothesink.Figure12showshowmuchdatacanberecoveredatthesinkifadisas-terofimpactradiusr=0.2disablespartofthenetworkattimet=250.Allnodeswithinaradiusofr=0.2fromthecenteroftheimpactaredisabled.Thisamountstoabout1/8thofthetotalnodes.Nevertheless,thedatarecoveryrateatthesinkwhenthenodesuseGrowthCodestoencodeanddistributedataisnotseverelyaffected.

Ifthedisasteroccurssoonafterthedatagenerationbythesensornodes,thenodesthateventuallygetdisabledmaynothaveachancetospreadtheirdataoutsidetheregionofimpactandthatdatamaygetlost.Evenifthedatafromdisablednodesdoesgettothesurviv-ingnodes,thedistributionofdatafromdisablednodesandthedatafromsurvivingnodesmaybecomeskewed.Ifthenodesarenotus-inganycodingscheme,thisskewwillaffectthedatarecoveryrateatthesink.Ontheotherhand,ifthenodesareusingcodessuchasGrowthCodes,theskewwillnotmattersincehighdegreecode-wordscontainingdatafromdisablednodeswillbeconstructed.InFigure13,wedepicthowmuchdatacanberecoveredbythevariousprotocolsandhowlongdoesittaketorecoverthatdataincaseadisasterdisablesapartofa500nodenetworksoonafterdatagenerationbythenodes.OntheX-axis,wevarytheimpactradiusofthedisaster.Thenumberofdisablednodesisroughlyproportionaltothesquareoftheimpactradiusr.OntheY-axis,wedisplayhowlongittookforthesinktorecoverallsymbolsthatsur-

Effect of a disaster on the survivability of data

4000

Growth Codes

No Coding 3500

498sl 3000

obmys g 2500

500498n500500ivivrus 2000

re246voc500251er o 1500

t e500miT 1000

500 500

0

0.1

0.2

0.3

0.4

0.5

Radius of disaster impact

Figure13:Timerequiredtorecoversurvivingdataforadis-asterattimet=50ofvaryingintensities.Thenumbersnexttothepointsindicatethenumberofsymbolsrecoveredinthatexperiment.

vivedthedisaster.Thenumberofsymbolsrecoveredisindicatednexttotheplottedpoint.Notethatittakeslesstimetorecoverallrecoverablesymbolsforthedisasterofsize0.5becauseamuchsmallerfractionofsymbolsisrecovered.Wecanobservethatifthedisasterradiusissmallerthanr=0.4(thatcoversapproximatelyhalfthenodes),mostofthesymbolsdosurvivethedisaster.Onlywhenasubstantialportionofthenetworkisdestroyed,anumberofsymbolsarelostsincealotofnodesaswellastheirstoragemem-oryisdestroyed.Yet,byusingGrowthCodes,thesurvivingdatacanberecoveredreasonablyfastbythesink.

10.

NODESTHATPERIODICALLYGENERATENEWDATA

Tothispoint,wehaveconsideredanetworksettingwherenodestakeasinglemeasurementoftheirenvironment,thegoalbeingtodeliverasmuchofthatdataaspossibletothesink(s).WenowextendGrowthCodestoanenvironmentwherenodesperiodicallysampletheenvironment.WeassumethatwithperiodG,nodesgeneratedataofsizesd.Wecallthedatageneratedbyanodeinsuccessivetimeperiodsasbelongingtodifferentsuccessivegener-ations.Thefirstdatageneratedbyasensornodeisofgeneration1.

WeassumeafixedstoragesizeofCateachnode.Thestoragemustnowbesharedacrossmultiplegenerations.TypicalsensornodeshavealimitonthemaximumpacketsizeStheycansendorreceive.WepartitionthememoryofeachnodeofsizeCintochunksofsizeSsothatthereare󰀈C/S󰀉chunks.

10.1ClusteringAcrossGenerations

OneconcernwhenusingGrowthCodesacrossmultiplegener-ationsisthatthesizeofthecoefficientdescribingthecodewordcouldgrowlargeforlarge-degreecodewords.Letsdbetheamountofspacerequiredforstoringthedataandscforstoringthecoef-ficient.LetγbethenumberofgenerationswewishtostoreinachunkofS.ThisleavesonaveragesizeS/γforeachgeneration,andanaivestorageschemewouldrequirethatγbechosensuchthatS/gm≥sd+sc.Heregmindicatesthenumberofgenera-tionsthatcompriseacluster.

Toreducethecoefficientoverheadacrossgenerations,weintro-ducethenotionofclustering.Aclusterisasetofcodewordsacross

severalgenerations.Thecodewordshavethesamecoefficients(i.e.,theoriginsofthesymbolsusedthatcomprisethecodewordarethesame),butthedataineachcodewordisfromadifferentgeneration.

Cluster 1

Cluster 2

Cluster 3

Cluster 4

CoeffCoeffCoeffCoeffGen 3Gen 4Gen 7Gen 10codeword

codewordcodewordcodewordGen 5Gen 8Gen 11codewordcodewordcodeword

Gen 6Gen 9codewordcodeword

Figure14:StoringClustersinMemory.

AnexampleofhowmemoryisusedwithclusteringisdepictedinFigure14inwhichthenumberofgenerationspercluster,gm=3.Acluster’ssmallestnumbered(i.e.,earliest)generationisnum-bered1(mod3),andthelargestnumbered(i.e.,latest)generationisnumbered0(mod3).Inthisexample,thereissufficientmem-orytostore9codewordsand4coefficients(i.e.,S≥9sd+4sc).Tomakeroomforthecodewordscluster4(generation10and11),codewordsforgeneration1and2wereremoved.Whengeneration12’scodewordisgenerated,itsstoragewillnecessitatetheevictionofcodeword3.Hence,cluster1canbecompletelyremovedatthattime.Whengeneration13arrives,cluster5isinitiallyformed,andcodeword4willberemovedatthattime(butgenerations5and6,andhencethecoefficientofcluster3,willremain).

Sinceallcodewordswithinaclusterhavethesamecoefficient,thecodewordcannotbemodified(i.e.,“grown”toahigherdegree)untiltheclusterisfullyformed(e.g.,intheexampleabove,thecodewordsforgeneration10and11mustremainastheoriginaldatasymbolsgeneratedbythatnodeforthosegenerationsuntilgeneration12’sdataisalsoavailable).Thisdelayisnotasignifi-cantconcernsinceweknowthattheoptimalgrowthrateofGrowthCodesstaysfixedatdegreeoneforaconsiderableamountoftime.Sinceallgenerationsinaclustersharethesamecoefficient,thepointintimeatwhichthecodewordsgrowtothenextdegreeisthesame.Hence,thetimewilleitherbetoosoonforthemostrecentgenerationinacluster,ortoolatefortheoldestgenerationinacluster.Sinceourapproachistoremainconservativeaboutwhentotransitiontothenextdegree,werecommendtheuseofthetransitiontimeofthemostrecentgenerationinthecluster.

Theabovediscussionraisesanissueabouthowmanygenera-tionsofdatacanbeencodedinasinglepacket.Also,transmissionchannelshavetypicallyhaveasmalllimitonthepacketsize(Max-imumTransmissionUnit)whichcanbesentoverthechannel.IncaseapacketcontainingmultiplegenerationsisbiggerthantheMTUofthechannel,asimplefragmentationandreassemblycanbeaddedtotheimplementationtotakecareofthisissue.Wedonotexplorethisissuefurtherinthispaperduetospaceconstraints.

10.2OptimalClusterSize

Asclustersizeisincreased,thesizeofthecoefficientpergener-ationdecreases.Ifthespaceallocatedtoeachgenerationisfixed,thenbydecreasingtheoverheadofthecoefficients,datacanre-sidelongerinmemory.However,sincecodewordswithinaclustercannotbegrownuntilallgenerationsareavailableforthatcluster,alargerclustersizereducesthetimeoverwhichacodewordcangrow.

Letgmbethemaximumnumberofgenerationsinacluster.Itcanbeshown√thattheoptimalvalueofgmisboundedfrombelow

byg2Ssm=c−sc

s.IfmemorysizeisS,thecoefficientsizesc,

d

thecodewordsizeissdandthemaximumgenerationsinaclustercanbegm,thenthemaximumsizeofaclusterissc+gmsd.ThenumberofclustersinmemoryisapproximatelyS/(sc+gmsd).ThenumberofcodewordsofsuccessivegenerationsinmemoryisthengmS/(sc+gmsd).SinceanewgenerationcodewordisaddedaftertimeG(andtheoldestcodewordremovedatthesametime),thetimeforwhichagenerationcodewordstaysinmemoryisgivenbyTg=gmSG/(sc+gmsd).

Itcaneasilybeobservedthatthegeneration’scodewordintheclustermustremainfixedforgm−1generations,thesecondoldestgeneration’scodewordforgm−2generationsandsoon.Hence,an“average”codewordmustbefixedforgm−12generations,andthetimeforwhichatypicalcodewordisfixedisthereforeGgm−1Thetimeoverwhichacodewordgrowsuninterruptedaccording2.togthe−Growth1CodesprotocolisthengivenbyTgrowth=Tg−Gm2.Theoptimalvalueofgmisonethatmaximizesthetimeover√whichanaveragecodewordcangrow.Thisisgivenbygm=2Ssc−sc

,whereweomitthederivationduetoTslackofspace.

d

g,whichisthetimecodewordsofaparticulargenerationstayinmemory,increasesmonotonicallywithgm.ButthetimeforwhichacodewordgrowsuninterruptedaccordingtotheGrowthCodesprotocolisgivenbyTgrowthwhichpeaksattheoptimalvalueofgm.Forvaluesofgmhigherthanthis,Tgrowthdecreasesbuttheextralowdegreecodewordsgeneratedbytheconstantresettingoftheclustersalsogrows,resultinginaslightlossofefficiency.

11.CONCLUSIONS

Thegoalofthispaperistoinvestigatetechniquestoincreasethepersistenceofsensornetworks.WeproposeGrowthCodes,anewclassofnetworkcodesparticularlysuitedtosensornetworkswheredatacollectionisdistributed.Unlikepreviouscodingschemes,GrowthCodesemployadynamicallychangingcodeworddegreedistributionthatdeliversdataatamuchfasterratetonetworkdatasinks.Furthermore,thecodewordsaredesignedsuchthatthesinkisabletodecodeasubstantialnumberofthereceivedcodewordsatanystage.Thisisparticularlyusefulinsensornetworksdeployedindisasterscenariossuchasfloods,firesetc.wherepartsofthenetworkmaygetdestroyedatanytime.

OursimulationsandexperimentsdemonstratethatGrowthCodesoutperformotherproposedmethodsinsettingswherenodesarehighlypronetofailures.Whilepersistenceinsensornetworkswasoneapplicationwestudied,webelieveGrowthCodeshavewiderapplicability.ThecriticalinsightbehindGrowthCodesistointelli-gentlypreserve“memory”ofanetwork,makingitmorerobustandresilient.Theideaispotentiallyveryusefulinotherdynamicallychangingenvironmentslikefileswarmingp2pframeworks,andweareactivelyexploringothersimilarapplicationsofGrowthCodes.

12.

[1]CrossbowREFERENCES

micazmotes.[2]TinyOSHomepage.

[3]S.Katti,D.Katabi,W.Hu,H.RahulandM.Medard.TheImportanceofBeing

Opportunistic:PracticalNetworkCodingForWirelessEnvironments.In

AllertonAnnualConferenceonCommunication,ControlandComputing,2005.

[4]A.Albanese,J.Bl¨

omer,J.Edmonds,M.Luby,M.Sudan.PriorityEncodingTransmission.InIEEETransactionsonInformationTheory,volume42,1996.[5]A.G.Dimakis,V.PrabhakaranandK.Ramchandran.UbiquitousAcessto

DistributedDatainLarge-ScaleSensorNetworksthroughDecentralizedErasureCodes.InInformationProcessinginSensorNetworks,2005.[6]A.Kamra,J.Feldman,V.MisraandD.Rubenstein.DataPersistencefor

Zero-ConfigurationSensorNetworks.InTechnicalReport,DepartmentofComputerScience,ColumbiaUniversity,Feb.2006.

[7]A.ManjeshwarandD.P.Agrawal.Teen:ARoutingProtocolforEnhanced

EfficiencyinWirelessSensorNetworks.InParallelandDistributedProcessingSymposium,2001.

[8]A.ScaglioneandS.D.Servetto.Ontheinterdependenceofroutinganddata

compressioninmulti-hopsensornetworks.InACMConferenceonMobileComputingandNetworking,2002.

[9]C.GkantsidisandP.Rodriguez.NetworkCodingforLargeScaleContent

Distribution.InProceedingsofINFOCOM,2005.

[10]C.Intanagonwiwat,R.GovindanandD.Estrin.Directeddiffusion:ascalable

androbustcommunicationparadigmforsensornetworks.InACMConferenceonMobileComputingandNetworking,2000.

[11]C.Y.Wan,S.B.Eisenman,A.T.Campbell,J.Crowcroft.Siphon:Overload

TrafficManagementusingMulti-RadioVirtualSinks.InACMConferenceonEmbeddedNetworkedSensorSystems,2005.

[12]D.Marco,D.Neuhoff.Reliabilityvs.EfficiencyinDistributedSourceCoding

forField-Gathering.InInformationProcessinginSensorNetworks,2004.[13]I.F.Akyildiz,M.C.Vuran,O.B.Akan.OnExploitingSpatialandTemporal

CorrelationinWirelessSensorNetworks.InProceedingsofWiOpt2004:ModelingandOptimizationinMobile,AdHocandWirelessNetworks,pages71–80,Mar.2004.

[14]J.Byers,J.Considine,M.MitzenmacherandS.Rost.InformedContent

DeliveryAcrossAdaptiveOverlayNetworks.InProceedingsofSIGCOMM,2002.

[15]J.Considine.Generatinggooddegreedistributionsforsparseparitycheck

codesusingoracles.InTechnicalReport,BUCS-TR2001-019,BostonUniversity,2001.

[16]J.W.Byers,M.Luby,M.Mitzenmacher,A.Rege.ADigitalFountainApproach

toReliableDistributionofBulkData.InProceedingsofSIGCOMM,1998.[17]LinandCostello.ErrorControlCoding:FundamentalsandApplications.1983.[18]M.Luby.LTCodes.InSymposiumonFoundationsofComputerScience,2002.[19]M.Li,D.GanesanandP.Shenoy.PRESTO:Feedback-DrivenData

ManagementinSensorNetworks.InACM/USENIXSymposiumonNetworkedSystemsDesignandImplementation,2006.

[20]M.Luby,M.Mitzenmacher,M.A.ShokrollahiandD.Spielman.Efficient

ErasureCorrectingCodes.InIEEETransactionsonInformationTheory,volume47,pages569–584,2001.

[21]M.O.Rabin.EfficientDispersalofInformationforSecurity,LoadBalancing

andFaultTolerance.InJournaloftheACM,volume36,pages335–348,1989.[22]M.Perillo,Z.IgnjatovicandW.Heinzelman.AnEnergyConservationMethod

forWirelessSensorNetworksEmployingaBlueNoiseSpatialSamplingTechnique.InInformationProcessinginSensorNetworks,pages116–123,2003.

[23]M.SartipiandF.Fekri.SourceandChannelCodinginWirelessSensor

NetworksusingLDPCCodes.InEEECommunicationsSocietyConferenceonSensorandAdHocCommunicationsandNetworks,2004.

[24]N.Cai,S.Y.R.LiandR.W.Yeung.LinearNetworkCoding.InIEEE

TransactionsonInformationTheory,volume49,pages371–381,2003.[25]P.Desnoyers,D.GanesanandP.Shenoy.TSAR:ATwoTierStorage

ArchitectureUsingIntervalSkipGraphs.InACMConferenceonEmbeddedNetworkedSensorSystems,2005.

[26]P.J.M.Havinga,G.J.M.SmitandM.Bos.EnergyEfficientAdaptiveWireless

NetworkDesign.InTheFifthSymposiumonComputersandCommunications,2000.

[27]R.Ahlswede,N.Cai,S.Y.R.LiandR.W.Yeung.NetworkInformationFlow.

InIEEETransactionsonInformationTheory,volume46,pages1004–1016,2000.

[28]R.Chandra,C.FetzerandK.Hogstedt.AMesh-basedRobustTopology

DiscoveryAlgorithmforHybridWirelessNetworks.InProceedingsofAD-HOCNetworksandWireless,Sept.2002.

[29]R.KoetterandM.Medard.AnAlgebraicApproachtoNetworkCoding.In

ACM/IEEETransactionsonNetworking,volume11,pages782–795,2003.[30]R.MotwaniandP.Raghavan.RandomizedAlgorithms.CambridgeInternational

SeriesonParallelComputation.

[31]S.Acedanski,S.Deb,M.MedardandR.Koetter.HowGoodisRandomLinear

CodingBasedDistributedNetworkedStorage.InWorkshoponNetworkCoding,TheoryandApplications,2005.

[32]S.Pattem,B.KrishnamachariandR.Govindan.TheImpactofSpatial

CorrelationonRoutingwithCompressioninWirelessSensorNetworks.InInformationProcessinginSensorNetworks,pages28–35,2004.

[33]S.S.Pradhan,J.KusumaandK.Ramchandran.Distributedcompressionina

densemicrosensornetwork.InIEEESignalProcessingMagazine,volume19,pages51–60,Mar.2002.

[34]T.Arici,B.Gedik,Y.AltunbasakandL.Liu.PINCO:aPipelinedIn-Network

COmpressionSchemeforDataCollectioninWirelessSensorNetworks.InInternationalConferenceonComputerCommunicationsandNetworks,2003.

[35]T.Ho,M.M´

edard,M.EffrosandD.Karger.OnRandomizedNetworkCoding.InAllertonAnnualConferenceonCommunication,ControlandComputing,Oct.2003.

[36]W.Heinzelman,A.ChandrakasanandH.Balakrishnan.Energy-Efficient

CommunicationProtocolsforWirelessMicrosensorNetworks.InHawaiiInternationalConferenceonSystemsSciences,2000.

因篇幅问题不能全部显示,请点此查看更多更全内容

Top