Bandwidth Detection

Purpose

By using the QoS function, important packets dropped improperly in the network can be prevented. To control delivery order and delivery timing the QoS function limits the delivery rate and keeps the packets in the internal queue.

Here, if delivery speed in itself has a policy and the value is set, the delivery rate can be set by the "speed" command or the "queue class property" command, so it isn't a problem. However, if the delivery rate is to be set to the maximum effective speed of the circuit, its value might be unknown. The effective speed depends on the state of the network, it's often affected by other traffic and fluctuate. If the speed is set to other values than the effective speed, there will be important packet drops in the network or bandwidth will be unnecessarily limited.

  ■:Important packet 
  □:Non-important packet
                                +-----------+
  +--------+                    |           |                    +--------+
  | Router |--------------------|  Network  |--------------------| Remote |
  +--------+                    |           |                    +--------+
                                +-----------+
To avoid discarding of '■'          '■' is lost in network space
QoS at the output of the router       with narrow bandwidth

                                    It is discarded when 
        Discarded                   bandwidth is narrower 
        □□                        than router exit ■□               Important packet '■' is lost

       ---------------------->             -------------------->
       □■■□■■■□■                 □ ■ ■ □ ■ ■ ■ 

This function dynamically measures the effective bandwidth of the line and enhances the effectiveness of the QoS function of the device. When the bandwidth may fluctuate, it can be measured regularly and delivery rate can be changed accordingly to the bandwidth.

                                +-----------+
  +--------+                    |           |                    +--------+
  | Router |--------------------|  Network  |--------------------| Remote |
  +--------+                    |           |                    +--------+
                                +-----------+
      Bandwidth measurement
        ===================================-------------------------->
     At the output of the router
     QoS adapted to
     narrow-bandwidth

        Discarded                    Not lost even in 
        □□□□                     a narrow band part               Important packet '■' not lost
        
       ---------------------->             -------------------->
       □ ■ ■ ■ ■ ■ ■               □ ■ ■ ■ ■ ■ ■ 

Compatible Models & Firmware Revisions

Yamaha routers supports bandwidth detection function for the following models and firmware.

Model Firmware
RTX5000 Rev.14.00.15 or later
FWX120 Rev.11.03.16 or later
RTX810 Rev.11.01.15 or later

Outline of Operations

When there is a narrow-bandwidth path in the network, intervals of multiple packets get longer. Or some of the packets among the multiple packets in the network are discarded and do not reach the recipient. The bandwidth is measured using these varying packet intervals and packet loss information.


          Multiple packets are sent out at controlled intervals from the client
                ------------------------>
                ■■■■         ■ ■ ■ ■
                      +--------------+
  +--------------+    |              |    +--------+
  |    Client    |----|   Network    |----| Server |
  +--------------+    |              |    +--------+
                      +--------------+
                                       ■
                 <------------------------
                  Client is notified of receiving interval information etc. on the server 

The measurement is performed in a server-client system, the client sends multiple packet within intervals according to the measurement bandwidth. Reception intervals of those packets are measured on the server, and the results are notified to the client. The client determines bandwidth of the path from information of the reception intervals on the server.

When the client registers the server information with a command, or when manually runs it, the bandwidth measurement operation is started. When the bandwidth value is obtained the measurement operation goes into pause. The measurement results can be reflected on the client-side QoS settings.

  Operations of client
                                      Measurement completion,
  Setting completion +--------------+ bandwidth confirmed    +--------------+
  ------------------>| Bandwidth    |----------------------->| Pause        |<----------------+
                     | measurement  |                        |              |                 |
                     +--------------+                        +--------------+                 |
                            ⋀                                    | Run regularly              |
                            |                                    |                            |
                            |                                    ⋁                            |
                            |     Changing bandwidth +--------------+ No change in bandwidth  |
                            +------------------------| Bandwidth    |-------------------------+
                                                     | confirmation |
                                                     | measurement  |
                                                     +--------------+

