Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
分散システムの基礎知識 / Distributed Systems Literacy
Search
Kenji Saito
PRO
November 29, 2017
Technology
0
160
分散システムの基礎知識 / Distributed Systems Literacy
2017年11月29日(水)、ブロックチェーンアカデミー「ブロックチェーン基盤技術 分散システムの基礎知識」にて使用したスライドです
Kenji Saito
PRO
November 29, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
マニフェスト: 人類の知のフロンティアに向けた拡張的足場へ / Manifesto: Toward Expansive Scaffolding for Humanity's Knowledge Frontier
ks91
PRO
0
8
続・スマートコントラクトと分散ファイナンス / Smart Contracts and Decentralized Finance, Continued
ks91
PRO
0
42
スマートコントラクトと分散ファイナンス / Smart Contracts and Decentralized Finance
ks91
PRO
0
63
シン・ブロックチェーン / Truth of Blockchain
ks91
PRO
0
92
パスワード/パスフレーズと認証 / Password, Passphrase and Authentication
ks91
PRO
0
37
git と GitHub / git and GitHub
ks91
PRO
0
35
ソフトウェアの開発と保守 / Software Development and Maintenance
ks91
PRO
0
50
インターネットの特徴 / Features of the Internet
ks91
PRO
0
34
インターネットのガバナンス / Governance of the Internet
ks91
PRO
0
30
Other Decks in Technology
See All in Technology
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
2
21k
Lazy application authentication with Tailscale
bluehatbrit
0
210
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
230
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
440
MobileActOsaka_250704.pdf
akaitadaaki
0
120
CDKTFについてざっくり理解する!!~CloudFormationからCDKTFへ変換するツールも作ってみた~
masakiokuda
1
130
OPENLOGI Company Profile for engineer
hr01
1
34k
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
340
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
150
「良さそう」と「とても良い」の間には 「良さそうだがホンマか」がたくさんある / 2025.07.01 LLM品質Night
smiyawaki0820
1
550
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
27k
Geminiとv0による高速プロトタイピング
shinya337
1
270
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
A Tale of Four Properties
chriscoyier
160
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Code Review Best Practice
trishagee
69
18k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Being A Developer After 40
akosma
90
590k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Making Projects Easy
brettharned
116
6.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
CSO / SFC
[email protected]
— — 2017-11-29 – p.1/38
( ) SFC ( ) CSO (Chief Science Officer) 1993
M.Eng ( ) 2006 ( ) SFC 17 P2P 2011 → ( ) — — 2017-11-29 – p.2/38
FLP CAP CUP ( ) P2P — — 2017-11-29 –
p.3/38
1. 2. 3. Paxos 4. 5. P2P 6. — —
2017-11-29 – p.4/38
1. FLP CAP — — 2017-11-29 – p.5/38
A, B A-B m A B A B A B
. . . — — 2017-11-29 – p.6/38
1. X 2. X C 3. C 1. 2. 3.
reliable multicast — — 2017-11-29 – p.7/38
: — — 2017-11-29 – p.8/38
(safety) (liveness) ( ) ( = ) — — 2017-11-29
– p.9/38
→ / (benign) → (Byzantine) (malicious) — — 2017-11-29 –
p.10/38
FLP Fischer, Lynch, Paterson — — 2017-11-29 – p.11/38
CAP Consistency ( ) Availability ( ) Partition tolerance (
) ⇒ 3 C Eventual consistency ( ) . . . — — 2017-11-29 – p.12/38
Consistency ( ) Strong consistency ( ) (safety) Eventual consistency
( ) (liveness) ↑ Weak consistency ( ) ↑ ( ) — — 2017-11-29 – p.13/38
2. — — 2017-11-29 – p.14/38
n = f ( ) ⇒ — — 2017-11-29 –
p.15/38
(1) 1 1, 2 n ≤ 3f — — 2017-11-29
– p.16/38
(2) — — 2017-11-29 – p.17/38
3. Paxos Paxos Paxos — — 2017-11-29 – p.18/38
CS1 : CS2 : CS3 : CL1 : CL2 :
: : (e.g. ) — — 2017-11-29 – p.19/38
Paxos (1) : (The Part-Time Parliament) Paxos ( ) ↔
↔ ↔ ⇒ — — 2017-11-29 – p.20/38
Paxos (2) (proposers), (acceptors), (learners) 1. 2. Paxos ( )
— — 2017-11-29 – p.21/38
Paxos Paxos 2f + 1 Paxos f “byzantizing” Byzantine Paxos
PBFT (Practical Byzantine Fault-Tolerance) PBFT — — 2017-11-29 – p.22/38
4. CUP (Consensus with Unknown Participants) vs. — — 2017-11-29
– p.23/38
(B)FT-CUP (Consensus with Unknown Participants) ( / ) : FT
(Fault-Tolerant) : BFT (Byzantine Fault-Tolerant) P2P n FT/BFT — — 2017-11-29 – p.24/38
State Machine Replication ( ) (by ) (since 1984) (
) ( ) . . . ( ) — — 2017-11-29 – p.25/38
( ) ( ) ( ) ( ) (by )
— — 2017-11-29 – p.26/38
5. P2P P2P - - — — 2017-11-29 – p.27/38
P2P : P2P 3 3 ( ) strategyproof group strategyproof
— — 2017-11-29 – p.28/38
(Sybil) 16 — — 2017-11-29 – p.29/38
again n > 3f R F R > 2F ⇒
— — 2017-11-29 – p.30/38
( ) f = 1 ⇒ R — — 2017-11-29
– p.31/38
6. — — 2017-11-29 – p.32/38
3 1. ( : UTXO ) ⇒ ( ) 2.
( : ) ⇒ 3. ( : ) TX ⇒ 2 3 — — 2017-11-29 – p.33/38
10 ATM 1 ATM 1 : http://www.slideshare.net/yamaz2/ss-58813038 ⇒ KVS —
— 2017-11-29 – p.34/38
— — 2017-11-29 – p.35/38
vs. — — 2017-11-29 – p.36/38
(centralized) (decentralized) (distributed) Paul Baran, “On Distributed Communications Networks”, 1964
(C) (A) — — 2017-11-29 – p.37/38
— — 2017-11-29 – p.38/38