a scalable cont ent addressable net work
play

A Scalable, Cont ent - Addressable Net work 1,2 3 1 Sylvia Rat - PowerPoint PPT Presentation

A Scalable, Cont ent - Addressable Net work 1,2 3 1 Sylvia Rat nasamy, Paul Francis, Mark Handley, 1,2 1 Richard Karp, Scot t Shenker 2 3 1 Tahoe U.C.Ber keley ACI RI Net works Out line I nt roduct ion Design


  1. A Scalable, Cont ent - Addressable Net work 1,2 3 1 Sylvia Rat nasamy, Paul Francis, Mark Handley, 1,2 1 Richard Karp, Scot t Shenker 2 3 1 Tahoe U.C.Ber keley ACI RI Net works

  2. Out line • I nt roduct ion • Design • Evaluat ion • St r engt hs & Weaknesses • Ongoing Work

  3. I nt ernet -scale hash t ables • Hash t ables – essent ial building block in sof t ware syst ems • I nt ernet -scale dist ribut ed hash t ables – equally valuable t o large-scale dist ribut ed syst ems?

  4. I nt ernet -scale hash t ables • Hash t ables – essent ial building block in sof t ware syst ems • I nt ernet -scale dist ribut ed hash t ables – equally valuable t o large-scale dist ribut ed syst ems? • peer -t o-peer syst ems – Napst er, Gnut ella, Groove, FreeNet , Moj oNat ion… • large-scale st orage management syst ems – Publius, OceanSt ore, PAST, Farsit e, CFS ... • mirroring on t he Web

  5. Cont ent -Addressable Net work (CAN) • CAN: I nt ernet -scale hash t able • I nt erf ace – insert (key,value) – value = ret rieve(key)

  6. Cont ent -Addressable Net work (CAN) • CAN: I nt ernet -scale hash t able • I nt erf ace – insert (key,value) – value = ret rieve(key) • Propert ies – scalable – operat ionally simple – good perf ormance (w/ improvement )

  7. Cont ent -Addressable Net work (CAN) • CAN: I nt ernet -scale hash t able • I nt erf ace – insert (key,value) – value = ret rieve(key) • Propert ies – scalable – operat ionally simple – good perf ormance • Relat ed syst ems: Chord/ P ast ry/ Tapest ry/ Buzz/ Plaxt on ...

  8. Problem Scope � Design a syst em t hat provides t he int erf ace � scalabilit y � robust ness � perf ormance � securit y � Applicat ion-specif ic, higher level primit ives � keyword searching � mut able cont ent � anonymit y

  9. Out line • I nt roduct ion • Design • Evaluat ion • St r engt hs & Weaknesses • Ongoing Work

  10. CAN: basic idea K V K V K V K V K V K V K V K V K V K V K V

  11. CAN: basic idea K V K V K V K V K V K V K V K V K V K V K V insert (K 1 ,V 1 )

  12. CAN: basic idea K V K V K V K V K V K V K V K V K V K V K V insert (K 1 ,V 1 )

  13. CAN: basic idea (K 1 ,V 1 ) K V K V K V K V K V K V K V K V K V K V K V

  14. CAN: basic idea K V K V K V K V K V K V K V K V K V K V K V ret rieve (K 1 )

  15. CAN: solut ion • virt ual Cart esian coordinat e space • ent ire space is part it ioned amongst all t he nodes – every node “ owns” a zone in t he overall space • abst ract ion – can st ore dat a at “ point s” in t he space – can rout e f rom one “ point ” t o anot her • point = node t hat owns t he enclosing zone

  16. CAN: simple example 1

  17. CAN: simple example 1 2

  18. CAN: simple example 3 1 2

  19. CAN: simple example 3 1 4 2

  20. CAN: simple example

  21. CAN: simple example I

  22. CAN: simple example node I ::insert (K,V) I

  23. CAN: simple example node I ::insert (K,V) I (1) a = h x (K) x = a

  24. CAN: simple example node I ::insert (K,V) I (1) a = h x (K) b = h y (K) y = b x = a

  25. CAN: simple example node I ::insert (K,V) I (1) a = h x (K) b = h y (K) (2) rout e(K,V) -> (a,b)

  26. CAN: simple example node I ::insert (K,V) I (1) a = h x (K) b = h y (K) (K,V) (2) rout e(K,V) -> (a,b) (3) (a,b) st ores (K,V)

  27. CAN: simple example node J ::ret rieve(K) (1) a = h x (K) b = h y (K) (K,V) (2) rout e “ ret rieve(K)” t o (a,b) J

  28. CAN Dat a st or ed in t he CAN is addr essed by name (i.e. key), not locat ion (i.e. I P address)

  29. CAN: rout ing t able

  30. CAN: rout ing (a,b) (x,y)

  31. CAN: rout ing A node only maint ains st at e f or it s immediat e neighbor ing nodes

  32. CAN: node insert ion Boot st r ap node new node 1) Discover some node “ I ” already in CAN

  33. CAN: node insert ion I new node 1) discover some node “ I ” already in CAN

  34. CAN: node insert ion (p,q) 2) pick r andom point in space I new node

  35. CAN: node insert ion (p,q) J I new node 3) I rout es t o (p,q), discovers node J

  36. CAN: node insert ion new J 4) split J ’s zone in half … new owns one half

  37. CAN: node insert ion I nsert ing a new node af f ect s only a single ot her node and it s immediat e neighbors

  38. CAN: node f ailures • Need t o repair t he space – recover dat abase (weak point ) • sof t -st at e updat es • use r eplicat ion, r ebuild dat abase f r om r eplicas – repair rout ing • t akeover algor it hm

  39. CAN: t akeover algorit hm • Simple f ailures – know your neighbor’s neighbors – when a node f ails, one of it s neighbors t akes over it s zone • More complex f ailure modes – simult aneous f ailure of mult iple adj acent nodes – scoped f looding t o discover neighbors – hopef ully, a rare event

  40. CAN: node f ailures Only t he f ailed node’s immediat e neighbors are required f or recovery

  41. Design recap • Basic CAN – complet ely dist ribut ed – self -organizing – nodes only maint ain st at e f or t heir immediat e neighbors • Addit ional design f eat ures – mult iple, independent spaces (realit ies) – background load balancing algorit hm – simple heurist ics t o improve perf ormance

  42. Out line • I nt roduct ion • Design • Evaluat ion • St r engt hs & Weaknesses • Ongoing Work

  43. Evaluat ion • Scalabilit y • Low-lat ency • Load balancing • Robust ness

  44. CAN: scalabilit y • For a unif ormly part it ioned space wit h n nodes and d dimensions – per node, number of neighbors is 2d – aver age r out ing pat h is (dn 1/ d )/ 4 hops – simulat ions show t hat t he above result s hold in pract ice • Can scale t he net work wit hout increasing per-node st at e • Chord/ Plaxt on/ Tapest ry/ Buzz – log(n) nbrs wit h log(n) hops

  45. CAN: low-lat ency • Problem – lat ency st ret ch = (CAN rout ing delay) (I P rout ing delay) – applicat ion-level rout ing may lead t o high st ret ch • Solut ion – increase dimensions, realit ies (reduce t he pat h lengt h) – Heurist ics (reduce t he per-CAN-hop lat ency) • RTT-weight ed r out ing • mult iple nodes per zone (peer nodes) • det er minist ically r eplicat e ent r ies

  46. CAN: low-lat ency # dimensions = 2 180 160 w/ o heurist ics Lat ency st ret ch 140 w/ heurist ics 120 100 80 60 40 20 0 16K 32K 65K 131K # nodes

  47. CAN: low-lat ency # dimensions = 10 10 8 w/ o heurist ics Lat ency st ret ch w/ heurist ics 6 4 2 0 16K 32K 65K 131K # nodes

  48. CAN: load balancing • Two pieces – Dealing wit h hot -spot s • popular (key,value) pair s • nodes cache r ecent ly r equest ed ent r ies • over loaded node r eplicat es popular ent r ies at neighbor s – Unif orm coordinat e space part it ioning • unif or mly spr ead (key,value) ent r ies • unif or mly spr ead out r out ing load

  49. Unif orm Part it ioning • Added check – at j oin t ime, pick a zone – check neighboring zones – pick t he largest zone and split t hat one

  50. Unif orm Part it ioning 65,000 nodes, 3 dimensions 100 w/ o check 80 Per cent age w/ check of nodes 60 V = t ot al volume n 40 20 0 V 2V 4V 8V V V V V 16 8 4 2 Volume

  51. CAN: Robust ness • Complet ely dist ribut ed – no single point of f ailur e ( not applicable t o pieces of dat abase when node f ailur e happens) • Not exploring dat abase recovery (in case t here are mult iple copies of dat abase) • Resilience of rout ing – can rout e around t rouble

  52. Out line • I nt roduct ion • Design • Evaluat ion • St r engt hs & Weaknesses • Ongoing Work

  53. St rengt hs • More resilient t han f looding br oadcast net wor ks • Ef f icient at locat ing inf ormat ion • Fault t olerant rout ing • Node & Dat a High Availabilit y (w/ improvement ) • Manageable r out ing t able size & net work t raf f ic

  54. Weaknesses • I mpossible t o perf orm a f uzzy search • Suscept ible t o malicious act ivit y • Maint ain coherence of all t he indexed dat a (Net work overhead, Ef f icient dist r ibut ion) • St ill relat ively higher rout ing lat ency • Poor per f or mance w/ o impr ovement

  55. Suggest ions • Cat alog and Met a indexes t o perf orm search f unct ion • Ext ension t o handle mut able cont ent ef f icient ly f or web-host ing • Securit y mechanism t o def ense against at t acks

  56. Out line • I nt roduct ion • Design • Evaluat ion • St r engt hs & Weaknesses • Ongoing Work

  57. Ongoing Work • Topologically-sensit ive CAN const ruct ion – dist ribut ed binning

  58. Dist ribut ed Binning • Goal – bin nodes such t hat co-locat ed nodes land in same bin • I dea – well known set of landmar k machines – each CAN node, measur es it s RTT t o each landmar k – or der s t he landmar ks in or der of incr easing RTT • CAN const ruct ion – place nodes f r om t he same bin close t oget her on t he CAN

Recommend


More recommend