Even when in pause, bandwidth can be measured at regular intervals to check for any changes. If the difference increases compared to previously determined value, the band measurement operation is started and the bandwidth value is changed. Interval time of this bandwidth check can be changed in the setting.

   Changes in the measurement bandwidth

           Bandwidth      Bandwidth      Bandwidth      Bandwidth        Bandwidth       Bandwidth
           measurement    measurement    measurement    measurement      measurement     measurement
           <-------->Pause<-------->Pause<-------->Pause<-------->Pause<-------->Pause<------>

                                              Change in bandwidth
                                                     ▼
            ⋀
            |                                                  ●NG         ●NG         ●NG 
            |                                        - - - - - - - - - - - - - - - - - - - - - - - -  Bandwidth
            |                                                 ○OK○OK          ○OK          ○OK
  Bandwidth |                                                      Bandwidth confirmed
            |     ●NG         ●NG         ●NG         ○OK
            |- - - - - - - - - - - - - - - - - - - 
            |    ○OK○OK          ○OK         ○OK
            |        Bandwidth confirmed
            |   ○OK
            |
            |  ○OK
            |
            | ○OK
            | 
            |○OK
            ------------------------------------------------------------------------------------------------>
                                                      Time 

Also in case of environment with important variation in bandwidth, by adjusting the measurement sensitivity, it is possible to restrain the changes in bandwidth setting value.

  Re-measuring start level difference due to differences in sensitivity settings 
                                    C
                 --------------------○-- Re-measured at low sensitivity C, change in bandwidth set value
                                 ----
                     A----   A----
                 ----○-----------○------- Re-measured at high sensitivity A,B, change in bandwidth setting value
                   ----  --     --
  definite value --------------------------
                          --  --
                 -----------○----------- High sensitivity
                            B

                 ----------------------- Low sensitivity
  --: Changing bandwidth value
  ○:Re-measurement timing 

The packet used for the measurement is UDP. Port number that is used can be changed in the settings.

This feature’s purpose is to measure the bandwidth on the LAN interface that is connected. The targets share a path with LAN interface or LAN interface through a PPPoE. It is possible to encrypt packets when the receiver is receiving through an IPsec tunnel.

The packet used by this function does not become a target of a packet filtering nor NAT on the client server side.

Switching temporarily to Priority QoS delivery interface in the measurement operation, probe packets are sent out as top priority class packet. During this, changes are made in the behavior of the internal QoS features, so depending on the load and timing packet loss may occur and behavior of the Dynamic Class Control may be temporary affected. Also to avoid issues originating in changes of settings during measurement, it is recommended that saving of "config" changes should be made after checking that there are no measurements with "show status cooperation" command or that it is done when this functionality is set to ‘off’. At the end of the measurement, the results are reflected in the "speed" command of the LAN interface. It is also possible to do the band measuring operation only and to not reflect the result of the measure to the "speed" command.

Minimum value in the specification of the command is 64 [kbit/s], and maximum value is 100 [Mbit/s]. Even in an environment where the bandwidth is more than the maximum value, a value larger than the maximum value cannot be measured. Actual measurable bandwidth value is highly dependent on delay and fluctuations of the measured object. The minimum value is from 64 [kbit/s], the maximum value depends on the performance of the equipment used, in environments without encryption it is possible to measure up to approximately 50-60 [Mbit/s].

One device can be combined as a server and a client, bi-directional measurement is possible between two devices. In addition, since one server can function for multiple clients, it can be used for both mesh type and hub-and-spokes type depending on the configuration.

It cannot be used simultaneously with the load notification function.

Operation for each counterpart can be define in the option setting. list of options is shown below. For more information refer to the command section.

[ list of setting options necessary for a server and a client in a bandwidth detection function ]

✅:Required setting
✓:Can be set
⚠:Cannot be set

Setting item Setting value "cooperation bandwidth-measuring remote" command
Remote = server
(Client side)
Remote = client
(Server side)
Necessity Initial value Necessity Initial value
ID 1~100 - -
ROLE server,client
(server)
-
(client)
-
ADDRESS (Note1) - -
OPTION apply on,off on -
port Decimal number indicating the port number 59410 59410
initial-speed [bit/s] 10M -
interval 60~2147483647[sec],off (Note2) 3600 -
retry-interval 60~2147483647[sec] 3600 -
sensitivity high,middle,low high -
syslog on,off off off
Interface LAN interface Not set -
class class (Note3) Not set -
limit-rate [%] Not set -
number 5~100 Not set -
local-address IP address Not set Not set

[Caution]

  • Note1: IP address or FQDN or "any" can be set. In case of an undefined IP address on client-side, "any" should be set in the server side.
  • Note2: When in "interval=off", periodical confirmation setting after completing measurement is not carried out. Also, if measurement fails, regardless of the specified interval in "interval", 3600 seconds is set until the next measurement.
  • Note3: "Class" option can be used only in models in which Bandwidth QoS function has been implemented. Used in case of a setting the bandwidth detection result to the upper limit of the Bandwidth QoS class.

