[sr-dev] More about locally generated 408

Iñaki Baz Castillo ibc at aliax.net
Fri Apr 9 22:39:24 CEST 2010


2010/4/9 Iñaki Baz Castillo <ibc at aliax.net>:
> I understand your point, but it would make more sense if 408 is just
> caused when a transaction fails due to fr_timer (no provisional
> response from destination). But this is not the case as TM generates
> 408 when fr_inv_timer expires (maybe 60-120 seconds after receiving a
> provisional response). So the 408 is a confussing response:
>
> - In the first case (fr_timer expires) there has been a real error (alarm).
> - In the second case (fr_inv_timer) there has been no problem, just
> the call progress took so long that the proxy has decided to cancel
> it.
>
> Perhaps in the second case the proxy should generate a 480 and leave
> the 408 just for fr_timer expiration?


For example, RFC 3398 (SIP-ISUP mapping) states this mapping:


   Response received                     Cause value in the REL
   408 Request timeout                  102 Recovery on timer expiry

   ISUP Cause value                        SIP response
   102 recovery of timer expiry            504 Gateway timeout


Humm, perhaps TM should generate a 504 when fr_inv_timer expires if
the INVITE has no Expires header?:


RFC 3261

21.5.5 504 Server Time-out

   The server did not receive a timely response from an external server
   it accessed in attempting to process the request.  408 (Request
   Timeout) should be used instead if there was no response within the
   period specified in the Expires header field from the upstream
   server.


But the above leaves the door open for a 408 even if the proxy
receives provisiona responses...
Humm, I will open a thread in sip-implementors about it.

-- 
Iñaki Baz Castillo
<ibc at aliax.net>



More information about the sr-dev mailing list