TCP/IP Connector in Mule | Packet communication in Mule





TCP/IP Connector in Mule | Packet communication in Mule

TCP connector allows mule applications to send or receive messages in the form of packets over TCP connections.

flow of TCP connector :



TCP connector configuration : 


connector configuration : 

keep all the settings as default except protocol setting.

go to protocol settings,click on +



Select tcp:eof-protocol then click Next


check on : Payload Only & click Finish


We need to send packets in hexadecimal form so for this download client packet sender from :  https://packetsender.com/

our application url : localhost:8085


put your hexadecimal packet data,host & port number in packet sender as shown below : 


logger output :


XML project code : 


<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:tcp="http://www.mulesoft.org/schema/mule/tcp" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/tcp http://www.mulesoft.org/schema/mule/tcp/current/mule-tcp.xsd">
    <tcp:connector name="TCP" validateConnections="true" sendBufferSize="0" receiveBufferSize="0" receiveBacklog="0" clientSoTimeout="10000" serverSoTimeout="10000" socketSoLinger="0" doc:name="TCP">
        <tcp:eof-protocol payloadOnly="true"/>
    </tcp:connector>
    <flow name="test_tcpFlow">
        <tcp:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8085" connector-ref="TCP" responseTimeout="10000" doc:name="TCP"/>
        <byte-array-to-string-transformer doc:name="Byte Array to String"/>
        <logger message="#[payload]" level="INFO" doc:name="Logger"/>
    </flow>
</mule>