Settings Examples

Example 1. Three branches are connected respectively in the center, each branch is to measure the upload speed of the access line to the center and reflect it in the QoS setting.

                                   +----------+
                        +----------| Branch A | 172.16.100.1
                        |          +----------+
                  +-----------+
  +----------+    |           |    +----------+
  |  Center  |----|  Network  |----| Branch B | 172.16.110.1
  +----------+    |           |    +----------+
  172.16.10.1     +-----------+
                        |          +----------+
                        +----------| Branch C | 172.16.120.1
                                   +----------+

[Setting Procedure]

Center
#cooperation bandwidth-measuring remote 1 client 172.16.100.1
#cooperation bandwidth-measuring remote 2 client 172.16.110.1
#cooperation bandwidth-measuring remote 3 client 172.16.120.1
#cooperation bandwidth-measuring server on 
Branch A (Priority QoS)
#queue lan2 type priority
#cooperation bandwidth-measuring client on
#cooperation bandwidth-measuring remote 1 server 172.16.10.1 
Branch B (Bandwidth QoS)
#queue lan2 type shaping
#queue lan2 class property 1 bandwidth=30%
#cooperation bandwidth-measuring client on
#cooperation bandwidth-measuring remote 1 server 172.16.10.1 
Branch C (Priority QoS)
#queue lan2 type priority
#cooperation bandwidth-measuring client on
#cooperation bandwidth-measuring remote 1 server 172.16.10.1 

[Explanation]

Center
#cooperation bandwidth-measuring remote 1 client 172.16.100.1

Register branch A as a client.

#cooperation bandwidth-measuring remote 2 client 172.16.110.1

Register branch B as a client.

#cooperation bandwidth-measuring remote 3 client 172.16.120.1

Register branch C as a client.

#cooperation bandwidth-measuring server on

Make it function as a server.

Branch A (Priority QoS)
#queue lan2 type priority

LAN2 interface is used with Priority QoS. In addition, class separation setting is required.

#cooperation bandwidth-measuring client on

Make it function as a client.

#cooperation bandwidth-measuring remote 1 server 172.16.10.1

The center side is registered as a server. Bandwidth measurement operation starts after this command is executed.

Branch B (Bandwidth QoS)
#queue lan2 type shaping

LAN2 is used with Bandwidth QoS.

#queue lan2 class property 1 bandwidth=30%

When results of the band measurement are reflected dynamically, bandwidth is set as % designation by the "queue class property" command. When the bandwidth measurement is set without %, and the result of the bandwidth measurement is less than the setting value, the setting value is not guaranteed. In addition, class separation setting is required.

#cooperation bandwidth-measuring client on

Make it function as a client.

#cooperation bandwidth-measuring remote 1 server 172.16.10.1

The center side is registered as a server. Bandwidth measurement operation starts after this command is executed.

Branch C (Priority QoS)
#queue lan2 type priority

LAN2 interface is used with Priority QoS. In addition, class separation setting is required.

#cooperation bandwidth-measuring client on

Make it function as a client.

#cooperation bandwidth-measuring remote 1 server 172.16.10.1

The center side is registered as a server. Bandwidth measurement operation starts after this command is executed.

Example 2.2 Measure upload speed between the branches and reflect it in the QoS settings.

                  +-----------+
  +----------+    |           |    +----------+
  | Branch A |----|  Network  |----| Branch B |
  +----------+    |           |    +----------+
  172.16.10.1     +-----------+    172.16.20.1 

[Setting Procedure]

Branch A
#queue lan2 type priority
#cooperation bandwidth-measuring server on
#cooperation bandwidth-measuring client on
#cooperation bandwidth-measuring remote 1 server 172.16.20.1
#cooperation bandwidth-measuring remote 2 client 172.16.20.1 
Branch B
#queue lan2 type priority
#cooperation bandwidth-measuring server on
#cooperation bandwidth-measuring client on
#cooperation bandwidth-measuring remote 1 server 172.16.10.1
#cooperation bandwidth-measuring remote 2 client 172.16.10.1 

[Explanation]

Branch A
#queue lan2 type priority

LAN2 interface is used with Priority QoS. In addition, class separation setting is required.

#cooperation bandwidth-measuring server on

Enable the server functionality.

#cooperation bandwidth-measuring client on

Enable the client functionality.

#cooperation bandwidth-measuring remote 1 server 172.16.20.1

