Data Transmission

The data transmission commands relate the preparation for, or the transmission of data to the DUT. Several utility commands, which calculate frequently used values, are detailed as well. The commands covered are as follows:

Setup

ixCheckLinkState

The ixCheckLinkState command checks the link state on a group of ports. This command should be called early in the script to ensure that all links are up before any traffic is transmitted to the DUT. The format of the command is as follows:

ixCheckLinkState portList

where portList is the set of ports to check. A success value of 0 is returned if all of the ports have link.

Refer to “ixCheckLinkState” for a complete explanation of this command.

ixCheckPPPState

The ixCheckPPPState command checks the state on a group of POS ports. This command should be called early in the script to ensure that all POS ports are up before any traffic is transmitted to the DUT. The format of the command is as follows:

ixCheckPPPState portList

where portList is the set of ports to check. A success value of 0 is returned if all of the ports have link.

Refer to “ixCheckPPPState” for a complete explanation of this command.

ixSetPortPacketFlowMode / ixSetPacketFlowMode

These commands set the mode of the indicated ports to flow mode as opposed to stream mode. The format of these commands are as follows:

ixSetPortPacketFlowMode chassisID cardID portID [write]

ixSetPacketFlowMode portList [write]

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports. The write argument commits the settings to the hardware immediately.

Refer to “ixSetPortPacketFlowMode” and “ixSetPacketFlowMode” for a complete explanation of these commands.

ixSetPortPacketStreamMode / ixSetPacketStreamMode

These commands set the mode of the indicated ports to stream mode as opposed to flow mode. The format of these commands are as follows as follows:

ixSetPortPacketStreamMode chassisID cardID portID [write]

ixSetPacketStreamMode portList [write]

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports. The write argument commits the settings to the hardware immediately.

Refer to “ixSetPortPacketStreamMode” and “ixSetPacketStreamMode” for a complete explanation of these commands.

ixSetPortAdvancedStreamSchedulerMode / ixSetAdvancedStreamSchedulerMode

These commands set the mode of the indicated ports to advanced stream scheduler mode. The format of these commands are as follows:

ixSetPortAdvancedStreamSchedulerMode chassisID cardID portID [write]

ixSetAdvancedStreamSchedulerMode portList [write]

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports. The write argument commits the settings to the hardware immediately.

Refer to “ixSetPortAdvancedStreamSchedulerMode” and “ixSetAdvancedStreamSchedulerMode” for a complete explanation of these commands.

ixSetPortTcpRoundTripFlowMode / ixSetTcpRoundTripFlowMode

These commands set the mode of the indicated ports to TCP round trip flow mode as opposed to flow or stream mode. The format of these commands are as follows:

ixSetPortTcpRoundTripFlowMode chassisID cardID portID [write]

ixSetTcpRoundTripFlowMode portList [write]

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports. The write argument commits the settings to the hardware immediately.

Refer to “ixSetPortTcpRoundTripFlowMode” and “ixSetTcpRoundTripFlowMode” for a complete explanation of these commands.

disableUdfs

The disableUfs command disables one or more UDFs. The format of the command is as follows:

disableUdfs udfList

where udfList is a list of values in the range 1-4. For example, {1 2 3 4}. A call to stream set is needed to write these values to the hardware.

Refer to “disableUdfs” for a full description of this command.

Negotiation

ixRestartPortAutoNegotiation / ixRestartAutoNegotiation

These commands are used to restart auto-negotiation on a port or list of ports. The format of these commands are as follows:

ixRestartPortAutoNegotiation chassisID cardID portID

ixRestartAutoNegotiation portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixRestartAutoNegotiation” and “ixRestartPortAutoNegotiation” for complete descriptions of these commands.

ixRestartPortPPPNegotiation / ixRestartPPPNegotiation

These commands are used to restart PPP negotiation on a port or list of ports. The format of these commands are as follows:

ixRestartPortPPPNegotiation chassisID cardID portID

ixRestartPPPNegotiation portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixRestartPortPPPAutoNegotiation” and “ixRestartPPPNegotiation” for complete descriptions of these commands.

Start Transmit

ixStartPortTransmit / ixStartTransmit / ixStopPortTransmit / ixStopTransmit

These commands are used to start and then stop transmission on a single port or a group of ports. The ixStartCapture or ixStartPortCapture should be used before these commands. The format of these commands are as follows:

ixStartPortTransmit chassisID cardID portID

ixStartTransmit portList

ixStopPortTransmit chassisID cardID portID

