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