pauseControl

pauseControl - configure a pause control packet.

SYNOPSIS

pauseControl sub-command options

DESCRIPTION

The pauseControl command is used to configure the parameters on a stream to transmit pause control frames.

STANDARD OPTIONS
da

(Read-only, except for 10GE cards) The MAC address of the interface receiving the pause control message. (default = 01 80 C2 00 00 01)

pauseControlType

Use to configure the priority control type. (default = ieee8023x)

Option

Value

Usage

ieee8023x

0

(default) IEEE 802.3x values:

The Length/Type for a MAC Control frame = 88 08.

The MAC Control Opcode for the PAUSE control function = 00 01.

Pause Quanta = 255: The user-specified pause counter value, measured in Pause Quanta units. (1 Pause Quanta = 512 bit times.) Valid range is 0 to 65535 pause quanta.

ieee8021Qbb

1

(default) IEEE 802.1Qbb values:

The Length/Type for a MAC Control frame = 88 08.

The MAC Control Opcode for the PAUSE control function = 01 01.

Priority Enable Vector = 00 00

Pause Quanta = '00...00' (16 octets) where each pair contains the enable/disable value and pause quanta value.

pauseFrame

Use to configure the hex byte priorities; 16 byte hex list. (default = '00....00')

pauseTime

The pause time, measured in pause quanta units. (1 Pause Quanta = 512 bit times.) The valid range is 0 to 65535 pause quanta. (default = 255)

pfcEnableValueList

Use to configure the priority parameters using pair list, where each pair contains the enable/disable value and pause quanta value. Only used when usePfcEnableValueList = true. (default = '{0 0} {0 0} {0 0} {0 0} {0 0} {0 0} {0 0} {0 0}')

priorityEnableVector

Use to configure the priority enable vector. (default = '00 00')

usePfcEnableValueList

true/false

Use to choose between pauseFrame or pfcEnableValueList. (default = false)

COMMANDS

The pauseControl command is invoked with the following sub-commands. If no sub-command is specified, returns a list of all sub-commands available.

pauseControl cget option

Returns the current value of the configuration option given by option. Option may have any of the values accepted by the pauseControl command.

pauseControl config option value

Modify the configuration options of the pauseControl. If no option is specified, returns a list describing all of the available options (see STANDARD OPTIONS) for pauseControl.

pauseControl decode capSlice [chasID cardID portID]

Decodes a captured slice/frame into the pause control variables. If not an pause control frame, returns TCL_ERROR. May be used to determine if the captured frame is a valid pause control frame. Specific errors are:

pauseControl get chasID cardID portID

Gets the current configuration of the pauseControl frame for port with id portID on card cardID, chassis chasID. from its hardware. Call this command before calling pauseControl cget option value to get the value of the configuration option. Specific errors are:

pauseControl set chasID cardID portID

Sets the configuration of the pause control frame in IxHAL for port with id portID on card cardID, chassis chasID by reading the configuration option values set by the pauseControl config option value command. Specific errors are:

pauseControl setDefault

Sets to IxTclHal default values for all configuration options.

EXAMPLES

package req IxTclHal

 

set hostname loopback

 

if {[ixConnectToChassis $hostname]} {

errorMsg "error connecting $hostname chassis"

return "FAIL"

}

 

set chassis [chassis cget -id]

set card 2

set port 1

set streamId 1

set portList [list [list $chassis $card $port] ]

 

port setFactoryDefaults $chassis $card $port

port config -enableDataCenterMode true

port config -flowControlType ieee8021Qbb

port config -pfcEnableValueList "{1 0} {0 2} {1 1} {0 2} {1 3} {0 3} {0 3} {1 1}"

 

if {[port set $chassis $card $port]} {

errorMsg "Error calling port set $chassis $card $port"

set retCode $::TCL_ERROR

}

 

ixWritePortsToHardware portList

ixCheckLinkState portList

 

stream setDefault

stream config -name "PFC stream"

stream config -priorityGroup priorityGroup0

 

stream setDefault

 

protocol setDefault

protocol config -name pauseControl

protocol config -ethernetType ethernetII

 

pauseControl setDefault

pauseControl config -da {01 80 C2 00 00 01}

pauseControl config -pauseTime 128

if {[pauseControl set $chassis $card $port]} {

errorMsg "Error calling pauseControl set $chassis $card $port"

set retCode $::TCL_ERROR

}

 

if {[stream set $chassis $card $port $streamId]} {

errorMsg "Error calling stream set $chassis $card $port $streamId"

set retCode $::TCL_ERROR

}

 

# second stream

incr streamId

protocol setDefault

protocol config -name pauseControl

protocol config -ethernetType ethernetII

pauseControl setDefault

pauseControl config -pauseControlType eee8021Qbb

pauseControl config -usePfcEnableValueList $::true

pauseControl config -pfcEnableValueList "{1 555} {0 0} {0 0} {0 0} {1 2} {1 6} {0 0} {0 0}"

if {[pauseControl set $chassis $card $port]} {

errorMsg "Error calling pauseControl set $chassis $card $port"

set retCode $::TCL_ERROR

}

 

if {[stream set $chassis $card $port $streamId]} {

errorMsg "Error calling stream set $chassis $card $port $streamId"

set retCode $::TCL_ERROR

}

 

ixWriteConfigToHardware portList -noProtocolServer

SEE ALSO

ip