Skip to main content

Протоколы сетевой печати — IPP, RAW, LPD

Протоколы сетевой печати — IPP, RAW, LPD

Обзор

Протокол Порт RFC Тип соединения
IPP 631 RFC 8011 HTTP/HTTPS (двунаправленный)
RAW (JetDirect) 9100 TCP (однонаправленный поток)
LPD/LPR 515 RFC 1179 TCP (устаревший)

IPP (Internet Printing Protocol)

IPP построен поверх HTTP (порт 631) или HTTPS (IPPS, порт 443/631).

Возможности:

  • двунаправленная коммуникация: принтер сообщает статус задания, уровень тонера и ошибки;
  • аутентификация (Basic, Digest, Negotiate);
  • шифрование через TLS;
  • управление очередью: пауза, отмена, приоритет;
  • поддержка IPP Everywhere — печать без установки драйверов.

IPP используется в macOS (CUPS), Android, Windows 10+.

RAW (JetDirect / порт 9100)

Простой TCP-поток: клиент открывает соединение на порт 9100 и передаёт PDL (PCL, PostScript, PDF).

Особенности:

  • нет встроенной обратной связи о статусе;
  • максимальная совместимость — поддерживают практически все принтеры;
  • минимальные накладные расходы протокола;
  • драйвер на стороне клиента формирует полный PDL.

LPD/LPR

Протокол 1980-х годов (RFC 1179). Используется в legacy-окружениях.

Особенности:

  • порт 515, TCP;
  • очередь задаётся именем (queue name);
  • ограниченные возможности управления;
  • не поддерживает шифрование.

Когда что использовать

Ситуация Рекомендуемый протокол
Современный принтер, нужен статус задания IPP
Максимальная совместимость, legacy-устройство RAW (9100)
Печать из UNIX/Linux без CUPS LPD/LPR
Защищённая сеть, нужно шифрование IPPS (IPP over TLS)

Как Принтум использует эти протоколы

ПринтМенеджер принимает задания от клиентов через установленные порты. Для отправки задания на физическое устройство ПринтМенеджер использует RAW (порт 9100) или IPP в зависимости от конфигурации принтера.

TODO: уточнить — какой протокол используется по умолчанию при добавлении устройства в Принтум.