SlideShare a Scribd company logo








1




2






[50, 80)
38




3


4






5
Sucessor
=
Predecessor

=
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5
O(n)




O(log n)
6
+1 N1 12
+2 N2 25
+4 N4 36
+8 N8 50
N0 Finger Table
+2
+4
+8
+1
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5


7
+1 N1
+2 N2
+4 N4
+8 N8
N0 Finger Table
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5
N2
N4
N0
N8
8
Chord#


( )
⌈log2n⌉


( )
O(n)


i i
9
key
MV
148
21
21 33
7 21 33 148 275 399
7 33
275 399
275 399
148 275 399
7 148
7
LEVEL 0
LEVEL 1
LEVEL 2
LEVEL 3
N1
001
N2
10
N3
01
N4
000
N5
110
N6
111
10
Chord# Skip Graph


( )
⌈log2n⌉ O(log2n)


( )
O(n) ⌈log2n⌉






11
12
Chord# Skip Graph Suzaku


( )
⌈log2n⌉ O(log2n) ⌈log2n-1⌉


( )
O(n) ⌈log2n⌉ log2n


13
14
LEVEL 0
LEVEL 1
LEVEL 2
LEVEL 3
N1 N2 N3 N4 N5 N6




15
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5
BFT FFT
+1 N1
+2 N2
+4 N4
+8 N8
N0 FFT
-1 N15
-2 N14
-4 N12
-8 N8
N0 BFT
N13






16
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N1
N9
N5
BFT FFT
+1 N1
+2 N2
+4 N4
+8 N8
N0 FFT
-1 N15
-2 N14
-4 N12➡N11
-8 N8
N0 BFT




17
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5
BFT FFT
+1 N1
+2 N2
+4 N4
+8 N8
N0 FFT
-1 N15
-2 N14
-4 N12
-8 N8
N0 BFT




18
x x
19
N0
N4N12
N8
N14 N2
N10 N6
N15
N3
N11
N7
N13
N1
N9
N5
BFT FFT
+1 N1
+2 N2
+4 N4
+8 N8
N0 FFT
-1 N15
-2 N14
-4 N12
-8 N8
N0 BFT




p
p 

p p
20
N0 N8FFT[3]
Reverse Pointer
N4 FFT[2]
N7
N0
N8
FFT[3]
!
N4
FFT[2]




21
getEnt
N0 (new) N1 N2 N4N7N6N4
FFT[2] FFT[1]
getEnt
getEnt
getEnt
N2
N6
N4
N4
N1
N7
lev0lev0
getEnt
BFT[1]
getEnt
FFT[1]
BFT[1]
BFT[2]
FFT[2]
FFT[1]
FFT[3]
FFT[2]
BFT[2]
N3N5






SuccPred
getEnt
N0 (new) N1 N2 N4N7N6N4
FFT[1]
N2
N4
N1
getEnt
BFT[1]
getEnt
FFT[2]
BFT[2]
N3N5
wait
wait
wait
22
23


24


25
0
5
10
15
20
25
0 5 10 15 20
#ofhops(ave.)
time elapsed (min)
Chord#
Skip Graph
Suzaku
26
0
0.05
0.1
0.15
0.2
0.25
0.3
0 10 20 30 40 50
freq.
# of hops (after insertion)
0 2 4 6 8 10 12 14 16 18
# of hops (converged)
Chord#
Skip Graph
Suzaku




