For what it worth, sipcore has been discussing OPTIONS lately concerning issues 
when used in-dialog and outside of dialog.  OPTIONS will be discussed at the 
IETF meeting.

The following is a link to one of the threads:

http://www.ietf.org/mail-archive/web/sipcore/current/msg02020.html

Concerning in-dialog usage of OPTIONS, timeouts, 408, 481, and etcetera, RFC 
5057 attempts to clarify things.

> -----Original Message-----
> From: sip-implementors-boun...@lists.cs.columbia.edu [mailto:sip-
> implementors-boun...@lists.cs.columbia.edu] On Behalf Of Iñaki Baz
> Castillo
> Sent: Friday, March 19, 2010 8:38 AM
> To: sip-implementors@lists.cs.columbia.edu
> Subject: [Sip-implementors] RFC 3261: section 12.2.1.2 VS section 11
> 
> Hi, let me redefine a question I already did:
> 
> 
> - A client initiates a SIP UDP call with a server. The call is
> correctly established.
> 
> - After the INVITE transaction the client sends an in-dialog OPTIONS
> to check the dialog status.
> 
> - Due to a SIP stack bug, the server ignores the in-dialog OPTIONS (no
> response is given but the dialog and RTP remains active in both
> directions).
> 
> - The client retransmits the OPTIONS until a transaction timeout
> occurs (32 seconds). At this point the client decides to stop sending
> RTP but doesn's send a BYE.
> 
> - The call remains active in the server until a RTP timeout occurs
> (i.e. after 1 minute without receiving RTP from the client). Then the
> server sends a BYE and receives 481 because the client closed,
> internally, the call.
> 
> - Client's CDR shows a call of 32 seconds (until the OPTIONS
> transaction failed due to timeout).
> 
> - The server's CDR shows a call of 92 seconds (the initial 32 plus 60
> seconds until RTP timeout raises).
> 
> 
> 
> 
> Server side argument: The client should send a BYE after it detects
> the in-dialog OPTIONS timeout by following RFC 3261 section 12.2.1.2
> (the BYE is mandatory):
> 
> ---------------------------------------
>    If the response for a request within a dialog is a 481
>    (Call/Transaction Does Not Exist) or a 408 (Request Timeout), the
> UAC
>    SHOULD terminate the dialog.  A UAC SHOULD also terminate a dialog
> if
>    no response at all is received for the request (the client
>    transaction would inform the TU about the timeout.)
> 
>       For INVITE initiated dialogs, terminating the dialog consists of
>       sending a BYE.
> ---------------------------------------
> 
> 
> 
> Client side argument: A failing OPTIONS means that the server is
> unreachable so it doesn't make sense to send a BYE (taken such
> argument from RFC 3261 section 11):
> 
> ---------------------------------------
>    As is the case for general UA behavior, the transaction layer can
>    return a timeout error if the OPTIONS yields no response.  This may
>    indicate that the target is unreachable and hence unavailable.
> ---------------------------------------
> 
> 
> 
> 
> I'm pretty sure that section 12.2.1.2 (server side argument) has
> preference over section 11, this is, an in-dialog failed transaction
> (due to timeout) must force the client sending a BYE to terminate the
> call. Such BYE could arrive to the server or not (in case there are
> network problems or the server is down), but it must try to send such
> BYE.
> 
> However I would like to hear your opinnions about this issue, along
> with any other reference justifying one of both arguments.
> 
> 
> Thanks a lot and best regards.
> 
> 
> --
> Iñaki Baz Castillo
> <i...@aliax.net>
> 
> _______________________________________________
> Sip-implementors mailing list
> Sip-implementors@lists.cs.columbia.edu
> https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to