I've posted my action item to align the 6 IPP job size and progression
attributes with JMP.
I've posted them in:
ftp://ftp.pwg.org/pub/pwg/ipp/new_MOD/
-rw-r--r-- 1 pwg pwg 24064 Sep 27 01:07 job-size.doc
-rw-r--r-- 1 pwg pwg 21897 Sep 27 01:07 job-size.pdf
The .doc and .pdf show the revision marks.
Tom
Here is the plain text without revision marks:
Subj: Alignment of IPP Model with Job Monitoring MIB: job size and
progression atttributes
From: Tom Hastings
Date: 9/26/97
File: job-size.doc
This document is one of my action items for the IPP Model document to align
the three IPP job size Job Template attributes and the three IPP job
progression job-description attributes the corresopnding Job Monitoring MIB
(JMP) objects/attributes.
Specifically align the three IPP job size Job Template attributes:
"job-k-octets", "job-impressions", "job-media-sheets" with their
corresponding Job Monitoring MIB (JMP) objects/attributes:
jmJobKOctetsRequested, jmJobImpressionsRequested, and sheetsRequested.
Also align the IPP job description attributes:
"job-k-octets-processed", "job-impressions-completed", and
"job-media-sheets-completed" with the JMP objects/attributes:
jmJobKOctetsProcessed, jmJobImpressionsCompleted, and sheetsCompleted.
For JMP, we included the semantics of the two implementations for making
copies: (1) one pass over the input, and (2) multiple passes. The latter
produces values that are multiples of the former, where the multiple is the
number of copies. We thought that it was better to have a clear and
unambiguous value for the two implementations, that try to have the
implementations appear to be the same and attempt to scale one to look like
the other.
1. "job-k-octets" and jmJobKOctetsRequested
jmJobKOctetsRequested OBJECT-TYPE
SYNTAX Integer32(-2..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total size in K (1024) octets of the document(s) being requested to be
processed in the job. The agent SHALL round the actual number of octets up
to the next highest K. Thus 0 octets SHALL be represented as '0', 1-1024
octets SHALL be represented as '1', 1025-2048 SHALL be represented as '2', etc.
In computing this value, the server/device SHALL not include the
multiplicative factors contributed by (1) the number of document copies, and
(2) the number of job copies, independent of whether the device can process
multiple copies of the job or document without making multiple passes over
the job or document data and independent of whether the output is collated
or not. Thus the server/device computation is independent of the
implementation."
::= { jmJobEntry 5 }
4.2.18 job-k-octets (integer(0:2**31 - 1))
This attribute specifies the total size of the document data in K octets,
i.e., in units of 1024 octets requested to be processed in the job. The
value SHALL be rounded up, so that a job between 1 and 1024 octets SHALL be
indicated as being 1, 1025 to 2048 SHALL be 2, etc.
This value SHALL not include the multiplicative factors contributed by the
number of copies specified by the "copies" attribute, independent of whether
the device can process multiple copies without making multiple passes over
the document data and independent of whether the output is collated or not.
Thus the value is independent of the implementation.
Note: This attribute and the following two attributes ("job-impressions"
and "job-media-sheets") are not intended to be counters; they are intended
to be useful routing and scheduling information if known. For these three
attributes, the Printer may try to compute the value if it is not supplied
in the create request. Even if the client does supply a value for this
attribute in the create request, the Printer may choose to change the value
if the Printer is able to compute a value which is more accurate than the
client supplied value. The Printer may be able to determine the correct
value for this attribute either right at job submission time or at any later
point in time. If the value of this attribute is unknown, the Printer may
choose to respond with a value of '-2' (which signifies "unknown") rather
than choose to not support the attribute at all.
2. "job-impressions" and jmJobImpressionsRequested
jmJobImpressionsRequested OBJECT-TYPE
SYNTAX Integer32(-2..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total size in number of impressions of the document(s) being requested
by this job to produce.
In computing this value, the server/device SHALL not include the
multiplicative factors contributed by (1) the number of document copies, and
(2) the number of job copies, independent of whether the device can process
multiple copies of the job or document without making multiple passes over
the job or document data and independent of whether the output is collated
or not. Thus the server/device computation is independent of the
implementation."
::= { jmJobEntry 7 }
4.2.19 job-impressions (integer(0:2**31 - 1))
This attribute specifies the total number of impressions of the document(s)
being requested by this job to produce.
This value SHALL not include the multiplicative factors contributed by the
number of copies specified by the "copies" attribute, independent of whether
the device can process multiple copies without making multiple passes over
the document data and independent of whether the output is collated or not.
Thus the value is independent of the implementation.
3. "job-media-sheets" and sheetsRequested
sheetsRequested(150), Integer32(-2..2147483647)
INTEGER: The number of medium sheets requested to be processed for this job.
4.2.20 job-media-sheets (integer(0:2**31 - 1))
This attribute specifies the total number of media sheets to be processed
for this job.
Unlike the "job-k-octets" and the "job-impressions" attributes, this value
SHALL include the multiplicative factors contributes by the number of copies
specified by the "copies" attribute
4. "job-k-octets-processed" and jmJobKOctetsProcessed
jmJobKOctetsProcessed OBJECT-TYPE
SYNTAX Integer32(-2..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current number of octets processed by the server or device measured in
units of K (1024) octets. The agent SHALL round the actual number of octets
processed up to the next higher K. Thus 0 octets SHALL be represented as
'0', 1-1024 octets SHALL be represented as '1', 1025-2048 octets SHALL be
'2', etc. For printing devices, this value is the number interpreted by the
page description language interpreter rather than what has been marked on
media.
For implementations where multiple copies are produced by the interpreter
with only a single pass over the data, the final value SHALL be equal to the
value of the jmJobKOctetsRequested object. For implementations where
multiple copies are produced by the interpreter by processing the data for
each copy, the final value SHALL be a multiple of the value of the
jmJobKOctetsRequested object.
NOTE - See the impressionsCompletedCurrentCopy and pagesCompletedCurrentCopy
attributes for attributes that are reset on each document copy.
NOTE - The jmJobKOctetsProcessed object can be used with the
jmJobKOctetsRequested object to provide an indication of the relative
progress of the job, provided that the multiplicative factor is taken into
account for some implementations of multiple copies."
::= { jmJobEntry 6 }
4.3.16 job-k-octets-processed (integer(0:2**31 - 1))
This attribute specifies the number of octets processed in K octets, i.e.,
in units of 1024 octets. The value SHALL be rounded up, so that a job
between 1 and 1024 octets SHALL be indicated as being 1, 1025 to 2048 SHALL
be 2, etc.
For implementations where multiple copies are produced by the interpreter
with only a single pass over the data, the final value SHALL be equal to the
value of the "job-k-octets" attribute. For implementations where multiple
copies are produced by the interpreter by processing the data for each copy,
the final value SHALL be a multiple of the value of the "job-k-octets"
attribute.
Note: This attribute and the following two attributes
("job-impressions-completed" and "job-sheets-completed") are intended to be
counters (as described in the Job Monitoring MIB [27]). That is, if the
"job-state" is 'processing' or 'processing-stopped', this value is intended
to contain the amount of the job that has been processed to the time at
which the attributes are requested. For any of these three attributes, the
Printer may choose to return the value '-2' (which represents "unknown")
rather than choose to not support the attribute at all.
5. "job-impressions-completed" and jmJobImpressionsCompleted
jmJobImpressionsCompleted OBJECT-TYPE
SYNTAX Integer32(-2..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current number of impressions completed for this job so far. For
printing devices, the impressions completed includes interpreting, marking,
and stacking the output. For other types of job services, the number of
impressions completed includes the number of impressions processed.
For implementations where multiple copies are produced by the interpreter
with only a single pass over the data, the final value SHALL be equal to the
value of the jmJobImpressionsRequested object. For implementations where
multiple copies are produced by the interpreter by processing the data for
each copy, the final value SHALL be a multiple of the value of the
jmJobImpressionsRequested object.
NOTE - See the impressionsCompletedCurrentCopy and pagesCompletedCurrentCopy
attributes for attributes that are reset on each document copy.
NOTE - The jmJobImpressionsCompleted object can be used with the
jmJobImpressionsRequested object to provide an indication of the relative
progress of the job, provided that the multiplicative factor is taken into
account for some implementations of multiple copies."
::= { jmJobEntry 8 }
4.3.17 job-impressions-completed (integer(0:2**31 - 1))
This job attribute specifies the number of impressions completed for the job
so far. For printing devices, the impressions completed includes
interpreting, marking, and stacking the output. This attribute is intended
to be a counter as in the Job Monitoring MIB.
For implementations where multiple copies are produced by the interpreter
with only a single pass over the data, the final value SHALL be equal to the
value of the "job-impressions" attribute. For implementations where
multiple copies are produced by the interpreter by processing the data for
each copy, the final value SHALL be a multiple of the value of the
"job-impressions" attribute.
6. "job-media-sheets-completed" and sheetsCompleted
sheetsCompleted(151), Integer32(-2..2147483647)
INTEGER: The number of medium sheets that have completed marking and
stacking for the entire job so far whether those sheets have been processed
on one side or on both.
4.3.18 job-media-sheets-completed (integer(0:2**31 - 1))
This job attribute specifies the media-sheets completed marking and stacking
for the entire job so far whether those sheets have been processed on one
side or on both. This attribute is intended to be a counter as in the Job
Monitoring MIB.