提案ノードの提案とノードの割り当ての処理について
フローチャート:
code:example.mmd
graph TD
subgraph Network登録
A1 --> A2 --> A3
end
subgraph 提案Nodeの選出
B1 --> B2 --> B3 --> B4 --> B5
end
subgraph 割り当てnodeの選出
C1 --> C2 --> C3 --> C4 --> C5 --> C6
end
A3 --> B1
B5 --> C1
シーケンス図:
code:example.mmd
sequenceDiagram
participant UserA
participant UniversalNetwork
participant ProposalNode
participant AllocationNodes
participant UserB
UserA->>UserA: 1.アカウント作成(鍵の生成)
UserA->>UniversalNetwork: 1.2PeerIdの登録
UserB->>UniversalNetwork: 2.1コンテンツのハッシュ値 (ContentId) 送信
UniversalNetwork-->>UniversalNetwork: 2.2DHT内のContentIdに近いPeerIdを探索
UniversalNetwork-->>UniversalNetwork: 2.3提案ノード発見する
UniversalNetwork-->>ProposalNode: 2.4提案ノードとして選出
UserB->>UniversalNetwork: 3.1条件に合うノードの探索要求
UniversalNetwork-->>UniversalNetwork: 3.2割り当て可能なノードを探索
UniversalNetwork->>ProposalNode: 3.3条件を満たすノードリストを返す
ProposalNode->>ProposalNode: 4.1 10台の中からN台をランダム選出
ProposalNode-->>AllocationNodes: 4.2選ばれたノードを通知
AllocationNodes-->>AllocationNodes: 4.3ノード間の同期を開始
AllocationNodes -->>UserB: 5.1 Networkの構築完了の通知