simulation/propagation
Ivan Danyliuk a86623ef94
Rename naive to gossip
2018-11-01 15:32:10 +01:00
..
gossip Rename naive to gossip 2018-11-01 15:32:10 +01:00
whisperv6 Fix connecting in background issue 2018-10-24 19:36:24 +02:00
README.md Rename Indices to Links 2018-10-24 07:43:18 +02:00
log_entry.go Fix sorting for plog 2018-10-24 14:43:22 +02:00
plog.go Fix sorting for plog 2018-10-24 14:43:22 +02:00
propagation.go Add size to send message and update server request 2018-10-24 17:20:53 +02:00

README.md

Propagation

Plog


PLog describes messages propagation data in the concise and streamable form, to be used as a main data format for representing simulated message propagation data.

Format

Currently a single plog record holds information about nodes and edges active per timestamp. Both nodes and edges are identified by their indicies (this should match the original graph indicies).

For example, if network graph has 3 nodes, recorded indicies should be 0,1 and 2 respectively.

Current structure:

package plog

type Data struct {
    Timestamps []int   // timestamps in milliseconds starting from T0
    Links      [][]int // indices of links for each step, len should match Timestamps 
    Nodes      [][]int // indices of nodes involved in each step, len should match Timestamps 

So, if you have nodes 0 and 1 activated on first timestamp step, and nodes 1 and 2 on second, it'll be:

plog.Timestamps = []int{10, 20} // say, 10 and 20 ms timestamps plog.Nodes = [][]int{[]int{0, 1}, []int{1, 2}}