mirror of
https://git.rwth-aachen.de/acs/public/villas/node/
synced 2025-03-09 00:00:00 +01:00
update example configs
This commit is contained in:
parent
e4de0aad1c
commit
4f94b6f435
14 changed files with 227 additions and 198 deletions
|
@ -4,7 +4,7 @@ nodes = {
|
|||
format = "json",
|
||||
|
||||
# Use 'amqps://' to enable SSL/TLS
|
||||
uri = "amqp://guest:guest@localhost:5672//",
|
||||
uri = "amqp://username:password@hostname:port/vhost",
|
||||
|
||||
# Alternatively connection settings can be specified individually
|
||||
username = "guest",
|
||||
|
@ -15,11 +15,11 @@ nodes = {
|
|||
|
||||
exchange = "mytestexchange",
|
||||
routing_key = "abc",
|
||||
|
||||
|
||||
ssl = {
|
||||
verify_hostname = true,
|
||||
verify_peer = true,
|
||||
|
||||
|
||||
ca_cert = "/path/to/ca.crt",
|
||||
client_cert = "/path/to/client.crt",
|
||||
client_key = "/path/to/client.key"
|
||||
|
|
|
@ -1,29 +1,3 @@
|
|||
/** Example configuration file for VILLASnode/comedi.
|
||||
*
|
||||
* The syntax of this file is similar to JSON.
|
||||
* A detailed description of the format can be found here:
|
||||
* http://www.hyperrealm.com/libconfig/libconfig_manual.html#Configuration-Files
|
||||
*
|
||||
* @author Daniel Krebs <github@daniel-krebs.net>
|
||||
* @copyright 2014-2019, Institute for Automation of Complex Power Systems, EONERC
|
||||
* @license GNU General Public License (version 3)
|
||||
*
|
||||
* VILLASnode
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*********************************************************************************/
|
||||
|
||||
nodes = {
|
||||
pcie6259 = {
|
||||
type = "comedi",
|
||||
|
@ -32,7 +6,7 @@ nodes = {
|
|||
subdevice = 0,
|
||||
rate = 1000,
|
||||
signals = (
|
||||
# note: order in this array defines order in villas sample
|
||||
# note: order in this array defines order in villas sample
|
||||
{ channel = 0, range = 0, aref = 0, name = "temperature_int" },
|
||||
{ channel = 1, range = 0, aref = 0, name = "loopback_ao0" },
|
||||
{ channel = 2, range = 0, aref = 0, name = "loopback_ao1" },
|
||||
|
@ -40,7 +14,7 @@ nodes = {
|
|||
)
|
||||
},
|
||||
out = {
|
||||
subdevice = 1,
|
||||
subdevice = 1,
|
||||
# Note: buffer size and rate shouldn't be changed at the moment
|
||||
# output sample rate
|
||||
rate = 40000,
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
nodes = {
|
||||
ethernet_node = {
|
||||
ethernet_node = {
|
||||
type = "socket", # See above.
|
||||
|
||||
### The following settings are specific to the socket node-type!! ###
|
||||
|
|
27
etc/examples/nodes/file.conf
Normal file
27
etc/examples/nodes/file.conf
Normal file
|
@ -0,0 +1,27 @@
|
|||
nodes = {
|
||||
file_node = {
|
||||
type = "file",
|
||||
|
||||
### The following settings are specific to the file node-type!! ###
|
||||
buffer_size = 0 # Creates a stream buffer if value is positive
|
||||
|
||||
in = {
|
||||
uri = "logs/input.log", # These options specify the URI where the the files are stored
|
||||
mode = "w+", # The mode in which files should be opened (see open(2))
|
||||
|
||||
epoch_mode = "direct" # One of: direct (default), wait, relative, absolute
|
||||
epoch = 10 # The interpretation of this value depends on epoch_mode (default is 0).
|
||||
# Consult the documentation of a full explanation
|
||||
|
||||
rate = 2.0 # A constant rate at which the lines of the input files should be read
|
||||
# A missing or zero value will use the timestamp in the first column
|
||||
# of the file to determine the pause between consecutive lines.
|
||||
eof = "rewind" # Rewind the file and start from the beginning.
|
||||
},
|
||||
out = {
|
||||
uri = "logs/output_%F_%T.log" # The output URI accepts all format tokens of (see strftime(3))
|
||||
mode = "a+" # You might want to use "a+" to append to a file
|
||||
flush = false # Flush or upload contents of the file every time new samples are sent.
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,76 +1,76 @@
|
|||
logging = {
|
||||
level = 2,
|
||||
facilities = "ib", // infiniband node
|
||||
level = 2,
|
||||
facilities = "ib", // infiniband node
|
||||
}
|
||||
|
||||
nodes = {
|
||||
results = {
|
||||
type = "file",
|
||||
results = {
|
||||
type = "file",
|
||||
|
||||
uri = "logs/ib_results-%Y%m%d_%H-%M-%S.log",
|
||||
},
|
||||
uri = "logs/ib_results-%Y%m%d_%H-%M-%S.log",
|
||||
},
|
||||
|
||||
siggen = {
|
||||
type = "signal",
|
||||
siggen = {
|
||||
type = "signal",
|
||||
|
||||
signal = "mixed",
|
||||
values = 3,
|
||||
frequency = 3,
|
||||
rate = 100000,
|
||||
limit = 100000,
|
||||
},
|
||||
signal = "mixed",
|
||||
values = 3,
|
||||
frequency = 3,
|
||||
rate = 100000,
|
||||
limit = 100000,
|
||||
},
|
||||
|
||||
ib_node_source = {
|
||||
type = "infiniband",
|
||||
ib_node_source = {
|
||||
type = "infiniband",
|
||||
|
||||
rdma_port_space = "RC",
|
||||
|
||||
in = {
|
||||
address = "10.0.0.2:1337",
|
||||
rdma_port_space = "RC",
|
||||
|
||||
in = {
|
||||
address = "10.0.0.2:1337",
|
||||
|
||||
max_wrs = 8192,
|
||||
cq_size = 8192,
|
||||
max_wrs = 8192,
|
||||
cq_size = 8192,
|
||||
|
||||
vectorize = 1,
|
||||
vectorize = 1,
|
||||
|
||||
buffer_subtraction = 128,
|
||||
},
|
||||
buffer_subtraction = 128,
|
||||
},
|
||||
|
||||
out = {
|
||||
address = "10.0.0.1:1337",
|
||||
resolution_timeout = 1000,
|
||||
|
||||
max_wrs = 8192,
|
||||
cq_size = 256,
|
||||
out = {
|
||||
address = "10.0.0.1:1337",
|
||||
resolution_timeout = 1000,
|
||||
|
||||
max_wrs = 8192,
|
||||
cq_size = 256,
|
||||
|
||||
vectorize = 1,
|
||||
vectorize = 1,
|
||||
|
||||
send_inline = true,
|
||||
max_inline_data = 60,
|
||||
send_inline = true,
|
||||
max_inline_data = 60,
|
||||
|
||||
use_fallback = true,
|
||||
}
|
||||
}
|
||||
use_fallback = true,
|
||||
}
|
||||
}
|
||||
|
||||
ib_node_target = {
|
||||
type = "infiniband",
|
||||
ib_node_target = {
|
||||
type = "infiniband",
|
||||
|
||||
rdma_port_space = "RC",
|
||||
rdma_port_space = "RC",
|
||||
|
||||
in = {
|
||||
address = "10.0.0.1:1337",
|
||||
in = {
|
||||
address = "10.0.0.1:1337",
|
||||
|
||||
max_wrs = 8192,
|
||||
cq_size = 8192,
|
||||
max_wrs = 8192,
|
||||
cq_size = 8192,
|
||||
|
||||
vectorize = 1,
|
||||
vectorize = 1,
|
||||
|
||||
buffer_subtraction = 128,
|
||||
buffer_subtraction = 128,
|
||||
|
||||
hooks = (
|
||||
{ type = "stats", verbose = true }
|
||||
)
|
||||
},
|
||||
}
|
||||
hooks = (
|
||||
{ type = "stats", verbose = true }
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ nodes = {
|
|||
publish = "test-topic"
|
||||
},
|
||||
in = {
|
||||
subscribe = "test-topic"
|
||||
subscribe = 1
|
||||
},
|
||||
ssl = {
|
||||
enabled = false,
|
||||
|
|
23
etc/examples/nodes/multicast.conf
Normal file
23
etc/examples/nodes/multicast.conf
Normal file
|
@ -0,0 +1,23 @@
|
|||
nodes = {
|
||||
udp_node = { # The dictionary is indexed by the name of the node.
|
||||
type = "socket", # For a list of available node-types run: 'villas-node -h'
|
||||
|
||||
### The following settings are specific to the socket node-type!! ###
|
||||
|
||||
in = {
|
||||
address = "127.0.0.1:12001" # This node only received messages on this IP:Port pair
|
||||
|
||||
multicast = { # IGMP multicast is only support for layer = (ip|udp)
|
||||
enabled = true,
|
||||
|
||||
group = "224.1.2.3", # The multicast group. Must be within 224.0.0.0/4
|
||||
interface = "1.2.3.4", # The IP address of the interface which should receive multicast packets.
|
||||
ttl = 128, # The time to live for outgoing multicast packets.
|
||||
loop = false, # Whether or not to loopback outgoing multicast packets to the local host.
|
||||
}
|
||||
},
|
||||
out = {
|
||||
address = "127.0.0.1:12000", # This node sents outgoing messages to this IP:Port pair
|
||||
}
|
||||
}
|
||||
}
|
27
etc/examples/nodes/netem.conf
Normal file
27
etc/examples/nodes/netem.conf
Normal file
|
@ -0,0 +1,27 @@
|
|||
nodes = {
|
||||
udp_node = { # The dictionary is indexed by the name of the node.
|
||||
type = "socket", # For a list of available node-types run: 'villas-node -h'
|
||||
|
||||
### The following settings are specific to the socket node-type!! ###
|
||||
|
||||
format = "gtnet.fake", # For a list of available node-types run: 'villas-node -h'
|
||||
|
||||
in = {
|
||||
address = "127.0.0.1:12001" # This node only received messages on this IP:Port pair
|
||||
},
|
||||
out = {
|
||||
address = "127.0.0.1:12000", # This node sents outgoing messages to this IP:Port pair
|
||||
|
||||
netem = { # Network emulation settings
|
||||
enabled = true,
|
||||
# Those settings can be specified for each node invidually!
|
||||
delay = 100000, # Additional latency in microseconds
|
||||
jitter = 30000, # Jitter in uS
|
||||
distribution = "normal", # Distribution of delay: uniform, normal, pareto, paretonormal
|
||||
loss = 10 # Packet loss in percent
|
||||
duplicate = 10, # Duplication in percent
|
||||
corrupt = 10 # Corruption in percent
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,38 +1,38 @@
|
|||
nodes = {
|
||||
rtp_node = {
|
||||
type = "rtp"
|
||||
rtp_node = {
|
||||
type = "rtp"
|
||||
|
||||
rate = 10000,
|
||||
rate = 10000,
|
||||
|
||||
rtcp = {
|
||||
enabled = false,
|
||||
|
||||
mode = "aimd"
|
||||
throttle_mode = "decimate"
|
||||
}
|
||||
rtcp = {
|
||||
enabled = false,
|
||||
|
||||
mode = "aimd"
|
||||
throttle_mode = "decimate"
|
||||
}
|
||||
|
||||
aimd = {
|
||||
a = 10,
|
||||
b = 0.5
|
||||
}
|
||||
aimd = {
|
||||
a = 10,
|
||||
b = 0.5
|
||||
}
|
||||
|
||||
in = {
|
||||
address = "0.0.0.0:12000",
|
||||
signals = {
|
||||
count = 3
|
||||
type = "float"
|
||||
}
|
||||
}
|
||||
in = {
|
||||
address = "0.0.0.0:12000",
|
||||
signals = {
|
||||
count = 3
|
||||
type = "float"
|
||||
}
|
||||
}
|
||||
|
||||
out = {
|
||||
address = "127.0.0.1:12000"
|
||||
out = {
|
||||
address = "127.0.0.1:12000"
|
||||
|
||||
netem = { # Network emulation settings
|
||||
enabled = false,
|
||||
|
||||
delay = 100000, # Additional latency in microseconds
|
||||
loss = 10 # Packet loss in percent
|
||||
}
|
||||
}
|
||||
}
|
||||
netem = { # Network emulation settings
|
||||
enabled = false,
|
||||
|
||||
delay = 100000, # Additional latency in microseconds
|
||||
loss = 10 # Packet loss in percent
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,12 +2,15 @@ nodes = {
|
|||
signal_node = {
|
||||
type = "signal",
|
||||
|
||||
signal = "sine", # One of: sine, square, ramp, counter, constant, triangle, random, mixed, constant"
|
||||
values = 4, # Number of values per sample
|
||||
amplitude = 2.3, # Amplitude of generated signals
|
||||
frequency = 10, # Frequency of generated signals
|
||||
stddev = 2, # Standard deviation of random signals (normal distributed)
|
||||
rate = 10.0, # Sample rate
|
||||
offset = -4.5 # DC bias / Offset
|
||||
signal = "sine", # One of "sine", "square", "ramp", "triangle", "random", "mixed", "counter"
|
||||
values = 4, # Number of values per sample
|
||||
amplitude = 2.3, # Amplitude of generated signals
|
||||
frequency = 10, # Frequency of generated signals
|
||||
stddev = 2, # Standard deviation of random signals (normal distributed)
|
||||
rate = 10.0, # Sample rate
|
||||
offset = 1.0, # Constant offset
|
||||
realtime = true, # Wait between emitting each sample
|
||||
limit = 1000, # Only emit 1000 samples, then stop
|
||||
monitor_missed = true # Count and warn about missed steps
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,50 +10,19 @@ nodes = {
|
|||
### The following settings are specific to the socket node-type!! ###
|
||||
|
||||
layer = "udp", # Layer can be one of:
|
||||
# - udp Send / receive L4 UDP packets
|
||||
# - ip Send / receive L3 IP packets
|
||||
# - eth Send / receive L2 Ethernet frames (IEEE802.3)
|
||||
# - udp Send / receive L4 UDP packets
|
||||
# - ip Send / receive L3 IP packets
|
||||
# - eth Send / receive L2 Ethernet frames (IEEE802.3)
|
||||
|
||||
format = "gtnet.fake", # For a list of available node-types run: 'villas-node -h'
|
||||
|
||||
in = {
|
||||
address = "127.0.0.1:12001" # This node only received messages on this IP:Port pair
|
||||
|
||||
verify_source = true, # Check if source address of incoming packets matches the remote address.
|
||||
|
||||
multicast = { # IGMP multicast is only support for layer = (ip|udp)
|
||||
enabled = true,
|
||||
|
||||
group = "224.1.2.3", # The multicast group. Must be within 224.0.0.0/4
|
||||
interface = "1.2.3.4", # The IP address of the interface which should receive multicast packets.
|
||||
ttl = 128, # The time to live for outgoing multicast packets.
|
||||
loop = false, # Whether or not to loopback outgoing multicast packets to the local host.
|
||||
},
|
||||
|
||||
hooks = (
|
||||
{
|
||||
type = "stats",
|
||||
|
||||
warmup = 100, # The first 100 samples are used to estimate bounds for the histograms
|
||||
format = "human", # One of: human, json, matlab
|
||||
bucket = 30, # The number of buckets for the histograms
|
||||
verbose = true # Plot histograms during shutdown
|
||||
}
|
||||
)
|
||||
verify_source = true # Check if source address of incoming packets matches the remote address.
|
||||
},
|
||||
out = {
|
||||
address = "127.0.0.1:12000", # This node sents outgoing messages to this IP:Port pair
|
||||
|
||||
netem = { # Network emulation settings
|
||||
enabled = true,
|
||||
# Those settings can be specified for each node invidually!
|
||||
delay = 100000, # Additional latency in microseconds
|
||||
jitter = 30000, # Jitter in uS
|
||||
distribution = "normal", # Distribution of delay: uniform, normal, pareto, paretonormal
|
||||
loss = 10 # Packet loss in percent
|
||||
duplicate = 10, # Duplication in percent
|
||||
corrupt = 10 # Corruption in percent
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,50 +1,50 @@
|
|||
http = {
|
||||
enabled = false
|
||||
enabled = false
|
||||
}
|
||||
|
||||
nodes = {
|
||||
ul201 = {
|
||||
type = "uldaq"
|
||||
interface_type = "usb"
|
||||
in = {
|
||||
range = "bipolar-10",
|
||||
input_mode = "single-ended"
|
||||
signals = (
|
||||
{ name = "ch0", type = "float", channel = 0 }
|
||||
)
|
||||
ul201 = {
|
||||
type = "uldaq"
|
||||
interface_type = "usb"
|
||||
in = {
|
||||
range = "bipolar-10",
|
||||
input_mode = "single-ended"
|
||||
signals = (
|
||||
{ name = "ch0", type = "float", channel = 0 }
|
||||
)
|
||||
|
||||
sample_rate = 5000,
|
||||
vectorize = 100
|
||||
}
|
||||
},
|
||||
sample_rate = 5000,
|
||||
vectorize = 100
|
||||
}
|
||||
},
|
||||
|
||||
sigGen = {
|
||||
type = "signal"
|
||||
signal = "sine"
|
||||
frequency = 50
|
||||
rate = 1000
|
||||
}
|
||||
vpmu = {
|
||||
type = "socket",
|
||||
layer = "udp",
|
||||
sigGen = {
|
||||
type = "signal"
|
||||
signal = "sine"
|
||||
frequency = 50
|
||||
rate = 1000
|
||||
}
|
||||
vpmu = {
|
||||
type = "socket",
|
||||
layer = "udp",
|
||||
|
||||
format = "raw.32.be",
|
||||
format = "raw.32.be",
|
||||
|
||||
in = {
|
||||
address = "*:13001"
|
||||
in = {
|
||||
address = "*:13001"
|
||||
|
||||
signals = ()
|
||||
},
|
||||
out = {
|
||||
vectorize = 100
|
||||
address = "10.100.1.125:13000"
|
||||
}
|
||||
}
|
||||
signals = ()
|
||||
},
|
||||
out = {
|
||||
vectorize = 100
|
||||
address = "10.100.1.125:13000"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
paths = (
|
||||
{
|
||||
in = "ul201",
|
||||
out = "vpmu"
|
||||
}
|
||||
{
|
||||
in = "ul201",
|
||||
out = "vpmu"
|
||||
}
|
||||
)
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
nodes = {
|
||||
websocket_node = {
|
||||
type = "websocket",
|
||||
ws = {
|
||||
type = "websocket"
|
||||
|
||||
destinations = [
|
||||
"http://example.com/node-name1",
|
||||
"https://example.com/another-node"
|
||||
"ws://someserver:8080/somenode"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
http = {
|
||||
port = 8080
|
||||
htdocs = "/villas/contrib/websocket/"
|
||||
ssl_cert = "/etc/ssl/certs/mycert.pem"
|
||||
ssl_private_key= "/etc/ssl/private/mykey.pem"
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue