Webservers and netcraft
Hi
Richard Wendland of netcraft said the following about recognizing the
Hurd/pfinet. Most of it is above my head, so I send it to the list in
case someone who understands more of it wants to give it a shot.
I think pfinet recognized as "unknown" would be a step up from being
listed as "Linux". :)
Oystein
,----
| First I should say I can't guarantee we'd recognise Hurd as "Hurd",
| as usual policy is only to recognise OSs with > 50 sites, just to avoid
| effort regularly validating etc. At the moment Hurd doesn't get there -
| though I expect it will. But I would stop it being recognised as Linux
| if I could - "unknown" initially perhaps.
|
| I can't disclose the exact method, but in part it looks at the obvious
| things like window size and TCP options.
|
| For example if you changed the default window size to something unusual
| for Linux, from 32k it currently is to say 24k or 36k, that would probably
| get you as "unknown" without any action on my part. You could test this
| on your box with an option or /proc, or maybe a simple source tweak.
|
| We'd need a more significant change to positively recognise Hurd. Say as
| well as a different window size changing the order of TCP options on
| SYN-ACK, say changing the order MSS & timestamp & window scale is added
| in the source code; swapping window scale & timestamp might be easy.
|
|
| BTW there is a small inefficiency in the Linux TCP version you picked up.
| When using TCP timestamp option, as you do by default, the data load of
| full TCP segments is 12 bytes less than MSS (to make space for timestamp),
| eg 1448 bytes for the usual 1460 MSS. TCPs often round offered window
| size to a multiple of data load to reduce risk of partial segments
| being sent. But in the Linux TCP version Hurd uses it rounds to a
| multiple of MSS (ie 32120 = 22*1460), but it would be better to round
| to multiple of 1448 (ie 22*(1460-12) = 31856, or 23*(1460-12) = 33304).
|
| That would also be a feature I could recognise.
|
| Regards,
|
| Richard
| --
| Richard Wendland richard@netcraft.com
`----
Reply to: