How does Server Direct Print (SDP) differ from traditional network printing, and what problems does it solve?
Related to:
This article relates to all printers that support SDP (Server Direct Print). This includes:
- TM-T88V-i and TM-T70-i
- TM-T88VI
- TM-T88VI-iHub
Background:
As the use of the Internet has become a norm, web-based services have been increasingly adopted into the retail and hospitality environments.
One new requirement that has emerged is the need to transmit print data from a web server to a printer. Possible applications for this technology range from adding a simple pathway to accept online orders or reservations, right up to more sophisticated uses such as running an entire POS system as a web service.
The Epson “SDP” technology has been developed specifically to meet this need. This article explains why existing “traditional” print methods are problematic, and how SDP solves these issues.
The Problem:
Traditional methods of sending print data to a network-connected printer work by exposing network ports relating to printing. This is problematic from both configuration and security standpoints:
- The server needs to be set up with a network configuration, containing information about how to reach the printer;
- If the network configuration of the printer changes, the connection from the server to the printer will be broken.
- The printer may be vulnerable, due to network ports made available.
Solution:
SDP solves these issues by reversing the interaction:
- When SDP is enabled, the TM-Intelligent printer will periodically send an HTTP request to a specified Web server.
- If the Web server has the data to be printed, the Web server application sends an HTTP response containing the print data.
- Upon receipt, the TM-Intelligent printer sends the print instruction to the specified printer.
This resolves the aforementioned issues as follows:
- The server no longer needs to be configured with information about how to reach the printer. The printer will connect to the web server. Print data is directed to the correct printer using a Device ID.
- The printer no longer accepts incoming connections. All print data is delivered by an HTTP connections initiated by the printer, and can be secured by the same HTTPS methods universally used throughout the web to perform transactions securely.
Simplified SDP Topology:
Process Flow:
Additional Considerations:
Specifying a Target Device
While the server does not need to be configured with information about how to reach the printer, it is necessary to supply information showing where the print will be directed. This is achieved using the “Device ID”.
One consequence of this arrangement is that the Device ID of the printer being targeted must be known and included in the print data. This is typically performed at the point of print data generation.
Duplicate Device ID
If the same Device ID is given to more than one device, the print data will be delivered to the first device to poll the server.
Polling
It is important to consider the overheads associated with polling. Because the printer has no knowledge of when data may become available at the web server, it is necessary to perform checks regularly, even if print data is not available.
This becomes important when a single server is interacting with very large numbers of printers, which for some users may be thousands. In such cases, the web server may need to handle thousands of requests every second.
Users concerned about managing this overhead should carefully consider implementing a longer polling interval. By increasing the duration between polls to the SDP server, the rate of incoming requests can be proportionately reduced.