Peer/source selection

From: Dancer <dancer@dont-contact.us>
Date: Sun, 07 Jun 1998 03:44:47 +1000

--MimeMultipartBoundary
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

To try to prevent duplication of effort (as happened recently) and to
just float an idea that I'm considering, I'd like to get some comments
on this. 'this' is a function to be called at the beginning of
peer/source selection allowing the default behaviour to be retained or
radically subverted. It's an outline only at present:

char *modular_peer_selection(char *request, /* presumably the request
line and headers */
                        unsigned long flags)/* some flags about a
possible cached copy? */
{
/* Return:
                0: Use default resolution methods
                        (in essence, just ignore that we did this)
                1: Fetch direct from source
                        (fetch directly, regardless of restrictions
                        or limits)
                2: Serve from cache if cached even if stale,
                        otherwise use default peer selection
                string: "!address:port" (proxy fetch from address:port)
                        (use address:port as a peer)
                string: "-address:port" (direct fetch from address:port)
                        (use address:port as an origin-server)

Things we must not do:
        * Anything that blocks or delays the selection process...a
                result must be generated _rapidly_ without any fooling
around
*/

#ifdef CUSTOMISED_PEER_SELECTION
/* User-defined code goes in here */
#endif

        return 0; /* The default, of course */
}

--MimeMultipartBoundary--
Received on Tue Jul 29 2003 - 13:15:50 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:11:48 MST