Just inserting std-in in the forward chain will not work since we probably want the 2 Mbps limit
for outbound traffic to be separate from the 2 Mbps limit for inbound traffic. If 2 Mbps of
outbound traffic attempts to flow through the pipe in addition to 2 Mbps of inbound traffic, the
total attempting to flow is 4 Mbps. Since the pipe limit is 2 Mbps, the actual flow will be close to 1
Mbps in each direction.
Raising the total pipe limit to 4 Mbps will not solve the problem since the single pipe will not
know that 2 Mbps of inbound and 2 Mbps of outbound are the intended limits. The result might
be 3 Mbps outbound and 1 Mbps inbound since this also adds up to 4 Mbps.
Using Two Separate Pipes Instead
The recommended way to control bandwidth in both directions is to use two separate pipes, one
for inbound and one for outbound traffic. In the scenario under discussion each pipe would have
a 2 Mbps limit to achieve the desired result. The following example goes through the setup for
this.
Example 10.2. Limiting Bandwidth in Both Directions
Create a second pipe for outbound traffic:
Command-Line Interface
gw-world:/> add Pipe std-out LimitKbpsTotal=2000
Web Interface
1. Go to: Policies > Traffic Management > Pipes > Add > Pipe
2. Specify a name for the pipe, for example std-out
3. Enter 2000 in Total textbox
4. Click OK
After creating a pipe for outbound bandwidth control, add it to the forward pipe chain of the
rule created in the previous example:
Command-Line Interface
gw-world:/> set PipeRule Outbound ForwardChain=std-out
Web Interface
1. Go to: Traffic Management > Traffic Shaping > Pipe Rules
2. Right-click on the pipe rule that was created in the previous example and choose Edit
3. Under the Traffic Shaping tab, select std-out in the Forward Chain list
4. Click OK
This results in all outbound connections being limited to 2 Mbps in each direction.
Chapter 10: Traffic Management
782