Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If you are having issues with bandwidth, keep in mind the default behavior for all config nodes that can be configured with a bandwidth setting is to consume 100% of the parent node's available bandwidth. If you have multiple subports or classes and haven't explicitly assigned the bandwidth they are allowed to consume, then the first of these selected by the scheduler could use all of the available bandwidth.

...

If you believe your config is good but are still having issues, there are several tools you can use to triage the problem. If you do use these, it's a good idea to attach the output to any JIRA tickets that might get raised.

Confirm you have attached your policy to an interface

It's possibly possible to configure a policy without binding it to an output interface. In this situation, the policy doesn't actually do anything as it doesn't know which traffic it needs to be applied to. A simple way to determine if your policy has been bound is to search for the policy name in the interfaces dataplane config:

Code Block
vyatta@vm-84-2# show interfaces dataplane | grep "qos-policy example"
     qos-policy example

Show the queues

...

associated with the policy

There is an op-mode show queuing command which will display the state of the traffic classes associated with all existing policies. It shows how much traffic has been sent to each traffic class, and how many packets have been dropped.

...

These commands can help confirm that your policy is configured correctly , and that traffic is being sent to the correct queue.

...

  • Spirent TestCentre can generate line rate traffic and is highly configurable, but quite complex and primarily accessed through a windows app.

  • ping can generate Mbits of traffic with -f flag which may be enough to test many configs. The -i flag sets the interval between packets which can help control the transmitted bandwidth and the -Q flag allows the TOS IP header field to be set (multiply DSCP values by 4 to calculate the corresponding TOS value).

  • iperf is a client/server network throughput analysis tool. It requires a server sink to be established at the receiving end of a link (ideally the other end of the link the QoS policy you are testing is on) and a client to connect to it through the router under test. It's very easy to configure the transmitted bandwidth, the DSCP values (-S) and provide throughput bandwidth calculations (-i).  It can't be used to send multiple streams simultaneously though with different settings.

  • Ostinato is GUI tool which can be used to send streams of traffic to a router, and designed to act a bit like wireshark in reverse. It's a bit fiddly to set up, so there is a guide to using it available here.

 

How to enable QoS debug logging in the dataplane

...