[sr-dev] double record-routing also at outbound edge

Juha Heinanen jh at tutpro.com
Sun Apr 28 19:16:52 CEST 2013


i have one more comment on flow token vs. contact aliasing.

flow token is part of a route uri that represent a proxy in the route
set.  route set cannot be changed during the dialog, but remote target
uri can.  from rfc3261:

   Requests within a dialog MAY contain Record-Route and Contact header
   fields.  However, these requests do not cause the dialog's route set
   to be modified, although they may modify the remote target URI.
   Specifically, requests that are not target refresh requests do not
   modify the dialog's remote target URI, and requests that are target
   refresh requests do.  For dialogs that have been established with an
   INVITE, the only target refresh request defined is re-INVITE (see
   Section 14).  Other extensions may define different target refresh
   requests for dialogs established in other ways.

      Note that an ACK is NOT a target refresh request.

   Target refresh requests only update the dialog's remote target URI,
   and not the route set formed from the Record-Route.

if flow token is used instead of contact aliasing to store the remote
target uri, then it is not possible to modify the remote target uri via
target refresh requests (e.g. when moving from wifi to mobile network)
and such setup is violating the above text of rfc3261.

this problem does not exist with contact aliasing, because
add_contact_alias() is called on each in-dialog target refresh request,
which allows changing of remote target uri during the dialog.

-- juha



More information about the sr-dev mailing list