Rockson Li (zhengyli) wrote:
> Yes, Notify alone is enough to establish dialog in UAC.
While the NOTIFY is enough to establish the dialog, it doesn't obviate
the need for the 200 to complete the SUBSCRIBE transaction. If the 200
doesn't arrive, the SUBSCRIBE will be retransmitted.
Having the NOTIFY establish the dialog serves two purposes:
- when the NOTIFY just arrives before the 200 does.
this can happen because they take different paths.
- when the SUBSCRIBE is forked, only one final response
can be returned. The NOTIFY from one fork will be
redundant with the 200 for establishing a dialog. But
for the others, the NOTIFY is the only thing that
establishes the dialog.
In your case, if the SUBSCRIBE was not forked, but the 200 was lost, the
NOTIFY would first establish the dialog. Then the timeout would trigger
retransmission of the SUBSCRIBE, and hopefully lead to getting the 200.
If for some reason the 200 never arrives, then eventually the SUBSCRIBE
itself would fail. But the subscription would, I think, still survive.
Paul
> -Rockson
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of
> dushyant
> Sent: Wednesday, September 17, 2008 3:53 PM
> To: [email protected]
> Subject: [Sip-implementors] Query related to Subscribe - Notify dialog
>
> Hi All,
>
>
>
> I have a query related to Subscribe - Notify dialog.
>
>
>
> RFC 3265 says -
>
> 3.3.4. Dialog creation and termination
>
> If an initial SUBSCRIBE request is not sent on a pre-existing dialog,
> the subscriber will wait for a response to the SUBSCRIBE request or a
> matching NOTIFY.
>
>
>
> Does that mean once UAC receives Notify for a dialog, 2xx-6xx response
> is not required for completion of the dialog?
>
>
>
> Consider a scenario,
>
>
>
> 1. UAC sends SUBSCRIBE
>
> 2. UAS send 200 OK but this gets lost in the network.
>
> 3. UAS creates the dialog on its side.
>
> 4. UAS sends NOTIFY, UAC receives the same.
>
>
>
> My question is should UAC wait for 2xx? If yes, what should be the
> behavior of UAC on timeout? If the behavior of UAC is to terminate the
> dialog, should it send a SUBSCRIBE (with expires = 0) to end the dialog?
>
>
>
> Dushyant P S Dhalia
>
>
>
> _______________________________________________
> 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