< Previous by Date Date Index Next by Date >
  Thread Index Next in Thread >

[reSIProcate-users] TCP-connection closed when parsing fails


Hi!

 

We’re experiencing a problem with TCP-connections. An INVITE with incorrect Contact-header (Contact: <sip:sipp@xxxxxxxxxxxx>\rsip:sipp@xxxxxxxxxxxx) is received via a proxy to our reciprocate 1.3 based UA using TCP. The problem is that when the parser fails, the TCP-connection is torn down at the same time. Since the proxy fronting our application serves many remote destinations this hurts more than the user sending the incorrect INVITE. Also, the proxy lacks some logic to re-establish the connection which leads to a blacklist for some time.

 

What is the reason for tearing down the connection when the parser fails? Is this error so severe that it’s considered to be unrecoverable?

 

Please see the attachment for logs.

 

I’m also working on this from the other direction, trying to get the proxy to re-establish the connection.

 

Cheers,

KJ  

Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.506 | SIP | 
RESIP:TRANSPORT | 3047742384 | TcpBaseTransport.cxx:112 | Received TCP 
connection from: [ V4 192.168.0.20:32852 TCP target domain=unspecified 
mFlowKey=0 ] as fd=22  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.506 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionManager.cxx:77 | Could not find a 
connection for [ V4 192.168.0.20:32852 TCP target domain=unspecified mFlowKey=0 
]  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.506 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:46 | 
ConnectionBase::ConnectionBase, who: [ V4 192.168.0.20:32852 TCP target 
domain=unspecified mFlowKey=0 ] 0xaf02bb8  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.506 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:59 | No compression library 
available: 0xaf02bb8  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.506 | SIP | 
RESIP:TRANSPORT | 3047742384 | TcpConnection.cxx:18 | Creating TCP connection [ 
V4 192.168.0.20:32852 TCP target domain=unspecified mFlowKey=0 ] on 22  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:548 | Creating buffer for 
CONN_BASE: 0xaf02bb8 [ V4 192.168.0.20:32852 TCP target domain=unspecified 
mFlowKey=22 ] 
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:99 | In State: NewMessage  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:129 | ConnectionBase::process 
setting source [ V4 192.168.0.20:32852 TCP target domain=unspecified 
mFlowKey=22 ]  
Apr 27 14:05:43 localhost test: WARNING | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:155 | Discarding preparse!  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionBase.cxx:86 | 
ConnectionBase::~ConnectionBase 0xaf02bb8  
Apr 27 14:05:43 localhost test: DEBUG | 20090427-140543.508 | SIP | 
RESIP:TRANSPORT | 3047742384 | ConnectionManager.cxx:267 | 
ConnectionManager::process()  read=538
Apr 27 14:05:43 localhost test: INFO | 20090427-140543.508 | SIP | 
RESIP:TRANSACTION | 3047742384 | TuSelector.cxx:85 | Sending 
ConnectionTerminated [ V4 192.168.0.20:32852 TCP target domain=unspecified 
mFlowKey=22 ] to TUs