]> git.ipfire.org Git - thirdparty/squid.git/commit
Collapse security_file_certgen requests.
authorChristos Tsantilas <chtsanti@users.sourceforge.net>
Mon, 12 Jun 2017 16:05:59 +0000 (19:05 +0300)
committerChristos Tsantilas <chtsanti@users.sourceforge.net>
Mon, 12 Jun 2017 16:05:59 +0000 (19:05 +0300)
commit58fa3f51e51a82c1aecb586f408d3c30e413802e
treeb13e709d9ecc670073f407384492249dcb694d30
parent4f6990ec5d29c7d0aa25ee75304ca400c11e2c6e
Collapse security_file_certgen requests.

Concurrent identical same-worker security_file_certgen (a.k.a. ssl_crtd)
requests are collapsed: The first such request goes through to one of
the helpers while others wait for that first request to complete,
successfully or otherwise. This optimization helps dealing with flash
crowds that suddenly send a large number of HTTPS requests to a small
group of origin servers.

Two certificate generation requests are considered identical if their
on-the-wire images are identical. This simple and fast approach covers
all certificate generation parameters, including all mimicked
certificate properties, and avoids hash collisions and poisoning.
Compared to collision- or poisoning-sensitive approaches that store raw
certificates and compare their signatures or fingerprints, storing
helper queries costs a few extra KB per pending helper request. That
extra RAM cost is worth the advantages and will be eliminated when
helper code switches from c-strings to SBufs.

This is a Measurement Factory project.
src/cbdata.h
src/ssl/helper.cc