captureBuffer
captureBuffer - view the capture frames in the captured buffer.
SYNOPSIS
captureBuffer sub-command options
DESCRIPTION
After the capture command is used to configure the capture buffer, the captureBuffer command is used to get a range of frames from the capture buffer. Jitter values are calculated on those frames that meet the constraint criteria. Three different types of constraint criteria are available; ethernet type, frame size and pattern. For example, if jitter is to be calculated only for 64 byte frames, then the framesize option must be set to 64 and the enableFramesize option set to true. Constraints must be set with setConstraint prior to a get.
Note: For some load modules (that is, LSM10GE), it is advisable to request captureBuffer data in chunks. Unless both the chassis and client machines have sufficiently high available memory, they may be overloaded by captured data.
When using the get command to retrieve the capture buffer, the capture operation is not stopped.
STANDARD OPTIONS
averageDeviation
Read-only. 64-bit value. The average deviation of the average latencies calculated by the command captureBuffer getStatistics.
averageLatency
Read-only. 64-bit value. The average latency (in nanoseconds) calculated by the command captureBuffer getStatistics.
enableEthernetType true/false
Enables the constraint used to calculate jitter statistics. If enabled, jitter is calculated only for frames whose frame type field matches the ethernet type set by the option ethernetType. Does not apply unless the command captureBuffer setConstraint is applied. (default = false)
enableFramesize
true/false
Enables this constraint used to calculate jitter statistics. If enabled, jitter is calculated only for frames whose size matches the framesize set by the command option framesize. Does not apply unless the command captureBuffer setConstraint is applied. (default = false)
enablePattern
true/false
Constrain the jitter statistics calculations to frames in the capture buffer that match the ethernet pattern set by the pattern and patternOffset options. Does not apply unless captureBuffer setConstraint is applied. (default = false)
ethernetType
Constrain the jitter statistics calculations to frames in the capture buffer that match the ethernet type set by this option. A value such as {08 00} would be appropriate. Does not apply unless option enableEthernetType is set to true and captureBuffer setConstraint is applied. (default = "")
fir
Read-only. The frame identity record.
frame
Read-only. The contents of the selected frame based on the sliceSize parameter set by the capture command.
framesize
Constrain the jitter statistics calculations to frames in the capture buffer whose frame size matches the value set by this option. Does not apply unless the option enableFramesize is set to true and captureBuffer setConstraint is applied. (default = 64)
latency
Read-only. 64-bit value. The frame latency, calculated as the difference between the transmit time and receive time of the frame, in nanoseconds.
length
Read-only. The total length of the frame, regardless of the actual number of bytes in the capture buffer.
maxLatency
Read-only. 64-bit value. The maximum frame latency (in nanoseconds) calculated by the command captureBuffer getStatistics.
minLatency
Read-only. 64-bit value. The minimum frame latency (in nanoseconds) calculated by the command captureBuffer getStatistics.
numFrames
Read-only. The number of frames (or slices, a slice could contain a whole frame or a part of a frame) in the capture buffer. When captureBuffer setConstraint is called this value is updated with the number of frames for each constraint.
pattern
Enables this constraint used to calculate jitter statistics. If enabled, jitter is calculated only for frames whose pattern matches the pattern in the frame at the offset set by the command option patternOffset. A value of the form {11 12 02 44} would be approprite. Does not apply unless the command captureBuffer setConstraint is applied. (default = "")
patternOffset
Used in conjunction with the pattern command. Does not apply unless the command captureBuffer setConstraint is applied. (default = 12)
standardDeviation
Read-only. 64-bit value. The standard deviation of the average latencies calculated by the command captureBuffer getStatistics.
status
Read-only. The status of the frame. Except where noted the following status values are used:
Option |
Value |
Usage |
---|---|---|
capNoErrors |
0x00 |
captured frame has no error |
capBadCrcGig |
0x01 |
captured frame has a bad or missing CRC (gigabit only) |
capSymbolErrorsGig |
0x02 |
captured frame has symbol error (gigabit only) |
capBadCrcAndSymbolGig |
0x03 |
captured frame has a bad or missing CRC and symbol error (gigabit only) |
capUndersizeGig |
0x04 |
captured frame is undersize (gigabit only) |
capBadCrcAndUndersizeGig |
0x05 |
captured frame has a bad or missing CRC and is undersize (gigabit only) |
capBadCrcAndSymbolAnd |
0x07 |
captured frame has a bad or missing CRC and is undersize (gigabit only) |
capOversizeGig |
0x08 |
captured frame is oversize with a valid CRC (gigabit only) |
capBadCrc |
0x41 |
captured frame has a bad or missing CRC |
capBadCrcAndSymbolError |
0x43 |
captured frame has a bad or missing CRC and symbol error |
capUndersize |
0x44 |
captured frame is undersize |
capFragment |
0x45 |
captured frame is a fragment |
capOversize |
0x48 |
captured frame is oversize with a valid CRC |
capOversizeAndBadCrc |
0x49 |
captured frame is oversize with a bad or missing CRC |
capDribble |
0x50 |
captured frame has a dribble error |
capAlignmentError |
0x51 |
captured frame has alignment error (10/100 only) |
capAlignAndSymbolError |
0x53 |
captured frame has alignment and symbol error |
capGoodFrame |
0xC0 |
captured frame is a valid frame with no errors (default) |
capBadCrcAndGoodFrame |
0xC1 |
captured frame has a bad or missing CRC but otherwise valid frame |
capErrorFrame |
0xFF |
captured frame has a general error other than one of the specified errors in this list |
The following status values are used for OC48 cards:
Option |
Value |
Usage |
---|---|---|
capOc48Trigger |
0x40000000 |
A status bit that indicates that the captured packet includes the bit that caused the trigger. |
capOc48GoodPacket |
0x80000000 |
captured frame is valid with no errors ( |
capOc48TruncatedPacket |
0x80000001 |
captured frame is a truncated packet |
capOc48Integrity |
0x80000008 |
captured frame's integrity signature matched |
capOc48BadIntegrityCheck |
0x80000010 |
captured frame failed data integrity validation |
capOc48BadTCPUDPChecksum |
0x80000020 |
captured frame has a bad TCP or UDP checksum |
capOc48BadIPChecksum |
0x80000040 |
captured frame is valid with no errors |
capOc48BadCrc |
0x80000080 |
captured frame is valid with no errors |
The following status values are used for 10/100 TX and 10/100/1000 TXS cards:
Option |
Value |
Usage |
---|---|---|
cap10100DpmTrigger |
0x40000000 |
A status bit that indicates that the captured packet includes the bit that caused the trigger. |
cap10100DpmGoodPacket |
0x80000000 |
captured frame is valid with no errors |
cap10100DpmOversize |
0x80000001 |
capture frame is oversized. |
cap10100DpmUndersize |
0x80000002 |
capture frame is undersized. |
cap10100DpmIntegritySignatureMatch |
0x80000008 |
captured frame's integrity signature matched |
cap10100DpmBadIntegrity |
0x80000010 |
captured frame failed data integrity validation |
cap10100DpmBadTCPUDP |
0x80000020 |
captured frame has a bad TCP or UDP checksum |
cap10100DpmBadIP |
0x80000040 |
captured frame is valid with no errors |
cap10100DpmBadCrc |
0x80000080 |
captured frame is valid with no errors |
The following status values are used for ATM cards and ATM/POS cards operating in ATM mode:
Option |
Value |
Usage |
---|---|---|
capAtmEthernetBadCrc |
0x80000080 |
Bad Ethernet CRC. |
capAtmBadIPChecksum |
0x80000040 |
Bad IP checksum. |
capAtmBadTCPUDPChecksum |
0x80000020 |
Bad TCP or UDP checksum. |
capAtmBadIntegrityCheck |
0x80000010 |
Bad Data Integrity. |
capAtmIntegritySignatureMatch |
0x80000008 |
Data integrity signature matched. |
capAtmAal5BadCrc |
0x80000004 |
Bad AAL5 CRC. |
cap AtmTimeout |
0x80000002 |
ATM timeout. |
capAtmOversize |
0x80000001 |
ATM oversize packet. |
capAtmGoodPacket |
0x80000000 |
Good packet received. |
capAtmTrigger |
0x40000000 |
Data capture was triggered. |
The following are generic capture error codes:
Option |
Value |
Usage |
---|---|---|
capGoodPacketGeneric |
0x80000000 |
Captured frame is valid with no errors. |
capOversizeGeneric |
0x80000001 |
Captured frame is oversize. |
capUndersizeGeneric |
0x80000002 |
Captured frame is undersize. |
capIntegritySignatureMatchGeneric |
0x80000008 |
Captured frame's integrity signature matched. |
capBadIntegrityCheckGeneric |
0x80000010 |
Captured frames failed data integrity validation. |
capBadTcpUdpChecksumGeneric |
0x80000020 |
Captured frame has a bad TCP or UDP checksum. |
capBadIpChecksumGeneric |
0x80000040 |
Captured frame is valid with no errors. |
capBadCrcGeneric |
0x80000080 |
Captured frame is valid with no errors. |
capSmallSequenceErrorGeneric |
0x80000100 |
Captured frame has small error in sequence. |
capBigSequenceErrorGeneric |
0x80000200 |
Captured frame has big error in sequence. |
capReverseSequenceErrorGeneric |
0x80000400 |
Captured frame has error in reverse sequence. |
capInvalidFcoeFrame |
0x80000800 |
Captured fram has invalid Fcoe. |
capBadInnerIpChecksumGeneric |
0x80001000 |
Captured frame is valid with no errors. |
capTransmitPacket |
0x80002000 |
Captured frame is a transmit packet. Support for this status is enabled with kFeatureCaptureTxPackets. |
capTriggerGeneric |
0x40000000 |
Capture stopped due to a trigger condition. |
timestamp
Read-only. 64-bit value. The arrival time of the captured frame in nanoseconds.
COMMANDS
The captureBuffer command is invoked with the following sub-commands. If no sub-command is specified, returns a list of all sub-commands available.
captureBuffer cget option
Returns the current value of the configuration option given by option. Option may have any of the values accepted by the captureBuffer command.
captureBuffer clear Constraint
Clears the constraints used to calculate the average, standard deviation and average deviation of the latencies of the captured frames in the capture buffer. Statistics is calculated on the entire buffer.
captureBuffer config option value
Modify the configuration options of the captureBuffer. If no option is specified, returns a list describing all of the available options (see STANDARD OPTIONS) for captureBuffer.
captureBuffer export fileName [encodeVersion]
Exports the current contents of the capture buffer from the last captureBuffer get command to the file indicated in fileName; fileName may include a full or relative path. The format of the file is dictated by the extension on the file (only the .cap and .enc file format is supported):
.txt |
a text file suitable for import into a database. |
.cap |
a binary format for use with the captureBuffer import function or IxExplorer's File Import function. |
.enc |
a binary format for use with NAI's Sniffer program. Note that when working with POS ports, the export function maps the POS frames to look like Ethernet data: the POS header is stripped off (4 bytes), the MAC address is padded out to 12 bytes with zeroes, a packet type identifier of 0x0800 (2 bytes, Ethernet) is added and the beginning of the MAC DA is overwritten with the POS header. Note: When a file is exported to .enc format, the CRC frame check sequence gets stripped away and is not present when the saved file is imported. |
The optional second argument is used when the fileName's extension is .enc. The choices are:
Option |
Value |
Usage |
---|---|---|
capExportSniffer4x |
2 |
(default) Sniffer 4.x format |
capExportSniffer1x |
3 |
Sniffer 1.x format |
captureBuffer get chasID cardID portID fromFrame toFrame
Gets the group of captured frames from the capture buffer for chasID cardID portID, beginning with frame fromFrame through frame and puts it into local memory. Call this command before calling captureBuffer getframe frameNum to get the capture buffer from hardware. The capture cget -nPackets should be called before this command to determine how many frames are available in the capture buffer. In order for this command to succeed, the port must either be unowned, or you must be logged in as the owner of the port.
captureBuffer getConstraint contraintNum
Gets the constraints used to calculate the average, standard deviation and average deviation of the latencies of the captured frames in the capture buffer retrieved by captureBuffer get. The value returned is the constraint number. This constraint number can be used in "captureBuffer getConstraint" command to retrieve the constraint settings.
captureBuffer getframe frameNum
Gets the capture buffer data from local memory for frameNum. Call captureBuffer get chasID cardID portID fromFrame toFrame before calling this command.
captureBuffer getStatistics
Calculates the average, standard deviation and average deviation of the latencies of the captured frames in the capture buffer retrieved by captureBuffer get.
captureBuffer import fileName chasID cardID portID
Imports a file into the capture buffer indicated by chasID cardID portID from the file indicated in fileName; fileName may include a full or relative path. The format of the file is dictated by the extension on the file:
.cap |
a binary format for use with the captureBuffer import function or IxExplorer's File Import function. |
.enc |
a binary format for use with NAI's Sniffer program. Note that when working with POS ports, the export function maps the POS frames to look like Ethernet data: the POS header is stripped off (4 bytes), the MAC address is padded out to 12 bytes with zeroes, a packet type identifier of 0x0800 (2 bytes, Ethernet) is added and the beginning of the MAC DA is overwritten with the POS header. |
captureBuffer setConstraint
Sets the constraints used to calculate the average, standard deviation and average deviation of the latencies of the captured frames in the capture buffer retrieved by captureBuffer get.
captureBuffer setDefault
Sets to IxTclHal default values for all configuration options.
EXAMPLES
See examples under capture