The parameter MessageReceiveTimeout is the maximum acceptable time between two DataSetMessages. If there is no DataSetMessage received within this period, the DataSetReader State shall be changed to Error_3 until the next DataSetMessage is received. The DataSetMessages can be data or keep alive messages.

The MessageReceiveTimeout is related to the Publisher side parameters PublishingInterval, KeepAliveTime and KeyFrameCount.