IBM Support

ValidateProtocol performs a CRC check on each block of data

Question & Answer


Question

How much data is sent before a CRC check is performed when ValidateProtocol is enabled for the client node.

Cause

When VALIDATEPROTOCOL is enabled, a CRC check is performed on each verb of data that is sent during a backup/restore. However, a failure for the CRC check will only be sent when the communication has turned around such that the message can be relayed.

Answer

When the VALIDATEPROTOCOL parameter is enabled within the Node Definition on the Tivoli Storage Manager Server, a CRC check will be performed on the data that is being transferred between the client and the Server.

The Tivoli Storage Manager CRC check is based on a block of data at the Tivoli Storage Manager Application layer. After TCP/IP delivers the data to the destination, it is reassembled into the same block as when it was sent from the source machine. Within this block of data is a frame header, and if there is a CRC value within this header information, then the CRC will be recalculated and checked. If the recalculated CRC check does not match the original CRC value, an error will be generated. For example during a restore:

    ANS0342E (RC236) The CRC received from the Server does not match the CRC calculated by the client.

The CRC failure is reported to the client at specific intervals when the session is able to "turn around" and report to the client.

For example, when using the Backup/Archive client for the backup of a small file, the session will send the data as quickly as possible. During the sending of the data, the communication is one direction and there is no possibility for the server to talk to the client. At the end of the transaction when the data transfer is complete, then the server has the opportunity to send information to the client and report the fact that the CRC check failed. A single transaction is the largest size for checking the CRC, so a CRC check will be performed at least once per object. However, until the conversation between the Tivoli Storage Manager Client and Tivoli Storage Manager Server turns around, the client would not be aware that the CRC failed. Thus, the failure of the CRC check may occur prior to the error message being displayed. It is only when the conversation turns around, such as during end transaction processing, that the client is made aware of the problem having been detected.

For the Tivoli Storage Manager API clients, the data being sent is often quite large and thus the CRC check and communications back-and-forth occurs more frequently than just at the end of the transaction. In this case the turn around for the Tivoli Storage Manager Server to tell the client that it encountered a problem occurs when the confirm verb exchange is performed. The CRC is performed on every verb, but you will only see the results (get the error message) when the conversation turns around and is able to inform the client that a failure occurred.

[{"Product":{"code":"SSGSG7","label":"Tivoli Storage Manager"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Client","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Supported Versions","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}}]

Product Synonym

TSM

Document Information

Modified date:
17 June 2018

UID

swg21614542