> IPP> Re: Goals behind IPP 1.1 printer mgmt
>> Ira McDonald (imcdonal at sdsp.mc.xerox.com)
> Hi Carl, Thursday (24 June 1999)
>> Ever since the IETF MIB-II (RFC 1213, March 1991), there have been
> command objects (eg, 'ifAdminStatus') and companion status objects (eg,
> 'ifOperStatus') used for active management in IETF SNMP MIBs. SNMPv3
> (RFC 257x) has strong user-based authentication and view-based access
> control, so the argument that this is foolish (as opposed to using TLS
> and IPP for active management) doesn't wash anymore.
>> Recent examples are: a) IETF Schedule MIB (RFC 2591, May 1999), which
> provides scheduling for delayed management operations, by setting an
> integer command object in ANY public or private MIB (by instance OID)
> at a periodic or specific time; and b) IETF Script MIB (RFC 2592, May
> 1999), which controls remote loading and execution of management scripts
> via SNMP, using 'smScriptAdminStatus' and 'smScriptOperStatus'.
>> Several years ago, Xerox defined a private MIB for Job Management which
> uses a simple integer command and a companion parameters object. It's
> based on ISO 10175 DPA and IEEE 1387.4 POSIX System Admin - Part 4:
> Printing Interfaces, so it should look familiar (see excerpts below).
> - Ira McDonald (outside consultant at Xerox)
> High North Inc
I think it's worth considering the SNMP alternative. However, I'm a product developer and I have to think
about things like value propositions and time to market. I look at the IPP extensions and I see a short,
clear path. I look at the SNMP alternative and I see a long, long path, with many issues to resolve. I
think we're looking at major rework of the Printer and Job MIBs. To support the Set-Printer-Attributes and
Set-Job-Attributes functionality, we'll have to put all the IPP attributes into the MIBs. There are many
unresolved issues around operations like Pause-Job, Purge-Jobs, Pause-Printer, Resume-Printer,
Enable-Printer, Disable-Printer, Shutdown-Printer, and Space-Printer. Where do we put the operation
attributes? What about attribute natural language and charset? How do we deal with operation atomicity?
Where do the operation responses go, including IPP status and unsupported attributes? What if there are
multiple managers: how do we ensure that requests and responses match up? Do we care about firewalls?
We'd probably need to rethink the whole idea of an operation as a transaction, and break it down into simpler
elements. For example, set an "ptrAdminState" attribute to a new commanded value to cause a printer to go to
the 'paused' state, rather than doing a Pause-Printer operation.
I'm not saying that these things can't be solved, but how long will it take?