I'd probably put a time stamp in and update it during the hook processing. If you waited 5 minutes or so before clearing, that should be enough. If it's been 5 minutes since the last activity the connection should be dead, unless you're shipping big files.
Or, alternatively, in READ_REQUEST_HDR_HOOK pull the data out and attach it to the txn, cleaning it up in TXN_CLOSE. Set a time stamp on entry in the table and if that's been 5 minutes, the connection has definitely timed out.