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
- ixCheckPPPState
- ixSetPortPacketFlowMode / ixSetPacketFlowMode
- ixSetPortPacketStreamMode / ixSetPacketStreamMode
- ixSetPortAdvancedStreamSchedulerMode / ixSetAdvancedStreamSchedulerMode
- ixSetPortTcpRoundTripFlowMode / ixSetTcpRoundTripFlowMode
- disableUdfs
- Negotiation
- ixRestartPortAutoNegotiation / ixRestartAutoNegotiation
- ixRestartPortPPPNegotiation / ixRestartPPPNegotiation
- Start Transmit
- ixStartPortTransmit / ixStartTransmit / ixStopPortTransmit / ixStopTransmit
- ixStartStaggeredTransmit
- ixCheckPortTransmitDone / ixCheckTransmitDone
- ixStartPortCollisions / ixStartCollisions / ixStopPortCollisions / ixStopCollisions
- ixStartPortAtmOamTransmit / ixStartAtmOamTransmit / ixStopPortAtmOamTransmit / ixStopAtmOamTransmit
- ixClearScheduledTransmitTime / ixSetScheduledTransmitTime
- ixLoadPoePulse / ixLoadPortPoePulse
- Calculation Utilities
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.