Take a look at this topic: What are the design limitations leading to separate send/receive transports on the client and can we lift them?