This document explains the bandwidth reservation and priority queuing features. It includes the following topics:
Bandwidth Reservation System (BRS)
Priority Queuing
Bandwidth Reservation With Priority Queuing
Filtering and Bandwidth Reservation
Configuring Bandwidth Reservation
Bandwidth Reservation Commands
Bandwidth Reservation System (BRS)
BRS allows you to decide which packets the router drops when demand (traffic) exceeds supply (throughput) on a network connection. The router does not use BRS until there are requests for more than 100% of the available line bandwidth.
BRS reserves transmission bandwidth for a network connection by allocating minimum percentages of total connection bandwidth to specified classes of traffic. Figure 1 shows the components of BRS classes.
Figure 1 Components of Bandwidth Reservation System (BRS) Classes
BRS is really a safeguard. In general, a network should not attempt to use more than 100% of its line speed. If it does, you probably need a faster line. The bursty nature of traffic, however, can drive the requested transmission rate to exceed 100% for a short time. In these cases, BRS ensures that the higher priority traffic is delivered and is not discarded.
Bandwidth reservation is a feature that runs over interfaces.
Note: Nx Networks recommends that you enable BRS on every PPP interface that you enable for bridging. Bridging cannot run on PPP interfaces if the MRU is less than the maximum Ethernet frame size.
With priority queuing, you can assign each bandwidth class one of the following priority level settings:
The router first sends all Urgent priority packets within their class. When the router has transmitted all Urgent packets, it sends High packets until it has sent them all (or until new Urgent messages are queued). The router then sends Normal packets. Only when there are no Urgent, High, or Normal packets remaining does the router transmit the Low priority packets.You can also set the number of packets that the router can queue for each priority level in each bandwidth class. The BRS queue-length command sets the maximum number of output packets that the router can queue in each BRS priority queue. It also sets the maximum number of output packets that the router can queue in each BRS priority queue when the router input buffers are scarce.
CAUTION:
If you set the values for queue length too high, you may seriously degrade the performance of your router.
The priority settings in one bandwidth class do not affect other bandwidth classes. No one bandwidth class has priority over the others. You can only map a network protocol (or several grouped protocols) or filters to a class.
Bandwidth Reservation With Priority Queuing
When you configure priority queuing without bandwidth reservation, the router delivers the highest priority traffic first. In instances of heavy high priority traffic, the router can overlook lower priority levels. By combining priority queuing with bandwidth reservation, however, you can allocate packet transmission to all bandwidths.
Filtering and Bandwidth Reservation
Using bandwidth reservation, you can assign the following filters (via the assign command) to specific types of traffic:
The router handles MAC address filtering by a joint effort between BRS and MAC Filtering (MCF) using tags. For example, you can categorize bridge traffic by assigning a tag to it.
You assign tags by creating a filter item in the MAC filtering configuration and then assigning a tag to it. You then use this tag to set up a bandwidth class for all packets associated with this tag.
Note: You can apply tags only to bridged packets, and only the MAC Address fields of the packet can be used in applying the tag. You can set up to five tagged MAC filters, from 1 to 5. TAG1 is searched for first, then TAG2, and so on up to TAG5. A single MAC filter tag can consist of any number of MAC Addresses set in MCF.
Once you create a tagged filter in the MAC filtering configuration, you assign it a class and priority in the bandwidth reservation configuration process. You then use the assign command in the bandwidth reservation process to reference the tag.Tags can also refer to "groups," as in the example of IP Tunnel. IP Tunnel endpoints can belong to any number of groups. You assign packets to a particular group through the tagging feature of MAC filtering.
For more information on MAC filtering, see "Using MAC Filtering" in the Bridging Guide.
Applying bandwidth reservation and queuing priority to tagged packets involves the following:
Filter Config> prompt to set up tags for packets passing through the bridge. See "Using MAC Filtering" in the Bridging Guide.
For example, if you want to assign a certain priority to FTP traffic, you set up an IP filter that tags all FTP traffic. For more information on tagging IP traffic, see Using Dynamic IP Filters.
Once you set up IP filtering to tag traffic, you assign the tag to a BRS class and assign a priority to the class.
For example, if you set up IP filters to tag all FTP traffic with TAG15, use the following command to assign TAG15 to a BRS class and to prioritize the traffic tagged with TAG15 within that class.
BRS Config <NET-2> ASSIGN
Protocol or filter name [IP]? tag15
Class name [DEFAULT]?
Priority <URGENT/HIGH/NORMAL/LOW> [NORMAL]?
Config> prompt, enter list interfaces to see a list of interfaces configured on the router. Use the interface number to configure an interface for BRS.
Config> prompt, enter network followed by the number of the interface you want to configure for BRS. For example, to configure interface 2 for BRS enter
Config>network
What is the network number [0]? 2
Circuit Configuration
Circuit Config <NET-2>
Circuit Config <NET-#> prompt, enter brs.
Circuit Config <NET-2> brs
Bandwidth Reservation User Configuration
BRS Config <NET-2>
BRS Config <NET-#> prompt, enter enable.
BRS Config <NET-2>enable
Please restart router for this command to take effect.
BRS Config <NET-#> prompt,
configure the BRS parameters using the appropriate configuration commands
discussed in Bandwidth Reservation Commands.
Monitor>network 2
Circuit <NET-2>
Circuit <NET-#> prompt, enter brs.
Circuit <NET-2>brs
Bandwidth Reservation console
BRS <NET-2>
Not all parameters apply to all router platforms. Press Space twice after you type a command to display the available options for each command for your router. Enter help for information about using the command line interface.
[C] means the command is available at the BRS Config <NET-#> prompt.
[M] means the command is available at the BRS <NET-#> prompt.
| Command | Function |
|---|---|
| Add-class [C] | Adds a class and allocates a designated amount of bandwidth to the class. |
| Assign [C] | Assigns a tag, protocol, or filter to a class. |
| Change-class [C] | Changes the amount of bandwidth allocated to a class. |
| Clear [M] | Clears the current reservation counters and stores them as last command counters. |
| Clear-block [C] | Clears the current BRS configuration from configuration memory. |
| Counters [M] | Displays the current counters. |
| Deassign [C] | Restores a specified protocol or filter to its default class and priority. |
| Default-class [C] | Sets the default class and priority to a desired value. |
| Del-class [M] | Deletes a previously configured bandwidth class. |
| Disable [C] | Disables bandwidth reservation on the interface. |
| Enable [C] | Enables bandwidth reservation on the interface. |
| Exit [C] | Returns to the previous prompt. |
| Last [M] | Displays the last saved statistics. |
| List [C] | Displays the currently defined classes by their guaranteed percentage rates and priority queuing values stored in the SRAM display. Also displays the assigned protocols and filters. |
| Queue-length [C] | Sets maximum and minimum values for the number of packets in a priority queue. |
| Show [C] | Displays the currently defined bandwidth classes stored in RAM. |
Before using the bandwidth reservation commands, keep the following in mind:
The Class-name parameter is case-sensitive.
To view the current class names, use the list or show command.
add-class
Class name [DEFAULT]? ipx
Percent bandwidth to reserve [10]? 15
|
Class-name
| The name of the bandwidth class. |
|
Percent bandwidth
| The percentage of the bandwidth of the interface to assign to this class |
Assign [C]
Assigns tags, protocols, or filters to a class and assigns a priority within that class.
You can assign up to 64 Tags by entering TAG1 through TAG64 in answer to the Protocol or filter name [IP]? prompt. By assigning a priority to tags, you can prioritize traffic that you tagged using IP filters or MAC filtering. Use the same tag number in the BRS configuration that you used in the IP filter or MAC filter configuration.
The four priority types include:
See Priority Queuing for information on the priority types. Example:assign
Protocol or filter name [IP]? tag18
Class name [DEFAULT]?
Priority <URGENT/HIGH/NORMAL/LOW> [NORMAL]?
assign
Protocol or filter name [IP]? ipx
Class name [DEFAULT]?
Priority <URGENT/HIGH/NORMAL/LOW> [NORMAL]?
Syntax: change-class class-name or class# percent-bandwidth
Example:change test 10
Clear [M]
Clears from RAM the current BRS counters for this interface and stores them as counters that you can display with the last command.
clear
Clear-block [C]
Clears the current BRS configuration from configuration memory for this interface or Frame Relay PVC. This command requires a router restart.
clear-block
You are about to clear BRS configuration information for this interface.
Are you sure you want to do this (Yes or [No]): yes
counters
Deassign [C]
Restores a protocol, TAG, or filter to its default class and priority.
Syntax: deassign protocol or tag or filter
Example:deassign IP
Default-class [C]
Sets the default class and priority to a desired value. If you have not previously assigned a value, system default values are used. Otherwise, the last previously assigned value is used.
Syntax: default-class class-name or class# priority
Example:default-class test normal
Del-class [M]
Deletes a previously configured bandwidth class from this interface or Frame Relay PVC.
del-class ip
Disable [C]
Disables BRS on this interface or Frame Relay circuit. This command requires a router restart.
disable
Exit [C]
Returns to the previous prompt.
exit
Enable [C]
Enables BRS on this interface or Frame Relay circuit. This command requires a router restart.
enable
Last [M]
Displays the last saved BRS statistics. The statistics are displayed in the same format as they are for the counters command.
last
List [C]
Displays currently defined classes by their guaranteed percentage rates and priority queuing values. It also displays all assigned protocols and filters.
list
BANDWIDTH RESERVATION listing from SRAM
bandwidth reservation is enabled
interface number 2
maximum queue length 10 minimum queue length 3
total bandwidth allocated 70%
total classes defined (counting one local and one default) 4
class LOCAL has 10% bandwidth allocated
protocols and filters cannot be assigned to this class.
class DEFAULT has 40% bandwidth allocated
the following protocols and filters are assigned:
protocol IP with priority NORMAL
protocol ARP with default priority
protocol IPX with priority NORMAL
protocol AP2 with default priority
protocol ASRT with default priority
filter SNA with priority NORMAL
assigned tags:
default class is DEFAULT with priority NORMAL
CAUTION:
Do not use this command unless it is essential to do so. Nx Networks recommends the default values for queue length for most users. If you set the values for queue length too high, you may seriously degrade the performance of your router.
Sets the number of packets that the router can queue in each BRS priority queue. Each BRS class has a priority value that you assigned to its protocols, filters, and tags. Each priority queue can hold the number of packets that you specify with this command.
This command sets the maximum number of output packets that can be queued in each BRS priority queue. It also sets the maximum number of output packets that can be queued in each BRS priority queue when router input buffers are scarce.
Syntax: queue-length maximum-length minimum-length
Example:queue-length
BRS priority queue maximum length [10]?
BRS priority queue minimum length [3]
show
BANDWIDTH RESERVATION currently in RAM
interface number 2
maximum queue length 10 minimum queue length 3
4 current defined classes:
class LOCAL
class DEFAULT
class ipx
class ip
protocol and filter assignments:
Protocol/Filter Class Priority
--------------- ----- --------
IP DEFAULT NORMAL
ARP DEFAULT LOW
IPX DEFAULT NORMAL
AP2 DEFAULT LOW
ASRT DEFAULT LOW
Not all parameters apply to all router platforms. Press Space twice after you type a command to display the available options for each command for your router. Enter help for information about using the command line interface.
[C] means the command is available at the BRS Config <NET-#> prompt.
[M] means the command is available at the BRS <NET-#> prompt.
| Command | Function |
|---|---|
| Add-circuit-class [C] | Adds a class and allocates a designated amount of bandwidth to the Frame Relay circuits assigned to the class. |
| Assign-circuit [C] | Assigns a Frame Relay circuit (DLCI) to a circuit class. |
| Change-circuit-class [C] | Changes the amount of bandwidth allocated to a circuit class. |
| Circuit [C] [M] | Selects the DLCI of a Frame Relay PVC to configure or monitor. |
| Clear-circuit-class [M] | Clears the counters for all circuit classes on this interface. |
| Deassign [C] | De-assigns a Frame Relay circuit (DLCI) from the circuit class to which it was previously assigned. |
| Default-circuit-class [C] | Sets the name of the default circuit class. |
| Del-circuit-class [C] | Deletes a previously configured class from this Frame Relay PVC. |
Add-circuit-class [C]
Adds a class to the BRS configuration and allocates a designated amount of bandwidth to the Frame Relay circuits assigned to the class.
add-circuit-class
Class name [DEFAULT]? ip
Percent bandwidth to reserve [10]? 25
|
Class-name
| The name of the bandwidth class. |
|
Percent bandwidth
| The percentage of the bandwidth of the Frame Relay circuit to assign to this class |
Assign-circuit [C]
Assigns a Frame Relay circuit (DLCI) to a circuit class.
assign-circuit
Circuit to assign [16]?
Class name [DEFAULT]?
change-circuit-class
Class name [DEFAULT]? ipx
Percent of bandwidth to reserve for circuit class [30]? 20
circuit
Circuit to reserve bandwidth [16]? 16
BRS Config <dlci 16>
Clear-circuit-class [M]
Clears the current BRS counters for this Frame Relay interface and stores the counters so you can. This command requires a router restart.
clear-circuit-class
You are about to clear BRS configuration information for this interface.
Are you sure you want to do this (Yes or [No]): yes
deassign-circuit
Circuit to deassign [16]?
default-circuit-class
Class name [DEFAULT]? ipx
del-circuit-class
Class name []? ipx