Register branch B as a server. Bandwidth measurement operation starts after this command is executed.

#cooperation bandwidth-measuring remote 2 client 172.16.20.1

Register branch B as a client.

Branch B
#queue lan2 type priority

LAN2 interface is used with Priority QoS. In addition, class separation setting is required.

#cooperation bandwidth-measuring server on

Enable the server functionality.

#cooperation bandwidth-measuring client on

Enable the client functionality.

#cooperation bandwidth-measuring remote 1 server 172.16.10.1

Register branch A as a server. Bandwidth measurement operation starts after this command is executed.

#cooperation bandwidth-measuring remote 2 client 172.16.10.1

Register branch A as a client.

Command

Set the Port Number to Be Used by the Cooperation Function

[Syntax]
cooperation port PORT
no cooperation port [PORT]
[Setting Value]
  • PORT ... Port number
[Initial Value]
  • PORT ... 59410
[Description]

Sets the UDP port number to be used by the cooperation function. This number is used as the source port number of packets send by the cooperation function. When packets with this destination port number is received, they are handled as packets of the cooperation function.

[Applicable Models]
RTX5000 RTX810 FWX120

Set Whether to Use the Cooperation Function

[Syntax]
cooperation TYPE ROLE SW
no cooperation TYPE ROLE [SW]
[Setting Value]
  • TYPE ... Cooperation type
    • bandwidth-measuring ... Line bandwidth detection
    • load-watch ... Load watch notification
  • ROLE ... Cooperation role
    • server ... Server operation
    • client ... Client operation
  • SW
    • on ... Enable the function
    • off ... Disable the function
[Initial Value]
  • SW ... All operation functions set to off
[Description]

Sets the operation of each cooperation function.

[Applicable Models]
RTX5000 RTX810 FWX120

Set the Operation of Each Peer That Is to Cooperate in the Bandwidth Measurement

[Syntax]
cooperation bandwidth-measuring remote ID ROLE ADDRESS [OPTION=VALUE]
no cooperation bandwidth-measuring remote ID [ROLE ADDRESS [OPTION=VALUE]]
[Setting Value]
  • ID
    • Peer ID number (1..100)
  • ROLE ... Role of the peer in the cooperation
    • server ... The peer performs server operation
    • client ... The peer performs client operation
  • ADDRESS
    • Peer IP address of the cooperation, FQDN, or 'any'
  • OPTION ... Option
    • apply ... Whether the measured result is applied to the speed setting of the LAN interface or WAN interface ('on' or 'off')
    • port ... UDP port number that the peer uses (1-65535)
    • initial-speed ... Measurement start value (64000-100000000)[bit/s]
    • interval ... Watch interval (60..2147483647)[sec]or'off'
    • retry-interval ... Interval between the end of an error and the next attempt (60..2147483647)[sec]
    • sensitivity ... Measurement sensitivity (high, middle or low)
    • syslog ... Whether to log the operation (on or off)
    • interface ... LAN interface or WAN interface that the measurement results are applied to
    • class ... Class that the measurement results are applied to
    • limit-rate ... Maximum percentage of change in the set value (1-10000)[%]
    • number ... Number of packets to use in measurement (5..100)
    • local-address ... Source IP address of the sent packets
[Initial Value]
  • apply=on
  • port=59410
  • initial-speed=10000000
  • interval=3600
  • retry-interval=3600
  • sensitivity=high
  • syslog=off
  • number=30
[Description]

Sets the operation of each peer that is to cooperate in the bandwidth measurement.

[Note]

If you set the ROLE parameter to client, only port and syslog can be specified for the options. If you specify server, all options can be used.

You can only specify any as the peer to cooperate with when the ROLE parameter is set to client.

When the apply option is 'on', the bandwidth measurement result is overwritten to the setting of the "speed lan" command of the LAN interface or "speed wan1" command of the WAN interface, directed at the peer. When the value is specified for the class option, the measured results affect the BANDWIDTH parameter of the "queue lan class property", or the BANDWIDTH parameter of the "queue wan1 class property" command of the specified class.

The initial-speed option can be used to set the speed at which the measurement is started. If 'k' or 'M' is appended to the parameter, it is handled as kbit/s or Mbit/s.

The retry-interval option sets the time until the next retry after the bandwidth measurement fails because of a failure to receive a response from the peer, an overly large measured value, or some other reason. However, if the measurement is failing, retrying at short intervals is unadvisable, because it will increase the load on the network. The highest priority should be given to avoiding the cause of the measurement problem.

