Site Tools


qos-settings

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
qos-settings [2024/04/10 22:21] – [QoS Principles] -formatting, grammar hogwildqos-settings [2024/04/16 16:55] (current) – [How Does all this Help Me?] remove "of the" hogwild
Line 1: Line 1:
-====== QoS Principles ======+====== QoS - Basic Principles ======
  
-Quality of Service (QoS) is a method to prioritize/penalize predefined types of traffic. QoS is a complex topic so we'll cover only enough basic principles to help you configure an initial setup.   \\  \\+Quality of Service (QoS) is a method to prioritize/penalize predefined types of traffic. QoS is a complex topic so this text will discuss only enough basic principles to help you configure an initial setup. 
 + 
 +==== QoS is not Bandwidth Limiter ==== 
 + 
 +QoS is not the same as FreshTomato's [[bwlimit|Bandwidth Limiter]]. \\ 
 + 
 +  * QoS analyzes all traffic on all clients on the network. 
 +  * QoS follows rules for prioritizing one type of traffic over another.  
 +  * Bandwidth Limiter limits the bandwidth used by one or more client devices on the network. 
 +  * Bandwidth Limiter prioritizes one client device/group of client devices over others. \\ It does not analzye traffic types. 
 + 
 + \\ 
 + 
 +If you need a simple, crude tool for one or more known client devices, Bandwidth Limiter may be all that you need. 
 + 
 +QoS is a more sophisticated, more refined tool. 
 + 
 +However, Bandwidth Limiter shares a few settings with QoS. When Bandwidth Limiter is enabled, QoS should be disabled, and vice versa. If both are enabled, they will conflict with each other and neither will work. \\
  
 Basically, QoS performs the following:\\ Basically, QoS performs the following:\\
  
-  * Identifies traffic +  * Identifies traffic. 
-  * Classifies this traffic +  * Classifies this traffic. 
-  * Marks packets +  * Marks packets. 
-  * Defines classes and subclasses +  * Defines classes and subclasses. 
-  * Set class parameters (such as reserved bandwidth)+  * Sets class parameters (such as reserved bandwidth).
  
- \\ You might have heard the above points when describing "diffserv" (differential services). Diffserv is the only QoS type FreshTomato can perform.+ \\ You might have heard the above points when describing "diffserv" (differential services). Diffserv is the only type of QoS that FreshTomato can perform.
  
-It's often said that the QoS is a technique to mitigate lack of bandwidth when an upgrade is too costly or even impossible. More precisely, QoS also allows you to prioritize latency-sensitive traffic (such as voice) even when there's no network congestion. Thus, QoS introduces controls to allows you to protect certain traffic.\\   \\  {{:pasted:20230215-084814.png}}\\  \\+It's often said that QoS is a technique to mitigate lack of bandwidth when an upgrade is too costly or even impossible. More precisely, QoS also allows you to prioritize latency-sensitive traffic (such as voice) even when there's no network congestion. Thus, QoS introduces controls to allows you to protect certain traffic.\\   \\  {{:pasted:20230215-084814.png}}\\  \\
  
 Here are some commonly used QoS terms:\\ Here are some commonly used QoS terms:\\
  
-  * **Traffic:** This is the stream of data between two nodes. This stream could be unidirectional (such as over UDP) \\ or bidirectional (such as over TCP).\\  +  * **Traffic:** This is the stream of data between two nodes. Streams could be unidirectional (such as over UDP) \\ or bidirectional (such as over TCP).\\  \\  
-  * **Best effort:** This is also referred to as "no QoS". This works on the principle of "first come, first served".\\ This is generally the default queuing mechanism applied to network interfaces (AKA "FIFO").  \\ When QoS is operating, best effort usually means that class of traffic that handles "everything else". \\ It is therefore the lowest priority of all classes of traffic passed.\\  +  * **Best effort:** This is also known as "no QoS" or "first come, first served" (FIFO).\\ This is usually the default queuing mechanism applied to network interfaces.  \\ When QoS is operating, best effort usually means "that class of traffic that handles everything else".\\  \\  
-  * **Classification:** This is the process of internally identifying packets based on predefined parameters. \\ For example"from IP", "to port", "protocol=tcp". \\  +  * **Classification:** This is the process of internally identifying packets based on predefined parameters. \\ For example"from IP", "to port", "protocol=tcp"\\  \\  
-  * **Marking:** This is the action of actually colorize a packet (modify the Type of Service/DSCP field of the IP header\\ with a locally significant meaning. This will help matching packet simply looking at the ToS/DSCP header \\ This process it not always performed.\\  +  * **Marking:** This is the process of changing the Type of Service/DSCP field in the IP header of a packet \\ with a locally significant meaning. This will help (a router?) to match packets, as it can simply look at \\ their ToS/DSCP headers to know what type of data they containMarking it not always performed.\\  \\  
-  * **Queuing:** This is (Outbound only) buffering of data that the network can't process in real time. \\ There are many forms of Queuing in QoS. This is divided into classes. \\  +  * **Queuing:** This (Outbound only processis the buffering of data which the network can't process in real time. \\ There are many forms of Queuing in QoS. This is divided into classes.\\  \\  
-  * **Policing:** This is the (Inbound and Outbound) process of dropping packets in a controlled way. \\  +  * **Policing:** This is the (Inbound and Outbound) process of dropping packets in a controlled way. \\  \\  
-  * **Class Discipline:** These are the actual rules of priority applied to all the classes of data. \\ Packets In the Priority class always come first. If Priority is empty, WFQ (Weighted Fair Queuing) is applied among all the other classes. \\ There are dozens of queuing disciplines but only few are supported by FreshTomatoThese include \\+  * **Queuing Discipline:** Also known as "Class Discipline"These are the actual rules of priority \\ that are applied to the data classes.\\ This specifies which packets are put into queues in which order, and in what quantity. \\ Packets in the Priority class always come first. If Priority is empty, WFQ (Weighted Fair Queuing) is applied among all the other classes. \\ There are many queuing disciplines. FreshTomato only supports the Qdisc Queing Discipline 
 +    * asdfgjkl 
 +    * asdfghjkl\\
  
 \\  The diagram below should help you to understand these principles:\\ \\ {{:pasted:20230215-085237.png}}\\  \\ \\  The diagram below should help you to understand these principles:\\ \\ {{:pasted:20230215-085237.png}}\\  \\
Line 36: Line 55:
 Is someone on your LAN generating too much traffic?  \\ Is someone on your LAN generating too much traffic?  \\
  
-These are all problems that QoS can help you to solve. Note that QoS is NOT auto-regulating. You need to manually define most of the QoS parameters, and tweak them, as needed. +These are all problems that QoS can help you to solve. Note that QoS is NOT auto-regulating. You need to manually define most QoS parameters, and tweak them, as needed.
  
 ===== CTF implications ===== ===== CTF implications =====
Line 47: Line 65:
  \\  \\
  
- \\ + \\  This Network Scheduler Wikipedia entry may help you further understand the above principles: \\  [[https://en.wikipedia.org/wiki/Network_scheduler]] 
-This Network Scheduler Wikipedia entry may help you further understand the above principles: \\  + 
-[[https://en.wikipedia.org/wiki/Network_scheduler]]+
qos-settings.1712784107.txt.gz · Last modified: 2024/04/10 22:21 by hogwild