Posts

Showing posts with the label ICMP

CERN’s ROOT Primer (visualization of ping responses data)

Image
ROOT is a framework for data processing, born at CERN, at the heart of the research on high-energy physics. While Python-based data processing framewords are quite trendy now, their performance could be lacking, plus ROOT could be used within a C++ application directly. It has other interesting features too, but in this post we’re going to explore the basic usage: drawing a graph and a boxplot for the ping response values (measured directly in C++ code using Boost.Asio ). The full source in available as https://gitlab.com/nuald/nuald-blogspot-com/-/blob/master/site/adoc/ping_stats.C Pinging code is straightforward and Boost.Asio documentation could explain all unfamiliar functionality. The high level flow is: Create io_context that would wait until we hit limit of requests/responses; Start sending requests and receiving responses; During send operation we create echo ICMP header and send it with the 5 seconds timeout (and start sending again in 1 second); Du...