25
A Construction of Locality-Aware A Construction of Locality-Aware Overlay Network: mOverlay and It Overlay Network: mOverlay and It s Performance s Performance Found in: Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATION IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATION S, VOL. 22, NO. 1, JANUARY 2004 S, VOL. 22, NO. 1, JANUARY 2004 Author: Author: Xin Yan Zhang Xin Yan Zhang , Student Member, IEEE , Student Member, IEEE , Qian Zhang , Qian Zhang , Member, , Member, IEEE IEEE , Zhensheng Zhang , Zhensheng Zhang , Senior Member, IEEE , Senior Member, IEEE ,Gang Song, and Wenw ,Gang Song, and Wenw u Zhu u Zhu , Senior Member, IEEE , Senior Member, IEEE Tsung-Han Lin 09/14/ 2005

A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Embed Size (px)

Citation preview

Page 1: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

A Construction of Locality-Aware Overlay A Construction of Locality-Aware Overlay Network: mOverlay and Its PerformanceNetwork: mOverlay and Its Performance

Found in:Found in:IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOIEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO. 1, JANUARY 2004L. 22, NO. 1, JANUARY 2004Author:Author:Xin Yan ZhangXin Yan Zhang, Student Member, IEEE, Student Member, IEEE, Qian Zhang, Qian Zhang, Member, IEEE, Member, IEEE,, Zhensheng Zhang Zhensheng Zhang, Senior Member, IEEE, Senior Member, IEEE,Gang Song, and Wenwu Zhu,Gang Song, and Wenwu Zhu, Se, Senior Member, IEEEnior Member, IEEE

Tsung-Han Lin 09/14/2005

Page 2: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

IntroductionIntroduction

One of the crucial issues in deploying One of the crucial issues in deploying an overlay network is the potential an overlay network is the potential performance degradationperformance degradation

Routing overheadRouting overhead is a key is a key performance metric for overlay performance metric for overlay infrastructures.infrastructures.

Page 3: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

IntroductionIntroduction

EfficiencyEfficiency An An overlayoverlay construction scheme should make sure construction scheme should make sure

that the communication on the overlay is not too that the communication on the overlay is not too costly, compared with the costly, compared with the underlyingunderlying network. network.

ScalabilityScalability The overlay network should remain The overlay network should remain tractabletractable with with

the the increasingincreasing number of hosts and data traffic. number of hosts and data traffic. The cost of overlay network maintenance should be as The cost of overlay network maintenance should be as smallsmall as as

possiblepossible the locality is an essential characteristic for the the locality is an essential characteristic for the

overlay constructionoverlay construction

Page 4: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

IntroductionIntroduction

Page 5: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

IntroductionIntroduction

Highly structured overlay: are designed to enhance the Highly structured overlay: are designed to enhance the searchsearch peperformancerformance

in the face of a very transient user populationin the face of a very transient user population Highly structured ->low flexibility Highly structured ->low flexibility (because it’s hard to maintain the structure)(because it’s hard to maintain the structure) It does not consider network proximity at all (ex: Chord)It does not consider network proximity at all (ex: Chord)=>its message may travel arbitrarily long distances in overlay=>its message may travel arbitrarily long distances in overlay

In this paper:In this paper: By using the By using the localitylocality in the underlying network to build an overlay ne in the underlying network to build an overlay ne

twork .twork . (use (use Group conceptGroup concept and and Dynamic landmarksDynamic landmarks))

still has higher scalability and robustness and by using the locating sstill has higher scalability and robustness and by using the locating scheme ,a new host can find its nearby group within cheme ,a new host can find its nearby group within O(logN)O(logN) steps steps

Page 6: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locality-Aware Overlay Locality-Aware Overlay ConstructionConstruction

Neighbor: two hosts have a Neighbor: two hosts have a connectionconnection through the overlay through the overlay

If nearby hosts are neighbors and If nearby hosts are neighbors and neighbor groups are connectedneighbor groups are connected=>delivery time low=>delivery time low

Two-level hierarchical network:Two-level hierarchical network: Top level: consists of Top level: consists of groupsgroups Bottom level: consists of Bottom level: consists of hostshosts within within

groupsgroups

Page 7: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locality-Aware Overlay Locality-Aware Overlay ConstructionConstruction

Group: consist a set of Group: consist a set of hosts that are close to hosts that are close to each othereach other Each group maintain H Each group maintain H

hosts in a local host cachehosts in a local host cache used to communication used to communication

with other groups’ hostswith other groups’ hosts LeaderLeader

Each group also maintain Each group also maintain information about its M information about its M neighbor groups neighbor groups

For any position P if For any position P if PA=PBPA=PB then we say that then we say that host A and host B are in host A and host B are in the same groupthe same group

P

A B<-same group->

=

Page 8: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locality-Aware Overlay Locality-Aware Overlay ConstructionConstruction

