I'm in the process of implementing a HTTP server using long lived HTTP requests to stream real-time information to the browser. Im most situations it is working fine. But I still see a problem when trying to access the page from a iPad connected over UMTS.
It seems like there is some buffering going on. I can only see updates after more than 2 KB were sent. The next updates take another 2 KB to be displayed. And so forth. Please note that this doesn't happen when the iPad is connected over WiFi.
I can imagine that some HTTP header value has to be set to prevent the buffering. I already tried the following headers without any effect.
X-NoBuffering: 1
X-NoCompression: 1
Pragma: no-cache
Cache-Control: no-cache
Cache-Control: no-store
Cache-Control: must-revalidate
Cache-Control: private
The alternative to stretch each update to at least 2 KB is of course possible. But it doesn't seem neccessary in every other situation.