Subject: [Sip] Transport parm in Record-Route

From: [email-masked]
Date: Tue, 26 Jun 2001 19:18:31 -0600

We have encountered a problem with the requirement in 16.3 where
Record-Route MUST NOT contain the transport parameter.  I realize this was
designed to handle the possibility of requiring a UA that does not support a
particular transport to use said transport, resulting in a failure.
However, this also causes problems when the proxy must use only one
transport for all transactions.  Take for example a proxy (B) in a private
network that has a TLS connection with a trusted peer proxy (A) on the open
Internet.  The flow for an Invite might be something like:

UAC -> proxy (A) -> proxy (B) -> UAS

 Now if both proxies are record-routed without the transport parm, the
initial transaction could be setup on TLS OK based on proxy (A) routing
decisions, but if a subsequent transaction such as BYE came from the UAC,
proxy (A) would see a Route header with no transport parm, use it as the
req-URI which, lacking a transport parm results in using default UDP (see
reference below).  Since proxy (B) only trusts and listens for requests over
a TLS connection, the request fails.

From section 2, descrition of URL parameters:

UDP is to be assumed when no explicit transport parameter is included.

 Perhaps some new verbage is needed describing proxy behaviour and how to
select the transport protocol when not specified, i.e. look for open TLS or
TCP sockets to the destination first.  This still might not help if for
example the transport was TCP and the socket timed out due to inactivity.
There may be other ways around this problem I have not thought through yet.
Comments?

John Hearty
Level3

_______________________________________________
Sip mailing list  http://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip