Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Message-ID: <3C066FF2.CAD0EB88@syntrex.com> Date: Thu, 29 Nov 2001 18:27:14 +0100 From: Pavel Tsekov X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.2-2 i686) X-Accept-Language: en MIME-Version: 1.0 To: cygwin-apps AT cygwin DOT com Subject: [setup.exe] HTTP v1.1 and persistent connections Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, there! :) I've been testing the new SimpleSocket with a simple program I've written - it issues commands to FTP/HTTP servers (also proxies) and reads their response. While testing I've encountered a strange slowdown when using HTTP protocol version 1.1 (setup.exe uses HTTP v.1.1 in it's NetIO_HTTP class. It turned out that if I force the use of HTTP v.1.0 or turn off the persistent connection feature the slowdown is gone. As about the slowdown - I've noticed that the client reads about 8k of data and then stalls for a while and after that it reads the rest of the data. I've read some documents and uderstand that HTTP 1.1 introduced the persistent connection as a default if no otherwise specified. Based on this I'd like to know if anyone knows about this slowdown and possible workarounds. If not I'd suggest to send additional request header on HTTP connection which disables the keep-alive feature (Connection: close). Have in mind that for each package to be downloaded a new connection is made, so the keep-alive feature does not make too much sense, but the slowdown I'm talking about is significant. I hope this will decrease the overall processing time. Thanks! :)