In USB 2.0 Host can only return ACK for correct data. Lets suppose we got corrupted data from slave device then what master(Host) will do ?. If slave didn't got any response then what it will do ?
ACK handshake is sent if receiver accepts error-free data packet. In other case, host may return tokens STALL, NAK or EYET. More detailed information you could find on pages 196 and 219 from USB2.0 standard.