Neighbor groupsNeighbor groups Groups nearby in underlying anGroups nearby in underlying an

d also in overlay network d also in overlay network A group can exchange messages A group can exchange messages

with its neighbor groupswith its neighbor groups Group criterionGroup criterion (used to decide which group t(used to decide which group t

he new host should belong)he new host should belong) A: groupA: group A’:A’s neighbor groupA’:A’s neighbor group Q: a new hostQ: a new host If QA’=AA’ then Q belong GrouIf QA’=AA’ then Q belong Grou

p Ap A

A’

Q A<-same group->

=

Page 9: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locating ProcessLocating Process

Locating process=>the way to find the Locating process=>the way to find the nearest groupnearest group There is a global host cache called the There is a global host cache called the

rendezvousrendezvous pointpoint (RP) in the overlay network (RP) in the overlay network All new host know where the RP isAll new host know where the RP is RP usually a machine or a set of machines, RP usually a machine or a set of machines,

which give the new host the start point in the which give the new host the start point in the overlayoverlay

Use Use group criteriongroup criterion and and locating locating processprocess make a group’s neighbors acting make a group’s neighbors acting as a as a dynamic landmarksdynamic landmarks: always chose the : always chose the neatest Groups to be such landmarksneatest Groups to be such landmarks

Page 10: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locating ProcessLocating Process

JoinJoin

Page 11: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Locating ProcessLocating Process

Page 12: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

General Overlay OperationsGeneral Overlay Operations

Forming new groupForming new group In the In the initializationinitialization stage of stage of overlay network overlay network

formationformation When the nearest group for the new host does not meet the grouWhen the nearest group for the new host does not meet the grou

ping criterion.ping criterion. Host declares a new Group with a group ID ,at the same tiHost declares a new Group with a group ID ,at the same ti

me , finds its M neighborsme , finds its M neighborsUse Use locating procedurelocating procedure to find neighbors to find neighborsStep1:find the new host’s nearby groupsStep1:find the new host’s nearby groupsStep2:Step2: 由由 nearest neighbor nearest neighbor 得到得到 neighbor informationneighbor informationStep3:Step3: 用用 locality characteristiclocality characteristic => => 一個一個 groupgroup 的的 neighborneighbor

有可能是該有可能是該 groupgroup 其他某一其他某一 neighborneighbor 的的 neighborneighbor

Page 13: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

General Overlay OperationsGeneral Overlay Operations

Group joiningGroup joining if a host has located its proper group, the neif a host has located its proper group, the ne

w host joins that group and directly connectw host joins that group and directly connects to several hosts in the group.s to several hosts in the group.

Information sharingInformation sharing hosts in the same group has hosts in the same group has similar networksimilar network characcharac

teristicsteristics,(ex:AX=A,(ex:AX=AggX)X) Information about the measurement performed beInformation about the measurement performed be

tween A host and X group should be sent to all othetween A host and X group should be sent to all other hosts in A’s group, with low overheadr hosts in A’s group, with low overhead

(( 因同一因同一 groupgroup 的的 hosthost 均均 nearby nearby 所以同所以同 groupgroup 的的 infinformationormation 傳遞可用傳遞可用 floodingflooding 來傳播來傳播 =>overhead=>overhead 低低 ))

Page 14: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

General Overlay OperationsGeneral Overlay Operations

Information updatingInformation updating A A local host cachelocal host cache is used to complete the is used to complete the

updatingupdating task. task. the H hosts in the cache will take the the H hosts in the cache will take the

responsibilities in its natural responsibilities in its natural sequentialsequential order. order. Leader periodically send out “Leader periodically send out “alivealive” message ” message

to to whole groupwhole group If leader fail=>the next host in the cache will If leader fail=>the next host in the cache will

become new leaderbecome new leader If H is big enough, group operations could be If H is big enough, group operations could be

run normallyrun normally

Page 15: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

General Overlay OperationsGeneral Overlay Operations

Information updatingInformation updating If H hosts all failIf H hosts all fail

All other host in group might declare its leadership All other host in group might declare its leadership at the same tiat the same timeme

Use Use time stamptime stamp handle handle There are two kinds of information should be updateThere are two kinds of information should be update

Host cache: when new host joinHost cache: when new host join Leader send alive=>hosts in cache receive and Leader send alive=>hosts in cache receive and replyreply a message to leader a message to leader

to indicate its existenceto indicate its existence New host will New host will replacereplace failed host which assigned by leader failed host which assigned by leader Make sure that hosts in host cache are Make sure that hosts in host cache are all aliveall alive

information of neighbor groups:when a nearby group is generinformation of neighbor groups:when a nearby group is generated.ated.

新新 groupgroup 的的 leaderleader 會找出自己和會找出自己和 nearby groupnearby group 的的 distancedistance, nearby group, nearby group也會依此也會依此 distancedistance 來決定是否要來決定是否要 flushflush neighborsneighbors listlist

