diff --git a/remote_log/remote-log.msc b/remote_log/remote-log.msc new file mode 100644 index 0000000..bd859cd --- /dev/null +++ b/remote_log/remote-log.msc @@ -0,0 +1,21 @@ +# Alice and Bob: remote log data sync +msc { + hscale="2", wordwraparcs=on; + + alice [label="Alice"], + bob [label="Bob"], + cas [label="CAS"] , + ns [label="NS"]; + + --- [label="Alice replicates data to a remote log"]; + alice => cas [label="Add content"]; + cas => alice [label="Address"]; + alice => ns [label="Update NameUpdate"]; + ns => alice [label="Response"]; + + --- [label="Bob comes online"]; + bob => ns [label="Fetch"]; + ns => bob [label="Content"]; + bob => cas [label="Fetch Query"]; + cas => bob [label="Content"]; +} \ No newline at end of file diff --git a/remote_log/remote-log.png b/remote_log/remote-log.png new file mode 100644 index 0000000..00d2bf0 Binary files /dev/null and b/remote_log/remote-log.png differ diff --git a/remote_log/remote_log_spec.md b/remote_log/remote_log_spec.md index 384c2e1..47cb3a7 100644 --- a/remote_log/remote_log_spec.md +++ b/remote_log/remote_log_spec.md @@ -1,6 +1,6 @@ # Remote log specification -> Version: 0.0.4 (Draft) +> Version: 0.0.5 (Draft) > > Authors: Oskar Thorén oskar@status.im, Dean Eigenmann dean@status.im @@ -115,6 +115,8 @@ message RemoteLog { ## Synchronization + + ### Roles There are three fundamental roles: @@ -125,24 +127,17 @@ There are three fundamental roles: Additionally, the *remote log* protobuf is what is stored at the Name system. + + ### Flow -```mermaid -sequenceDiagram - -Alice->>CAS: Add content -CAS->>Alice: Address -Alice->>NS: Update NameUpdate -NS->>Alice: Response - -Bob->>NS: Fetch -NS->>Bob: Content -Bob->>CAS: Fetch Query -CAS->>Bob: Content -``` - - + +

+ +
+ Figure 1: Remote log data synchronization. +

## Footnotes