>> For example, take a URL that does not explicitly specify a port:
>>http://my.domain.com/printer1>> - If the client is in the act of printing (browser that is printing
> or a print only client) the the port to use is the new IPP default port.
>> - Any other client will use the HTTP default port
This suggestion is completely unworkable. The default port for
the "http" scheme is 80. It isn't "80 when you use it one way
and something else when you use it another".
I think you can define a new scheme "ipp" and just define it quite
simply:
ipp://host/path === http://host:ippport/path (used for ipp)
E.g., if the IPP port is "187" then
ipp://printer.xerox.com/doit
would be interpreted _exactly_ as
http://printer.xerox.com:187/doit
This equivalence can be done in the client, and need not be handled
by the proxies at all. Since an ipp client has to know about the rest
of the ipp protocol anyway, requiring the ipp client to do the translation
is not a burden.