List of printing protocols
A printing protocol is a protocol for communication between client devices and printers. It allows clients to submit one or more print jobs to the printer or print server, and perform tasks such as querying the status of a printer, obtaining the status of print jobs, or cancelling individual print jobs.
Dedicated protocols
Protocols listed here are specific for printing.- The Line Printer Daemon protocol/Line Printer Remote protocol is a network protocol for submitting print jobs to a remote printer. The original implementation of LPD was in the Berkeley printing system in the 2.10 BSD UNIX operating system in 1988; the LPRng project also supports that protocol. The LPD Protocol Specification is documented in RFC 1179. LPD printing normally happens over port 515.
- AppSocket, also known as port 9100, RAW, JetDirect, or Windows TCPmon is a protocol that was developed by Tektronix. It is considered as 'the simplest, fastest, and generally the most reliable network protocol used for printers' though 'it also offers no security and is often an attack vector with printers'. AppSocket printing normally happens over port 9100.
- The Internet Printing Protocol is an Internet protocol for communication between client devices and printers. IPP can run locally or over the Internet. Unlike other printing protocols, IPP also supports access control, authentication, and encryption, making it a much more capable and secure printing mechanism than older ones. IPP printing normally happens over port 631. It is the default protocol in Android and iOS.
Generic protocols
- Telnet is based on simply transferring data safely to/from TCP ports that are now being used for printing purposes. This approach is sometimes called raw TCP/IP, Stream, or direct sockets printing.
- Server Message Block is an application-layer network protocol for file and printer sharing originally developed by IBM in the mid-80s. It is the default method used by Windows based computers to share files and printers.
Wireless protocols
- AirPrint is a feature in Apple Inc.'s macOS and iOS operating systems for printing via a wireless LAN, either directly to AirPrint-compatible printers, or to non-compatible shared printers by way of a computer running Microsoft Windows, Linux, or macOS. AirPrint is based on mDNS and Internet Printing Protocol. It was originally intended for iOS devices and connected via a Wi-Fi network only, and thus required a Wi-Fi access point. However, with the introduction of AirPrint to the macOS desktop platform in 2012, Macs connected to the network via ethernet connection could also print using the AirPrint protocol—not just those connected via Wi-Fi.
- Mopria Alliance provides a protocol which is adopted by Android and available in Windows 10. It uses mDNS for service discovery and Internet Printing Protocol for printing, just like AirPrint.
- Windows devices use Web Services for Devices for service discovery and Line Printer Daemon protocol or JetDirect for printing. Windows 10 also supports Mopria Alliance's way.
Internet protocols