Subject: [Sipping] New version of 199 draft

From: "Christer Holmberg" <[email-masked]>
Date: Wed, 20 Feb 2008 14:43:00 +0100

Hi,

I've submitted a new version of the 199 draft.

As agreed in Chicago, we were going to decide whether the keep the scope
as at that time, or if it should cover more of the HERPF stuff. But,
since nobody has indicated that the scope should be wider (Dale has
given some comments on stuff that may be needed for some BLISS work,
though) I have kept the scope unchanged.

The main difference is that also the UAS can generate a 199 response,
prior to sending the final response.

I've also added some text that the 199 response may include additional
information, e.g. the final response which triggered the 199.

The document can be found in:

http://users.piuha.net/cholmber/drafts/draft-holmberg-sipping-199-03.txt

Regards,

Christer
_______________________________________________
Sipping mailing list  http://www.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use [email-masked] for questions on current sip
Use [email-masked] for new developments of core SIP

---

From: [email-masked]
Date: Wed, 20 Feb 2008 12:15:12 -0500

Some comments on the -03 draft:

Abstract:

   The response code can be used
   by a SIP entity, normally a forking SIP proxy, to indicate that an
   early dialog has been terminated before a final response is sent.

I think the last phrase should be "to allow the UAC to know that an
early dialog has been terminated before it receives a final response
to the request".  Otherwise it is unclear that "to indicate" means "to
indicate to the UAC".  And it is not interesting when the final
response is sent, it is interesting when the UAC receives the final
response.

Requirements

Similarly, it is clearer to phrase the requirement as "It MUST be
possible to indicate to the UAC that an early dialog has been
terminated before it receives a final response."

Time ordering

In a number of places it is explicitly stated (though without an
all-caps word) that the 199 must be sent before the final response.
But since the network can reorder messages, it is impossible for any
SIP agent to determine whether this condition has been obeyed.  So it
is probably not useful to write this as a requirement.

Backward compatibility

   A UAC that receives a 199 response for an early dialog MUST NOT
   send any further requests on that dialog, except for a PRACK if the
   199 response was sent reliably.

I think you need to allow for PRACKs to other provisional responses
(which may have been sent before the 199 and delayed by the network
until after the UAC receives the 199).

Usage with SDP offer/answer

   A 199 Early Dialog Terminated provisional response MUST NOT contain a
   new SDP offer/answer message body, but the sender of the response MAY
   insert a copy of a previously sent offer/answer message body.

You probably want to add "a previously sent offer/answer message body
as otherwise allowed by the offer/answer rules for a provisional
response" just to make it clear that you aren't allowing any
additional freedom.

   A forking proxy MUST NOT trigger and send a 199 Early Dialog

You want to say "A proxy or UA MUST NOT send ...".

Dale

---

From: "Christer Holmberg" <[email-masked]>
Date: Wed, 20 Feb 2008 19:20:46 +0100

Hi Dale,
 
Thanks for reading the draft! Comments inline.

>response is sent, it is interesting when the UAC receives the final

I can do that change.

>terminated before it receives a final response."

If that is more clear, I can do that change also.

>is probably not useful to write this as a requirement.

The requirement says that it shall be possible to indicate before the final response is recieved. That does not preclude the fact that messages may be re-ordered, I think.

But, maybe we could say "before a final response is sent"?

Or, are you proposing that the requirements only says: "It MUST be possible to indicate to the UAC than an early dialog has been terminated"? 

I think such text is a little unclear. And, in fact, that requirement IS already fullfilled today: when you receive a 200 OK for a specific dialog it is an indication that other early dialogs have been terminated. The whole idea of 199 is to be able to get that indication before the final response is sent.

>until after the UAC receives the 199).

I agree. I can add text saying "...and PRACKs for other reliable provisional responses that are to be acknowledged".

>response" just to make it clear that you aren't allowing any

Yes, I think that is a good clarification.

>You want to say "A proxy or UA MUST NOT send ...".

I can do that change. I see no harm in the UAS sending a SDP message body, but there is of course a risk that the UAC does not understand 199 and thinks the dialog is up and running and starts triggering some functions based on the SDP.

Regards,

Christer

---

From: Paul Kyzivat <[email-masked]>
Date: Wed, 20 Feb 2008 13:52:45 -0500

Christer Holmberg wrote:

> I think such text is a little unclear. And, in fact, that requirement IS already fullfilled today: when you receive a 200 OK for a specific dialog it is an indication that other early dialogs have been terminated.

Not really.

It is still possible that you will get another 200 corresponding to one 
of the other early dialogs. I guess you can terminate early dialog and 
reestablish it when you get the 200, but that is not ideal.

	Paul

---

From: "Christer Holmberg" <[email-masked]>
Date: Wed, 20 Feb 2008 20:32:51 +0100

Hi,

>reestablish it when you get the 200, but that is not ideal.
 
Fair enough. You are correct.
 
But, still I think the requirement should say a little more than the text above.
 
Regards,
 
Christer

---

From: "Christer Holmberg" <[email-masked]>
Date: Thu, 21 Feb 2008 14:50:38 +0100

Hi,

I have submitted a -04 version of the 199 draft, based on the comments
and discussions with Dale.

It can also be found at:

http://users.piuha.net/cholmber/drafts/draft-holmberg-sipping-199-04.txt

Regards,

Christer

---

From: Gonzalo Camarillo <[email-masked]>
Date: Fri, 22 Feb 2008 10:01:09 +0200

Hi,

an earlier version (02) of this draft was presented in the IETF in 
Chicago. This is what the proceedings of that meeting say:

http://www.ietf.org/proceedings/07jul/minutes/sipping.txt

"Conclusion: Hum vote in support of working on this problem. As to 
whether it should expand to cover the entire HERFP problem, discussion 
should continue on the mailing list."

We have talked to those who wanted to expand this to cover the entire 
HERFP problem but, at this point, they do not seem to have the energy 
needed to work on it. So, if nobody disagrees, our intention is to send 
this draft to the SIP WG so that they can work on a solution to the 
requirements in the draft:

    REQ 1: It MUST be possible to indicate to the UAC that an early
    dialog has been terminated before a final response is sent.

Cheers,

Gonzalo
SIPPING co-chair