diff options
Diffstat (limited to 'explanations.html')
-rw-r--r-- | explanations.html | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/explanations.html b/explanations.html index f48acc1..a101a08 100644 --- a/explanations.html +++ b/explanations.html | |||
@@ -13,11 +13,24 @@ so that the results page can link to the various parts for the curious.<p> | |||
13 | <p>The FTP tests have not been written yet.</p> | 13 | <p>The FTP tests have not been written yet.</p> |
14 | 14 | ||
15 | <hr><h1 id="HTTP">HTTP tests</h1> | 15 | <hr><h1 id="HTTP">HTTP tests</h1> |
16 | <p> | 16 | <p>There are two styles of HTTP tests - actual HTTP downloads and HTTP HEAD tests. |
17 | Actual downloads happen when other tests need the files to be downloaded. | ||
18 | HEAD tests are where apt-panopticon probes things in detail. | ||
19 | For each mirror (including the DNS round robin domain), and for each IP of that mirror - | ||
17 | </p> | 20 | </p> |
21 | <ul> | ||
22 | <li>Chose a small collection of package files to test, and the Release files for each release.</li> | ||
23 | <li>Send a HTTP HEAD request for each of those files.</li> | ||
24 | <li>Carefully inspect and log the response.</li> | ||
25 | <li>Retry the request if needed, and log that.</li> | ||
26 | <li>If a redirect loop is detected, log that and give up.</li> | ||
27 | <li>If the mirror replies with a redirect to the same mirror, then try that and keep checking.</li> | ||
28 | <li>If the mirror replies with a redirect to a different server, then probe that mirror the same way.</li> | ||
29 | </ul> | ||
18 | 30 | ||
19 | <hr><h1 id="HTTPS">HTTPS tests</h1> | 31 | <hr><h1 id="HTTPS">HTTPS tests</h1> |
20 | <p> | 32 | <p>The HTTPS tests are very similar to the HTTP tests detailed above, though obviously they are tried with HTTPS requests intead of HTTP requests. |
33 | The validity of the HTTPS certificate for each server is tested as well. | ||
21 | </p> | 34 | </p> |
22 | 35 | ||
23 | <hr><h1 id="RSYNC">rsync tests</h1> | 36 | <hr><h1 id="RSYNC">rsync tests</h1> |
@@ -38,15 +51,20 @@ Servers in the DNS round robin will not have the HTTPS certificate for the round | |||
38 | 51 | ||
39 | <hr><h1 id="URL-Sanity">URL sanity tests</h1> | 52 | <hr><h1 id="URL-Sanity">URL sanity tests</h1> |
40 | <p>The URL sanity test replaces "/" in URLS with "///", to see if the mirror can cope with that. | 53 | <p>The URL sanity test replaces "/" in URLS with "///", to see if the mirror can cope with that. |
41 | This might happen due to a mis configuration by the apt user, but decent web servers should cope with that. | 54 | This might happen due to a minor mis-configuration by the apt user, but decent web servers should cope with that. |
42 | The result for a mirror that does not cope is a failed download for that use, so this is an error. | 55 | The result for a mirror that does not cope is a failed download for that use, so this is an error. |
43 | </p> | 56 | </p> |
44 | 57 | ||
45 | <hr><h1 id="Integrity">Integrity tests</h1> | 58 | <hr><h1 id="Integrity">Integrity tests</h1> |
46 | <p></p> | 59 | <p>Actually download files, then check things like PGP keys, SHA256 check sums, and file size. |
60 | For actual packages, pick the smallest one that has been recently updated. | ||
61 | </p> | ||
47 | 62 | ||
48 | <hr><h1 id="Updated">Updated tests</h1> | 63 | <hr><h1 id="Updated">Updated tests</h1> |
49 | <p></p> | 64 | <p>Make sure the Release files are up to date by checking their internal "Date" field. |
65 | If they are up to date, download and check updated Packages.xz files, and actual packages. | ||
66 | For actual packages, pick the smallest one that has been recently updated. | ||
67 | </p> | ||
50 | 68 | ||
51 | <hr><h1 id="Speed">Speed test</h1> | 69 | <hr><h1 id="Speed">Speed test</h1> |
52 | <p>The speed test tries to guess at a minimum and maximum speed range for each mirror. | 70 | <p>The speed test tries to guess at a minimum and maximum speed range for each mirror. |