1. A computer-implemented method comprising: (A) at a client, transmitting a speech stream and a control stream to a speech recognition server using a Hypertext Transfer Protocol (HTTP) having a first timeout period; (B) at the speech recognition server, using an automatic speech recognition engine to initiate recognition of the speech stream; (C) at the client, transmitting a first request for a speech recognition result to the server using HTTP; and (D) at the server, transmitting a notification to the client indicating that no speech recognition results have become available within a second timeout period that differs from the first timeout period; and (E) at the client, in response to receiving the notification, transmitting a second request for the speech recognition result to the server using HTTP.