Patent ID: 8424024

Claim:
A device for redirecting serial device requests from an application on a computer locally connected to the device to a plurality of serial devices connected to the computer via a network, wherein the computer includes a processor, the device comprising: a serial port application programming interface (API), wherein the serial port API receives serial device requests from one or more applications existing on the computer, each serial device request being associated with a specific application protocol and directed to one of the plurality of serial devices over the network; an application-specific protocol engine operating in the computer, connected to the serial port API and executing on the processor, wherein the application-specific protocol engine includes a plurality of application protocol modules, wherein each of the application protocol modules is configured to respond to a corresponding one of a plurality of application protocols, wherein the application-specific protocol engine determines, for each serial device request, an application protocol associated with the serial device request, selects an application protocol module from the application protocol modules as a function of the application protocol associated with the serial device request, and processes the serial device request to produce a serial redirector message using the selected application protocol module, and wherein the application-specific protocol engine consolidates application protocol data into a single data packet while processing the serial device request into the serial redirector message; and a transport protocol engine operating in the computer and connected to the application-specific protocol engine, wherein the transport protocol engine receives the serial redirector message forwarded from the application-specific engine and selects, for each serial redirector message, a transport protocol appropriate to transmit the serial redirector message over the network, wherein the transport protocol engine selects the transport protocol from a plurality of transport protocols and as a function of the application protocol.