Fortinet white logo
Fortinet white logo

Administration Guide

Configuring flow control, priority-based flow control, and ingress pause metering

Configuring flow control, priority-based flow control, and ingress pause metering

Flow control allows you to configure a port to send or receive a “pause frame” (that is, a special packet that signals a source to stop sending flows for a specific time interval because the buffer is full). By default, flow control is disabled on all ports.

config switch physical-port

edit <port_name>

set flow-control {both | rx | tx | disable}

end

Parameters enable flow control to do the following:

  • rx—receive pause control frames
  • tx—transmit pause control frames
  • both—transmit and receive pause control frames

Priority-based flow control allows you to avoid frame loss by stopping incoming traffic when a queue is congested.

After you enable priority-based flow control, you then configure whether a port sends or receives a priority-based control frame:

config switch physical-port

edit <port_name>

set priority-based-flow-control enable

set flow-control {both | rx | tx | disable}

end

When priority-based flow control is disabled, 802.3 flow control can be used.

NOTE: Priority-based flow control does not support half-duplex speed. When FortiSwitch ports are set to autonegotiate the port speed (the default), priority-based flow control is available if the FortiSwitch model supports it. Lossless buffer management and traffic class mapping are not supported.

If you enable flow control to transmit pause control frames (with the set flow-control tx command), you can also use ingress pause metering to limit the input bandwidth of an ingress port. Because ingress pause metering stops the traffic temporarily instead of dropping it, ingress pause metering can provide better performance than policing when the port is connected to a server or end station. To use ingress pause metering, you need to set the ingress metering rate in kilobits and set the percentage of the threshold for resuming traffic on the ingress port.

config switch physical-port

edit <port_name>

set flow-control tx

set pause-meter-rate <64–2147483647; set to 0 to disable>

set pause-resume {25% | 50% | 75%}

next

end

For example:

config switch physical-port

edit port29

set flow-control tx

set pause-meter-rate 900

set pause-resume 50%

next

end

Configuring flow control, priority-based flow control, and ingress pause metering

Configuring flow control, priority-based flow control, and ingress pause metering

Flow control allows you to configure a port to send or receive a “pause frame” (that is, a special packet that signals a source to stop sending flows for a specific time interval because the buffer is full). By default, flow control is disabled on all ports.

config switch physical-port

edit <port_name>

set flow-control {both | rx | tx | disable}

end

Parameters enable flow control to do the following:

  • rx—receive pause control frames
  • tx—transmit pause control frames
  • both—transmit and receive pause control frames

Priority-based flow control allows you to avoid frame loss by stopping incoming traffic when a queue is congested.

After you enable priority-based flow control, you then configure whether a port sends or receives a priority-based control frame:

config switch physical-port

edit <port_name>

set priority-based-flow-control enable

set flow-control {both | rx | tx | disable}

end

When priority-based flow control is disabled, 802.3 flow control can be used.

NOTE: Priority-based flow control does not support half-duplex speed. When FortiSwitch ports are set to autonegotiate the port speed (the default), priority-based flow control is available if the FortiSwitch model supports it. Lossless buffer management and traffic class mapping are not supported.

If you enable flow control to transmit pause control frames (with the set flow-control tx command), you can also use ingress pause metering to limit the input bandwidth of an ingress port. Because ingress pause metering stops the traffic temporarily instead of dropping it, ingress pause metering can provide better performance than policing when the port is connected to a server or end station. To use ingress pause metering, you need to set the ingress metering rate in kilobits and set the percentage of the threshold for resuming traffic on the ingress port.

config switch physical-port

edit <port_name>

set flow-control tx

set pause-meter-rate <64–2147483647; set to 0 to disable>

set pause-resume {25% | 50% | 75%}

next

end

For example:

config switch physical-port

edit port29

set flow-control tx

set pause-meter-rate 900

set pause-resume 50%

next

end