You can use the number option to specify the number of packets to use in measurement. In an environment where the interval between packets varies widely, you can achieve more stable results by specifying a large number for this option. However, because the number of measurement packets increases, the packets are likely to have a larger influence on other data transmission.

You can use the sensitivity option to change the measurement sensitivity. In an environment where the interval between packets varies widely or there is packet loss, you can restrain frequent setting changes and reduce the amount of time until measurement is completed by reducing the measurement sensitivity.

When a LAN interface is specified for the interface option, the measured results affect that interface's "speed lan" command. When a value is specified for the class option, the measured results affect the bandwidth parameter of the "queue lan class property" command of the specified class. When a WAN interface is specified, the measured results affect that interface's "speed wan1" command. When a value is specified for the class option, the measured results affect the BANDWIDTH parameter of the queue wan1 class property command of the specified class.

The class option can only be used on models with bandwidth control.

Use the limit-rate option when you want to limit sharp changes in the specified value to a certain percentage. If there is a large difference between the previous measured result and the current measured result, the router will set the current value according to the limit-rate setting instead of using the current measured result.

You can use the local-address option to set the source IP address of the sent packets. If you do not set this option, the IP address of the interface is used.

RTX5000 does not support WAN interface for interface parameter.

[Applicable Models]
RTX5000 RTX810 FWX120

Manually Execute the Cooperation Function

[Syntax]
cooperation bandwidth-measuring go ID
cooperation load-watch go ID TYPE
[Setting value]
  • bandwidth-measuring ... Line bandwidth detection
  • load-watch ... Load watch notification
  • ID ... Peer ID number (1-100)
  • TYPE ... Packet type
    • lower ... Load decrease detection packet
    • raise ... High load detection packet
[Description]

Manually executes the cooperation function.

[Note]

When bandwidth-measuring is specified, the measured results appear in the log. If the interface speed is set so that the line bandwidth detection value is used, the result obtained by executing this command is also applied to the setting.

If load-watch is specified, a packet that is same as the packet delivered to the specified peer according to load watch trigger is delivered. It is valid only for peers whose role is set to client.

[Applicable Models]
RTX5000 RTX810 FWX120

Show the Cooperation Status

[Syntax]
show status cooperation TYPE [ID]
[Setting Value]
  • TYPE ... Cooperation type
    • bandwidth-measuring ... Line bandwidth detection
    • load-watch ... Load watch notification
  • ID ... Peer ID number (1-100)
[Description]

Shows cooperation information.

The following items are shown for line bandwidth detection.

  • Peer information
  • Status display
    • Count
    • Time of measurement
    • Measured result (client operation only)
    • Current status (client operation only)
    • Configuration change history (client operation only)
    • Remaining time until the next measurement (client operation only)

The following items are shown for load watch notification.

  • Peer information
  • Status display
    • Suppression request county
    • Suppression release count
    • History
[Applicable Models]
RTX5000 RTX810 FWX120
[Display Example]

In the case of line bandwidth detection

#show status cooperation bandwidth-measuring
1:  172.16.1.100
              remote:  server
     measuring times:  43[times]
      last bandwidth:  56450[kbit/s] 2016/06/23 13:08:45
           set times:  3[times]
  last set bandwidth:  58650[kbit/s] 2016/06/23 13:08:45
             history:  58340[kbit/s] 2016/06/23 13:08:08
 : 56400[kbit/s] 2016/06/23 13:05:06
      next measuring:  3592[seconds]
2:  172.16.1.100
              remote:  client
     measuring times:  40[times]
          last tried:  8407[kbit/s] 2016/06/23 13:08:45

#show status cooperation bandwidth-measuring
1:  172.16.0.100
              remote:  client
     measuring times:  43[times]
          last tried:  8407[kbit/s] 2016/06/23 13:08:45
2:  172.16.0.100
              remote:  server
     measuring times:  67[times]
      last bandwidth:  59520[kbit/s] 2016/06/23 13:10:15
           set times:  5[times]
  last set bandwidth:  58190[kbit/s] 2016/06/23 13:10:15
             history:  56030[kbit/s] 2016/06/23 13:09:34
 : 57220[kbit/s] 2016/06/23 13:08:47
 : 59830[kbit/s] 2016/06/23 13:08:15
 : 58010[kbit/s] 2016/06/23 13:05:00
      next measuring:  3596[seconds] 

Return to Top

  • QoS
    • Bandwidth Detection

Product Categories