Difference between revisions of "Template:Networking rutos manual traffic shaping"

From Teltonika Networks Wiki
 
(22 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Template: Networking_rutos_manual_fw_disclosure
+
{{Template: Networking_device_manual_fw_disclosure
| fw_version = {{{series}}}_R_00.07.00
+
| series = {{{series}}}
| series     = {{{series}}}
+
| name  = {{{name}}}
 +
| fw_version ={{Template: Networking_device_manual_latest_fw
 +
| series = {{{series}}}
 +
| name  = {{{name}}}
 +
}}
 
}}
 
}}
{{#ifeq: {{{legacy}}} | 1 |<br><i><b>Note</b>: <b>[[{{{name}}} QoS (legacy WebUI)|click here]]</b> for the old style WebUI (FW version RUT9XX_R_00.06.08.2 and earlier) user manual page.</i>|}}
+
{{#ifeq: {{{series}}} | RUT9 |<br><i><b>Note</b>: <b>[[{{{name}}} QoS (legacy WebUI)|click here]]</b> for the old style WebUI (FW version {{Template: Networking_device_manual_latest_fw | series = RUT9XX}} and earlier) user manual page.</i>|}}
 +
{{#ifeq: {{{series}}} | RUT2 |<br><i><b>Note</b>: <b>[[{{{name}}} QoS (legacy WebUI)|click here]]</b> for the old style WebUI (FW version {{Template: Networking_device_manual_latest_fw | series = RUT2XX}} and earlier) user manual page.</i>|}}
 +
__TOC__
 
==Summary==
 
==Summary==
  
Line 18: Line 24:
 
The <b>SQM</b> page is used to set up Smart Queue Management (SQM) instances which can limit the download and upload speeds of selected network interfaces.
 
The <b>SQM</b> page is used to set up Smart Queue Management (SQM) instances which can limit the download and upload speeds of selected network interfaces.
  
{{#switch: TRB2
+
{{#switch: {{{series}}}
   | #default =
+
   | RUTX | RUTM = <u><b>Note:</b> For SQM to properly work "Software flow offloading" needs to be turned off on this device. This can be done in <b>Network → [[{{{name}}} Firewall#Routing.2FNAT_Offloading|Routing/NAT Offloading]]</b> settings.</u>
   | TRB2|TRB1|RUT36X|RUT30X|RUT9|TCR1 =  
+
   | #default =  
<u><b>
+
<u><b>Note:</b> SQM is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.</u>
 
 
Note:</b> SQM is additional software that can be installed from the <b>Services → [[{{{name}}} Package Manager|Package Manager]]</b> page.</u>
 
 
}}
 
}}
  
Line 42: Line 46:
 
Refer to the sections below for information on editing SQM instances.
 
Refer to the sections below for information on editing SQM instances.
  
===Basic Settings===
+
===General Setup===
 
----
 
----
The <b>Basic Settings</b> section is used to set download and upload speed limits for a selected network interface.
+
The <b>General Setup</b> section is used to set download and upload speed limits for a selected network interface.
  
[[File:Networking_rutos_manual_traffic_shaping_sqm_basic_settings.png|border|class=tlt-border]]
+
[[File:Networking rutos manual traffic shaping sqm general setup73.png|border|class=tlt-border]]
  
 
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 62: Line 66:
 
       <td>Interface name</td>
 
       <td>Interface name</td>
 
       <td>network interface; default: <b>br-lan (lan)</b></td>
 
       <td>network interface; default: <b>br-lan (lan)</b></td>
       <td>Selects to which interface this SQM configuration will apply. <b>Additional note:</b> consider reading the [[{{{name}}}__QoS#Additional_notes|Additional notes]] section before limiting speeds on selected interfaces.</td>
+
       <td>Selects to which interface this SQM configuration will apply. <b>Additional note:</b> consider reading the [[{{{name}}}_Traffic_Shaping#Additional_notes|Additional notes]] section before limiting speeds on selected interfaces.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td>Download speed (kbit/s)</td>
 
       <td>Download speed (kbit/s)</td>
       <td>integer [0..9999999999999999]; default: <b>none</b></td>
+
       <td>integer [0..2147483647]; default: <b>none</b></td>
 
       <td>Limits the download speed (ingress) of the selected interface to the value specified in this field.</td>
 
       <td>Limits the download speed (ingress) of the selected interface to the value specified in this field.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td>Upload speed (kbit/s)</td>
 
       <td>Upload speed (kbit/s)</td>
       <td>integer [0..9999999999999999]; default: <b>none</b></td>
+
       <td>integer [0..2147483647]; default: <b>none</b></td>
 
       <td>Limits the upload speed (egress) of the selected interface to the value specified in this field.</td>
 
       <td>Limits the upload speed (egress) of the selected interface to the value specified in this field.</td>
 
     </tr>
 
     </tr>
Line 80: Line 84:
 
The <b>Advanced Settings</b> section describes the internal logic of the SQM configuration.
 
The <b>Advanced Settings</b> section describes the internal logic of the SQM configuration.
  
[[File:Networking_rutos_manual_traffic_shaping_sqm_advanced_settings.png|border|class=tlt-border]]
+
[[File:Networking rutos manual traffic shaping sqm advanced settings73.png|border|class=tlt-border]]
  
 
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 137: Line 141:
  
 
<ul>
 
<ul>
     <li>Network → [[{{{name}}} Interfaces|Interfaces]] (to create an additional network interface)</li>
+
     <li>Network → [[{{{name}}} LAN|Interfaces]] (to create an additional network interface)</li>
 
     <li>Network → [[{{{name}}} Wireless|Wireless]] (to attach WiFi interfaces to Ethernet interfaces)</li>
 
     <li>Network → [[{{{name}}} Wireless|Wireless]] (to attach WiFi interfaces to Ethernet interfaces)</li>
 
</ul>
 
</ul>
Line 227: Line 231:
 
==QoS==
 
==QoS==
  
<b>QoS</b> provides the possibility to prioritize network traffic based on hosts, ports or services and limit download & upload speeds on a selected interface.
+
QoS provides the possibility to prioritize network traffic based on hosts, ports or services and limit download & upload speeds on a selected interface.
  
This chapter of the user manual provides an overview of the <b>QoS</b> page in {{{name}}} devices.
+
This chapter of the user manual provides an overview of the QoS page in {{{name}}} devices.  
  
<u><b>Note:</b> QoS is additional software that can be installed from the <b>Services → [[{{{name}}} Package Manager|Package Manager]]</b> page.</u>
+
{{#switch: {{{series}}}
 +
  | RUTX | RUTM = <u><b>Note:</b> For QoS to properly work "Software flow offloading" needs to be turned off on this device. This can be done in <b>Network → [[{{{name}}} Firewall#Routing.2FNAT_Offloading|Routing/NAT Offloading]]</b> settings.</u>
 +
  | #default =
 +
}}
 +
<u><b>Note:</b> QoS is additional software that can be installed from the <b>System → [[{{{name}}} Package Manager|Package Manager]]</b> page.</u>
  
 
===Interfaces===
 
===Interfaces===
 
----
 
----
The <b>Interfaces</b> section is used to set up download and upload speed limits on the device's network interfaces.
+
The <b>Interfaces</b> section is used to set up download and upload speed limits on the device's network interfaces.  
  
 
[[File:Networking_rutos_manual_traffic_shaping_qos_interfaces.png|border|class=tlt-border]]
 
[[File:Networking_rutos_manual_traffic_shaping_qos_interfaces.png|border|class=tlt-border]]
  
<table class="nd-mantable">
+
<table class="nd-othertables">
 
     <tr>
 
     <tr>
         <th>Field</th>
+
         <th style="width: 250px">Field</th>
       <th>Value</th>
+
       <th style="width: 250px">Value</th>
       <th>Description</th>
+
       <th style="width: 579px">Description</th>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 252: Line 260:
 
     <tr>
 
     <tr>
 
       <td>Download speed (kbit/s)</td>
 
       <td>Download speed (kbit/s)</td>
       <td>integer; default: <b>1024</b></td>
+
       <td>integer; default: <b>none</b></td>
 
       <td>Maximum download speed for the specified interface.</td>
 
       <td>Maximum download speed for the specified interface.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
     <td>Upload speed (kbit/s)</td>
 
     <td>Upload speed (kbit/s)</td>
         <td>integer; default: <b>128</b></td>
+
         <td>integer; default: <b>none</b></td>
 
         <td>Maximum upload speed for the specified interface.</td>
 
         <td>Maximum upload speed for the specified interface.</td>
 
     </tr>
 
     </tr>
Line 278: Line 286:
 
(for example, video streaming, SSH) at a higher priority and less important traffic (FTP, HTTP) at a lower priority.
 
(for example, video streaming, SSH) at a higher priority and less important traffic (FTP, HTTP) at a lower priority.
  
[[File:Networking_rutos_manual_traffic_shaping_qos_classification_rules.png|border|class=tlt-border]]
+
[[File:Networking rutos manual traffic shaping qos classification rules73.png|border|class=tlt-border]]
  
 
<table class="nd-mantable">
 
<table class="nd-mantable">
Line 293: Line 301:
 
     <tr>
 
     <tr>
 
       <td>Source host</td>
 
       <td>Source host</td>
       <td>All | IP; default: <b>All</b></td>
+
       <td>All | IP | -- Custom --; default: <b>All</b></td>
 
       <td>Host(s) from which data will be transmitted.</td>
 
       <td>Host(s) from which data will be transmitted.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
     <td>Destination host</td>
 
     <td>Destination host</td>
         <td>All | IP; default: <b>All</b></td>
+
         <td>All | IP | -- Custom --; default: <b>All</b></td>
 
         <td>Host(s) to which data will be transmitted.</td>
 
         <td>Host(s) to which data will be transmitted.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
     <td>Protocol</td>
 
     <td>Protocol</td>
         <td>All | TCP | UDP | ICMP | -- custom --; default: <b>All</b></td>
+
         <td>All | TCP | UDP | ICMP | -- Custom --; default: <b>All</b></td>
 
         <td>Data transmission protocol to match the rule.</td>
 
         <td>Data transmission protocol to match the rule.</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
     <td>Ports</td>
 
     <td>Ports</td>
         <td>All | integer [0..65535]; default: <b>none</b></td>
+
         <td>All | integer [1..65535]; default: <b>none</b></td>
 
         <td>Port number(s) to match the rule. You can enter multiple ports by separating them by commas (e.g., <i>22,53,80</i>).</td>
 
         <td>Port number(s) to match the rule. You can enter multiple ports by separating them by commas (e.g., <i>22,53,80</i>).</td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>
  
[[Category:{{{name}}} Services section]]
+
 
 +
[[Category:{{{name}}} Network section]]

Latest revision as of 11:55, 20 December 2023

The information in this page is updated in accordance with firmware version .


Summary

Traffic Shaping is a bandwidth management technique used on computer networks which delays some or all datagrams to bring them into compliance with a desired traffic profile. Traffic Shaping is used to optimize or guarantee performance, improve latency, or increase usable bandwidth for some kinds of packets by delaying other kinds.

This manual page provides an overview of the Traffic Shaping pages in {{{name}}} devices.

If you're having trouble finding this page or some of the parameters described here on your device's WebUI, you should turn on "Advanced WebUI" mode. You can do that by clicking the "Advanced" button, located at the top of the WebUI.

Networking rutos manual webui basic advanced mode 75.gif

SQM

The SQM page is used to set up Smart Queue Management (SQM) instances which can limit the download and upload speeds of selected network interfaces.

Note: SQM is additional software that can be installed from the System → [[{{{name}}} Package Manager|Package Manager]] page.

The Smart Queue Management section contains a list of existing SQM instances and can be used manage them (edit/delete/enable/disable). By default the list is empty:

Networking rutos manual traffic shaping sqm.png


To add a new instance and begin editing, look below to the Add New Instance section and:

  1. enter a custom name in the 'Name' field;
  2. click the 'Add' button;
  3. configuration window will open automatically.

Networking rutos manual traffic shaping sqm add new sqm example.png

Refer to the sections below for information on editing SQM instances.

General Setup


The General Setup section is used to set download and upload speed limits for a selected network interface.

Networking rutos manual traffic shaping sqm general setup73.png

Field Value Description
Enabled off | on; default: off Turns the SQM configuration on or off.
Interface name network interface; default: br-lan (lan) Selects to which interface this SQM configuration will apply. Additional note: consider reading the [[{{{name}}}_Traffic_Shaping#Additional_notes|Additional notes]] section before limiting speeds on selected interfaces.
Download speed (kbit/s) integer [0..2147483647]; default: none Limits the download speed (ingress) of the selected interface to the value specified in this field.
Upload speed (kbit/s) integer [0..2147483647]; default: none Limits the upload speed (egress) of the selected interface to the value specified in this field.

Advanced Settings


The Advanced Settings section describes the internal logic of the SQM configuration.

Networking rutos manual traffic shaping sqm advanced settings73.png

Field Value Description
Queuing disciplines usable on this system cake | fq_codel; default: cake Queue management logic type. Look to the row below for detailed information.
Queue setup script layer_cake.qos | piece_of_cake.qos | simple.qos | simplest.qos | simplest_tbf.qos; default: piece_of_cake.qos Describes the queue management logic.
  • cake
    • layer_cake.qos - uses the cake qdisc as a replacement for both htb as shaper and fq_codel as leaf qdisc. This exercises cake's diffserv profile(s) as different "layers" of priority.
    • piece_of_cake.qos - uses the cake qdisc as a replacement for both htb as shaper and fq_codel as leaf qdisc. It just does not come any simpler than this, in other words it truly is a "piece of cake".
  • fq_codel
    • simple.qos - BW-limited three-tier prioritisation scheme with your qdisc on each queue.
    • simplest.qos - simplest possible configuration: HTB rate limiter with your qdisc attached.
    • simplest_tbf.qos - simplest possible configuration (TBF): TBF rate limiter with your qdisc attached. TBF may give better performance than HTB on some architectures.

Additional notes


Please consider that limiting the speed of certain interfaces may limit the speed of other interfaces as well. For example, if you limit the download and upload speeds of the default LAN interface (br-lan) to 50 000 kbps (50 Mbps) this will affect the speeds between:

  • Ethernet LAN machines (including the device)
  • Ethernet LAN machines and WAN*

* Since LAN machines communicate with WAN servers over the device which is also considered a LAN machine, LAN-to-WAN and WAN-to-LAN speeds are also affected.


The table below demonstrates speed changes between some of the main default network interfaces if br-lan speed is set to 50 Mbps.

Ethernet LAN Ethernet WAN
Ethernet LAN 50 50
Ethernet WAN 50 unchanged

Changing the speeds of other network interfaces may also affect more than one interface. However, the Ethernet LAN interface (br-lan) is related to most interfaces. Therefore, it is advised to limit the speeds of other interfaces in order to achieve more precise results (unless, of course, your goal to is to limit the speed of br-lan).


Another example to consider is limiting WAN interface speeds since that is the most widely implemented use case and affects less interface-to-interface relationships. For instance, limiting Ethernet WAN (eth1) speed to 50 Mbps would produce the following results:

Ethernet LAN Ethernet WAN
Ethernet LAN unchanged 50
Ethernet WAN 50 unchanged

Please take caution when using SQM to limit speeds in order to avoid unexpected results.

QoS

QoS provides the possibility to prioritize network traffic based on hosts, ports or services and limit download & upload speeds on a selected interface.

This chapter of the user manual provides an overview of the QoS page in {{{name}}} devices.


Note: QoS is additional software that can be installed from the System → [[{{{name}}} Package Manager|Package Manager]] page.

Interfaces


The Interfaces section is used to set up download and upload speed limits on the device's network interfaces.

Networking rutos manual traffic shaping qos interfaces.png

Field Value Description
Calculate overhead yes | no; default: no Decreases upload and download ratio to prevent link saturation.
Download speed (kbit/s) integer; default: none Maximum download speed for the specified interface.
Upload speed (kbit/s) integer; default: none Maximum upload speed for the specified interface.
Enable yes | no; default: no Turns the rule on or off.

Classification Rules


The Classification Rules section is used to configure rules that prioritize certain traffic over other, less important traffic. This traffic can be defined by a source or destination host, port or a network protocol. Traffic that matches a rule with higher preference will be handled with higher priority.

Generally, this should be used in cases where you want to isolate certain types of traffic in order to make sure the {{{name}}} is handling more important traffic (for example, video streaming, SSH) at a higher priority and less important traffic (FTP, HTTP) at a lower priority.

Networking rutos manual traffic shaping qos classification rules73.png

Field Value Description
Target Priority | Express | Normal | Bulk; default: Normal Defines the priority of handling the type of traffic defined in this rule.
Source host All | IP | -- Custom --; default: All Host(s) from which data will be transmitted.
Destination host All | IP | -- Custom --; default: All Host(s) to which data will be transmitted.
Protocol All | TCP | UDP | ICMP | -- Custom --; default: All Data transmission protocol to match the rule.
Ports All | integer [1..65535]; default: none Port number(s) to match the rule. You can enter multiple ports by separating them by commas (e.g., 22,53,80).


[[Category:{{{name}}} Network section]]