Patent ID: 7835309

Claim:
At a computer system including one or more processors and system memory, the computer system also including a duplex service component, the duplex service component communicating with one or more services over one or more duplex communication mediums and communicating with one or more duplex client components over one or more request/reply communication mediums, a method for transferring data in response to a client request, the method comprising: an act of the duplex service component receiving a request for messages from a duplex client component using one of the one or more request/reply communication mediums, the request including an endpoint identifier identifying a client endpoint used between a corresponding duplex client component and the duplex service component, the corresponding duplex client component selected from among the one or more duplex client components, the corresponding duplex client component connected to a client; an act of the duplex service component queuing the request in a read queue, the read queue configured to queue requests that are waiting for replies; an act of the duplex service component receiving an application message from a service using one of the one or more duplex communication mediums, the application message including the endpoint identifier and a session identifier, the session identifier identifying a transfer session between the service and a client connected to the duplex client component; an act of the duplex service component queuing the application message in a write queue, the write queue configured to queue application messages to return for subsequent client requests; and an act of the duplex service component sending a reply to the duplex client component using the request/reply communication medium, the reply sent to the duplex client component based on the endpoint identifier, the reply corresponding to the request that was received using the request/reply protocol.