Bridging raw TCP binary data to HTTP
Publication Date: 2010-Jul-23
The IP.com Prior Art Database
DataPower Appliances are able to deal with XML as well as binary data received through many protocols (HTTP, MQ, FTP, ...). They are also able to deal with XML received over raw TCP connection without any protocol. There exist many specific binary data formats which are transmitted over raw TCP. Examples are SML (Smart Metering Language, Energy and Utilities), ISO 8583, ... . Even there are combined formats like Microsoft Exchange which transfer XML data padded with binary data. The binary data disallows "normal" XML processing. While it is easy to process this binary data on Datapower if received over a protocol (HTTP, MQ, ...) it is not possible to process because it is sent over raw TCP. A TCP proxy receives raw TCP data on the frontside and just forwards it to a backend. Responses received from the backend are forwarded to the frontend. This is a solution which describes a modification of a TCP proxy (which is an available DataPower service). It bridges arbitrary binary data received on the frontend to HTTP chunked encoding (which is able to deal with binary data) to the backend. The backend will send responses back with HTTP chunked encoding. The modified TCP proxy bridges this response back to raw TCP as response to the frontend. While this solves a problem for DataPower Appliances it is a general solution. Thinking on the millions of devices out in the world which are only able to send raw TCP data and applications/hardware which are only able to process data received by a protocol (most are able to process HTTP) this bridging of rawTCP to HTTP is very valuable. This solution could be the basis of a micro controller just having two ethernet ports for front- and back-end and provide just the bridging functionality. Such little boxes would allow millions of existing devices communicate with existing hardware/software solutions able to deal with HTTP. This solution can be used to process the (raw TCP) readouts of millions of power meters every few minutes through DataPower which is not possible, currently. Another application of this solution is the processing of Microsoft Exchange traffic in DataPower in order to have DataPower as single entry point into customer network (DataPower is a security device). This way the XML data inside the raw TCP binary data as well as the binary data can be processed.