Funny. This exact point came up in a private conversation I was having 
just a day ago.

Alok 2 Tiwari wrote:
> Hi,
> As per RFC-3261, the retry after timer is started by UAC itself after 
> deciding the retry after duration based on call id ownership. So there is no 
> need of retry after header in 491 response code. But since your 
> implementation is as below:
> 
> I am adding the party name to make you understand the answer of this query.
> 
> The call flow is as below:
> 
> Party A                              Party B
> 
> INVITE ----------> B2BUA ----------> INVITE
> 100    <----------   B2BUA <---------- 100
> 183    <----------   B2BUA <---------- 183
> 200    <----------   B2BUA <---------- 200
> ACK    ----------> B2BUA ----------> ACK
>  <------------Call Established---------->
> REINVITE-------> B2BUA <-------REINVITE
> 491    <----------   B2BUA ----------> 491
> 
> Here is the two part of the call.
> 
> 1.  Party A --------------------> B2BUA
> 2.  B2BUA   --------------------> Party B
> 
> In first case, Party A is owner of the call id. So B2BUA will send 491 
> response towards party A with the duration between 2.1 and 4 seconds in retry 
> after header.
> 
> In second case, Since B2BUA is call id owner so it will send 491 response 
> towards party B with duration between 0 to 2 seconds in retry after header.

The above seems backward to the rules. Party B, and the B2BUA acting 
toward Party A go first, while Party A and the B2BUA acting toward Party 
B go later.

Practically speaking, the B2BUA will have to be passive in this - it 
will simply relay the reinvites it gets. Hopefully it will get the one 
from Party B before the one from Party A, and things will work out.

But there is another case that is more problematic:

Party A                             Party B
INVITE <--------- B2BUA ----------> INVITE
...
  <------------Call Established---------->
REINVITE-------> B2BUA <-------REINVITE
491    <----------   B2BUA ----------> 491

In this case the B2BUA is the owner if both dialogs, so Parties A and B 
will both choose to retry in between 0 and 2 seconds. In this case there 
is much greater chance of repeated collision.

There isn't a lot the B2BUA can do about this. Perhaps it could make its 
own decision about which party should receive preference, and 
preemptively return another 491 if it receives a retry from the other 
party first.

        Thanks,
        Paul


> Regards,
> Alok Tiwari
> 
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Kamini Gangwani
> Sent: Friday, October 17, 2008 2:10 PM
> To: sip-implementors@lists.cs.columbia.edu
> Cc: Kamini Gangwani
> Subject: [Sip-implementors] Query regarding Retry-After timers in 491response 
> in glare situation
> 
> Hi
> 
> I have one query regarding timers handling in 491 "Request Pending" for 
> Re-Invite.
> The scenario is like this:
> 
> A call is being established with an Application which is behaving as B2BUA. 
> Now we receives Reinvite from both sides- UAC and UAS at same time and due to 
> which a glare situation arises and B2BUA sends 491 "Request Pending" to both 
> sides UAC and UAS. So my query is that: what should be the value of 
> Retry-After timer in 491 for both call legs?
> 
> INVITE ----------> B2BUA ----------> INVITE
> 100    <----------   B2BUA <---------- 100
> 183    <----------   B2BUA <---------- 183
> 200    <----------   B2BUA <---------- 200
> ACK    ----------> B2BUA ----------> ACK
>  <------------Call Established---------->
> REINVITE-------> B2BUA <-------REINVITE
> 491    <----------   B2BUA ----------> 491 (What should be the value of 
> Retry-After timer in 491 response on both sides?)
> 
> As per RFC-3261, I got this information:
> 
> "If a UAC receives a 491 response to a re-INVITE, it SHOULD start a
>    timer with a value T chosen as follows:
> 
>       1. If the UAC is the owner of the Call-ID of the dialog ID
>          (Meaning it generated the value), T has a randomly chosen value
>          between 2.1 and 4 seconds in units of 10 ms.
> 
>       2. If the UAC is not the owner of the Call-ID of the dialog ID, T
>          has a randomly chosen value of between 0 and 2 seconds in units
>          of 10 ms."
> 
> But since in case of B2BUA, is it that we should check if it is side-1, then 
> timer value should be 2-4 seconds and if it is side-2, then timer value 
> should be 0-2 seconds.
> Is this correct understanding or anybody having some other views on this?
> 
> Regards,
> kamini gangwani
> Aricent
> 
> ________________________________
> "DISCLAIMER: This message is proprietary to Aricent and is intended solely 
> for the use of the individual to whom it is addressed. It may contain 
> privileged or confidential information and should not be circulated or used 
> for any purpose other than for what it is intended. If you have received this 
> message in error,please notify the originator immediately. If you are not the 
> intended recipient, you are notified that you are strictly prohibited from 
> using, copying, altering, or disclosing the contents of this message. Aricent 
> accepts no responsibility for loss or damage arising from the use of the 
> information transmitted by this email including damage from virus."
> _______________________________________________
> Sip-implementors mailing list
> Sip-implementors@lists.cs.columbia.edu
> https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
> 
> "DISCLAIMER: This message is proprietary to Aricent and is intended solely 
> for the use of the individual to whom it is addressed. It may contain 
> privileged or confidential information and should not be circulated or used 
> for any purpose other than for what it is intended. If you have received this 
> message in error,please notify the originator immediately. If you are not the 
> intended recipient, you are notified that you are strictly prohibited from 
> using, copying, altering, or disclosing the contents of this message. Aricent 
> accepts no responsibility for loss or damage arising from the use of the 
> information transmitted by this email including damage from virus."
> 
> _______________________________________________
> 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