On Tue, Jul 12, 2016 at 11:48 AM, Dale R. Worley <wor...@ariadne.com> wrote:

> Roman Shpount <ro...@telurix.com> writes:
> > We actually always use UDP like re-transmits even when sending SIP
> messages
> > over TCP or TLS. There are enough implementations that connect TCP or TLS
> > interface with UDP using a stateless proxy which make it necessary.
>
> Just last night, I found this requirement, which I had long forgotten:
>
> RFC 3261, section 16.1
>
>    Requests forwarded between different types of transports where the
>    proxy's TU must take an active role in ensuring reliable delivery on
>    one of the transports MUST be forwarded transaction statefully.
>
> That is, a stateless proxy is not allowed to send via UDP a request it
> received via TCP.
>

I am actually well familiar with this requirement, but a lot of
implementations do not follow this in practice. One of the reason are
difficulties associated with fail-over of state-full transactions. Another
issue you get when reusing long duration TCP connections is that end point
can get a network error after SIP message is transmitted over TCP. At this
point it is unclear if message was received by remote party or not.
Re-transmitting the message on the timer can be the simplest solution since
it also allows you to deal gracefully with short duration connectivity
disruptions.

Regards,
_____________
Roman Shpount
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to