WeOS
5.29.0

# Flow Control

This configuration option is only available on devices that has support for this functionality.

## Introduction

Flow control is a mechanism for stopping transmission of data on ports. The goal is to avoid packet loss when network is congested. This is accomplished by the MAC sending pause frames to the sender. Only full-duplex ports may send pause frames. For flow control to function both the ingress port (that sends the pause frames) and egress port (that is congested) on a switch needs to be configured with this option, and of course the port that should pause sending.

## Configuration

    example:/#> configure
    example:/config/#> port ethX
    example:/config/port-ethX/#> help flow-control
    Syntax:
            [no] flow-control
    Usage:
            Set flow control, sending and reacting to pause frames.

            off      : Disable        (autoneg = 0, rx = 0, tx = 0)
            autoneg  : Autonegotiate  (autoneg = 1, rx = 1, tx = 1)
            forced   : Forced on      (autoneg = 0, rx = 1, tx = 1)
    example:/config/port-ethX/#> flow-control autoneg
    example:/config/port-ethX/#> show flow-control
    autoneg

### Syntax

`no flow-control OR flow-control off`

  Disables flow control.

  no
    Disable.
`flow-control <autoneg|forced>`

  Enables flow control.

  autoneg
    Set the port to autonegotiate flow control. Both sides of a link needs to set this for feature to be enabled.
  forced
    Set the port to force sending of pause frames.

### Note

Because of differences in hardware implementation, how flow control is configured can differ.

For some platforms, it’s enough to enable flow control on the receiving port. On others, flow control must be enabled on both the receiving and transmitting port relevant for the flow of frames.

« Previous Next »