Warning
Currently in early-stage development.
Right now the probing system is composed of two main components: the client and the agent. Those components send and receive messages from Kafka topics, respectively. The results are stored in a ClickHouse table.
Check the testbed for a quick setup to test the system.
The agent performs the measurements. It listens for measurements to be made from a Kafka topic, performs the measurements, and then produces the results to another Kafka topic. The results will eventually be inserted into a ClickHouse table.
samiris agent --config=saimiris.yml
The client is the agent that sends the measurements to the agent. It sends a message to a Kafka topic, which represents a set of probes to be sent consecutively. A measurement can be composed of multiple messages.
samiris client --config=saimiris.yml <comma-separated-agent-id> <target>
A target is a network to probe. It must follow this format:
network,protocol,min_ttl,max_ttl,n_flows
where:
- the network is a IPv4/IPv6 prefix.
- the prococol can be
icmp
orudp
. - the min_ttl and max_ttl are the minimum and maximum TTL values to probe.
- the n_flows is the number of flows to use.