To control the rate at which a particular traffic flow is released onto the network, you must define parameters for the meter. You can use either of the two metering modules, tokenmt or tswtclmt, in the IPQoS configuration file.
The next procedure continues to build the IPQoS configuration file for the application server in Example 3–3. In the procedure, you configure not only the meter but also two marker actions that are called within the meter action statement.
Open the IPQoS configuration file you have created for the applications server.
The remaining steps assume that you have already defined a class and a filter for the application to be flow-controlled. In the /var/ipqos/BigAPPs.qos file, you begin after the following marker action:
action { module dscpmk name markAF21 params { global_stats FALSE dscp_map{0-63:18} next_action continue } } |
Create a meter action statement to flow-control traffic of the ftp class:
action { module tokenmt name meterftp |
Entry |
Definition |
---|---|
module tokenmt |
Invokes the tokenmt meter |
name meterftp |
Gives the name meterftp to the action statement |
Add parameters to configure the meter's rate:
params { committed_rate 50000000 committed_burst 50000000 |
Entry |
Description |
---|---|
committed_rate 50000000 |
Assigns a transmission rate of 5,000,0000 bits-per-second to traffic of the ftp class |
committed_burst 50000000 |
Commits a burst size of 50,000,000 bits to traffic of the ftp class |
For an explanation of tokenmt parameters, refer to Configuring tokenmt as a Two-Rate Meter.
Add parameters to configure traffic conformance precedences:
red_action markAF31 green_action markAF22 global_stats TRUE } } |
Entry |
Description |
---|---|
red_action markAF31 |
Indicates that when the traffic flow of the ftp class becomes nonconformant, that is, exceeds the committed rate, packets are sent to the markAF31 marker action statement |
green_action markAF22 |
Indicates that when traffic flows of class ftp conform to the committed rate, packets are sent to the markAF22 action statement |
global_stats TRUE |
Enables metering statistics for the ftp class |
For more information about traffic conformance, see Meter Module.
Add a marker action statement to assign a per-hop behavior to nonconformant traffic flows of class ftp.
action { module dscpmk name markAF31 params { global_stats TRUE dscp_map{0-63:26} next_action continue } } |
Entry |
Description |
---|---|
module dscpmk |
Invokes the marker module dscpmk. |
name markAF31 |
Gives the name markAF31 to the action statement. |
global_stats TRUE |
Enables statistics for the ftp class. |
dscp_map{0–63:26} |
Assigns a DS codepoint of 26 to the packet headers of the traffic class ftp whenever this traffic exceeds the committed rate. |
next_action continue |
Indicates that no further processing is required on packets of the traffic class ftp. Then these packets can return to the network stream. |
The DS codepoint 26 instructs the marker to set all entries in the dscp map to the decimal value 26 (binary 011010). This value sets the AF31 per-hop behavior and marks packets of the ftp traffic class with the DS codepoint 26 in the DS field.
AF31 assures that all packets with a DS codepoint of 26 receive a low-drop precedence, but with only Class 3 priority. Therefore, the possibility of nonconformant FTP traffic being dropped is low. However, the router gives a higher forwarding probability to traffic classes with a Class 1 or Class 2 low-drop precedence mark or better. For a table of possible AF codepoints, refer to Table 6–2.
Add a marker action statement to assign a per-hop behavior to traffic flows of class ftp that conform to the committed rate.
action { module dscpmk name markAF22 params { global_stats TRUE dscp_map{0-63:20} next_action continue } } |
The next table contains parameters that are not defined in the previous step.
Entry |
Description |
---|---|
name markAF22 |
Gives the name markAF22 to the marker action |
dscp_map{0–63:20} |
Assigns a DS codepoint of 20 to the packet headers of the traffic class ftp whenever ftp traffic conforms to its configured rate |
The DS codepoint 20 tells the marker to set all entries in the dscp map to the decimal value 20 (binary 010100). This value sets the AF22 per-hop behavior and marks packets of the ftp traffic class with the DS codepoint 20 in the DS field.
AF22 assures that all packets with a DS codepoint of 20 receive a medium-drop precedence with Class 2 priority. Therefore, conformant FTP traffic is assured a medium-drop precedence among flows that are simultaneously released by the IPQoS system. However, the router gives a higher forwarding priority to traffic classes with a Class 1 medium-drop precedence mark or higher. For a table of possible AF codepoints, refer to Table 6–2.
Add the DS codepoints that you have created for the application server to the appropriate files on the diffserv router. For more information, refer to How to Configure a Router on an IPQoS-Enabled Network.
Task |
For Information |
---|---|
Activate the IPQoS configuration file |
How to Apply a New Configuration to the IPQoS Kernel Modules |
Add configuration information for web servers |
How to Begin the IPQoS Configuration File and Define Traffic Classes |
Configure flow accounting |
How to Enable Accounting for a Class in the IPQoS Configuration File |
Configure forwarding behaviors on a router |