Leo,

There is a subtle difference, which makes a difference when the INVITE is 
forked: BYE would terminate only a specific branch, while CANCEL would abort 
all branches (and stop the forking proxy from trying other alternatives).

Furthermore, a CANCEL may fail when it looses the RACE (i.e. UAS sends 2xx 
before CANCEL arrives), a BYE will typically succeed.

Consider a concrete scenario with a proxy that forks to an endpoint (which 
sends 180 ringing) and a voicemail server (which may also send a provisional 
response). CANCEL would abort the call, BYE (in response to the 180 ringing) 
would give you voicemail

Regards,

Jeroen

----- Original Message ----- 
From: "Bu, Wen Fei (Leo)" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, May 24, 2006 10:30 AM
Subject: [Sip-implementors] How could a caller's UA send a BYE for 
earlydialogs?


> Per RFC 3261, 15 Termination a Session:
>  The caller's UA MAY send a BYE for either confirmed or
>  early dialogs, and the callee's UA MAY send a BYE on
>  confirmed dialogs, but MUST NOT send a BYE on early dialogs.
>
> How could a caller's UA send a BYE for early dialogs?
> The caller's dialog is transmitted to confirmed state only
> after receiving a 2xx for INVITE. If the caller's UA wants
> to terminate the session before the final response, a CANCEL
> should be sent out instead of a BYE.
>
> Then in which case will the caller's UA send a BYE for early
> dialogs?
>
> Thanks,
>
> Leo, Bu
>
> Plexus Signaling
> Lucent Technologies Qingdao R&D
> --------------------------------
> Office:       +86 532 8861 5376
> email/MSN:    [EMAIL PROTECTED]
> --------------------------------
>
>
> _______________________________________________
> 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

Reply via email to