27
0
0.2
0.4
0.6
0.8
1
0 10 20 30 40 50 60 70
lookupretryratio
time elapsed since massive deletion (sec)
Chord#
Skip Graph
Suzaku
28
0
2
4
6
8
10
12
14
-64-48-32-16 0 16 32 48 64
#ofhops
dist. to node (Skip Graph)
0
10
20
30
40
50
60
70
-64-48-32-16 0 16 32 48 64
dist. to node (Chord#)
after insertion
converged
0
1
2
3
4
5
6
7
8
-64-48-32-16 0 16 32 48 64
dist. to node (Suzaku)
after insertion
converged


29
30
Chord# Skip Graph Suzaku


( )
⌈log2
n⌉ O(log2
n) ⌈log2
n-1⌉


( )
O(n)
⌈log2
n⌉
log2
n








31
Chord# Skip Graph Suzaku


( )
⌈log
2
n⌉ O(log2
n) ⌈log
2
n-1⌉


( )
O(n) ⌈log2
n⌉ log2
n


😥
32
33
1 const FFT = 0 , BFT = 1;
2 // ft [FFT] is FFT, ft [BFT] is BFT
3 // ft [FFT][0] = successor , ft [BFT][0] = predecessor
4 var f t [ 2 ] [ ] : Array of {Array of NodeAndKey };
5 var R: Set of NodeAndKey ; // reverse pointers
6 n . updateBoth ( dir , i , n1 , n2 ) {
7 tab ← f t [ d i r ] ;
8 i f ( i = 0) n1 ← f t [ d i r ] [ 0 ] ; // succ or pred
9 i f ( n1 = null or n1 = n ) {
10 x ← null ; goto next ;
11 }
12 i f ( d i r = FFT ) {y ← n2 ;} e l s e {y ← f t [ FFT ] [ i ] ; }
13 x ← n1 . getEnt ( dir , i , n , y ) ;
14 i f ( n1 f a i l e d ) { we omit the detail of this case }
15 i f ( i |= 0) change ( tab , i , n1 , true ) ; // active update
16 i f ( ( d i r = FFT and x ∈ [ n , tab [ i ] ] ) or
17 ( d i r = BFT and x ∈ [ tab [ i ] , n ] ) ) x ← null ; // circulated
18 next :
19 i f ( x = null and n2 = null ) return ;
20 i f ( d i r = FFT ) { n . updateBoth (BFT , i , n2 , x ) ; }
21 e l s e { n . updateBoth (FFT , i + 1 , n2 , x ) ; }
22 }
23 n . updateFFT ( i , n1 ) {
24 i f ( i = 0) n1 ← f t [ FFT ] [ 0 ] ; // successor
25 x ← n1 . getEnt (FFT , i , n , null ) ;
26 i f ( n1 f a i l e d ) { we omit the detail of this case }
27 i f ( i |= 0) change ( f t [ FFT ] , i , n1 , true ) ; // active update
28 i f ( x ∈ [ n , f t [ FFT ] [ i ] ] ) { // circulated
29 // truncate FFT and BFT to size i
30 for ( j ← i to f t [ FFT ] . length −1) change ( f t [ FFT ] , i , null , f a l s e ) ;
31 for ( j ← i to f t [BFT ] . length −1) change ( f t [BFT] , i , null , f a l s e ) ;
32 s l e e p (Tft ) ;
33 n . updateFFT (0 , null ) ;
34 } e l s e {
35 s l e e p (Tft ) ;
36 n . updateFFT ( i + 1 , x ) ;
37 }
38 }
39 n . getEnt ( dir , l e v e l , p , q ) {
40 i f ( l e v e l |= 0) {
41 change ( f t [1 − d i r ] , l e v e l , p , true ) ; // pasv. update 1
42 }
43 i f ( q |= null ) {
44 i f ( d i r = BFT) {
45 change ( f t [1− d i r ] , l e v e l +1 , q , f a l s e ) ; // pasv. update 2
46 } e l s e R ← R ∪ {q };
47 }
48 return f t [ d i r ] [ l e v e l ] ;
49 }
50 n . change ( tab , l e v e l , new , addtorev ) {
51 old ← tab [ l e v e l ] ;
52 tab [ l e v e l ] ← new ;
53 i f ( addtorev and new |= null ) R ← R ∪ {new };
54 i f ( old |= null and (FFT and BFT do not contain old ) ) {
55 old . removeRev ( n ) ;
56 }
57 }
58 n . removeRev ( p ) {
59 R ← R  {p };
60 }
0
5
10
15
20
25
0 5 10 15
#ofhops(ave.)
time elapsed (min)
Chord#
Skip Graph
Suzaku
3
Fig. 3 Changes of # of lookup hops.
0
0.05
0.1
0.15
0.2
0.25
0.3
0 10 20 30 40 50
freq.
# of hops (after insertion)
0 2 4 6 8 10 12
# of hops (converge
Chord#
Skip Graph
Suzaku
4
Fig. 4 Distribution of lookup hops.
0
0.2
0.4
0.6
0.8
1
0 10 20 30 40 50 60
lookupretryratio
time elapsed since massive deletion (sec)
Chord#
Skip Graph
Suzaku
5
Fig. 5 Lookup retry ratio in massive node deletion
Chord#
51
Suzaku 10
Chord#
8 (= ⌈log2 256⌉) Suza
7(= ⌈log2 256⌉ − 1)
Skip Graph 17
Chord#
fing
Suzaku
Chord#
Skip G
Suzaku

More Related Content

What's hot

Introduction to MATLAB
Introduction to MATLAB Introduction to MATLAB
Introduction to MATLAB
COMSATS Abbottabad
 
Figures
FiguresFigures
Figures
Drradz Maths
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notationsEhtisham Ali
 
Confidence intervalanalysis methodology_eka
Confidence intervalanalysis methodology_ekaConfidence intervalanalysis methodology_eka
Confidence intervalanalysis methodology_ekabfmresearch
 
Asymptotic Notations
Asymptotic NotationsAsymptotic Notations
Asymptotic Notations
Rishabh Soni
 
Asymptotic notation
Asymptotic notationAsymptotic notation
Asymptotic notation
Saranya Natarajan
 
Little o and little omega
Little o and little omegaLittle o and little omega
Little o and little omega
Rajesh K Shukla
 
Theta notation
Theta notationTheta notation
Theta notation
Rajesh K Shukla
 
Big omega
Big omegaBig omega
Big omega
Rajesh K Shukla
 
Topological sort
Topological sortTopological sort
Topological sort
jabishah
 
Program implementation and testing
Program implementation and testingProgram implementation and testing
Program implementation and testing
abukky52
 
Trapezoidal log log
Trapezoidal log logTrapezoidal log log
Trapezoidal log log
Patrick Hui
 
Analysis of algorithn class 3
Analysis of algorithn class 3Analysis of algorithn class 3
Analysis of algorithn class 3Kumar
 
Unit v laplace transform(formula)
Unit v laplace transform(formula)Unit v laplace transform(formula)
Unit v laplace transform(formula)Babu Rao
 
DIGITAL SIGNAL PROCESSING BASED ON MATLAB
DIGITAL SIGNAL PROCESSING BASED ON MATLABDIGITAL SIGNAL PROCESSING BASED ON MATLAB
DIGITAL SIGNAL PROCESSING BASED ON MATLAB
Prashant Srivastav
 
Matlab dsp examples
Matlab dsp examplesMatlab dsp examples
Matlab dsp examples
umarjamil10000
 
3D Geometry QA 11
3D Geometry QA 113D Geometry QA 11
3D Geometry QA 11
Lakshmikanta Satapathy
 

What's hot (20)

Introduction to MATLAB
Introduction to MATLAB Introduction to MATLAB
Introduction to MATLAB
 
Figures
FiguresFigures
Figures
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notations
 
Confidence intervalanalysis methodology_eka
Confidence intervalanalysis methodology_ekaConfidence intervalanalysis methodology_eka
Confidence intervalanalysis methodology_eka
 
Asymptotic Notations
Asymptotic NotationsAsymptotic Notations
Asymptotic Notations
 
Asymptotic notation
Asymptotic notationAsymptotic notation
Asymptotic notation
 
Little o and little omega
Little o and little omegaLittle o and little omega
Little o and little omega
 
Theta notation
Theta notationTheta notation
Theta notation
 
Big omega
Big omegaBig omega
Big omega
 
Topological sort
Topological sortTopological sort
Topological sort
 
Program implementation and testing
Program implementation and testingProgram implementation and testing
Program implementation and testing
 
Trapezoidal log log
Trapezoidal log logTrapezoidal log log
Trapezoidal log log
 
Analysis of algorithn class 3
Analysis of algorithn class 3Analysis of algorithn class 3
Analysis of algorithn class 3
 
2008 june 10
2008 june 102008 june 10
2008 june 10
 
Kolakoski en couleurs
Kolakoski en couleursKolakoski en couleurs
Kolakoski en couleurs
 
Unit v laplace transform(formula)
Unit v laplace transform(formula)Unit v laplace transform(formula)
Unit v laplace transform(formula)
 
DIGITAL SIGNAL PROCESSING BASED ON MATLAB
DIGITAL SIGNAL PROCESSING BASED ON MATLABDIGITAL SIGNAL PROCESSING BASED ON MATLAB
DIGITAL SIGNAL PROCESSING BASED ON MATLAB
 
Laplace table
Laplace tableLaplace table
Laplace table
 
Matlab dsp examples
Matlab dsp examplesMatlab dsp examples
Matlab dsp examples
 
3D Geometry QA 11
3D Geometry QA 113D Geometry QA 11
3D Geometry QA 11
 

Similar to 高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価

Fourier transform
Fourier transformFourier transform
Fourier transform
Solo Hermelin
 
Advance Engineering Mathematics
Advance Engineering MathematicsAdvance Engineering Mathematics
Advance Engineering Mathematics
PrasenjitRathore
 
4. cft
4. cft4. cft
Fourier Transform
Fourier TransformFourier Transform
Fourier Transform
Aamir Saeed
 
Tables
TablesTables
Cálculo ii howard anton - capítulo 16 [tópicos do cálculo vetorial]
Cálculo ii   howard anton - capítulo 16 [tópicos do cálculo vetorial]Cálculo ii   howard anton - capítulo 16 [tópicos do cálculo vetorial]
Cálculo ii howard anton - capítulo 16 [tópicos do cálculo vetorial]
Henrique Covatti
 
Digital image processing using matlab: filters (detail)
Digital image processing using matlab: filters (detail)Digital image processing using matlab: filters (detail)
Digital image processing using matlab: filters (detail)
thanh nguyen
 
Linear transformation.ppt
Linear transformation.pptLinear transformation.ppt
Linear transformation.ppt
Raj Parekh
 
Laplace periodic function with graph
Laplace periodic function with graphLaplace periodic function with graph
Laplace periodic function with graph
Kaushal Surti
 
Ejercicio de fasores
Ejercicio de fasoresEjercicio de fasores
Ejercicio de fasores
dpancheins
 
fourier transforms
fourier transformsfourier transforms
fourier transformsUmang Gupta
 
corripio
corripio corripio
corripio
Sabrina Amaral
 
Capitulo 2 corripio
Capitulo 2 corripioCapitulo 2 corripio
Capitulo 2 corripio
omardavid01
 
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptxC & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
ANSHULSINGH727192
 
The Moore-Spiegel Oscillator
The Moore-Spiegel OscillatorThe Moore-Spiegel Oscillator
The Moore-Spiegel Oscillator
Abhranil Das
 
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
Jason Li
 
Slc math series
Slc math seriesSlc math series
Slc math series
mohan pudasaini
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
Iffat Anjum
 
Generating code from dags
Generating code from dagsGenerating code from dags
Generating code from dags
indhu mathi
 
#Import standard math functions from math import import .docx
#Import standard math functions from math import  import .docx#Import standard math functions from math import  import .docx
#Import standard math functions from math import import .docx
gertrudebellgrove
 

Similar to 高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価 (20)

Fourier transform
Fourier transformFourier transform
Fourier transform
 
Advance Engineering Mathematics
Advance Engineering MathematicsAdvance Engineering Mathematics
Advance Engineering Mathematics
 
4. cft
4. cft4. cft
4. cft
 
Fourier Transform
Fourier TransformFourier Transform
Fourier Transform
 
Tables
TablesTables
Tables
 
Cálculo ii howard anton - capítulo 16 [tópicos do cálculo vetorial]
Cálculo ii   howard anton - capítulo 16 [tópicos do cálculo vetorial]Cálculo ii   howard anton - capítulo 16 [tópicos do cálculo vetorial]
Cálculo ii howard anton - capítulo 16 [tópicos do cálculo vetorial]
 
Digital image processing using matlab: filters (detail)
Digital image processing using matlab: filters (detail)Digital image processing using matlab: filters (detail)
Digital image processing using matlab: filters (detail)
 
Linear transformation.ppt
Linear transformation.pptLinear transformation.ppt
Linear transformation.ppt
 
Laplace periodic function with graph
Laplace periodic function with graphLaplace periodic function with graph
Laplace periodic function with graph
 
Ejercicio de fasores
Ejercicio de fasoresEjercicio de fasores
Ejercicio de fasores
 
fourier transforms
fourier transformsfourier transforms
fourier transforms
 
corripio
corripio corripio
corripio
 
Capitulo 2 corripio
Capitulo 2 corripioCapitulo 2 corripio
Capitulo 2 corripio
 
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptxC & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
C & S UNIT-1 WAVEFORM SYNTHESIZATION.pptx
 
The Moore-Spiegel Oscillator
The Moore-Spiegel OscillatorThe Moore-Spiegel Oscillator
The Moore-Spiegel Oscillator
 
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
Image Compression Comparison Using Golden Section Transform, Haar Wavelet Tra...
 
Slc math series
Slc math seriesSlc math series
Slc math series
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
 
Generating code from dags
Generating code from dagsGenerating code from dags
Generating code from dags
 
#Import standard math functions from math import import .docx
#Import standard math functions from math import  import .docx#Import standard math functions from math import  import .docx
#Import standard math functions from math import import .docx
 

More from Kota Abe

構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
Kota Abe
 
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
Kota Abe
 
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
Kota Abe
 
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
Kota Abe
 
Constructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed LockingConstructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed Locking
Kota Abe
 
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
Kota Abe
 
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
Kota Abe
 
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
Kota Abe
 
高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良
Kota Abe
 
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Kota Abe
 
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
Kota Abe
 
Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Kota Abe
 
区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法
Kota Abe
 
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案Kota Abe
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiKota Abe
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
Kota Abe
 

More from Kota Abe (16)

構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
 
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
 
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
 
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
 
Constructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed LockingConstructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed Locking
 
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現
 
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
 
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
 
高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良
 
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
 
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
 
Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法
 
区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法
 
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabi
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
 

Recently uploaded

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価

  • 6. O(n) 
 
 O(log n) 6 +1 N1 12 +2 N2 25 +4 N4 36 +8 N8 50 N0 Finger Table +2 +4 +8 +1 N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N13 N1 N9 N5
  • 7. 
 7 +1 N1 +2 N2 +4 N4 +8 N8 N0 Finger Table N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N13 N1 N9 N5 N2 N4 N0 N8
  • 9. i i 9 key MV 148 21 21 33 7 21 33 148 275 399 7 33 275 399 275 399 148 275 399 7 148 7 LEVEL 0 LEVEL 1 LEVEL 2 LEVEL 3 N1 001 N2 10 N3 01 N4 000 N5 110 N6 111
  • 10. 10 Chord# Skip Graph 
 ( ) ⌈log2n⌉ O(log2n) 
 ( ) O(n) ⌈log2n⌉ 
 

  • 12. 12 Chord# Skip Graph Suzaku 
 ( ) ⌈log2n⌉ O(log2n) ⌈log2n-1⌉ 
 ( ) O(n) ⌈log2n⌉ log2n 

  • 13. 13
  • 14. 14 LEVEL 0 LEVEL 1 LEVEL 2 LEVEL 3 N1 N2 N3 N4 N5 N6
  • 15. 
 
 15 N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N13 N1 N9 N5 BFT FFT +1 N1 +2 N2 +4 N4 +8 N8 N0 FFT -1 N15 -2 N14 -4 N12 -8 N8 N0 BFT
  • 16. N13 
 
 
 16 N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N1 N9 N5 BFT FFT +1 N1 +2 N2 +4 N4 +8 N8 N0 FFT -1 N15 -2 N14 -4 N12➡N11 -8 N8 N0 BFT
  • 17. 
 
 17 N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N13 N1 N9 N5 BFT FFT +1 N1 +2 N2 +4 N4 +8 N8 N0 FFT -1 N15 -2 N14 -4 N12 -8 N8 N0 BFT
  • 19. x x 19 N0 N4N12 N8 N14 N2 N10 N6 N15 N3 N11 N7 N13 N1 N9 N5 BFT FFT +1 N1 +2 N2 +4 N4 +8 N8 N0 FFT -1 N15 -2 N14 -4 N12 -8 N8 N0 BFT
  • 20. 
 
 p p 
 p p 20 N0 N8FFT[3] Reverse Pointer N4 FFT[2] N7 N0 N8 FFT[3] ! N4 FFT[2]
  • 21. 
 
 21 getEnt N0 (new) N1 N2 N4N7N6N4 FFT[2] FFT[1] getEnt getEnt getEnt N2 N6 N4 N4 N1 N7 lev0lev0 getEnt BFT[1] getEnt FFT[1] BFT[1] BFT[2] FFT[2] FFT[1] FFT[3] FFT[2] BFT[2] N3N5 
 
 
 SuccPred
  • 22. getEnt N0 (new) N1 N2 N4N7N6N4 FFT[1] N2 N4 N1 getEnt BFT[1] getEnt FFT[2] BFT[2] N3N5 wait wait wait 22
  • 23. 23
  • 25. 
 25 0 5 10 15 20 25 0 5 10 15 20 #ofhops(ave.) time elapsed (min) Chord# Skip Graph Suzaku
  • 26. 26 0 0.05 0.1 0.15 0.2 0.25 0.3 0 10 20 30 40 50 freq. # of hops (after insertion) 0 2 4 6 8 10 12 14 16 18 # of hops (converged) Chord# Skip Graph Suzaku 
 

  • 27. 27 0 0.2 0.4 0.6 0.8 1 0 10 20 30 40 50 60 70 lookupretryratio time elapsed since massive deletion (sec) Chord# Skip Graph Suzaku
  • 28. 28 0 2 4 6 8 10 12 14 -64-48-32-16 0 16 32 48 64 #ofhops dist. to node (Skip Graph) 0 10 20 30 40 50 60 70 -64-48-32-16 0 16 32 48 64 dist. to node (Chord#) after insertion converged 0 1 2 3 4 5 6 7 8 -64-48-32-16 0 16 32 48 64 dist. to node (Suzaku) after insertion converged
  • 30. 30 Chord# Skip Graph Suzaku 
 ( ) ⌈log2 n⌉ O(log2 n) ⌈log2 n-1⌉ 
 ( ) O(n) ⌈log2 n⌉ log2 n 
 
 
 

  • 31. 31 Chord# Skip Graph Suzaku 
 ( ) ⌈log 2 n⌉ O(log2 n) ⌈log 2 n-1⌉ 
 ( ) O(n) ⌈log2 n⌉ log2 n 
 😥
  • 32. 32
  • 33. 33 1 const FFT = 0 , BFT = 1; 2 // ft [FFT] is FFT, ft [BFT] is BFT 3 // ft [FFT][0] = successor , ft [BFT][0] = predecessor 4 var f t [ 2 ] [ ] : Array of {Array of NodeAndKey }; 5 var R: Set of NodeAndKey ; // reverse pointers 6 n . updateBoth ( dir , i , n1 , n2 ) { 7 tab ← f t [ d i r ] ; 8 i f ( i = 0) n1 ← f t [ d i r ] [ 0 ] ; // succ or pred 9 i f ( n1 = null or n1 = n ) { 10 x ← null ; goto next ; 11 } 12 i f ( d i r = FFT ) {y ← n2 ;} e l s e {y ← f t [ FFT ] [ i ] ; } 13 x ← n1 . getEnt ( dir , i , n , y ) ; 14 i f ( n1 f a i l e d ) { we omit the detail of this case } 15 i f ( i |= 0) change ( tab , i , n1 , true ) ; // active update 16 i f ( ( d i r = FFT and x ∈ [ n , tab [ i ] ] ) or 17 ( d i r = BFT and x ∈ [ tab [ i ] , n ] ) ) x ← null ; // circulated 18 next : 19 i f ( x = null and n2 = null ) return ; 20 i f ( d i r = FFT ) { n . updateBoth (BFT , i , n2 , x ) ; } 21 e l s e { n . updateBoth (FFT , i + 1 , n2 , x ) ; } 22 } 23 n . updateFFT ( i , n1 ) { 24 i f ( i = 0) n1 ← f t [ FFT ] [ 0 ] ; // successor 25 x ← n1 . getEnt (FFT , i , n , null ) ; 26 i f ( n1 f a i l e d ) { we omit the detail of this case } 27 i f ( i |= 0) change ( f t [ FFT ] , i , n1 , true ) ; // active update 28 i f ( x ∈ [ n , f t [ FFT ] [ i ] ] ) { // circulated 29 // truncate FFT and BFT to size i 30 for ( j ← i to f t [ FFT ] . length −1) change ( f t [ FFT ] , i , null , f a l s e ) ; 31 for ( j ← i to f t [BFT ] . length −1) change ( f t [BFT] , i , null , f a l s e ) ; 32 s l e e p (Tft ) ; 33 n . updateFFT (0 , null ) ; 34 } e l s e { 35 s l e e p (Tft ) ; 36 n . updateFFT ( i + 1 , x ) ; 37 } 38 } 39 n . getEnt ( dir , l e v e l , p , q ) { 40 i f ( l e v e l |= 0) { 41 change ( f t [1 − d i r ] , l e v e l , p , true ) ; // pasv. update 1 42 } 43 i f ( q |= null ) { 44 i f ( d i r = BFT) { 45 change ( f t [1− d i r ] , l e v e l +1 , q , f a l s e ) ; // pasv. update 2 46 } e l s e R ← R ∪ {q }; 47 } 48 return f t [ d i r ] [ l e v e l ] ; 49 } 50 n . change ( tab , l e v e l , new , addtorev ) { 51 old ← tab [ l e v e l ] ; 52 tab [ l e v e l ] ← new ; 53 i f ( addtorev and new |= null ) R ← R ∪ {new }; 54 i f ( old |= null and (FFT and BFT do not contain old ) ) { 55 old . removeRev ( n ) ; 56 } 57 } 58 n . removeRev ( p ) { 59 R ← R {p }; 60 } 0 5 10 15 20 25 0 5 10 15 #ofhops(ave.) time elapsed (min) Chord# Skip Graph Suzaku 3 Fig. 3 Changes of # of lookup hops. 0 0.05 0.1 0.15 0.2 0.25 0.3 0 10 20 30 40 50 freq. # of hops (after insertion) 0 2 4 6 8 10 12 # of hops (converge Chord# Skip Graph Suzaku 4 Fig. 4 Distribution of lookup hops. 0 0.2 0.4 0.6 0.8 1 0 10 20 30 40 50 60 lookupretryratio time elapsed since massive deletion (sec) Chord# Skip Graph Suzaku 5 Fig. 5 Lookup retry ratio in massive node deletion Chord# 51 Suzaku 10 Chord# 8 (= ⌈log2 256⌉) Suza 7(= ⌈log2 256⌉ − 1) Skip Graph 17 Chord# fing Suzaku Chord# Skip G Suzaku