Another round of widearea node hacking for CMU. These changes add
widearea reloading support. * New slot in the images table to store an access key which remote sites must provide in order to download an image (via https). * tmcd returns a different kind of ADDRESS field from doloadinfo. Instead of the multicast stuff, return a URL that points to boss' web server. The URL is of the form: https://www.myemulab.net/spewimage.php?imageid=10013&access_key=abcdef which as you can see is fully specified; the client does not need to know anything else. * New webpage and backend scripts appropriately called "spewimage" which also includes support for the http HEAD request (from wget) to avoid downloading images that are already on the node. I just learned about this HEAD request stuff today ... but otherwise these operate as expected, spewing the image if the access key is provided. * Changes to rc.frisbee to deal with remote loading. In addition to URL support, I also added support for simple paths, the intent being that we will probably distribute images offline (say, at night) so that when a node reboots it doesn't actually have to wait 60 minutes for an image to download. I have not added any server side support for this yet though. Maybe later this week. * Other bits and pieces and fixes to make this work.
Showing with 639 additions and 68 deletions