Improvement in networking access performance for IBM* message processing middleware
Original Publication Date: 2005-Nov-16
Included in the Prior Art Database: 2005-Nov-16
A method is presented for demultiplexing and reassembling message fragments arriving over a communications network at a computation node. This method enables complete messages to be reassembled in fewer processing cycles than previously used methods. In turn this facilitates processing messages at the computation node at higher rate than previously used methods.
Improvement in networking access performance for IBM * message processing middleware
Currently, messages arrive at transaction-processing applications as a mixture of fragments. They require significant demultiplexing and reassembly before they can be processed. The demultiplexing and reassembly are done in ways which cause significant per-fragment overhead. The disclosure shows how to do this in a more efficient way.
The networking design of some transaction-processing applications envisages that multiple logical message streams will be interleaved on a TCP/IP networking session. Networking implementation of TCP/IP means that 'reliable byte streams' are broken into chunks for transmission over physical media such as Ethernet and routers, and for error detection and retransmit/recovery.
The consequence is that the actual arrival sequence of things at a loaded transaction processing system is typically a 'bag of fragments'.
The system call used by transaction processing applications to access this is TCP/IP 'read', which is specified to return with the next so-many bytes from the 'reliable byte stream' sent by the far-end participant. This may return with less than one message; or with fragments from many messages which had been multiplexed onto the TCP/IP session. In turn this may require repeated system calls until the whole of a message is acquired, and may require repeated dispatches as several messages are handed out for processing.
More efficient processing...