attachment

<html>
<font size=2>After reading the email between Keith Moore and various
members of the IPP <br>
working group, I see much agreement, and some remaining points of <br>
disagreement based on Keith's July 12th email &quot;possible
compromise?&quot; <br>
(enclosed below).<br>
<br>
I will suggest a slightly different compromise.<br>
<br>
Keith and the IPP working group are in agreement:<br>
<br>
&nbsp;&nbsp;&nbsp; 1) Clients send only 'http' schemes in the HTTP
Request-Line<br>
&nbsp;&nbsp;&nbsp; 2) Servers support the reception only of 'http'
schemes in the HTTP Request-Line<br>
<br>
<br>
Keith and the IPP working group are in disagreement about:<br>
&nbsp;&nbsp; 1)&nbsp; the scheme in the value of&nbsp; IPP attributes,
such as &quot;printer-uri&quot;. <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Keith wants 'ipp'. The IPP
working group wants 'http'.<br>
&nbsp;&nbsp; 2)&nbsp; the scheme in external notation for printer URL's.
Keith wants 'ipp'. <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The IPP working group wants
'http'.<br>
<br>
The IPP working group wants an 'http' scheme for issue #1 because they
<br>
believe it is the cleanest design and avoids the mapping issue for
clients <br>
that never expose a URL to a user. We don't understand the virtue of
having <br>
an 'ipp' scheme in a block of data that a client must process, but that
<br>
neither a user nor networking software ever see. The 'http' choice (with
its <br>
lack of mapping) also allows a print server to use an 'https' scheme in
an <br>
IPP attribute without any mapping issues.&nbsp;&nbsp; Although 'https' is
not a part <br>
of&nbsp; IPP, most vendors will probably support it for pragmatic
reasons. <br>
<br>
Keith's solution creates a mapping problem for clients while giving no
<br>
apparent benefit to the client.&nbsp; If there is a benefit at the
client&nbsp; level, <br>
we have been unable to understand what it is.<br>
<br>
If, indeed, the 'ipp' scheme is a good idea, I think that Keith's
proposal <br>
makes the wrong partitioning of 'ipp' and 'http'.&nbsp; The partitioning
should <br>
<font size=2>occur between client and user interface and not between the
sending and <br>
receiving portions of the client.<br>
<br>
I might support a requirement that users refer to a printer with an 'ipp'
<br>
scheme (issue #2), even though such a requirement seems to be beyond a
<br>
protocol standard.<br>
<br>
But before giving such support, I would like to understand why the IETF
<br>
wants a scheme to specify the type of service.&nbsp; I would also like to
see an <br>
IETF document that describes the intent and goals of this differentiation
of <br>
schemes, as well as the infrastructure needed to support it.&nbsp; I
would like <br>
to know how a protocol designer decides if a new service is different
enough <br>
to warrant a new scheme. I would like to know if someone has thought
about <br>
how to avoid the &quot;new area code&quot; problem as each new scheme is
introduced. <br>
Without a such information, I am left wondering if the requirement of
a&nbsp; new <br>
scheme for each new service will turn out to be a good idea.<br>
<br>
Finally, I wonder how long it would have taken faxes to be deployed if
<br>
someone had required a special fax number instead of a standard phone
number.&nbsp; <br>
<br>
<br>
Bob Herriot<br>
<br>
<br>
<br>
<br>
</font><font size=3>At 04:47 PM 7/12/98 , Keith Moore wrote:<br>
&gt;I was thinking about the problem where using ipp: URLs in <br>
&gt;the HTTP POST operation potentially makes IPP incompatible<br>
&gt;with existing servers, and came up with the following possible<br>
&gt;compromise solution.&nbsp; I'm willing to defend this to IESG 
if<br>
&gt;the IPP group buys into it.<br>
&gt;<br>
&gt;1. use the http: form of the URL in HTTP protocol elements<br>
&gt;<br>
&gt;if you're talking to a proxy, do<br>
&gt;<br>
&gt;POST
<a href="http://myhost.com:631/myprinter/myqueue" eudora="autourl"><font size=3>http://myhost.com:631/myprinter/myqueue</a><font size=3>
HTTP/1.1<br>
&gt;<br>
&gt;if you're talking to an origin server, you should really do<br>
&gt;<br>
&gt;POST /myprinter/myqueue HTTP/1.1<br>
&gt;Host: myhost.com:631<br>
&gt;<br>
&gt;but origin servers are *also* expected to accept <br>
&gt;<br>
&gt;POST <a href="http://myhost.com:631/myprinter/myqueue" eudora="autourl"><font size=3>http://myhost.com:631/myprinter/myqueue</a><font size=3> HTTP/1.1<br>
&gt;<br>
&gt;just as in vanilla HTTP 1.1.<br>
&gt;<br>
&gt;This way, the HTTP layer never has to see ipp: at all.<br>
&gt;This should preserve compatibility with HTTP servers<br>
&gt;and HTTP client libraries.<br>
&gt;<br>
&gt;2. use the ipp: form of the URL in IPP protocol elements<br>
&gt;that refer to printer objects<br>
&gt;<br>
&gt;3. define ipp: URLs as a standard external notation for <br>
&gt;referring to printers - and the IPP protocol document describes<br>
&gt;how to take an ipp: URL and generate the appropriate HTTP/1.1<br>
&gt;POST request.&nbsp; Printer clients are expected to be able to <br>
&gt;do this.&nbsp; <br>
&gt;<br>
&gt;That way, the ipp: URL can be used when it's useful to<br>
&gt;expose the fact that the named object is a printer.<br>
&gt;<br>
&gt;The IPP server is free to respond to a GET on the its <br>
&gt;printer URL, and return HTML that describes the printer, <br>
&gt;how to talk to it, etc.&nbsp; And users are free to export<br>
&gt;this URL as an http: URL if they want to do so and <br>
&gt;their printers support it.<br>
&gt;<br>
&gt;But users and clients should be cautioned to not assume <br>
&gt;that the &quot;GET URL&quot; is the same as the &quot;print URL&quot;.<br>
&gt;<br>
&gt;Keith<br>
&gt; </font><br>
</html>