> I have few questions. > 1. Is netperf or perf requried before installing flent? > Though I have install flent on my both systems and ping with flent works > fine.
Netperf is not strictly required (as you mention, you can run the ping tests just fine without it). However, most of the bandwidth tests use netperf to generate the traffic, so you're not going to be able to run any of those without having netperf installed. > 2. How can measure the following quantities: > A. Latency between peer to peer communication.(one side and other side) Depends on what you mean by 'latency'. Most of Flent's tests will run either a normal ICMP ping, or a UDP-based roundtrip-time test along with bandwidth tests. These measure RTT. If you need to measure one-way delay, there is some support for this in the VoIP tests; you'll need to setup D-ITG on the hosts, though, and you'll need synchronised clocks. > B. Packet processing time on host nodes running linux OS. > C. Memory requirement to process packets > D. Energy consumption during the communication > E. Energy consumption per single packet processing. Flent currently has no mechanism to measure any of these. However, if you have a tool that will get the information you need from the operating system, you can add a parser to Flent to collect and plot the data. Not sure how you would get these values from the OS in the first place, though (especially the last one). And I would be worried about the measurement overhead being higher than the actual resource consumption. > F. Bandwidth requirement between two peers for specific protocol > communication. Not sure what you mean by that. If the application can output its bandwidth usage, you could parse and plot that in Flent. But I suspect you mean on-the-wire bandwidth consumed by the encapsulated traffic. Flent currently has no way to do that, but I can think of a few ways to add it, depending on your requirements. > 3. How can I edit or add python or other code to measure custom created > parameter? Data sets in Flent are collected by different runners, which either collect information directly from the operating system or (in most cases) spawns an external program and parses its output. You'll probably need to add new runner types for each of the data types you wish to capture. The runners live in runners.py. > 4. Any document or tutorial that helps in understanding how flent at > architecture level work? I'm afraid not; have never gotten around to writing any. But for the purpose of adding new data series, the main thing to know is that a runner is what produces data (as I said above). And a test config specifies which runners to compose when running a test. There's a layer in between that aggregates multiple runners into a single data file (which lives in aggregators.py), but that is fairly generic, so I don't think you'll need to touch that to add more runners. If you want to start hacking, I'll suggest you look at existing runners and test configurations and work from there; I'll be happy to answer questions if you get stuck. And if you want to upstream your work, feel free to send patches to this mailing list, or create a pull request on github for review :) Good luck, and happy hacking! -Toke _______________________________________________ Flent-users mailing list [email protected] http://flent.org/mailman/listinfo/flent-users_flent.org
