[syslinux] Opinion wanted: metadata in HTTP requests

Kevin Landreth crackerjackmack at gmail.com
Mon Apr 25 20:34:33 PDT 2011


On Mon, Apr 25, 2011 at 9:59 PM, H. Peter Anvin <hpa at zytor.com> wrote:

> I'm thinking it might be an interesting idea to pass ipappend-style
> metadata (and quite possibly additional information, e.g. obtained from
> DMI) when making a http request, but I'm not 100% sure about the best
> way to do it.
>
> Would be great to filter/set what information to pass as an dhcp option
(integer of course, like ipappend style is now).  Would make expanding some
of the options below easier for initial HTTP config grabs. i.e. 1  would be
serial, 2 would be cpu-serial, 3 would be serial and cpu serial, etc.


> 4. using the http cookie protocol.
>
>   + easy.
>   - somewhat high overhead (cumbersome encoding, data sent on every
>    request).
>
You mean sessions or X-Headers ?  If you mean sessions I think that requires
being HTTP/1.1 complaint; would require a bit of investigation.  X-Headers
work all the time. I would personally prefer the X-Header sessions, but it
is very similar to the query string approach.


> 6. as an HTTP PUT sent on demand.
>
>   This would be an explicit command, say:
>
>   sendconfig http://...
>
>   + only sent once (at least per read of the config file).
>   + can be made to work for FTP or even TFTP.
>   + can in theory send a fair bit of data.
>   + implementation can be shared with other client-side data producers.
>   - send *after* the config file, which pretty much means that one
>     then need to use a separate CONFIG command to get a customized
>     configuration file.
>   - cumbersome implementation.
>
>
I love this for an after the server loaded the configuration file, but if I
can get some options via DHCP to determine the config, what's the point ?
The only situation I can think of is when you don't have an inventory
reclamation image to take inventory before launching into an installer.

FWIW, my preferred approach would be to set a list of options to set/filter
out the meta-data in X-Headers for when I fetch my config file via HTTP
(also set in dhcp options).  Right now I have a cludge that heavily relies
on the mac address using substr() inside of the dhcp config.  Being able to
connect DMI data to my inventory and provisioning systems would be stellar.


hope this makes sense :)

-- 
Kevin Landreth



More information about the Syslinux mailing list