This DPDK program collects timestamp records generated by Valinor-N in-network measurement framework and stores timestamp records in Redis.
More information can be found at in our NSDI paper.
Also checkout Valinor super repository.
- dpdk-stable-20.11.4
- Redis server running on localhost
- Install and test DPDK 20.11.4
- Install Redis server and verify connection to redis-server via redis-cli
- Setup huge pages. 1GB huge pages are recommended for better performance of Valinor. For our experiments we have 40x 1GB pages allocated on runtime.
- run
git submodule init
andgit submodule update
to checkout hiredis sources. Then runmake
andmake install
underext/hiredis
to build and install hiredis. - The command to run the valinor-c dataplane is
sudo ./build/valinor -- -p 0x1 -c server.json -k 0
. the-p
flag is use by DPDK to determine the network interface used by Valinor. The-k
flag is the key used by redis-server to store timestamp records under. The configurations inserver.json
file can be modified as needed.
Erfan Sharafzadeh
2020-2023
- Shenango (https://github.com/shenango/shenango)
- Frozen (https://github.com/cesanta/frozen)
- log.c (https://github.com/rxi/log.c)
- Hiredis (https://github.com/redis/hiredis)