El Protocolo de impresión de Internet ( IPP ) es un protocolo de Internet especializado para la comunicación entre los dispositivos del cliente (computadoras, teléfonos móviles, tabletas, etc.) e impresoras (o servidores de impresión ). Permite a los clientes enviar uno o más trabajos de impresión a la impresora o al servidor de impresión y realizar tareas como consultar el estado de una impresora , obtener el estado de los trabajos de impresión o cancelar trabajos de impresión individuales.
Como todos los protocolos basados en IP , IPP puede ejecutarse localmente o por Internet . A diferencia de otros protocolos de impresión, IPP también admite el control de acceso , la autenticación y el cifrado , lo que lo convierte en un mecanismo de impresión mucho más capaz y seguro que los anteriores.
IPP es la base de varios programas de certificación de logotipos de impresoras, incluidos AirPrint , IPP Everywhere, [1] y Mopria Alliance , y cuenta con el respaldo de más del 98% de las impresoras que se venden en la actualidad. [2]
Historia
IPP comenzó como una propuesta de Novell para la creación de un proyecto de protocolo de impresión de Internet en 1996. El resultado fue un borrador escrito por Novell y Xerox llamado Lightweight Document Printing Application (LDPA), derivado de ECMA-140: Document Printing Application (DPA) ). Casi al mismo tiempo, Lexmark propuesto públicamente algo llamado el hipertexto protocolo de impresión (HTPP), y ambos HP y Microsoft había comenzado a trabajar en nuevos servicios de impresión para lo que se convirtió en Windows 2000 . Cada una de las empresas eligió iniciar un proyecto común de Protocolo de impresión de Internet en el Grupo de trabajo de impresoras (PWG) y negoció una sesión de IPP con pájaros de una pluma (o BOF) con los Directores de área de aplicación en el Grupo de trabajo de ingeniería de Internet (IETF). ). La sesión de BOF en diciembre de 1996 [ cita requerida ] mostró suficiente interés en desarrollar un protocolo de impresión, lo que llevó a la creación del grupo de trabajo IETF Internet Printing Protocol (ipp) [3] , que concluyó en 2005.
El trabajo sobre IPP continúa en el grupo de trabajo del Protocolo de impresión de Internet de PWG con la publicación de 23 estándares candidatos, 1 RFC IETF nuevo y 3 actualizados, y varios documentos de registro y mejores prácticas que brindan extensiones a IPP y soporte para diferentes servicios que incluyen impresión 3D , escaneo y fax. , servicios basados en la nube y gestión general de sistemas y recursos.
IPP / 1.0 se publicó como una serie de documentos experimentales (RFC 2565, [4] RFC 2566, [5] RFC 2567, [6] RFC 2568, [7] RFC 2569, [8] y RFC 2639 [9] ) en 1999.
IPP / 1.1 siguió como proyecto de norma en 2000 con documentos de apoyo en 2001, 2003 y 2015 (RFC 2910, [10] RFC 2911, [11] RFC 3196, [12] RFC 3510 [13] RFC 7472 [14] ) . IPP / 1.1 se actualizó como estándar propuesto en enero de 2017 (RFC 8010, [15] RFC 8011, [16] ) y luego se adoptó como Estándar de Internet 92 (STD 92, [17] ) en junio de 2018.
IPP 2.0 se publicó como estándar candidato de PWG en 2009 (PWG 5100.10-2009, [18] ) y definió dos nuevas versiones de IPP (2.0 para impresoras y 2.1 para servidores de impresión) con requisitos de conformidad adicionales más allá de IPP 1.1. Un estándar candidato posterior lo reemplazó en 2011 y definió una versión 2.2 adicional para impresoras de producción (PWG 5100.12-2011, [19] ). Esta especificación se actualizó y aprobó como estándar PWG completo (PWG 5100.12-2015, [20] ) en 2015.
IPP Everywhere se publicó en 2013 y proporciona una base común para que las impresoras admitan la denominada impresión "sin controladores" desde dispositivos cliente. Se basa en IPP y especifica reglas adicionales para la interoperabilidad, como una lista de formatos de documentos que las impresoras deben admitir. En 2016 se publicó un manual de autocertificación y un conjunto de herramientas correspondientes que permite a los fabricantes de impresoras y a los implementadores de servidores de impresión certificar sus soluciones según la especificación publicada y aparecer en la página de impresoras IPP Everywhere mantenida por el PWG.
Implementación
IPP se implementa mediante el Protocolo de transferencia de hipertexto (HTTP) y hereda todas las características de seguridad y transmisión HTTP. Por ejemplo, la autorización puede tener lugar a través del mecanismo de autenticación de acceso Digest de HTTP , GSSAPI o cualquier otro método de autenticación HTTP. El cifrado se proporciona utilizando la capa de protocolo TLS , ya sea en el modo tradicional siempre activo utilizado por HTTPS o utilizando la extensión HTTP Upgrade a HTTP (RFC 2817 [21] ). Los certificados de clave pública se pueden utilizar para la autenticación con TLS. La transmisión se admite mediante fragmentación HTTP. El documento que se va a imprimir generalmente se envía como un flujo de datos y puede estar en varios formatos, como PDF o JPEG , según las capacidades de la impresora de destino.
IPP utiliza el modelo cliente-servidor tradicional, con clientes que envían mensajes de solicitud IPP con el tipo de medio MIME "aplicación / ipp" en solicitudes HTTP POST a una impresora IPP. Los mensajes de solicitud de IPP constan de pares clave-valor que utilizan una codificación binaria personalizada seguida de una etiqueta de "fin de atributos" y cualquier dato del documento necesario para la solicitud (como el documento que se imprimirá). La respuesta IPP se envía de vuelta al cliente en la respuesta HTTP POST, nuevamente utilizando el tipo de medio MIME "aplicación / ipp".
Entre otras cosas, IPP permite a un cliente:
- consultar las capacidades de una impresora (como juegos de caracteres admitidos, tipos de medios y formatos de documentos)
- enviar trabajos de impresión a una impresora
- consultar el estado de una impresora
- consultar el estado de uno o más trabajos de impresión
- cancelar trabajos enviados anteriormente
IPP usa TCP con el puerto 631 como su puerto conocido .
Los productos que utilizan el Protocolo de impresión de Internet incluyen CUPS (que forma parte de Apple macOS y muchas distribuciones BSD y Linux y es la implementación de referencia para la mayoría de las versiones de IPP [22] ), Novell iPrint y versiones de Microsoft Windows a partir de MS Windows 2000 . [23] Windows XP y Windows Server 2003 ofrecen impresión IPP a través de HTTPS . Windows Vista , Windows 7 , [24] Windows Server 2008 y 2008 R2 también admiten la impresión IPP sobre RPC en la zona de seguridad "Medio-bajo" .
Ver también
- TAZAS
- Formato de definición de trabajo
- Protocolo Line Printer Daemon
- T.37 (recomendación UIT-T)
Referencias
- ^ "IPP en todas partes" . Consultado el 2 de abril de 2019 .
- ^ Michael Sweet, Apple Inc. (15 de mayo de 2018). "Plenaria de CUPS, reunión conjunta de PWG / impresión abierta, Sunnyvale, California" (PDF) . Grupo de trabajo de impresoras . Consultado el 2 de abril de 2019 .
- ^ "IPP", grupos de trabajo , IETF.
- ^ Protocolo de impresión de Internet / 1.0: codificación y transporte . doi : 10.17487 / RFC2565 . RFC 2565 .
- ^ Protocolo de impresión de Internet / 1.0: Modelo y semántica . doi : 10.17487 / RFC2566 . RFC 2566 .
- ^ Objetivos de diseño para un protocolo de impresión en Internet . doi : 10.17487 / RFC2567 . RFC 2567 .
- ^ Justificación de la estructura del modelo y protocolo para el protocolo de impresión de Internet . doi : 10.17487 / RFC2568 . RFC 2568 .
- ^ Mapeo entre protocolos LPD e IPP . doi : 10.17487 / RFC2569 . RFC 2569 .
- ^ Protocolo de impresión de Internet / 1.0: Guía del implementador . doi : 10.17487 / RFC2639 . RFC 2639 .
- ^ Protocolo de impresión de Internet / 1.1: Codificación y transporte . doi : 10.17487 / RFC2910 . RFC 2910 .
- ^ Protocolo de impresión de Internet / 1.1: Modelo y semántica . doi : 10.17487 / RFC2911 . RFC 2911 .
- ^ Protocolo de impresión de Internet / 1.1: Guía del implementador . doi : 10.17487 / RFC3196 . RFC 3196 .
- ^ Protocolo de impresión de Internet / 1.1: Esquema de URL de IPP . doi : 10.17487 / RFC3510 . RFC 3510 .
- ^ Protocolo de impresión de Internet (IPP) sobre enlace de transporte HTTPS y el esquema de URI 'ipps' . doi : 10.17487 / RFC7472 . RFC 7472 .
- ^ RFC 8010 . doi : 10.17487 / RFC8010 .
- ^ Protocolo de impresión de Internet / 1.1: Modelo y semántica . doi : 10.17487 / RFC8011 . RFC 8011 .
- ^ Protocolo de impresión de Internet / 1.1 . STD 92.
- ^ PWG 5100.10-2009 (PDF) , PWG.
- ^ PWG 5100.12-2011 (PDF) , PWG.
- ^ PWG 5100.12-2015 (PDF) , PWG.
- ^ Actualización a TLS dentro de HTTP / 1.1 , IETF, RFC 2817
- ^ "Protocolo de impresión de Internet" . Grupo de trabajo de impresoras. Archivado desde el original el 12 de enero de 2010 . Consultado el 20 de noviembre de 2013 . El lenguaje "Software CUPS (Implementación de referencia de IPP)" apareció en esta página desde el 1 de septiembre de 2009 y el 12 de enero de 2010, aunque no se encuentra ninguna mención de una implementación de referencia en el estándar publicado.
- ^ "Uso eficaz de la impresión IPP" . Microsoft. 8 de abril de 2003 . Consultado el 6 de septiembre de 2009 .
- ^ "El cliente de impresión de Internet (IPP) no está disponible en Windows 7 Starter Edition" . Microsoft. 17 de noviembre de 2010 . Consultado el 2 de octubre de 2012 .
Otras lecturas
- Estándares
- Protocolo de impresión de Internet / 1.1 . Junio de 2018. STD 92.
- Protocolo de impresión de Internet / 1.1: Codificación y transporte . Enero de 2017. doi : 10.17487 / RFC8010 . RFC 8010 .
- Protocolo de impresión de Internet / 1.1: Modelo y semántica . Enero de 2017. doi : 10.17487 / RFC8011 . RFC 8011 .
- PWG 5100.12-2015: IPP versión 2.0, 2.1 y 2.2 (PDF) , PWG, octubre de 2015.
- Documentos informativos
- Objetivos de diseño para un protocolo de impresión en Internet . Abril de 1999. doi : 10.17487 / RFC2567 . RFC 2567 .
- Justificación de la estructura, el modelo y el protocolo del protocolo de impresión de Internet . Abril de 1999. doi : 10.17487 / RFC2568 . RFC 2568 .
- Mapeo entre protocolos LPD e IPP . Abril de 1999. doi : 10.17487 / RFC2569 . RFC 2569 .
enlaces externos
- Grupo de trabajo de PWG IPP , PWG.
- "Descripción general", Netware iPrint , Novell.
- Technet | IPP en MS Windows , Microsoft.
- Software CUPS , Apple.
- "OpenPrinting", grupos de trabajo , fundación Linux.