ixStopTransmit portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixStartPortTransmit”, “ixStartTransmit”, “ixStopPortTransmit”and “ixStopTransmit” for complete descriptions of these commands.

ixStartStaggeredTransmit

This command performs the same function as ixStartTransmit, but staggers the time from one port’s start to the next by 25 - 30ms. The format of this command is as follows:

ixStartStaggeredTransmit portList

where portList identifies a number of ports to start staggered transmission on.

Refer to “ixStartStaggeredTransmit” for a complete descriptions of this command.

ixCheckPortTransmitDone / ixCheckTransmitDone

These commands poll a single port or list of ports to determine when all data has been transmitted to the DUT. This command does not return until transmission is complete on all the ports referenced.Note: These commands should be called no earlier than one second after starting transmit with ixStartTransmit or ixStartPortTransmit. We recommend that an after 1000 statement be included after each start transmit. The format of these commands are as follows:

ixCheckPortTransmitDone chassisID cardID portID

ixCheckTransmitDone portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixCheckPortTransmitDone” and “ixCheckTransmitDone” for a complete explanation of these commands.

ixStartPortCollisions / ixStartCollisions / ixStopPortCollisions / ixStopCollisions

These commands are used to start and then stop generation of forced collisions on a single port or list of ports. The forcedCollisions commandshould be used before these commands to set up the parameters for collision generation. The format of these commands are as follows:

ixStartPortCollisions chassisID cardID portID

ixStartCollisions portList

ixStopPortCollisions chassisID cardID portID

ixStopCollisions portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixStartPortCollisions”, “ixStartCollisions”, “ixStopPortCollisions”and “ixStopCollisions” for complete descriptions of these commands.

ixStartPortAtmOamTransmit / ixStartAtmOamTransmit / ixStopPortAtmOamTransmit / ixStopAtmOamTransmit

These commands are used to start and then stop ATM OAM message transmit on a single port or list of ports. The atmOam commandshould be used before these commands to set up the parameters for collision generation. The format of these commands are as follows:

ixStartPortAtmOamTransmit chassisID cardID portID

ixStartAtmOamTransmit portList

ixStopPortAtmOamTransmit chassisID cardID portID

ixStopAtmOamTransmit portList

where chassisID, cardID, and portID identifies a single port and portList identifies a number of ports.

Refer to “ixStartAtmOamTransmit”, “ixStopPortAtmOamTransmit”, “ixStartPortAtmOamTransmit”and “ixStopAtmOamTransmit” for complete descriptions of these commands.

ixClearScheduledTransmitTime / ixSetScheduledTransmitTime

These commands are used to reset and set the transmit duration for ports that support that feature. Streams may be programmed for continuous transmit and these commands used to limit the overall test to a period of time.

Refer to ixClearScheduledTransmitTime and ixSetScheduledTransmitTime, for complete descriptions of these commands.

ixLoadPoePulse / ixLoadPortPoePulse

These commands are used to send a pulse on Power over Ethernet modules.

Refer to ixLoadPoePulse and ixLoadPortPoePulse, for complete descriptions of these commands.

Calculation Utilities

calculateMaxRate

The calculateMaxRate command calculates the maximum frame rate for a port, based on the frame size and preamble size. The format of the command is as follows:

calculateMaxRate chassis card port [frameSize preambleOrAtmEncap]

where chassis, card, port: a port of the type that you wish the maximum frame rate calculated for;

frameSize: The size of the frame (default = 64);

preambleOrAtmEncap: The size of the preamble, or the ATM encapsulation used for ATM cards. The values for ATM encapsulation may be found in the encapsulation option of the atmHeader command. (default = 8).

host2addr

This command converts an IP address in dotted notation to a list of hex bytes. The format of the command is as follows:

host2addr IPaddr

where IPaddr is the address in dotted notation. The result is a list of four hex byte values.

Refer to “host2addr” for a full description of this command.

byte2IpAddr

This command converts a list of four hex bytes into an IP address in dotted notation. The format of the command is as follows:

byte2IpAddr hexIPaddr

where hexIPaddr is the address as a list of four hex byte values. The result is a dotted notation.

Refer to “byte2IpAddr” for a full description of this command.

dectohex

This command converts a decimal number to hexadecimal notation. The format of the command is as follows:

dectohex decnum

where decnum is the decimal value. The result is in hexadecimal notation.

Refer to “dectohex” for a full description of this command.

hextodec

This command converts a hexadecimal number to decimal notation. The format of the command is as follows:

hextodec hexnum

where hexnum is the hexadecimal value. The result is in decimal notation.

Refer to “hextodec” for a full description of this command.