44. The system of claim 24 , wherein assembling the plurality of packets into one or more messages comprises: synchronizing the plurality of packets; sorting each of the plurality of packets into one of two host queues according to the transmission direction of the packet; processing the two host queues into a single push queue by alternately processing the packets in one of the two host queues until a packet is encountered which cannot be disposed of or the host queue is empty and then processing the packets in the other one of the two host queues until a packet is encountered that cannot be disposed of or the host queue is empty; if loss of a packet is detected, generating a synthetic gap packet to stand in for the lost packet; and bundling packets in the single push queue into the one or more messages, wherein each of the one or more messages is a request message or a response message.
44. The system of claim 24 , wherein assembling the plurality of packets into one or more messages comprises: synchronizing the plurality of packets; sorting each of the plurality of packets into one of two host queues according to the transmission direction of the packet; processing the two host queues into a single push queue by alternately processing the packets in one of the two host queues until a packet is encountered which cannot be disposed of or the host queue is empty and then processing the packets in the other one of the two host queues until a packet is encountered that cannot be disposed of or the host queue is empty; if loss of a packet is detected, generating a synthetic gap packet to stand in for the lost packet; and bundling packets in the single push queue into the one or more messages, wherein each of the one or more messages is a request message or a response message. 45. The system of claim 44 , wherein the synthetic gap packet comprises an indication that it is a stand-in for a lost packet.