- From: Poul-Henning Kamp <phk@phk.freebsd.dk>
- Date: Fri, 11 Mar 2011 16:03:23 +0000
- To: ietf-http-wg@w3.org
Hi there, I'm the author of the Varnish HTTP accelerator and have just joined the mailing list, so I thought it would be proper if I introduced myself. About me: --------- Until I got roped into writing Varnish, I was one of the primary FreeBSD kernel developers, and Varnish was sort of a detour for me, which has so far lasted five years. As you can see in my .signature, I've been around for a while, I've written an OSI-TP4 stack on a 3B2 computer and 21 years ago I replaced OSI protocols with TCP/IP in the European Parliament, happily configuring 1200-some PC's with IP numbers, only to find out when RFC-1166 came out, that Sue Romano had mistyped our IP allocation in the letter, so they all had the wrong address. Apart from my work in FreeBSD, I'm probably most unknown as the author of the "md5crypt" that protects the majority of all passwords on the net and the http://bikeshed.org rant, bourne out of frustration with herding cats in the FreeBSD project. All this is just to say that I have paid my dues with respects to standards and have the scars to prove it. About HTTP and Varnish: ----------------------- Before I started Varnish, HTTP was not something I had cared about particularly, but since I had to write an implementation from scratch, I read RFC2616 and what else I could lay my hands on. And then I did a lot of data-analysis on actual website traffic to see what was actually going on, and finally started writing the code, which now has become the new black a lot of places. I know I am going to rub some of you the wrong way when I say this, but I decided early on that it would never be a goal of mine to make Varnish totally RFC2616 compliant. RFC2616 contains a lot of stuff that is never used, some of it is even patently useless, but a lot of it is just not used in practice, at least not in the application space where Varnish resides. Those bits will not be implemented in Varnish as long as they see no use on the internet. I have yet to see a Content-MD5 for instance. But for all parts of HTTP which Varnish implements, I strive to be compliant with with the standards. HTTPng and me: -------------- I have finally decided to join the HTTPng mailing-list, not something I do lightly, I get email enough as it is, but as more and more content gets delivered through Varnish, I need to be a bit more proactive with what HTTP becomes. The history of HTTP is far from ideal, and we suffer from old mistakes, but I would really appreciate if we could avoid making more of them. Today, in my corner of the world, HTTP is a high-performance delivery protocol, sites are looking for response times south of milliseconds and it is quite limited how much text-processing you can do under those circumstances and anything that costs time or bandwidth will not gain widespread use. And that brings me to what triggered me to get on board: draft-thomson-hybi-http-timeout-00 I don't see any obvious harm from these two proposals, but I think at least one of them could be done better. A) Can somebody explain to me, why we need an entirely new header called "Connection-Timeout", when we could just add "timeout=%d" to the already existing Connection: header, thus avoiding about 31 bytes of overhead and some needless text-processing ? B) Why is that header bidirectional ? What would a server use a Connection-Timeout: header from a client for ? C) Is it enough to send the timeout in the first response on a HTTP connection, or does it need to be included in all responses on that connection ? Poul-Henning -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.
Received on Friday, 11 March 2011 16:03:52 UTC