Thanks Jeroen, Since it seems that it is not really clear how a UA would respond to a OPTIONS with a to-tag, I 'm afraid I cant use it. I'm thinking of using UPDATE (with no SDP in it) and use that togheter with session timer instead to solve my (well, my bosses :) ) CDR problem.
Sorry, I mixed things up in my last question... What I wanted to know was how wide you think support for UPDATE is among Uas (not options which is mandatory) Regards, // Andreas -----Original Message----- From: Jeroen van Bemmel [mailto:[EMAIL PROTECTED] Sent: Monday, March 06, 2006 8:36 AM To: Andreas Byström; 'Paul Kyzivat' Cc: [email protected] Subject: Re: [Sip-implementors] Session Timer for B2BUA Andreas, An in-dialog OPTIONS (i.e. with both from and to-tag) might detect the restart, but unfortunately RFC3261 is not very clear on this. One would wish that a UA returns 481 when the dialog does not exist. However, "The response code chosen MUST be the same that would have been chosen had the request been an INVITE" does not guarantee this, as UAS might accept INVITEs with a to-tag to support failover (as an aside, IMO that text in RFC3261 should be clarified stating that it only applies to final responses - one would not want a 180 response) Perhaps you could somehow trigger the crash detection, e.g. using target-dialog or other means. Ideally, RFC3261 would be updated to state that failover is not appropriate for OPTIONS (and hence 481 would result, as a desirable feature to detect restarts) As to support for OPTIONS: "All UAs MUST support the OPTIONS method." (RFC3261 section 11). But always check the 'Allow' header Regards, jeroen ----- Original Message ----- From: "Andreas Byström" <[EMAIL PROTECTED]> To: "'Paul Kyzivat'" <[EMAIL PROTECTED]> Cc: <[email protected]> Sent: Monday, March 06, 2006 6:33 AM Subject: Re: [Sip-implementors] Session Timer for B2BUA Thanks for your response Paul! If I want to verify that a specific session is still up, the OPTIONS request is not enough, right? If I use options each 3rd minute, and the UA restarts in these 3 minutes, there is no way for the B2BUA to know if a specific call is up or not? So I guess I'm stuck with using either OPTIONS or reInvite... Has anyone got a clue about how wide support for OPTIONS reqiest is supported? Almost every UA? Regards, // Andreas -----Original Message----- From: Paul Kyzivat [mailto:[EMAIL PROTECTED] Sent: Saturday, March 04, 2006 12:28 AM To: Andreas Byström Cc: [email protected] Subject: Re: [Sip-implementors] Session Timer for B2BUA Andreas Byström wrote: > Hi all! > > I have a question regarding how a B2BUA should handle session timer. > The current case is that a call between A and B goes via a B2BUA, the > B2BUA uses session timers to be able to have somewhat secure billing, There is no reason for a UA to *request* session timer. If UA (including a B2BUA) wants to verify the sip signaling path periodically it is free to do so without the use of session timer. (OTOH, it is good for the UA/B2BUA to *support* session timer, in case some proxy along the path needs it. But it needn't propose the use.) > but A and B does > not support Session Timer. So what will happen is that after time x is > that B2BUA must refresh the session timer towards B (I consider it > enough to have session timer on one call leg). The problem is how to > handle SDP data. If you don't use session timer, then after time x (any x you choose) you can send any convenient message to A and/or to B. It doesn't have to be reINVITE. For instance OPTIONS comes to mind. It will check continuity just as well as reINVITE without the offer/answer issues. OTOH, if you insist on using session timer... > 1) Only reInvite and Update is allowed to be used to refresh session > timers (as according to RFC4028), right? Yes. > If B2BUA would use reInvite, if it send a reInvite to B without any > SDP data, B migth add a SDP offer in the 200 OK response There is no *might*. B MUST include offer in the first reliable response. > which means I have to > have a SDP response in the ACK... and I cant really do this without > including A... which I dont want to do (cant send the 200 OK to A to > get SDP response since A did not trigger reInvite) You send a reINVITE to A with the offer from B. Wait for the answer from A and send that in the ACK to B. This is the standard 3pcc ploy. It works fine as long as it is only *re*INVITEs and they are responded promptly. (No alerting for the reinvite.) > 2) Is there some way to send an reInvite, and indicate to the recipent > (in this case B), that B should not insert a SDP offer in the 200 OK? No. The offer is required. > The other option would be for B2BUA to refreash the session by > generating an Update to B when timer x triggers. > 3) Is it allowed to send an UPDATE request without a SDP body? Yes. This is ideal for session timers, when they are needed. But it only works if the peer supports UPDATE. > Since there > is no ACK to 200 OK of a Update I guess it is not valid for B to add a > SDP offer in 200 OK, which will prevent me from having the same > problems as in 2)... That is true. > 4) What would be the expected behavior of a UA that receives an update > without a SDP body? Just to keep the current voice/video session as > usuall? Yup. Paul > Thanks in advance! > // Andreas > _______________________________________________ > Sip-implementors mailing list [email protected] > https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors > _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
