DistributedDatasetSynchronizationin
NamedDataNetworkingWentaoShangFinaldefense06/01/2017
1
ResearchProblem
โข Distributedapplicationsrequireefficientsupportformulti-partycommunicationโข Multiplenodespublishandsharedata
โข NamedDataNetworking(NDN)enablesnewwaystosupportmulti-partycommunicationthroughdatasetsynchronization(sync)โข Leveragingdata-centricnetworkarchitectureโข Withoutcentralizedserver
2
StateofAffairs
โข AnumberofsyncprotocolshavebeendevelopedsincethestartoftheNDNprojectโข CCNx 0.8Sync;ChronoSync;iSync;CCNx 1.0Sync;RoundSync;pSync
โข AnumberofexistingNDNapplicationsrunontopofsyncโข CCNx repo:replicateddatastorageโข ChronoShare:distributedfilesharingโข ChronoChat:server-lessgroupchatโข NLSR:link-stateroutingprotocolโข NDN-RTC:groupconferencingโข Distributeddatacatalogโข IoT pub-subsystem
3
ResearchObjectives
โข UnderstandingthedesignspaceofNDNsyncโข SystematicexaminationofalltheexistingNDNsyncprotocols
โข Designinganewsyncprotocolโข Learningfromthedesigntradeoffsintheexistingprotocolsโข Supportingnewfunctionsnotofferedbytheexistingworksโข Applyingmethodsdevelopedinthedistributedsystemsarea
4
NDNOverview
โข Uniqueandsecuredbindingbetweennameandcontentโข Namedata,andsecuredatadirectly
โข Name-baseddataretrievalโข Stateful Interest-Dataexchangeโข Secureddataenablesin-networkstorage
5
/ucla/cs/wentao
Fetch:/ucla/cs/wentao/slides/v5
Interest
Data
/ucla/cs/wentao/slides/v5
InterestFetch:/ucla/cs/wentao/slides/v5
NDNSyncforMulti-PartyCommunication
โข Enableagroupofnodestopublishandconsumedatainashareddatasetโข Maintainaconsistentstateofthedatasetamongtheparticipants
โข NDNprovidesuniquebindingbetweennameanddataร Synchronizingdataset=synchronizingthenamespaceofthedataset
โข FullyutilizeNDNโsdata-centriccommunicationโข In-networkcachingโข Multicastdatadelivery
6
SyncinNDN
7
NationalParkTouristA
TouristB
TouristC
โฆ/road/X/hazard/road/Y/closed
Bulletinboardโฆ
/road/X/hazard/road/Y/closed
Bulletinboard
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
SyncinNDN
8
NationalPark
Publishalertdata:โBearspottedatsiteZโ
TouristA
TouristB
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
TouristC
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
SyncinNDN
9
NationalParkTouristA
TouristB
โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard
Synchronize
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
TouristC
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
SyncinNDN
10
NationalParkTouristA
TouristB
โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard
TouristC
โฆ/road/X/hazard/road/Y/closed
Bulletinboard
SyncinNDN
11
NationalParkTouristA
TouristB
โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard
TouristC
โฆ/road/X/hazard/road/Y/closed/site/Z/bear
Bulletinboard
ComparingNDNSyncwithTodayโsDataSynchronizationSolutionsโข TraditionalSynchronizationwithTCP/IPnetworkingโข Networkprovidespoint-to-pointcommunicationโข Datasetsynchronizationachievedattheapplicationlayer
โข SyncinNDNโข Networkprovidesdata-centriccommunicationโข Syncprotocolprovidesdatatransportservicefortheapplicationโข Becauseofdata-centricnature,NDNsyncdoesnotrequireallpartiesconnectedtoeachotherallthetime
12
Dataset
DesignSpaceofNDNSyncProtocols
13
CommonSyncProtocolFramework
14
/road/X/hazard/road/Y/closed/site/Z/bear
Summary
DatasetnamespaceGenerateaconcisesummaryofthedatasetnamespacetobecommunicatedbetweennodes
Update
Detectandreconcileinconsistencybyexchangingthesummaryperiodically
(Optionally)supportquicknotificationtoothernodeswhenpublishingnewdata
Summary
Summary
Summary
KeyDesignAspects
โข Datasetnamingโข Howtonamedataitemsintheshareddataset
โข Namespacerepresentationโข Howtoprovideanefficientsummaryofnamespace
โข Statesynchronizationmechanismโข HowtomakenodeslearnaboutchangesASAPโข Howtodetectandreconcileinconsistencycausedbyvariousfactors
15
DesignChoicesinDatasetNaming
โข Syncprotocolsynchronizesapplicationdatanamesdirectlyโข CCNx 0.8Sync;iSync;CCNx 1.0Sync
โข Syncprotocolnamesdatabyeachproducersequentiallyโข Encapsulateapplicationnamesifneededโข ChronoSync;RoundSync;pSync
16
/road/X/hazard/road/Y/closed/site/Z/bear
/TouristA/13:{/site/Z/bear}/TouristA/14:{/site/W/alert}/TouristB/55:{/road/X/harzard}/TouristB/56:{/road/Y/closed}
DesignChoicesinNamespaceRepresentation
โข Enumerationโข Losslesscompressioninthenamespace(ornocompression)โข CCNx 1.0Sync
โข Hashingโข One-waycompressionofnamespaceโข CCNx Sync;ChronoSync;RoundSync
โข InvertibleBloomFilter(IBF)โข Storeandextractindividualnamehashesโข iSync;pSync
17
DesignChoicesinStateSynchronizationMechanismโข Long-livedInterestโข NodesmaintainpendingInterestsinthenetworktosolicitchangesfromothersโข ChronoSync;pSync;
โข Notification-drivenโข Nodesinformothersaboutnewchangesโข CCNx 1.0Sync;RoundSync;
โข Periodicexchangeofdatasetsummaryโข Nodesexchangetheirstatesummaryperiodicallytodetectandreconcileinconsistencyโข CCNx 0.8Sync;iSync
18
EvolutionofExistingSyncProtocols
19
Useapplicationname Namedatasequentially
Enumeration
Hashing
IBF
Long-livedInterest
Notificationdriven
Enumeration
Hashing
IBF
CCNx 0.8Sync
CCNx 1.0Sync
iSync pSync
W.Shangetal.,โASurveyofDistributedDatasetSynchronizationinNamedDataNetworkingโ,NDN-TR-0053,2017
Periodicexchange
Long-livedInterest
Notificationdriven
Periodicexchange
ChronoSyncRoundSync
CCNx 0.8Sync
โข Summarizedatasetnamespaceusingcombinedhashesovertreestructureโข SendInterestwithroothashperiodicallytorequestdifferenthash(es)โข Takemultipleroundstoreconcilethedifferences
20
/
/road /site/Z/bear
/road/X/hazard /road/Y/closed
H3=Hash(/road/X/harzard) H4=Hash(/road/Y/closed)
H1=H3+H4
H2=Hash(/site/Z/bear)
H0=H1+H2RootAdvice Interest:H0โ
RootAdvice reply:H0
NodeFetch Interest:H0
NodeFetch reply:H1,H2
NodeFetch Interest:H1
NodeFetch reply:H3,H4
โฆ
iSync:ImprovingCCNx 0.8Sync
โข UseInvertibleBloomFilter(IBF)tosummarizethenamespaceโข DetectdifferencesusingIBFsubtraction
โข Reducethesynchronizationround-tripatthecostoflargernamespacerepresentationโข ExchangeonlytheIBFdigestโข NeedextraRTTtoretrievetheIBFcontent
โข BothCCNx 0.8SyncandiSync synchronizeviaperiodicexchangeofstatesummaryโข Addadditionaldelaytolearningnewdata
21
/road/X/hazard/road/Y/closed/site/Z/bear
InvertibleBloomFilter
01deโฆ478aโฆ33fcโฆ
Hash
IBF Digest
Hash
Store Extract
ChronoSync
โข Namedatasequentiallyโข Summarizethenamespacewithadigestโข Maintainlong-livedInterestinthenetworktowaitfornextupdateโข Needโexcludefilterโtoretrievesimultaneousupdatesbymultipleproducers
โข Interestcarriesstatedigestforinconsistencydetectionโข Provideaโrecoveryโmechanismaslastresortforrepairingstateconflict
22
โฆ/TouristA/12/TouristA/13
โฆ/TouristB/54/ToursitB/55
โฆ/TouristC/29/TouristC/30
{/TouristA:13,/TouristB:55,/TouristC:30}
DigestHash
TouristA
TouristB
TouristC/park/sync/[Digest]
{/TouristB:56}
{/TouristC:31}
X
pSync:Pub-suboverSync
โข TakethesequentialnameapproachfromChronoSync,IBFasrepresentationfromiSyncโข IBFstoresonlyeachnodeโslatestseq#,sosizeisdeterminedbythegroupsize
โข Eachconsumersendslong-livedInterestwitholdIBFtorequestupdatesfromaproducerโข IBFprovidesspecificinformationabouttheconsumerโsstateโข Producercanreplywithnewdatanamesdirectly
23
/producer/[BF]/[old-IBF]
/producer/[BF]/[old-IBF]/[new-IBF]{/site/Z/31}
SyncInterest
Reply
/road/X/13 /road/Y/55
Store
InvertibleBloomFilter
ExtractH1 H2 H3
Hash/site/Z/30
OtherSyncProtocols
โข CCNx 1.0Sync:anotherfixtoCCNx Syncโข Enumeratedatanamesinamanifestfileโข Broadcastmanifestdigestwhenpublishingnewdata
โข RoundSync:arevisiontoChronoSyncโข Reducebutnoteliminatethesimultaneouspublishingproblem
24
LessonsLearned
โข Allowingsyncprotocoltonamedatasequentiallysimplifiesthedesignโข Onlyneedtosynchronizethelatestsequencenumbers
โข Notificationsshouldcarryspecificupdateinformationโข Sothatrecipientscanfetchnewdatadirectly,withoutfurtherexchangetoidentifythenewdata
โข Avoidusinglong-livedInteresttofetchnewupdatesโข Along-livedInterestcannotfetchmultipledataproducedatthesametimeโข Long-livedInterestsaddburdentonetworkinmaintainingInterestpathstate
25
VectorSync Protocol
26
SynchronizationwithManagedGroup
โข Manydistributedapplicationsrequireexplicitgroupmembershipmanagementโข Examples:โข ResourcediscoveryinIoT networksโข Routingprotocol
โข Existingsyncprotocolsdonotsupportmembershipmanagementโข Difficulttoremovedepartednodesfromthedatasetstate
27
/Home/Thermostat/Home/AC/Home/Heater/Home/MotionSensor
VectorSync DesignHighlights
โข Maintainaconsistentlyorderedlistofgroupparticipants(calledaview)amongallparticipatingnodesโข Utilizealeader-drivenprocesstosynchronizetheviewamongallnodesโข Leveragesequentialdatasetnamingtosynchronizethedatasetusingversionvectorโข Adoptnotification-drivensynchronizationwithspecificupdateinfo
28D.Parkeretal.,โDetectionofMutualInconsistencyinDistributedSystemsโ,1983
VectorSync Overview
29
ApplicationLogic
SharedDataset
DatasetStateStatesynchronization
PublishData
NotifyofRemoteData
NDNNetwork
Dataretrieval
GroupMembershipInfo
Viewsynchronization
SyncNode
VectorSync Overview
30
Statesynchronization
PublishData
NotifyofRemoteData
NDNNetwork
Dataretrieval
Viewsynchronization
DatasetState
GroupMembershipInfo
SyncNode
ApplicationLogic
SharedDataset
DatasetNamespace
โข Sequentialdatanamingโข Usingsequencenumbers
โข Vectorrepresentationofnamespaceโข Producernamesandorderingspecifiedinthemembershipinfo
31
Statevector
[17,240,153]
Membershipinfo
0:Thermostat1:AC2:MotionSensorNode
order
Shareddatasetโฆ
/โฆ/Thermostat/16/โฆ/Thermostat/17
โฆ/โฆ/AC/238/โฆ/AC/239/โฆ/AC/240
โฆ/โฆ/MotionSensor/151/โฆ/MotionSesnor/152/โฆ/MotionSensor/153
Thermostat:17 AC:240 MotionSensor:153
PublishingandSynchronizingData
32
โข MulticastnotificationInterestcarriesexplicitinformationaboutchangesโข Nodedatacarriesfullstatevectorofthepublisher,providescausalordering
MotionSensor
Thermostat
AC
Publish/โฆ/AC/241 NotificationInterest:/home/bonjour/AC/241
Replywithstatevector
Interest:/โฆ/AC/241
Data:/โฆ/AC/154app message,vector=
[17,240,153]
DetectingandReconcilingInconsistency
33
[17,240,153]
Receivedvector:[18,242,151]
Localvector:
Join
[18,242,153]Updatedvector:
Membershipinfo
0:/โฆ/Thermostat1:/โฆ/AC2:/โฆ/Heater
/โฆ/Heater/152/โฆ/Heater/153Missingdata:
UpdatethelocalvectorwiththeresultofJoinandretrievemissingdata
VectorSync Overview
34
ApplicationLogic
SharedDataset
DatasetStateStatesynchronization
PublishData
NotifyofRemoteData
NDNNetwork
Dataretrieval
GroupMembershipInfo
Viewsynchronization
SyncNode
Soft-stateMembership
โข Nodesrefreshtheirmembershipbypublishingdata(inthedataset)โข Authenticatedassertionofexistence
โข Whenapplicationisidle,nodepublishesโheartbeatโdataperiodicallyโข Enableperiodicexchangeofstatevectors
โข Anodeisconsideredโgoneโifnodatareceivedfromitforcertainamountoftimeโข Heartbeatperiodandtimeoutvaluesdecidedbyapplication
35
Thermostat
AC
MotionSensor
โฆ/โฆ/Thermostat/56appdata/โฆ/Thermostat/57appdata โฆ
/โฆ/MotionSensor/101heartbeat/โฆ/MotionSensor/102appdata
โฆ/โฆ/AC/23appdata/โฆ/AC/24heartbeat
Leader-drivenMembershipManagement
โข Nodesselectaleadertomanagethegroup
โข Leaderdefinesandpublishesitsviewofthegroupโข Othernodesfollowtheleaderโsview
โข Leadermonitorsthegroupandcreatesnewviewwhenthemembershipchanges
โข Viewsarenamedsequentiallyusingviewnumberโข Leaderincreasesthenumberwhencreatingnewview
โข Uponnetworkpartition,eachpartitionmayselectitsownleaderwhichcreatesitsownviewโข ViewID=(viewnumber,leadername)
36
0:Thermostat;1:Heater;2:AC;3:MotionSensor
(1,Thermostat)
0:Thermostat; 1:AC;2:MotionSensor
(2,Thermostat)
0:Thermostat1:MotionSensor
(3,Thermostat)0:AC(3,AC)
Selectingaleader
โข Ifthecurrentleaderhasleft,theremainingnodescompetetobecomethenextleader viarandomleaderselectionโข Whenanodedetectsleaderdeparture,itstartsarandomwaittimerโข Afterthetimergoesoff,thenodedeclaresitselftheleaderandcreatesanewviewโข Ifitnoticesanewviewbeforethetimergoesoff,itcancelsthetimerandjointhenewview
โข Otherleaderselectionmechanismcanalsobeusedโข Usingpre-configuredpreferencelist
37
SynchronizingtheView
โข Leadersignsandpublishesviewinfoasdatawhencreatingnewviewโข Name:/[multicast-prefix]/vinfo/[view-id]โข Containsnamesandcertificatesofthemembers
โข ViewIDcarriedinallnotificationInterests
โข Nodefetchestheviewinfoifnoticingalargerviewnumberโข Jointhenewviewafterreceivingtheviewinfo
โข Nodekeepspublishingdatainitscurrentviewbeforetheviewsynchronizationfinishes
38
0:Thermostat,{cert}1:AC,{cert}2:Heater,{cert}3:MotionSensor,{cert}
ThermostatโskeySign
/home/bonjour/vinfo/(1,Thermostat)
ViewSynchronizationwithSingleLeader
39
View(4,Thermostat):{0:AC;1:MotionSensor;2:Thermostat;3:Heater}
ThermoStat
MotionSensor
Heater
AC
RemoveHeaterPublishviewinfofor
(5,Thermostat)
/home/bonjour/(5,Thermostat)/โฆ
/home/bonjour/vinfo/(5,Thermostat)
/home/bonjour/vinfo/(5,Thermostat)
/home/bonjour/vinfo/(5,Thermostat)0:AC,{cert};1:MotionSensor,{cert};
2:Thermostat,{cert}
Moveto(5,Thermostat)
Moveto(5,Thermostat)
UpdatingStateAfterMembershipChange
40
0:AC,{cert}1:MotionSensor,{cert}2:Thermostat,{cert}3:Heater,{cert}
(4,Thermostat)
[17,240,153,98]
0:AC,{cert}1:MotionSensor,{cert}2:Thermostat,{cert}
(5,Thermostat)
[17,240,153]
RemoveHeater
ReconcilingMultipleViews
41
HeaterThermostatACMotionSensor
Inview(4,Heater)Inview(6,Thermostat)
/home/bonjour/vinfo/(4,Heater)
/home/bonjour/vinfo/(4,Heater)0:Heater,{cert}1:MotionSensor,{cert}
/home/bonjour/(7,Thermostat)/โฆ
Publish:/home/bonjour/vinfo/(7,Thermostat)0:Thermostat,{cert};1:AC,{cert}
3:Heater,{cert}4:MotionSensor,{cert}
Fetch(7,Thermostat)viewinfo andmoveto(7,Thermostat)
Aftergrouppartitionheals,theleaderwithhigherviewnumberorโlargerโleadernameisresponsibleformergingtheviews
/home/bonjour/(4,Heater)/โฆ
SynchronizingStateAfterViewMerging
42
Thermostat AC Heater MotionSensor0:Thermostat1:AC
0:Heater1:MotionSensor
[24,19] [23,21] [98,120] [96,121]
0:Thermostat1:AC2:Heater3:MotionSensor
Synchronizeview
[24,19,0,0] [23,21,0,0] [0,0,98,120] [0,0,96,121]
[24,21,98,121]Synchronize
state
SecuringDatasetSynchronization
43
ApplicationTrustAnchor/Home
/Home/Thermostat /Home/AC /Home/Heater
0:/Thermostat,{cert}1:/AC,{cert}2:/Heater,{cert}
/Home/resource/disc/vinfo/(4,/AC)
โ10:30AM,Temp:70FโVector=[15,100,92]
/Home/Thermostat/15HEARTBEATVector=[60,148,135]
/Home/Heater/135
Sign
SignSign Sign
Summary
โข Explicitgroupmembershiplist(theview)enablestheuseofversionvectorasaconciserepresentationofthedatasetnamespace
โข Event-drivenotificationwithexplicitinformationallowsnodestoretrievenewdataimmediately
โข KeepingconsistentviewamongallnodesbyincludingtheviewIDinallnotificationInterestsโข NodescanretrievetheviewinfoafterreceivingnewviewID
โข Publishingallstateinfo(vector,membershiplist)asnamedandsecureddatausingwell-definednamingconvention
44
SimulationStudy
โข Methodologyโข ConductexperimentsusingndnSIM (ns3-basednetworksimulator)โข ComparewithChronoSync usingthesameapplication
โข Metricsโข Datadisseminationdelay:thetimeneededforanynodetoreceivethedataafteritispublishedโข Synchronizationdelay:thetimeneededfortheallnodesinthegrouptoreceivethedataafteritispublishedโข Networktraffic:totalnumberofInterestandDatapacketstransmittedinthenetwork
45https://github.com/named-data/ChronoSync
Scenario:smallcampusnetwork
BB1 BB2
DR4DR3
DR1 DR2
GW1 GW2 GW3 GW4 GW5
GW6GW7
Department ADepartment B
Department C
CampusBackbone
10Gbps/5ms
1Gbps/10ms
1Gbps/5ms
EN1 EN2 EN3 EN4 EN5 EN6
EN7EN8EN9EN10
1Gbps/2ms
46
โข Applicationrunningon10edgenodesparticipatinginasyncgroupโข RTTrange:8ms~68ms
โข Twotypesoftraffic:โข Lowdatarate:10saverageinter-arrivaltimeforeachโข Highdatarate:1saverageinter-arrivaltimeforeach
DataDisseminationDelaywithNoPacketLoss
0 50 100 150 200
0.0
0.2
0.4
0.6
0.8
1.0
Data dissemination delay in VectorSync (ms)
CD
F
โโ
โโโโโโโโโโโ โ โโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโ โ โโโ
โโโโโโโโโโโโโ โโ
โโโโโโโโโโ
โโโโโโ
0 50 100 150 200
0.0
0.2
0.4
0.6
0.8
1.0
Data dissemination delay in VectorSync (ms)
CD
F
โโโโโโโโโโโโโโโโ โโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโ
โโโ
โโโโโ
โโ โโโโ
โโโโโโโ
โโโโโโโโโโ
47
~1.5*MinRTT
~ 1.5*MaxRTT
~1.5*MinRTT
~ 1.5*MaxRTT
DataRate=0.1pps DataRate=1pps
SynchronizationDelayinVectorSync
48
DataRate=0.1pps DataRate=1pps
HigherdatarateinthegroupenablesVectorSync torecoverfrompacketlossfasterbecausethestatevectorcarriedineachdataenablesinconsistencydetection
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in VectorSync (ms)
CD
F
โโโโ
โโโโโโโโโโโโโโ
โโโโโโโโโโ
โโโโโโ
โโโ
โโโโโโโโโโ
โโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโ โ โโโโโ โโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโ
Loss rate0%1%5%10%
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in VectorSync (ms)
CD
F
โโโโโโโโโ
โโโ
โโโโ
โโ
โโโโโโโ
โโโ
โโโโโโโ
โโโโโโโโโ
โโโ
โโโโโโ
โ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโ โโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ โ โโ โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโ โ โ โ โ โโ
Loss rate0%1%5%10%
SynchronizationDelayunderLowDataRate(VectorSync vs.ChronoSync)
49
VectorSync isresilienttosimultaneousupdatebecauseexplicitnotificationallowsreceiverstofetchthenewdataimmediately
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in VectorSync (ms)
CD
F
โโโโ
โโโโโโโโโโโโโโ
โโโโโโโโโโ
โโโโโโ
โโโ
โโโโโโโโโโ
โโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโ โ โโโโโ โโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโ
Loss rate0%1%5%10%
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in ChronoSync (ms)
CD
F
โโ
โโโโโโโโโโโ
โโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโ
โ
โโโโโโโโโโโ
โโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโ โโโโโโโโ โโโโโ โโโโโ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโLoss rate
0%1%5%10%
Duetosimutaneous data
NetworkTrafficunderLowDataRate(VectorSync vs.ChronoSync)
50
MainreasonforhigherInterestvolumeinChronoSync:โข AdditionalmulticastSyncInterestfordetectingsimultaneousupdatesโข RecoveryInterestforrepairingconflictingstates
LossRate 0% 1% 5% 10%
PacketType Interest Data Interest Data Interest Data Interest Data
VectorSync 167k 134k 170k 134k 183k 132k 205k 129k
ChronoSync 321k 132k 359k 151k 436k 172k 455k 154k
Totalnumberofpacketsacrossalllinks
SynchronizationDelayunderHighDataRate
51
Underhighdatarate,ChronoSync invokesโrecoveryโmechanismfrequently,whichprovidessimilarinformationasthestatevectorinVectorSync
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in VectorSync (ms)
CD
F
โโโโโโโโโ
โโโ
โโโโ
โโ
โโโโโโโ
โโโ
โโโโโโโ
โโโโโโโโโ
โโโ
โโโโโโ
โ
โโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโ โโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ โ โโ โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโ โ โ โ โ โโ
Loss rate0%1%5%10%
0 500 1000 1500 2000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in ChronoSync (ms)
CD
F
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโ โ โ โโโ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโ โโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ โ โโโ
Loss rate0%1%5%10%
NetworkTrafficunderHighDataRate
52
LossRate 0% 1% 5% 10%
PacketType Interest Data Interest Data Interest Data Interest Data
VectorSync 101k 82k 104k 82k 112k 80k 126k 79k
ChronoSync 1179k 482k 989k 417k 730k 300k 576k 215k
Totalnumberofpacketsacrossalllinks
โข HightrafficvolumeinChronoSync duetofrequentinvocationofrecoverymechanism
โข TrafficvolumeinVectorSync increasesonlyslightlyduetoInterestretransmission
Summary
โข CarryingdatanameexplicitlyinthenotificationInterestenablespromptandefficientdatadissemination,eveninfaceofmultiplesimultaneousdataproducers
โข Carryingstatevectorinnodesโdataenablesdetectingandreconcilinginconsistencyinthedatasetnamespace
โข HighergroupdatarateenablesVectorSync torecoverfrompacketlossmorequickly
53
EvaluatingViewSynchronization
โข Understandingthebehaviorofviewsynchronizationundernodejoining/leavingandpacketlossโข Howfastthegroupreactstomembershipchangesโข Messagingoverheadโข Additionaldelayโข Implicationsofprotocolparametersettings
โข Resultstobeincludedinthedissertation
54
ComparisonwithExistingProtocols
55
Enumeration
Hashing
IBF
Enumeration
Hashing
IBF
CCNx 0.8Sync
CCNx 1.0Sync
iSync pSync
ChronoSync RoundSync
VectorSync
Long-livedInterest
Notificationdriven
Periodicexchange
Long-livedInterest
Notificationdriven
Periodicexchange
Useapplicationname Namedatasequentially
ComparisonwithExistingProtocols
56
Factors affectingInterestsize
FactorsaffectingDataContentsize InterestOverhead MinData
DisseminationRTT
CCNx 0.8Sync Nodehash Numberofchildnodes Periodic Depending onInterestperiod+treewalk
CCNx 1.0Sync Manifestdigest Total numberofnames Oneperupdate 2.5
iSync IBFdigest IBF(dependingonnumberofnewdata) Periodic Depending onInterest
period+3.5RTT
ChronoSync State digest(withexcludefilter)
Number ofnameswithnewsequencenumbers Long-livedInterest
Minis0.5; canbelongwithsimultaneousdata
publishing
RoundSync Rounddigest(withexcludefilter)
Numberofnameswithnewseq# inaround Two perupdate
Minis1.5;canbelongwithsimultaneousdata
publishing
pSync** IBF(+subscriptionlist) IBF +numberofnewnames Long-livedInterest 1.5
VectorSync Leadername+nodename State vector(small) Oneperupdate
(withheartbeat) 1.5
** pSync doesnotsupportgroupsync
Conclusion
57
Conclusion
โข DistributeddatasetsynchronizationisanimportantabstractioninNDNforsupportingdistributedapplications
โข Ourcomparativestudyoftheexistingsyncprotocolsidentifiedcommonsyncprotocolframeworkandexposeddifferenttradeoffsintheprotocoldesignchoices
โข WedevelopedVectorSync,anewsyncprotocoldesignthatovercomethedrawbacksoftheexistingsyncprotocolsโข Explicitgroupmembershipmanagementโข Explicitnewdatanotificationโข Detectingandreconcilingdatasetinconsistencyusingversionvector
58
FutureWorks
โข Exploringdifferentgrouprendezvousmechanismsโข DHTโข Viralpropagation
โข ApplyingVectorSync toNDNapplicationsโข Routingprotocolโข Distributedrepository
59
Publications
60
ร NDN.JS:aJavascript ClientLibraryforNamedDataNetworking,Infocommโ13ร NDNFS:anNDN-friendlyFileSystem,NDN-TR-0027,2014ร MicroForwarder.js:anNDNForwarderExtensionforWebBrowsers,ICNโ16
NDNApplications
ร SecuringBuildingManagementSystemsUsingNamedDataNetworking,IEEENetwork,vol.28,no.3,2014ร NDN-ACE:AccessControlforConstrainedEnvironmentsoverNamedDataNetworking,NDN-TR-0036,2015ร ChallengesinIoT NetworkingviaTCP/IPArchitecture,NDN-TR-0038,2016ร NamedDataNetworkingofThings,IoTDIโ16ร TheDesignandImplementationoftheNDNProtocolStackforRIOT-OS,Globecomโ16ICNSRAWorkshopร Breakingoutofthecloud:LocaltrustmanagementandrendezvousinNamedDataNetworkingofThings,IoTDIโ17
IoT overNDN
ร TheDesignofRoundSync Protocol, NDN-TR-0048,2017ร ASurveyofDistributedDatasetSynchronizationinNamedDataNetworking,NDN-TR-0053,2017
NDNSync
BackupSlides
61
RoundSync:addressingissuesinChronoSync
โข Dividedatapublishingintoroundsโข Decouplestatenotificationfromupdateretrievalโข Stillneedspecialmechanismtoretrievemultipledatainasingleround
62
RN Dataset Digest
โฆ
24 {/TouristA/15,/TouristB/60} D2425 {/TouristC/32} D25
/park/bbs/DATA/25
{/TouristC:32}
DataInterest
Reply
RoundLog /park/bbs/SYNC/[Digest]SyncInterest
JoiningtheGroup
63
MotionSensorThermostatAC Heater
Inview(8,Thermostat) Createview(0,Heater)
Publish:/home/bonjour/vinfo/(0,Heater)0:Heater,{cert}
/home/bonjour/(0,Heater)/Heater/1
/home/bonjour/vinfo/(0,Heater)
Merge(0,Heater)intothegroupandperformviewchange
Nodejoiningishandledinthesamewayasviewmerging
Scenario2:largeISPnetwork
โข Randomlypick10โleafโnodesโข RTTrange:111ms~476ms
โข Traffic:10sinter-arrivaltimefromeachnode
64N.Stringetal.,โMeasuringISPtopologieswithRocketfuelโ,2004
DataDisseminationDelaywithNoPacketLoss
65
~1.5*MinRTT
<1.5*MaxRTTduetocaching
0 200 400 600 800 1000
0.0
0.2
0.4
0.6
0.8
1.0
Data dissemination delay in VectorSync (ms)
CD
F
SynchronizationDelay
0 5000 10000 15000 20000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in ChronoSync (ms)
CD
F
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโ โ
Loss rate0%1%5%10%
66
0 5000 10000 15000 20000
0.0
0.2
0.4
0.6
0.8
1.0
Data synchronization delay in VectorSync (ms)
CD
F
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโ โโโโโโ โ โ
Loss rate0%1%5%10%
NetworkTraffic
67
LossRate 0% 1% 5% 10%
PacketType Interest Data Interest Data Interest Data Interest Data
VectorSync 519k 185k 522k 185k 534k 184k 575k 187k
ChronoSync 1224k 248k 1346k 273k 1616k 317k 1647k 294k
Totalnumberofpacketsacrossalllinks
HightrafficvolumeinChronoSync duetoโrecoveryโmechanism
DatasetSnapshotandPermanentStorage
68
Motivation
โข Problem:โข VectorSync synchronizesamongactivemembersโข Someapplicationsmaywanttokeepalldatapublishedinthehistory
โข Solution:โข Thegroupgeneratesaโsnapshotโforthedatasetstate atthebeginningofeachviewโข Asnapshotisaversionvectorcoveringallthedatapublishedinthegroupbeforetheviewstarts
โข A dedicatedrepocollectsdatabasedonthesnapshotandstorepermanentlyโข Newnodesretrievewholedatasetfromtherepotobootstrap
69
GeneratingGroupSnapshot
โข Beforesyncingdatainanewview,eachnodepublishesitslocalsnapshotintheshareddatasetโข Localsnapshotpacketspropagatedinthegroupviasync
โข LeadercomputesthegroupsnapshotastheJoin oflocalsnapshotsfromall nodesinthecurrentview
70
Previousview:(6,/HVAC)[/Thermostat:35,/HVAC:103]
Previousview:(6,/HVAC)[/Thermostat:34,/HVAC:103]
/Thermostatlocalsnapshot /HVAClocalsnapshot /Lamplocalsnapshot
Previousview:(4,/Lamp),(6,/HVAC)[/Thermostat:35,/HVAC:103,/Lamp:55,/LampSwitch:20]
(7,/HVAC)groupsnapshot:
Previousview:(4,/Lamp)[/Lamp:55,/LampSwitch:20]
(7,/HVAC)0:/Thermostat1:/HVAC2:/Lamp
Summary
โข Effectivenessโข Synchronizinglatestseq#ensuresnodesdiscoverallmissingdataโข Periodicheartbeathelpsrecoverfrompacketloss
โข Efficiencyโข Explicitdatanamenotificationenablesfastersyncโข Simultaneouspublishingdonotinterfere
โข Scalabilityโข Membershipmanagementcontrolsstatevectorsizeโข Largegroupsmayadoptcompressedencoding(e.g.,IBF)
71