CEPS, the Cisco
Enterprise Print System, is a collection of tools and utilities designed
to work together to create a highly scalable, robust printing environment
for a medium to large corporation. It is not a printing system that it is
of much use to an individual. The tools are designed to optimize the
management of large numbers of printers and would be cumbersome for
someone who only has a handful of printers to administer.
CEPS is the brain child
of Damian Ivereigh and came into existance while he was a sysadmin the
print environment at Cisco Systems
Inc.. Cisco allowed the source code to be released to the internet
under the GPL for a number of reasons.
In addition to the ongoing
development at Cisco, there are a few developers
in the open source community working on CEPS.
makes about the print environment
CEPS was designed
for internal use by Cisco and is therefore adapted to the kind of
environment that Cisco has. As a result, it assumes several things about
the environment in which it will be setup. The more that a company's print
environment differs from these assumptions, the more difficult it will be
to adapt CEPS to that
- Printers are network connected using TCP/IP - CEPS has no facility
for communicating with printers that are not on the network in one way
or another. At Cisco most of the printers were connected through
internal network interfaces. The only exception were serial bar code
printers in manufacturing and those were network accessible through a
comm server/terminal server port.
- Most of the printers are HP, Lexmark, or Tektronix - There
are currently only three ways that CEPS talks to a
printer: port 9100, LPR, and reverse telnet. If a printer cannot be
accessed that way supporting it will require adding some code.
- Most of the printers have the capability to print PostScript
- Sending the data through raw is possible but it some features are not
accessible if print jobs are not generally PostScript.
- Homogeneous network - Cisco's intranet spanned the globe and
all devices were accessible from anywhere around the world. There were
no networks with printers on them that couldn't be reached from another
- Semi-central control - There is some central coordination to
the IT department. In other words, print servers the world over are more
or less deployed and adminstered by the same people. There might be
local people who assist with the maintenance of print servers and
keeping the local data up to date but at the end of the day but the job
of keeping all of the print servers on the same version of software is
coordinated by a central authority. This central authority also
reccomends printer and print server hardware to one degree or another.
- Policy and politics are minimal - Everyone is basically
allowed to print to every printer without charge and without regard to
who actually purchased the printer or the supplies that it uses.
- People are fairly trustworthy - People are not going to go
out of their way to abuse the print system or break their own printing
infrastructure. There are a lot of areas where security in CEPS needs to be
improved. There are also some ways a users could temporarily disrupt the
printing for other users. For example, a user might stop a print queue
or delete a print job that is not their own. The assumption is that we
give all users the ability to start and stop the print queues so if one
person stops a print job then someone who needs to print to that printer
can also simply start it. This might sound like a receipe for disaster
but at least Cisco this was never a problem in several years. Also any
user can delete any print job. This greatly eased the burden on the
sysadmin staff and never caused any problems.
- Most printers are fairly modern - Modern printers vendors
have agreed on a standard SNMP interface outlined by RFC 1759. This
interface makes adminstering printers much easier.
- The print servers can act as bootp or DHCP servers - Having
the print servers act as bootp servers for the printers, really really,
simplifies the management of printers.
- Most of the print jobs come from either Unix or Windows
machines - The unix printing is supported through the LPR protocol
and PC printing is handled through Microsoft networking or SMP printing.
At one point there were planns to also offer printing facility to
Macintosh clients but the Mac's went away before the project could