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

Re: [reSIProcate] responses over TCP get lost when in the same packet


On Friday 21 January 2005 06:08 am, Bayart Frederik wrote:
> Hallo,
>
> I've have noticed following probleem when I'm sending messages over TCP :
> if 2 responses are arriving in the same packet, the second response is not
> passed to the transaction user. This happens in the function
> Connection::performRead. When 2 requests are arriving in the same packet,
> there is no problem.
>
<snip examples>

>
> I didn't find any explanation for this in the rfc's.

I believe this is addressed in RFC 3261 section 18.3, framing.
If your seeing this behaviour on tcp, then my take is that the problem is with 
resiprocate. But this is just a guess. I am not completely familiar with the 
resiprocate stack yet, but the stack needs to keep track of partially 
received messages so that when the rest of the message arrives a complete 
message can be made and passed to the transaction user. The framing of SIP 
messages is based on the Content-Length header.

HTH,

Jon