Patent ID: 8826041

Claim:
A method of operating a data processing system having a host computer coupled to a storage device by functional components along a data path, comprising: engaging in an in-band communications protocol between first and second ones of the functional components, the in-band communications protocol employing protocol commands and responses carried along the data path as contents of in-band transport messages and responses, the protocol commands and responses including a handshake command and a handshake response used during an initial handshake operation, each protocol command and response having a respective protocol signature field carrying one of distinct first and second signature values used to identify the presence of the protocol command or response in the transport messages and responses at different locations along the data path; at the first functional component during the handshake operation, (1) including the first signature value in the protocol signature field of an outgoing handshake command being sent on the data path in a transport message, and (2) in response to receiving a transport response from the data path, confirming that the first signature value is found at an expected location of the protocol signature field as a condition to interpreting the contents of the transport response as an incoming handshake response; and at the second functional component during the handshake operation, (1) in response to receiving the transport message from the data path, confirming that the second signature value is found at an expected location of the protocol signature field as a condition to interpreting the contents of the transport message as an incoming handshake command, and (2) including the second signature value in the protocol signature field of an outgoing handshake response being sent on the data path in the transport response; wherein the data processing system further includes an intermediate functional component on the data path between the first and second functional components, the intermediate functional component performing one or more of remapping, replication and multipathing functions affecting a manner of access to the storage device via the data path, the intermediate functional component being operative (1) to perform layer-specific logic during a subsequent operation of the in-band communications protocol, and (2) during the handshake operation, to substitute the second signature value for the first signature value in the handshake command of the transport message and to substitute the first signature value for the second signature value in the handshake response of the transport response.