If so, leaderIf so, leader 會通知會通知 groupgroup 中所有中所有 hosthost 有關此有關此 neighborneighbor 的的 informationinformation

Page 16: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

General Overlay OperationsGeneral Overlay Operations

Host failure/leavingHost failure/leaving Because cache Because cache update periodicallyupdate periodically, so it does not h, so it does not h

ave any impact to its group when a single host failuave any impact to its group when a single host failurere

a host does not need to take any action when it leaa host does not need to take any action when it leaves the overlay networkves the overlay network

But in order to improve performance, it is required But in order to improve performance, it is required that the host informs the leader when a host leavesthat the host informs the leader when a host leaves(( 若若 leaveleave 的為的為 leader leader 會通知會通知 second host in cache)second host in cache)

Page 17: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Overlay performance analysis-Overlay performance analysis-EfficiencyEfficiency

D: the average neighbor distance in our locality-aware overlD: the average neighbor distance in our locality-aware overlayay

N: number of GroupsN: number of Groups n: number of hosts in each groupn: number of hosts in each group m: each host has m neighbor hostsm: each host has m neighbor hosts M: Every group has M neighbor groupsM: Every group has M neighbor groups D: The average distance between neighbor groupsD: The average distance between neighbor groups D: The average distance between two hosts in the same groD: The average distance between two hosts in the same gro

up up :The total number of intragroup neighborhood links :The total number of intragroup neighborhood links :The total number of intergroup neighborhood links:The total number of intergroup neighborhood links

Page 18: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Overlay performance analysis-EffiOverlay performance analysis-Efficencycency

D : the average neighbor distance in a randomly cD : the average neighbor distance in a randomly connected overlayonnected overlay

m : Each host has neighbor hosts in the same grm : Each host has neighbor hosts in the same groupoup

m : number of neighbor hosts in all other groupsm : number of neighbor hosts in all other groups The average distances of intergroup links and intrThe average distances of intergroup links and intr

agroup links are denoted by andagroup links are denoted by and

rgfhrgfh

Page 19: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Overlay performance analysis-EffiOverlay performance analysis-Efficencycency

In randomly connected overlay: Any two In randomly connected overlay: Any two hosts in the underlying network have the hosts in the underlying network have the same probability to become neighborssame probability to become neighbors

=> =>

=>=> ..

Page 20: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Overlay performance analysis-EffiOverlay performance analysis-Efficencycency

=(=(DDiinmnm++MDMDbb)/()/(DDb’b’nmnm++MM)) The smaller the ration is , the shorter the average neigThe smaller the ration is , the shorter the average neig

hbor distance in locality-aware overlay ishbor distance in locality-aware overlay is In order to increase the efficiency (decrease the ratio) In order to increase the efficiency (decrease the ratio)

of the overlay, we should try to of the overlay, we should try to shorten the neighbor links’ distance between diffshorten the neighbor links’ distance between diff

erent groups (to decrease )erent groups (to decrease ) A host have more neighbors hosts in the same group if possiblA host have more neighbors hosts in the same group if possibl

e (to increase m)e (to increase m) always place hosts to their proper group if possible always place hosts to their proper group if possible (to decrease )(to decrease )

Page 21: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

Overlay performance analysis-Overlay performance analysis-Robustness, ScalabilityRobustness, Scalability

RobustnessRobustness If there is several If there is several isolatedisolated sub-network in the sub-network in the

underlying network, then it may not find the underlying network, then it may not find the nearest group for the new hostnearest group for the new host

Solution: Solution: each group will each group will select a random groupselect a random group as its special as its special

neighbor groupneighbor group

ScalabilityScalability Use Use dynamic landmarks locationdynamic landmarks location algorithm will algorithm will

limit the cost compare with traditional mesh-based limit the cost compare with traditional mesh-based or tree-based overlaysor tree-based overlays

Page 22: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

SimulationSimulation

O(logN)O(logN)

Page 23: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

SimulationSimulation

Barabasi-AlbertBarabasi-Albertand and WaxmanWaxman model model

Page 24: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

SimulationSimulation

Page 25: A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO

ConclusionConclusion

This paper present a protocol to generate an This paper present a protocol to generate an unstructunstructuredured overlay to achieve overlay to achieve locality characteristiclocality characteristic

Key characteristic: Key characteristic: Dynamic landmarkDynamic landmark it can achieve locality-aware in unstructured overlay network it can achieve locality-aware in unstructured overlay network Strong scalability and high robustness and low locating compStrong scalability and high robustness and low locating comp

lexitylexity Simulation show that:Simulation show that:

This locating algorithm will limit the overhead in the level of This locating algorithm will limit the overhead in the level of O(logN)O(logN)

This overlay is more efficiently than in traditional unstructureThis overlay is more efficiently than in traditional unstructured overlaysd overlays