Line-Printer sind passé

Ausgabe über das Internet

Die von Easy Software Products entwickelte Open-Source-Software "Cups" verfolgt einen neuen Ansatz, denn sie setzt das "Internet Printing Protocol" (IPP) um. Verschiedene freie Zusatzprogramme erleichtern zudem die bequeme Nutzung aller Möglichkeiten des Druckers. Das Internet Printing Protocol ist eine Erweiterung des Hypertext Transfer Protocol 1.1 (HTTP/1.1) und ermöglicht die Ausgabe auf entfernten Druckern. Aktuell ist die Version 1.0; im Januar 2001 sollen der Nachfolger IPP 1.1, und dazu passend, Cups 1.1 zur Verfügung stehen.

Der zentrale Bestandteil von Cups ist der "Scheduler". Zu seinen Aufgaben gehört die Verwaltung einer Liste der im LAN zur Verfügung stehenden Drucker und das Entfernen von Jobs aus der Queue. Der Scheduler ist ein HTTP/1.1-Server, der nicht nur die Drucker-Requests via IPP entgegennimmt, sondern auch als vollwertiger Web-Server für die Administration, die Dokumentation und das Monitoring dient.

Die wichtigste Konfigurationsdatei heißt cupsd.conf und enthält die Einstellungen des Schedulers. Sie ähnelt der Parameterdatei des Apache-Web-Servers und regelt neben dem Verhalten des Daemons auch den Zugriff darauf. Des Weiteren gibt es Konfigurationsdateien für Drucker- und Klassendefinitionen sowie PPD-Dateien (PPD = Postscript Printer Description).

Die Drucker- und Klassendefinitionen beschreiben die verfügbaren Drucker und Druckerklassen. Klassen sind eine Besonderheit von Cups, die in dieser Form anderen Drucksystemen fehlen. Sie fassen mehrere Geräte zusammen und leiten einen Job jeweils an den nächsten freien Drucker einer Gruppe weiter. Die Lastverteilung erfolgt dabei nach dem "Round-Robin-Prinzip".

Das Cups-API stellt spezifische Funktionen zur Verfügung wie das Einstellen von Printjobs in die Warteschlangen, das Abfragen von Druckerinformationen, die Manipulation von PPD-Dateien und den Zugriff auf die Ressourcen über HTTP und IPP. Für sie gilt im Gegensatz zum Rest von Cups die GNU-Lizenz "Lesser Gnu Public Licence" (LGPL), sodass Hersteller sie in Nicht-Open-Source-Programme einbinden dürfen. Cups hat ein Kommandozeilen-Interface für Berkeley- und System-V-Befehle. Das erlaubt eine einfache Migration von alten Drucksystemen, und zwar ohne Anwendungen anzupassen.