EP0917044A2

Improved load balancing of distributed printing systems using enhanced printer attributes

Abstract

A distributed printing system that more optimally distributes job requests within a distributed printing system based on more detailed information about the particular attributes of each output device. In particular, additional printer attributes are used that allow greater utilization of a plurality of attached printers having differing capabilities. These attributes include "max-concurrent-jobs-processing" (MCJP), "number-of-jobs-on-device" (NJOD) and "number-of-cascaded-jobs" (NCJ), and a attribute value "saturated" for the attribute "printer-state". The attribute MCJP is an integer value that is based on the capabilities of the printer. NJOB and NCJ attributes allow monitoring of jobs sent to each printer for supported and unsupported printers. IfNJOB or NCJ are greater than MCJP, then the attribute "printer-state" is set to "saturated", prohibiting further spooling of print jobs to that particular printer.

EP0917044A2, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Projected expiry passed 6 November 2018, 7.9 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

10 claims: 5 independent, 5 dependent

  1. 1
    A distributed printing system that achieves load balancing on an associated output device, comprising:a printer system that receives print requests representing jobs to be printed;at least one output device associated with the printer system;andan attribute database associated with the printer system and containing printer attributes, the attributes including "max-concurrent-jobs-processing", "printer-state" having a "saturated" attribute value and one of "number-of-jobs-on-device" and "number-of-cascaded-jobs", the attribute "max-concurrent-jobs-processing" being assigned a numeric value corresponding to a number of concurrent print jobs that can be handled by the at least one output device, the attribute "number-of-cascaded-jobs" being a dynamic attribute having a value that is incremented by the printing system upon sending a print job to the at least one output device, the attribute "number-of-jobs-on-device" being a dynamic attribute that is updated by the at least one output device, and the attribute "printer-state" being a dynamic attribute that is set to "saturated" when one of the "number-of-jobs-on-device" and "number-of-cascaded-jobs" attributes has a value greater than or equal to the value of the attribute "max-concurrent-jobs-processing", the printing system being prevented from sending a print job to the at least one output device when the "printer-state" attribute is set to "saturated".
  2. 4
    A system according to any of claims 1 to 3, wherein the output device is one of a printer, a fax machine and a pager.
  3. 5
    A system according to any of the preceding claims, wherein the printing system includes an updating means for updating the "number-of-jobs-on-device" attribute in the attribute database based on a query response received from the at least one output device.
  4. 6
    A method of performing load balancing in a distributed printing system having at least one output device, comprising:storing printer attributes in a database, the printer attributes including: an attribute "max-concurrent-jobs-processing" assigned a numeric value corresponding to a number of concurrent print jobs that can be handled by the at least one output device,an attribute "printer-state" having a value "saturated", and at least one of: an attribute "number-of-cascaded-jobs" that is a dynamic attribute having a value that is incremented by the printing system upon sending a print job to the at least one output device, andan attribute "number-of-jobs-on-device" that is a dynamic attribute that is updated by the at least one output device;receiving a print request;generating a print job from the print request and storing the print job until the print job can be sent to the at least one output device;comparing at least one of the attributes "number-of-jobs-on-device" and "number-of-cascaded-jobs" attributes against the attribute "max-concurrent-jobs-processing" and setting the attribute "printer-state" to "saturated" for the at least one output device when either has a value greater than or equal to the value of the attribute "max-concurrent-jobs-processing;andsending the print job to the at least one output device if the attribute "printer-state" is idle or printing.
  5. 10
    A method according to any of claims 6 to 9, wherein at least two output devices are provided and respective "max-concurrent-jobs-processing" attributes are different based on differing capabilities of the respective output devices.