Hi Abhishek ,

>From whatever information shared , I think that Switch here misbehaving .
Switch acting as B2B when adding Require:100 rel in outgoing Invite .
But when 183 SDP (assuming its reliable) comes to switch , its acting as
proxy instead of B2B .
So switch relays 183 Sdp to A and expects A to send back PRACK which would
never comes .
And because PRACK pending , final response is not relayed to A as per RFC
3262
Deadlock condition !!.

The UAS MAY send a final response to the initial request before
   having received PRACKs for all unacknowledged reliable provisional
   responses, unless the final response is 2xx and any of the
   unacknowledged reliable provisional responses contained a session
   description.


On Sun, Dec 2, 2018 at 7:47 PM abhishek verma <abhi2...@gmail.com> wrote:

> I assume, INVITE have SDP (i.e. Offer). And 183+SDP have some matching
> Answer for related offer.
> With above assumption,
>
> "> > A sending INVITE to B but does not contain Require:100REL. Switch
> > > forwards Invite to B but has Require:100REL."
> [AV]-->> If switch is adding Require-100-REL, in that case, I am
> assuming, that is not plain switch. It is B2BUA, which essentially
> need to maintain dialogue-state for both the transactions.
>
> "> > Then A sends 200OK which Switch does not forward to A."
> [AV] --> Firstly , I assumed, it is B who is sending 200-OK.
> Secondly, if switch is not forwarding 200-OK, towards A, I just want
> to know, if switch is sending PRACK towards B or not ? And is B
> replying with 200-PRACK for that or not ?
> If switch is neither sending PRACK nor forwarding 200-OK, you must
> check with the coder, who have written the code for your stack. It
> looks to be messy state-machine-implementation.
>
> Thanks
> Abhishek
>
> On Fri, Nov 30, 2018 at 8:15 AM Dale R. Worley <wor...@ariadne.com> wrote:
> >
> > Abhishek <abhishek.pha...@gmail.com> writes:
> > > A --> Switch --> B
> > > All 3 nodes connected with SIP connectivity.
> >
> > > A sending INVITE to B but does not contain Require:100REL. Switch
> > > forwards Invite to B but has Require:100REL.
> >
> > > B responds with 180 without SDP, Switch forwards the same to A. B then
> > > sends 183+SDP, which switch sends to A. Then A sends 200OK which
> > -----------------------------------------------^
> > I assume you mean "B" here.
> >
> > > Switch does not forward to A. B sends 200OK multiple times as per
> > > standard and Switch disconnects session at both the ends with SIP
> > > cause code 500.
> > >
> > > Seeking reason for such behaviour.
> >
> > It appears that Switch does not recognize the 200 as being part of the
> > dialog.  There are innumerable reasons why this might happen.  It is
> > hard for us to provide any help if you do not provide the INVITE (from
> > Switch to B) and the 200 (from B to Switch) for some example dialog.
> >
> > Dale
> > _______________________________________________
> > Sip-implementors mailing list
> > Sip-implementors@lists.cs.columbia.edu
> > https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
> _______________________________________________
> Sip-implementors mailing list
> Sip-implementors@lists.cs.columbia.edu
> https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
>
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to