Print Page

Friday, April 17, 2009

Sending HL7 Messages using MLLP

What is MLLP ?
The Minimal Lower Layer Protocol (MLLP) is the most common mechanism for exchanging the HL7 data. MLLP uses the TCP/IP protocol to transfer the data in continuous stream of bytes. MLLP delimiters is used to recognize the start and the end of message,

The structure of an MLLP message is given below
<SB> + <Message> + <EB> + <CR>

<SB> = Start Block. Messages are prefixed with start byte charcter <SB>
<Message> = HL7 Message
<EB> = End Block. Messages are terminated with end byte character <EB>
<CR> = Carriage Return.

Overriding HL7 MLLP delimiter in Oracle B2B
In Oracle B2B,these parameters are available as part of Document Exchange parameter.
MLLP parameter can be overridden as part of the endpoint configuration in the delivery channel. These values must be given in hexadecimal format.

Default hexadecimal values of MLLP delimiters are
<SB> = 0x0B (VT)
<EB> = 0x1C (FS)
<CR> =Carriage Return

Types of MLLP connection
There are two types of MLLP connection
1. Permanent Connection : In this case, only one connection is used to exchange all the messages between two endpoints.

2. Transient Connection : In this mode a new socket is created for each message. When a message is sent the sender waits for the ACK and once it is received socket is closed.

In Oracle B2B, the mode can be set in the transport protocol parameter in Delivery channel.

1 comment:

Anonymous said...

What are disadvantages of MLLP over other protocol like Http, ftp?
on a performance basis which proptocol is recommended?

Thanks,

Shrikar