On profiling, I'm seeing that about 11% of time when sending messages is spent in the keep alive filter.I'm going to move this functionality out of the filter and re-implement, probably in the RemotingConnectionImpl.