[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Difference between ipp, ipps, http, https CUPS protocols?



On Tue 12 Nov 2019 at 08:46:50 +1300, Richard Hector wrote:

> On 12/11/19 8:38 AM, Kent West wrote:
> > 
> > On 11/11/19 10:40 AM, Brian wrote:
> >> On Mon 11 Nov 2019 at 10:18:26 -0600, Kent West wrote:
> >>
> >>> Probably answered somewhere, but I've been DuckDuckGo-ing for the
> >>> past two
> >>> hours and can't find the answer.
> >>>
> >>> When adding a printer via the CUPS web interface (localhost:631) on my
> >>> Debian box, Administration / Add Printer / Other Network Printers,
> >>> there are
> >>> four Internet Printing Protocol options:
> >>>
> >>> https
> >>>
> >>> ipp
> >>>
> >>> http
> >>>
> >>> ipps
> >>>
> >>> Which one do I want to select? What are the differences?
> >> 'ls -l /usr/lib/cups/backend' tells you that it doesn't matter what
> >> choice you make.
> >>
> > 
> > lrwxrwxrwx 1 root root      3 Oct 31 02:44 http -> ipp
> > lrwxrwxrwx 1 root root      3 Oct 31 02:44 https -> ipp
> > -rwxr-xr-x 1 root root  80120 Oct 31 02:44 ipp
> > lrwxrwxrwx 1 root root      3 Oct 31 02:44 ipps -> ipp
> > 
> > Thank you. That does tell me they are all the same.
> 
> It doesn't tell me that.

I've come round to your way of thinking.

> It tells me that they're all the same file, but an executable can find
> out what name it was called with, and change its behaviour accordingly.
> Busybox is an extreme example.

That went through my mind at the time, but I went for the easy (and not
quite correct) response to keep things simple. Essentially, use ipp
unless you have a good reason not to.

> > It does not tell me
> > why CUPS on Debian makes the other three options available (thereby
> > confusing the person adding the printer). There must be some reason why
> > a person would expect to choose X over Y; that's the difference I'm
> > looking for.
> > 
> > But your answer certainly helps. I now know it doesn't matter which of
> > these I select.
> 
> I would guess that the *s versions use TLS, but beyond that I don't
> know. I'd agree with deloptes that it probably depends on what the
> remote end can support.

Not quite. Both ipp and ipps do encryption. The difference is that ipp
does oportunistic encryption (using an http upgrade) whereas, with ipps,
encryption is always on (the encryption is immediate, using https). The
rationale for having a ipps URI is in RFC7472.

http is the transport protocol for ipp and ipps, and ipp and ipps URIs
are mapped to http and https URLs. Every modern printer would support
ipp; in addition, some could support ipps too. I believe the http and
https backends exist to facilitate connections with Windows machines,
which historically have lagged far behind in implementing ipp.

-- 
Brian.


Reply to: