FlexQoS Experimental rate graphs

  • ATTENTION! You'll notice a Prefix dropdown when you create a thread. If your post applies to one of the topics listed, please use that Prefix for your post. When browsing the thread list you can use the Prefix to filter the view.
  • ATTENTION! As of November 1, 2020, you are not able to reply to threads 6 months after the thread is opened if there are more than 500 posts in the thread.
    Threads will not be locked, so posts may still be edited by their authors.
    Just start a new thread on the topic to post if you get an error message when trying to reply to a thread.

dave14305

Part of the Furniture
I want to start differentiating FlexQoS from Merlin's Classification page since both are available side-by-side anyway, and so I'm starting to experiment with a new approach to the data presentation. The image below is not how it will look in the end, but this is how I've started to hack at creating graphs of the current running rate per class (borrowing Merlin's router CPU graph code from the main router page! All Jack Yaz's graphs were too complicated for me!).

I'm thinking of putting each of these graphs where the "Total", "Rate", and "Bandwidth Util" columns are now (eliminating them in the process). Each line in the graph is color-coded to its priority level, but at the time of this screenshot I had just run a speedtest that was classified green as Others. This would give a bit more context to how the various classes are interacting with each other over a minute's history (I think it's a minute).

One of the problems is that most of the time the lines will be at or near zero, same as the current Bandwidth Util bar graphs. Just throwing this out for feedback before I get too far along the wrong path. I promise no rainbows this time...

1606275743931.png
 

NGI

Regular Contributor
This would give a bit more context to how the various classes are interacting with each other over a minute's history (I think it's a minute).
I think this is a wonderful Idea. My only slight concern is if it would be easy to identify the multi-color very thin lines. It may not be an issues but it is difficult to say unless it can be seen in action.

PS Perhaps would a stacked bar graph be an easy to implement option?
 

Jack Yaz

Part of the Furniture
I want to start differentiating FlexQoS from Merlin's Classification page since both are available side-by-side anyway, and so I'm starting to experiment with a new approach to the data presentation. The image below is not how it will look in the end, but this is how I've started to hack at creating graphs of the current running rate per class (borrowing Merlin's router CPU graph code from the main router page! All Jack Yaz's graphs were too complicated for me!).

I'm thinking of putting each of these graphs where the "Total", "Rate", and "Bandwidth Util" columns are now (eliminating them in the process). Each line in the graph is color-coded to its priority level, but at the time of this screenshot I had just run a speedtest that was classified green as Others. This would give a bit more context to how the various classes are interacting with each other over a minute's history (I think it's a minute).

One of the problems is that most of the time the lines will be at or near zero, same as the current Bandwidth Util bar graphs. Just throwing this out for feedback before I get too far along the wrong path. I promise no rainbows this time...

View attachment 27960
to be honest you could re-use a lot of my line chart code. the key bit is getting the data into an array (dataset). in this case, you would have an array of datasets, one for each class.

happy to collaborate if you'd like
 

dave14305

Part of the Furniture
to be honest you could re-use a lot of my line chart code. the key bit is getting the data into an array (dataset). in this case, you would have an array of datasets, one for each class.

happy to collaborate if you'd like
You’re already a busy guy. :) What’s your most straightforward line chart graph, ntpMerlin? I’ll study it and see if I can understand how to make it work for me. I’m getting 16 (8 up, 8 down) new data points every 3 seconds but I do like the the idea of a proper chart versus an svg polyline. Who wouldn’t? ;)

Thanks Jack!
 

Jack Yaz

Part of the Furniture
You’re already a busy guy. :) What’s your most straightforward line chart graph, ntpMerlin? I’ll study it and see if I can understand how to make it work for me. I’m getting 16 (8 up, 8 down) new data points every 3 seconds but I do like the the idea of a proper chart versus an svg polyline. Who wouldn’t? ;)

Thanks Jack!
probably either ntpmerlin or connmon. for multi-dataset support see the end of draw_chart in spdmerlin
 

dave14305

Part of the Furniture
This is how I'm imaging the layout, replacing the pie charts with the line graphs. Truth be told, I've had so much pie this Thanksgiving weekend that I didn't want to look at another pie for a long time. ;)

More work needed on the thickness of the lines and color of the scale text, but I'm pretty happy for a day's work.

1606708790485.png
 

Kanji-San

Regular Contributor
This is how I'm imaging the layout, replacing the pie charts with the line graphs. Truth be told, I've had so much pie this Thanksgiving weekend that I didn't want to look at another pie for a long time. ;)

More work needed on the thickness of the lines and color of the scale text, but I'm pretty happy for a day's work.

View attachment 28077
Dave, this looks really good :) What is the time span displayed here?
Would it make sense to make this time span customizable (within meaningful limits)?
 

dave14305

Part of the Furniture
Dave, this looks really good :) What is the time span displayed here?
Would it make sense to make this time span customizable (within meaningful limits)?
As of now, the span is 50 data points. The duration depends on the refresh rate, with a default of 3 seconds, so 2.5 minutes of data. I'm going to play with doubling it to 100 data points for 5 minutes, but if you use a higher refresh rate, it would represent a longer time period.

It's also important to remind everyone that the displayed rate is not an instantaneous rate, but a 10-second average that the underlying htb qdisc calculates. So every 3 seconds you would get a new 10-second average of the rate per class. You won't see the data matching the output of a speedtest you run, for example, due to the short nature of the test.
 

Kanji-San

Regular Contributor
As of now, the span is 50 data points. The duration depends on the refresh rate, with a default of 3 seconds, so 2.5 minutes of data. I'm going to play with doubling it to 100 data points for 5 minutes, but if you use a higher refresh rate, it would represent a longer time period.

It's also important to remind everyone that the displayed rate is not an instantaneous rate, but a 10-second average that the underlying htb qdisc calculates. So every 3 seconds you would get a new 10-second average of the rate per class. You won't see the data matching the output of a speedtest you run, for example, due to the short nature of the test.
Thanks for the background. This makes a lot of sense.
 
Similar threads

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top