Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
That seems also like very good sense, Thanks !
BR/pj


Sensitivity: Internal

-Original Message-
From: Dale R. Worley  
Sent: den 23 januari 2020 04:21
To: Sundbaum Per-Johan (Telenor Sverige AB) 
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

"Sundbaum Per-Johan (Telenor Sverige AB)"
 writes:
> What do you think about incrementing the version in SDP o-line, but 
> not changing anything else in SDP, should such a behavior be accepted 
> or should it be rejected ?

There are two similar but distinctly different questions that you might be 
asking.

The general principle is "Be conservative in what you produce and liberal in 
what you accept."

If the question is, "Should a device increment the version in an SDP o-line but 
not change anything else?", as you note RFC 4028 says that a device should not 
do that.

If the question is, "If a device receives SDP with an incremented version in 
the o-line that is otherwise identical to the preceding SDP, should it reject 
it?", the device should not reject it.

Dale
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version

2020-01-22 Thread Dale R. Worley
"Sundbaum Per-Johan (Telenor Sverige AB)"
 writes:
> What do you think about incrementing the version in SDP o-line, but
> not changing anything else in SDP, should such a behavior be accepted
> or should it be rejected ?

There are two similar but distinctly different questions that you might
be asking.

The general principle is "Be conservative in what you produce and
liberal in what you accept."

If the question is, "Should a device increment the version in an SDP
o-line but not change anything else?", as you note RFC 4028 says that a
device should not do that.

If the question is, "If a device receives SDP with an incremented
version in the o-line that is otherwise identical to the preceding SDP,
should it reject it?", the device should not reject it.

Dale
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
And may I add that I agree on your "never trust" point of view !

Great, Thanks !
:-)

Den 22 jan. 2020 18:59 skrev Paul Kyzivat :
You can find the definitive statement you are looking for in Section 8
of RFC3264:

... When issuing an offer that modifies the session,
the "o=" line of the new SDP MUST be identical to that in the
previous SDP, except that the version in the origin field MUST
increment by one from the previous SDP.  If the version in the origin
line does not increment, the SDP MUST be identical to the SDP with
that version number. ...

Now you have a MUST you can point to.

(Nevertheless, in any code that I write I would never trust this!)

Good luck,
Paul


On 1/22/20 11:09 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:
> Hi !
>
> I'm in IMS operations and sometimes I get stuck in the crossfire between 
> different vendors !
>
> The two SDP's are identical except the version-number, I have checked.
> For the moment it seems that most of our nodes are accepting that version is 
> incremented without session has changed in any other way, but
> we have a vendor that are claiming that it's a violation of RFC 4028 - 
> Session Timer and also claims that that violation is causing problems, so far
> a bit unclear why and what, could be some kind of misunderstanding, but I 
> have also colleagues that are arguing  that RFC 4028 is only valid for UA
> with support for timer.
>
> I think your view on the matter makes very good sense !
>
> Thanks !
>
> BR/pj
>
>
> Sensitivity: Internal
>

Sensitivity: Internal

> -Original Message-
> From: sip-implementors-boun...@lists.cs.columbia.edu 
>  On Behalf Of Paul Kyzivat
> Sent: den 22 januari 2020 16:25
> To: sip-implementors@lists.cs.columbia.edu
> Subject: Re: [Sip-implementors] SDP version
>
> Sorry, but I'm too lazy to compare those two messages byte by byte to see if 
> they are identical other than the version number.
>
> I don't understand the point of your question. Are you looking for an excuse 
> to increment the version number without checking if the SDP has changed?
>
> There is a fine line here between what is required behavior, what is good 
> practice, what is considerate, ...
>
> It really is a savings for the recipient of the SDP if he can avoid parsing 
> it. And generally it should be easier for the sender to "know"
> that the SDP is unchanged and so indicate that when sending it. It is a bit 
> harder for the recipient to determine that. OTOH, as an implementor I'm not 
> very trusting and so am inclined to not trust that it is unchanged without 
> checking. Even so there are ways to take advantage of that indication without 
> trusting it. (If the version # is the same as prior then do a string 
> comparison of the two SDPs to verify. If the version #s are different, then 
> simply start parsing the SDP without bothering with the comparison.)
>
> And we shouldn't second guess what optimizations a peer may or may not want 
> to do.
>
> I guess the worst case is a situation where you would normally generate the 
> SDP from scratch for every message and so not have an easy way to tell if it 
> has changed. Then it becomes a question of whether you do the extra work to 
> determine changed or not, or force extra work on the recipient. I think you 
> should do it.
>
> The session timer connection is, IMO, a red herring. That draft is poorly 
> written, in that it seems to imply that an invite for session timer is 
> mutually exclusive with one for offer/answer. The two processes share 
> messages and can coexist or not.
>
>Thanks,
>Paul
>
> On 1/22/20 6:50 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:
>> Sorry for the no good picture !
>>
>> SDP in 200OK for initial INVITE from PBX SDP PDU
>> v=0
>> o=- 195986 1 IN IP4 10.81.253.92
>> s=RFC3264OfferAnswerExchange
>> c=IN IP4 10.81.253.92
>> b=CT:1000
>> t=0 0
>> m=audio 23812 RTP/AVP 8 110
>> c=IN IP4 10.81.253.92
>> a=rtpmap:8 PCMA/8000
>> a=rtpmap:110 telephone-event/8000
>> a=fmtp:110 0-15
>> a=sendrecv
>> a=ptime:20
>>
>>
>> SDP in re-INVITE  from PBX
>> SDP PDU
>> v=0
>> o=- 195986 2 IN IP4 10.81.253.92
>> s=RFC3264OfferAnswerExchange
>> c=IN IP4 10.81.253.92
>> b=CT:1000
>> t=0 0
>> m=audio 23812 RTP/AVP 8 110
>> c=IN IP4 10.81.253.92
>> a=rtpmap:8 PCMA/8000
>> a=rtpmap:110 telephone-event/8000
>> a=fmtp:110 0-15
>> a=sendrecv
>> a=ptime:20
>>
>> BR/pj
>>
>> From: Rohit Jain 
>> Sent: den 22 januari 2020 12:36
>

Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
Great, Thanks !
:-)

Den 22 jan. 2020 18:59 skrev Paul Kyzivat :
You can find the definitive statement you are looking for in Section 8
of RFC3264:

... When issuing an offer that modifies the session,
the "o=" line of the new SDP MUST be identical to that in the
previous SDP, except that the version in the origin field MUST
increment by one from the previous SDP.  If the version in the origin
line does not increment, the SDP MUST be identical to the SDP with
that version number. ...

Now you have a MUST you can point to.

(Nevertheless, in any code that I write I would never trust this!)

Good luck,
Paul


On 1/22/20 11:09 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:
> Hi !
>
> I'm in IMS operations and sometimes I get stuck in the crossfire between 
> different vendors !
>
> The two SDP's are identical except the version-number, I have checked.
> For the moment it seems that most of our nodes are accepting that version is 
> incremented without session has changed in any other way, but
> we have a vendor that are claiming that it's a violation of RFC 4028 - 
> Session Timer and also claims that that violation is causing problems, so far
> a bit unclear why and what, could be some kind of misunderstanding, but I 
> have also colleagues that are arguing  that RFC 4028 is only valid for UA
> with support for timer.
>
> I think your view on the matter makes very good sense !
>
> Thanks !
>
> BR/pj
>
>
> Sensitivity: Internal
>
> -Original Message-
> From: sip-implementors-boun...@lists.cs.columbia.edu 
>  On Behalf Of Paul Kyzivat
> Sent: den 22 januari 2020 16:25
> To: sip-implementors@lists.cs.columbia.edu
> Subject: Re: [Sip-implementors] SDP version
>
> Sorry, but I'm too lazy to compare those two messages byte by byte to see if 
> they are identical other than the version number.
>
> I don't understand the point of your question. Are you looking for an excuse 
> to increment the version number without checking if the SDP has changed?
>
> There is a fine line here between what is required behavior, what is good 
> practice, what is considerate, ...
>
> It really is a savings for the recipient of the SDP if he can avoid parsing 
> it. And generally it should be easier for the sender to "know"
> that the SDP is unchanged and so indicate that when sending it. It is a bit 
> harder for the recipient to determine that. OTOH, as an implementor I'm not 
> very trusting and so am inclined to not trust that it is unchanged without 
> checking. Even so there are ways to take advantage of that indication without 
> trusting it. (If the version # is the same as prior then do a string 
> comparison of the two SDPs to verify. If the version #s are different, then 
> simply start parsing the SDP without bothering with the comparison.)
>
> And we shouldn't second guess what optimizations a peer may or may not want 
> to do.
>
> I guess the worst case is a situation where you would normally generate the 
> SDP from scratch for every message and so not have an easy way to tell if it 
> has changed. Then it becomes a question of whether you do the extra work to 
> determine changed or not, or force extra work on the recipient. I think you 
> should do it.
>
> The session timer connection is, IMO, a red herring. That draft is poorly 
> written, in that it seems to imply that an invite for session timer is 
> mutually exclusive with one for offer/answer. The two processes share 
> messages and can coexist or not.
>
>Thanks,
>Paul
>
> On 1/22/20 6:50 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:
>> Sorry for the no good picture !
>>
>> SDP in 200OK for initial INVITE from PBX SDP PDU
>> v=0
>> o=- 195986 1 IN IP4 10.81.253.92
>> s=RFC3264OfferAnswerExchange
>> c=IN IP4 10.81.253.92
>> b=CT:1000
>> t=0 0
>> m=audio 23812 RTP/AVP 8 110
>> c=IN IP4 10.81.253.92
>> a=rtpmap:8 PCMA/8000
>> a=rtpmap:110 telephone-event/8000
>> a=fmtp:110 0-15
>> a=sendrecv
>> a=ptime:20
>>
>>
>> SDP in re-INVITE  from PBX
>> SDP PDU
>> v=0
>> o=- 195986 2 IN IP4 10.81.253.92
>> s=RFC3264OfferAnswerExchange
>> c=IN IP4 10.81.253.92
>> b=CT:1000
>> t=0 0
>> m=audio 23812 RTP/AVP 8 110
>> c=IN IP4 10.81.253.92
>> a=rtpmap:8 PCMA/8000
>> a=rtpmap:110 telephone-event/8000
>> a=fmtp:110 0-15
>> a=sendrecv
>> a=ptime:20
>>
>> BR/pj
>>
>> From: Rohit Jain 
>> Sent: den 22 januari 2020 12:36
>> To: Sundbaum Per-Johan (Telenor Sverige AB)
>> 
>> Cc: sip-implementors@lists.cs.columbi

Re: [Sip-implementors] SDP version

2020-01-22 Thread Paul Kyzivat
You can find the definitive statement you are looking for in Section 8 
of RFC3264:


   ... When issuing an offer that modifies the session,
   the "o=" line of the new SDP MUST be identical to that in the
   previous SDP, except that the version in the origin field MUST
   increment by one from the previous SDP.  If the version in the origin
   line does not increment, the SDP MUST be identical to the SDP with
   that version number. ...

Now you have a MUST you can point to.

(Nevertheless, in any code that I write I would never trust this!)

Good luck,
Paul


On 1/22/20 11:09 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:

Hi !

I'm in IMS operations and sometimes I get stuck in the crossfire between 
different vendors !

The two SDP's are identical except the version-number, I have checked.
For the moment it seems that most of our nodes are accepting that version is 
incremented without session has changed in any other way, but
we have a vendor that are claiming that it's a violation of RFC 4028 - Session 
Timer and also claims that that violation is causing problems, so far
a bit unclear why and what, could be some kind of misunderstanding, but I have 
also colleagues that are arguing  that RFC 4028 is only valid for UA
with support for timer.

I think your view on the matter makes very good sense !

Thanks !

BR/pj


Sensitivity: Internal

-Original Message-
From: sip-implementors-boun...@lists.cs.columbia.edu 
 On Behalf Of Paul Kyzivat
Sent: den 22 januari 2020 16:25
To: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Sorry, but I'm too lazy to compare those two messages byte by byte to see if 
they are identical other than the version number.

I don't understand the point of your question. Are you looking for an excuse to 
increment the version number without checking if the SDP has changed?

There is a fine line here between what is required behavior, what is good 
practice, what is considerate, ...

It really is a savings for the recipient of the SDP if he can avoid parsing it. And 
generally it should be easier for the sender to "know"
that the SDP is unchanged and so indicate that when sending it. It is a bit 
harder for the recipient to determine that. OTOH, as an implementor I'm not 
very trusting and so am inclined to not trust that it is unchanged without 
checking. Even so there are ways to take advantage of that indication without 
trusting it. (If the version # is the same as prior then do a string comparison 
of the two SDPs to verify. If the version #s are different, then simply start 
parsing the SDP without bothering with the comparison.)

And we shouldn't second guess what optimizations a peer may or may not want to 
do.

I guess the worst case is a situation where you would normally generate the SDP 
from scratch for every message and so not have an easy way to tell if it has 
changed. Then it becomes a question of whether you do the extra work to 
determine changed or not, or force extra work on the recipient. I think you 
should do it.

The session timer connection is, IMO, a red herring. That draft is poorly 
written, in that it seems to imply that an invite for session timer is mutually 
exclusive with one for offer/answer. The two processes share messages and can 
coexist or not.

Thanks,
Paul

On 1/22/20 6:50 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:

Sorry for the no good picture !

SDP in 200OK for initial INVITE from PBX SDP PDU
v=0
o=- 195986 1 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20


SDP in re-INVITE  from PBX
SDP PDU
v=0
o=- 195986 2 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20

BR/pj

From: Rohit Jain 
Sent: den 22 januari 2020 12:36
To: Sundbaum Per-Johan (Telenor Sverige AB)

Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Hi,

SIP entities (client/server) checks SDP version to determine whether there is 
any change in SDP from previously received SDP. If the version is changed then 
they go on to parse the entire SDP to determine the change.
Based on that SIP entity can initiate media processing(more relevant in case of 
servers) or just relay the message without any media level processing. If  just 
the version number is incremented but there is no actual change in SDP, then it 
will trigger unnecessary processing on the receiver, so it should be avoided.

Also can you specify what could be the requirement ("but is that true also for UA 
without support for timer") in which it is required to i

Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
Hi !

I'm in IMS operations and sometimes I get stuck in the crossfire between 
different vendors ! 

The two SDP's are identical except the version-number, I have checked.
For the moment it seems that most of our nodes are accepting that version is 
incremented without session has changed in any other way, but
we have a vendor that are claiming that it's a violation of RFC 4028 - Session 
Timer and also claims that that violation is causing problems, so far
a bit unclear why and what, could be some kind of misunderstanding, but I have 
also colleagues that are arguing  that RFC 4028 is only valid for UA 
with support for timer.

I think your view on the matter makes very good sense !

Thanks !

BR/pj


Sensitivity: Internal

-Original Message-
From: sip-implementors-boun...@lists.cs.columbia.edu 
 On Behalf Of Paul Kyzivat
Sent: den 22 januari 2020 16:25
To: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Sorry, but I'm too lazy to compare those two messages byte by byte to see if 
they are identical other than the version number.

I don't understand the point of your question. Are you looking for an excuse to 
increment the version number without checking if the SDP has changed?

There is a fine line here between what is required behavior, what is good 
practice, what is considerate, ...

It really is a savings for the recipient of the SDP if he can avoid parsing it. 
And generally it should be easier for the sender to "know" 
that the SDP is unchanged and so indicate that when sending it. It is a bit 
harder for the recipient to determine that. OTOH, as an implementor I'm not 
very trusting and so am inclined to not trust that it is unchanged without 
checking. Even so there are ways to take advantage of that indication without 
trusting it. (If the version # is the same as prior then do a string comparison 
of the two SDPs to verify. If the version #s are different, then simply start 
parsing the SDP without bothering with the comparison.)

And we shouldn't second guess what optimizations a peer may or may not want to 
do.

I guess the worst case is a situation where you would normally generate the SDP 
from scratch for every message and so not have an easy way to tell if it has 
changed. Then it becomes a question of whether you do the extra work to 
determine changed or not, or force extra work on the recipient. I think you 
should do it.

The session timer connection is, IMO, a red herring. That draft is poorly 
written, in that it seems to imply that an invite for session timer is mutually 
exclusive with one for offer/answer. The two processes share messages and can 
coexist or not.

Thanks,
Paul

On 1/22/20 6:50 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:
> Sorry for the no good picture !
> 
> SDP in 200OK for initial INVITE from PBX SDP PDU
> v=0
> o=- 195986 1 IN IP4 10.81.253.92
> s=RFC3264OfferAnswerExchange
> c=IN IP4 10.81.253.92
> b=CT:1000
> t=0 0
> m=audio 23812 RTP/AVP 8 110
> c=IN IP4 10.81.253.92
> a=rtpmap:8 PCMA/8000
> a=rtpmap:110 telephone-event/8000
> a=fmtp:110 0-15
> a=sendrecv
> a=ptime:20
> 
> 
> SDP in re-INVITE  from PBX
> SDP PDU
> v=0
> o=- 195986 2 IN IP4 10.81.253.92
> s=RFC3264OfferAnswerExchange
> c=IN IP4 10.81.253.92
> b=CT:1000
> t=0 0
> m=audio 23812 RTP/AVP 8 110
> c=IN IP4 10.81.253.92
> a=rtpmap:8 PCMA/8000
> a=rtpmap:110 telephone-event/8000
> a=fmtp:110 0-15
> a=sendrecv
> a=ptime:20
> 
> BR/pj
> 
> From: Rohit Jain 
> Sent: den 22 januari 2020 12:36
> To: Sundbaum Per-Johan (Telenor Sverige AB) 
> 
> Cc: sip-implementors@lists.cs.columbia.edu
> Subject: Re: [Sip-implementors] SDP version
> 
> Hi,
> 
> SIP entities (client/server) checks SDP version to determine whether there is 
> any change in SDP from previously received SDP. If the version is changed 
> then they go on to parse the entire SDP to determine the change.
> Based on that SIP entity can initiate media processing(more relevant in case 
> of servers) or just relay the message without any media level processing. If  
> just the version number is incremented but there is no actual change in SDP, 
> then it will trigger unnecessary processing on the receiver, so it should be 
> avoided.
> 
> Also can you specify what could be the requirement ("but is that true also 
> for UA without support for timer") in which it is required to increment the 
> SDP version number without any actual change in SDP.
> PS: Not able to get the attached picture.
> 
> Regards,
> Rohit J
> 
> On Wed, Jan 22, 2020 at 4:31 PM Sundbaum Per-Johan (Telenor Sverige AB) 
> mailto:per-johan.sundb...@telenor.se>> wrote:
> Hi !
> What do you think about incrementing the version in SDP o-line, but 
&g

Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
Hi !
I don't think that there are any requirements to do that, but never the less 
there are implementations that are doing it, accidentally I guess.
Thanks !
BR/pj

From: Rohit Jain 
Sent: den 22 januari 2020 12:36
To: Sundbaum Per-Johan (Telenor Sverige AB) 
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Hi,

SIP entities (client/server) checks SDP version to determine whether there is 
any change in SDP from previously received SDP. If the version is changed then 
they go on to parse the entire SDP to determine the change.
Based on that SIP entity can initiate media processing(more relevant in case of 
servers) or just relay the message without any media level processing. If  just 
the version number is incremented but there is no actual change in SDP, then it 
will trigger unnecessary processing on the receiver, so it should be avoided.

Also can you specify what could be the requirement ("but is that true also for 
UA without support for timer") in which it is required to increment the SDP 
version number without any actual change in SDP.
PS: Not able to get the attached picture.

Regards,
Rohit J

On Wed, Jan 22, 2020 at 4:31 PM Sundbaum Per-Johan (Telenor Sverige AB) 
mailto:per-johan.sundb...@telenor.se>> wrote:
Hi !
What do you think about incrementing the version in SDP o-line, but not 
changing anything else in SDP,
should such a behavior be accepted or should it be rejected ?

RFC 4028 states that such behavior at least should be avoided, but is that true 
also for UA without support for timer ?

" RFC 4028 - Session Timer
 In that case, the offer MUST indicate
   that it has not changed.  In the case of SDP, this is accomplished by
   including the same value for the origin field as did previous SDP
   messages to its peer.  The same is true for an answer exchanged as a
   result of a session refresh request; if it has not changed, that MUST
   be indicated. "

An example from reality in picture below, should it be accepted ?
I think it should be accepted.

[cid:image001.png@01D5D11B.59A78290]

BR/pj



Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu<mailto:Sip-implementors@lists.cs.columbia.edu>
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


--
Regards,
Rohit Jain


Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version

2020-01-22 Thread Paul Kyzivat
Sorry, but I'm too lazy to compare those two messages byte by byte to 
see if they are identical other than the version number.


I don't understand the point of your question. Are you looking for an 
excuse to increment the version number without checking if the SDP has 
changed?


There is a fine line here between what is required behavior, what is 
good practice, what is considerate, ...


It really is a savings for the recipient of the SDP if he can avoid 
parsing it. And generally it should be easier for the sender to "know" 
that the SDP is unchanged and so indicate that when sending it. It is a 
bit harder for the recipient to determine that. OTOH, as an implementor 
I'm not very trusting and so am inclined to not trust that it is 
unchanged without checking. Even so there are ways to take advantage of 
that indication without trusting it. (If the version # is the same as 
prior then do a string comparison of the two SDPs to verify. If the 
version #s are different, then simply start parsing the SDP without 
bothering with the comparison.)


And we shouldn't second guess what optimizations a peer may or may not 
want to do.


I guess the worst case is a situation where you would normally generate 
the SDP from scratch for every message and so not have an easy way to 
tell if it has changed. Then it becomes a question of whether you do the 
extra work to determine changed or not, or force extra work on the 
recipient. I think you should do it.


The session timer connection is, IMO, a red herring. That draft is 
poorly written, in that it seems to imply that an invite for session 
timer is mutually exclusive with one for offer/answer. The two processes 
share messages and can coexist or not.


Thanks,
Paul

On 1/22/20 6:50 AM, Sundbaum Per-Johan (Telenor Sverige AB) wrote:

Sorry for the no good picture !

SDP in 200OK for initial INVITE from PBX
SDP PDU
v=0
o=- 195986 1 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20


SDP in re-INVITE  from PBX
SDP PDU
v=0
o=- 195986 2 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20

BR/pj

From: Rohit Jain 
Sent: den 22 januari 2020 12:36
To: Sundbaum Per-Johan (Telenor Sverige AB) 
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Hi,

SIP entities (client/server) checks SDP version to determine whether there is 
any change in SDP from previously received SDP. If the version is changed then 
they go on to parse the entire SDP to determine the change.
Based on that SIP entity can initiate media processing(more relevant in case of 
servers) or just relay the message without any media level processing. If  just 
the version number is incremented but there is no actual change in SDP, then it 
will trigger unnecessary processing on the receiver, so it should be avoided.

Also can you specify what could be the requirement ("but is that true also for UA 
without support for timer") in which it is required to increment the SDP version 
number without any actual change in SDP.
PS: Not able to get the attached picture.

Regards,
Rohit J

On Wed, Jan 22, 2020 at 4:31 PM Sundbaum Per-Johan (Telenor Sverige AB) 
mailto:per-johan.sundb...@telenor.se>> wrote:
Hi !
What do you think about incrementing the version in SDP o-line, but not 
changing anything else in SDP,
should such a behavior be accepted or should it be rejected ?

RFC 4028 states that such behavior at least should be avoided, but is that true 
also for UA without support for timer ?

" RFC 4028 - Session Timer
  In that case, the offer MUST indicate
that it has not changed.  In the case of SDP, this is accomplished by
including the same value for the origin field as did previous SDP
messages to its peer.  The same is true for an answer exchanged as a
result of a session refresh request; if it has not changed, that MUST
be indicated. "

An example from reality in picture below, should it be accepted ?
I think it should be accepted.

[cid:image001.png@01D5D11B.59A78290]

BR/pj



Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu<mailto:Sip-implementors@lists.cs.columbia.edu>
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


--
Regards,
Rohit Jain


Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors




Re: [Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
Sorry for the no good picture !

SDP in 200OK for initial INVITE from PBX
SDP PDU
v=0
o=- 195986 1 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20


SDP in re-INVITE  from PBX
SDP PDU
v=0
o=- 195986 2 IN IP4 10.81.253.92
s=RFC3264OfferAnswerExchange
c=IN IP4 10.81.253.92
b=CT:1000
t=0 0
m=audio 23812 RTP/AVP 8 110
c=IN IP4 10.81.253.92
a=rtpmap:8 PCMA/8000
a=rtpmap:110 telephone-event/8000
a=fmtp:110 0-15
a=sendrecv
a=ptime:20

BR/pj

From: Rohit Jain 
Sent: den 22 januari 2020 12:36
To: Sundbaum Per-Johan (Telenor Sverige AB) 
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] SDP version

Hi,

SIP entities (client/server) checks SDP version to determine whether there is 
any change in SDP from previously received SDP. If the version is changed then 
they go on to parse the entire SDP to determine the change.
Based on that SIP entity can initiate media processing(more relevant in case of 
servers) or just relay the message without any media level processing. If  just 
the version number is incremented but there is no actual change in SDP, then it 
will trigger unnecessary processing on the receiver, so it should be avoided.

Also can you specify what could be the requirement ("but is that true also for 
UA without support for timer") in which it is required to increment the SDP 
version number without any actual change in SDP.
PS: Not able to get the attached picture.

Regards,
Rohit J

On Wed, Jan 22, 2020 at 4:31 PM Sundbaum Per-Johan (Telenor Sverige AB) 
mailto:per-johan.sundb...@telenor.se>> wrote:
Hi !
What do you think about incrementing the version in SDP o-line, but not 
changing anything else in SDP,
should such a behavior be accepted or should it be rejected ?

RFC 4028 states that such behavior at least should be avoided, but is that true 
also for UA without support for timer ?

" RFC 4028 - Session Timer
 In that case, the offer MUST indicate
   that it has not changed.  In the case of SDP, this is accomplished by
   including the same value for the origin field as did previous SDP
   messages to its peer.  The same is true for an answer exchanged as a
   result of a session refresh request; if it has not changed, that MUST
   be indicated. "

An example from reality in picture below, should it be accepted ?
I think it should be accepted.

[cid:image001.png@01D5D11B.59A78290]

BR/pj



Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu<mailto:Sip-implementors@lists.cs.columbia.edu>
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


--
Regards,
Rohit Jain


Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version

2020-01-22 Thread Rohit Jain
Hi,

SIP entities (client/server) checks SDP version to determine whether there
is any change in SDP from previously received SDP. If the version is
changed then they go on to parse the entire SDP to determine the change.
Based on that SIP entity can initiate media processing(more relevant in
case of servers) or just relay the message without any media level
processing. If  just the version number is incremented but there is no
actual change in SDP, then it will trigger unnecessary processing on the
receiver, so it should be avoided.

Also can you specify what could be the requirement (*"but is that true also
for UA without support for timer")* in which it is required to increment
the SDP version number without any actual change in SDP.
PS: Not able to get the attached picture.

Regards,
Rohit J

On Wed, Jan 22, 2020 at 4:31 PM Sundbaum Per-Johan (Telenor Sverige AB) <
per-johan.sundb...@telenor.se> wrote:

> Hi !
> What do you think about incrementing the version in SDP o-line, but not
> changing anything else in SDP,
> should such a behavior be accepted or should it be rejected ?
>
> RFC 4028 states that such behavior at least should be avoided, but is that
> true also for UA without support for timer ?
>
> " RFC 4028 - Session Timer
>  In that case, the offer MUST indicate
>that it has not changed.  In the case of SDP, this is accomplished by
>including the same value for the origin field as did previous SDP
>messages to its peer.  The same is true for an answer exchanged as a
>result of a session refresh request; if it has not changed, that MUST
>be indicated. "
>
> An example from reality in picture below, should it be accepted ?
> I think it should be accepted.
>
> [cid:image001.png@01D5D11B.59A78290]
>
> BR/pj
>
>
>
> Sensitivity: Internal
> ___
> Sip-implementors mailing list
> Sip-implementors@lists.cs.columbia.edu
> https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
>


-- 
Regards,
Rohit Jain
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


[Sip-implementors] SDP version

2020-01-22 Thread Sundbaum Per-Johan (Telenor Sverige AB)
Hi !
What do you think about incrementing the version in SDP o-line, but not 
changing anything else in SDP,
should such a behavior be accepted or should it be rejected ?

RFC 4028 states that such behavior at least should be avoided, but is that true 
also for UA without support for timer ?

" RFC 4028 - Session Timer
 In that case, the offer MUST indicate
   that it has not changed.  In the case of SDP, this is accomplished by
   including the same value for the origin field as did previous SDP
   messages to its peer.  The same is true for an answer exchanged as a
   result of a session refresh request; if it has not changed, that MUST
   be indicated. "

An example from reality in picture below, should it be accepted ?
I think it should be accepted.

[cid:image001.png@01D5D11B.59A78290]

BR/pj



Sensitivity: Internal
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-18 Thread Paul Kyzivat

I just noticed this thread. So I'm jumping in where it seems to make sense.

Note that 3261 and friends are *not* very clear about this. RFC6337 
tried to clarify the original intent, without being normative. (In 
retrospect it would probably have been better to make a normative 
update.) There were many logical inferences made, across text from 
several documents, to determine original intent. The chain of logic is 
not always captured in 6337.


IMO it is unfortunate that 3261 made it mandatory to ignore subsequent 
SDP in responses once the answer is received. While it may sometimes 
help keep a session working even when the UAS misbehaves, it is equally 
likely to simply result in a mess where the UAC and UAS disagree on the 
state of the session. If the answerer changes the SDP in a meaningful 
way (e.g., changing the media address) then things will not work unless 
the UAC also violates 3261 and honors the change.


In your case is the *only* change in the SDP is to the version number? 
What is the point in doing that?


Bottom line: IMO both UAC and UAS are non-conformant. The UAS is sending 
an invalid repetition of the answer, and the UAC is invalidly paying 
attention to it and objecting.


On 9/18/15 7:59 AM, Roger Wiklund wrote:

I agree with you but Nokia does not.

Basically what they are saying is this: If SDP version number is
incremented then this counts as an update/new offer period.

The problem is I can't find an RFC stating "You MUST NOT increment
version number if no change is made to the SDP"

Even Paul Kyzviat is uncertain regarding this (at leat last year)

https://lists.cs.columbia.edu/pipermail/sip-implementors/2014-July/029740.html


I didn't go back and review that whole discussion, but IIRC, it was 
really more about subsequent O/As after the initial session 
establishment. In that case it is *valid* to change the SDP, and the 
question is whether a change to only the version number is acceptable.


It is a bit different than in this case.

Thanks,
Paul


On Fri, Sep 18, 2015 at 1:11 PM, Brett Tate  wrote:

The violation is:

  "When a reliable provisional response contains a session description, and
is
the first to do so, then that session description is the answer to the
offer
in the INVITE request.  The answer cannot be updated, and a new offer
cannot
be sent in a subsequent reliable response for the same INVITE
transaction."

The only thing left to interpretation IMO is if version increment with no
SDP change is considered an update.

Thoughts on this?


The SDP is not an updated answer.  The SDP is not a new offer.  It is an SDP
that RFC 3261 says must be ignored.

___
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


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-18 Thread Brett Tate
> I agree with you but  does not.
>
> Basically what they are saying is this: If SDP version number
> is incremented then this counts as an update/new offer period.

They can call it whatever they want.  RFC 3261 says that the SDP must be
ignored (i.e. it is not an updated answer or new offer).

However if the vendor wants to disregard the "MUST ignore" and release the
call, that is their prerogative.  If the other vendor wants to interoperate
with them, they will quit making the useless modification to the SDP.

For completeness, I'll just say that the offer/answer model typically
requires devices support RFC 3262, RFC 3311, and RFC 3261's forking
interactions to avoid a poor user experience during call setup.  Since there
are vendors which still don't support such things (and operators that
disable such functionality), devices occasionally have configuration options
to intentionally disregard the "MUST ignore" in an attempt to improve the
user experience (such as by handling as an updated answer).  However, it
sounds like there are others that prefer to disregard the "MUST ignore" and
choose to release the call.

-brett
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-18 Thread Roger Wiklund
I agree with you but Nokia does not.

Basically what they are saying is this: If SDP version number is
incremented then this counts as an update/new offer period.

The problem is I can't find an RFC stating "You MUST NOT increment
version number if no change is made to the SDP"

Even Paul Kyzviat is uncertain regarding this (at leat last year)

https://lists.cs.columbia.edu/pipermail/sip-implementors/2014-July/029740.html

On Fri, Sep 18, 2015 at 1:11 PM, Brett Tate  wrote:
>> The violation is:
>>
>>  "When a reliable provisional response contains a session description, and
>> is
>> the first to do so, then that session description is the answer to the
>> offer
>> in the INVITE request.  The answer cannot be updated, and a new offer
>> cannot
>> be sent in a subsequent reliable response for the same INVITE
>> transaction."
>>
>> The only thing left to interpretation IMO is if version increment with no
>> SDP change is considered an update.
>>
>> Thoughts on this?
>
> The SDP is not an updated answer.  The SDP is not a new offer.  It is an SDP
> that RFC 3261 says must be ignored.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-18 Thread Brett Tate
> The violation is:
>
>  "When a reliable provisional response contains a session description, and
> is
> the first to do so, then that session description is the answer to the
> offer
> in the INVITE request.  The answer cannot be updated, and a new offer
> cannot
> be sent in a subsequent reliable response for the same INVITE
> transaction."
>
> The only thing left to interpretation IMO is if version increment with no
> SDP change is considered an update.
>
> Thoughts on this?

The SDP is not an updated answer.  The SDP is not a new offer.  It is an SDP
that RFC 3261 says must be ignored.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-18 Thread Roger Wiklund
So it's clear that the UAC is violating the "MUST ignore".

I think this also makes it clear that the UAS is violating RFC.

RFC 6337 section 2.2.

Note that an offer/answer exchange initiated by an INVITE request
must follow exactly one of the Patterns 1, 2, 3, 4.  When an initial
INVITE causes multiple dialogs due to forking, an offer/answer
exchange is carried out independently in each distinct dialog.  When
an INVITE request contains no offer, only Pattern 2 or Pattern 4
apply.  According to Section 13.2.1 of [RFC3261], 'The first reliable
non-failure message' must have an offer if there is no offer in the
INVITE request.  This means that the User Agent (UA) that receives
the INVITE request without an offer must include an offer in the
first reliable response with 100rel extension.  If no reliable
provisional response has been sent, the User Agent Server (UAS) must
include an offer when sending 2xx response.

In Pattern 3, the first reliable provisional response may or may not
have an answer.  When a reliable provisional response contains a
session description, and is the first to do so, then that session
description is the answer to the offer in the INVITE request.  The
answer cannot be updated, and a new offer cannot be sent in a
subsequent reliable response for the same INVITE transaction.

In Pattern 5, a Provisional Response ACKnowledgement (PRACK) request
can contain an offer only if the reliable response that it
acknowledges contains an answer to the previous offer/answer exchange.

— snip

---

 1. INVITE Req.  2xx INVITE Resp. RFC 3261  Y   YN
 2. 2xx INVITE Resp. ACK Req. RFC 3261  Y   YN
 3. INVITE Req.  1xx-rel INVITE Resp. RFC 3262  Y   YN
 4. 1xx-rel INVITE Resp. PRACK Req.   RFC 3262  Y   YN
 5. PRACK Req.   200 PRACK Resp.  RFC 3262  N   YY
 6. UPDATE Req.  2xx UPDATE Resp. RFC 3311  N   YY

Table 1: Summary of SIP Usage of the Offer/Answer Model


The violation is:

 "When a reliable provisional response contains a
session description, and is the first to do so, then that session
description is the answer to the offer in the INVITE request.  The
answer cannot be updated, and a new offer cannot be sent in a
subsequent reliable response for the same INVITE transaction."

The only thing left to interpretation IMO is if version increment with
no SDP change is considered an update.

Thoughts on this?

/Roger

On Thu, Sep 17, 2015 at 10:06 PM, Roger Wiklund  wrote:
> Thanks, makes sense!
>
> On Thu, Sep 17, 2015 at 10:02 PM, Brett Tate  wrote:
>> Hi,
>>
>> The UAC is violating the "MUST ignore".  It is an SDP which MUST be ignored.
>> Thus it is irrelevant what the UAS sends unless interacting with devices
>> that ignore the "MUST ignore".  However for interoperability reasons, the
>> UAS can change their behavior.  If I remember correctly, RFC 6337 might even
>> recommend not including an SDP in that situation.
>>
>>
>>> -Original Message-
>>> From: Roger Wiklund [mailto:roger.wikl...@gmail.com]
>>> Sent: Thursday, September 17, 2015 3:29 PM
>>> To: Brett Tate
>>> Cc: sip-implementors@lists.cs.columbia.edu
>>> Subject: Re: [Sip-implementors] SDP version increment without SDP change
>>> in
>>> early dialog
>>>
>>> Hi
>>>
>>> Correct I forgot to mention that the initial INVITE contains SDP and it's
>>> a
>>> single dialog.
>>>
>>> RFC3261 section 13.2.1
>>>
>>> If the initial offer is in an INVITE, the answer MUST be in a reliable
>>> non-
>>> failure message from UAS back to UAC which is correlated to that INVITE.
>>> For
>>> this specification, that is only the final 2xx response to that INVITE.
>>> That
>>> same exact answer MAY also be placed in any provisional responses sent
>>> prior
>>> to the answer.  The UAC MUST treat the first session description it
>>> receives
>>> as the answer, and MUST ignore any session descriptions in subsequent
>>> responses to the initial INVITE.
>>>
>>> "That same exact answer MAY also be placed in any provisional responses
>>> sent
>>> prior to the answer."
>>>
>>> You MAY place it in subsequent responses but the key is "that same exact
>>> answer" So if you increment the version number it's not the exact same
>>> answer.
>>>
>>> Is that not a violation?
>>>
>>> /Roger
>>>
>>>
>>>
>>>
>>>
>>>
>&g

Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-17 Thread Roger Wiklund
Thanks, makes sense!

On Thu, Sep 17, 2015 at 10:02 PM, Brett Tate  wrote:
> Hi,
>
> The UAC is violating the "MUST ignore".  It is an SDP which MUST be ignored.
> Thus it is irrelevant what the UAS sends unless interacting with devices
> that ignore the "MUST ignore".  However for interoperability reasons, the
> UAS can change their behavior.  If I remember correctly, RFC 6337 might even
> recommend not including an SDP in that situation.
>
>
>> -Original Message-
>> From: Roger Wiklund [mailto:roger.wikl...@gmail.com]
>> Sent: Thursday, September 17, 2015 3:29 PM
>> To: Brett Tate
>> Cc: sip-implementors@lists.cs.columbia.edu
>> Subject: Re: [Sip-implementors] SDP version increment without SDP change
>> in
>> early dialog
>>
>> Hi
>>
>> Correct I forgot to mention that the initial INVITE contains SDP and it's
>> a
>> single dialog.
>>
>> RFC3261 section 13.2.1
>>
>> If the initial offer is in an INVITE, the answer MUST be in a reliable
>> non-
>> failure message from UAS back to UAC which is correlated to that INVITE.
>> For
>> this specification, that is only the final 2xx response to that INVITE.
>> That
>> same exact answer MAY also be placed in any provisional responses sent
>> prior
>> to the answer.  The UAC MUST treat the first session description it
>> receives
>> as the answer, and MUST ignore any session descriptions in subsequent
>> responses to the initial INVITE.
>>
>> "That same exact answer MAY also be placed in any provisional responses
>> sent
>> prior to the answer."
>>
>> You MAY place it in subsequent responses but the key is "that same exact
>> answer" So if you increment the version number it's not the exact same
>> answer.
>>
>> Is that not a violation?
>>
>> /Roger
>>
>>
>>
>>
>>
>>
>>
>> On Thu, Sep 17, 2015 at 8:26 PM, Brett Tate  wrote:
>> > Hi,
>> >
>> > I assume that the INVITE contained an SDP and your example truly
>> > reflects a single dialog (i.e. 18x/2xx To tags are the same).
>> >
>> > According to RFC 3261 section 13.2.1, the SDP modification must be
>> > ignored.  Thus it shouldn't cause the call to be released.  With that
>> > said, some devices have configuration options to violate that
>> > statement and treat as an updated answer SDP (or a new offer SDP).
>> >
>> > RFC 3261 section 13.2.1: "The UAC MUST treat the first session
>> > description it receives as the answer, and MUST ignore any session
>> > descriptions in subsequent responses to the initial INVITE."
>> >
>> > More inline.
>> >
>> >> -Original Message-
>> >> From: sip-implementors-boun...@lists.cs.columbia.edu [mailto:sip-
>> >> implementors-boun...@lists.cs.columbia.edu] On Behalf Of Roger
>> >> Wiklund
>> >> Sent: Thursday, September 17, 2015 1:47 PM
>> >> To: sip-implementors@lists.cs.columbia.edu
>> >> Subject: [Sip-implementors] SDP version increment without SDP change
>> >> in
>> > early
>> >> dialog
>> >>
>> >> Hi list
>> >>
>> >> I'm seeing the following behavior from an Aastra 400 PBX.
>> >>
>> >> Flow below is ITSP to PBX
>> >>
>> >> INVITE>
>> >> <100Trying
>> >> <183 w/SDP
>> >> PRACK>
>> >> <200OK (PRACK)
>> >> <180 w/SDP
>> >> >PRACK
>> >> <200OK (PRACK)
>> >> <200OK (INVITE)w/SDP
>> >> ACK>
>> >> BYE>
>> >> <200OK (BYE)
>> >>
>> >> Each time the PBX sends an SDP, the version number is incremented
>> >> even
>> > though
>> >> nothing is changed.
>> >>
>> >> ITSP does not like this and sends the BYE.
>> >>
>> >> I'm trying to wrap my head around this and to figure out who's at
>> >> fault
>> > here.
>> >>
>> >> According to RFC6337 section 3.2
>> >>
>> >> When both UAs support the 100rel extension, they can update the
>> >> session
>> > in
>> >> the early dialog once the first offer/answer exchange has been
>> > completed.
>> >>
>> >> To me that means that the UAS can send many provisional responses
>> >> each
>> > with
>> >> different SDP, each one updates the early dialog as long as PRACK is
>> > used.
>> >
>> > RFC6337 section 2.2 (and RFC 3261) only allows 1 offer/answer for a
>> > dialog's INVITE/response/ACK.  After the INVITE's offer/answer
>> > completes; PRACK and UPDATE can be used for new offer/answer exchanges
>> > before the INVITE transaction completes.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-17 Thread Brett Tate
Hi,

The UAC is violating the "MUST ignore".  It is an SDP which MUST be ignored.
Thus it is irrelevant what the UAS sends unless interacting with devices
that ignore the "MUST ignore".  However for interoperability reasons, the
UAS can change their behavior.  If I remember correctly, RFC 6337 might even
recommend not including an SDP in that situation.


> -Original Message-
> From: Roger Wiklund [mailto:roger.wikl...@gmail.com]
> Sent: Thursday, September 17, 2015 3:29 PM
> To: Brett Tate
> Cc: sip-implementors@lists.cs.columbia.edu
> Subject: Re: [Sip-implementors] SDP version increment without SDP change
> in
> early dialog
>
> Hi
>
> Correct I forgot to mention that the initial INVITE contains SDP and it's
> a
> single dialog.
>
> RFC3261 section 13.2.1
>
> If the initial offer is in an INVITE, the answer MUST be in a reliable
> non-
> failure message from UAS back to UAC which is correlated to that INVITE.
> For
> this specification, that is only the final 2xx response to that INVITE.
> That
> same exact answer MAY also be placed in any provisional responses sent
> prior
> to the answer.  The UAC MUST treat the first session description it
> receives
> as the answer, and MUST ignore any session descriptions in subsequent
> responses to the initial INVITE.
>
> "That same exact answer MAY also be placed in any provisional responses
> sent
> prior to the answer."
>
> You MAY place it in subsequent responses but the key is "that same exact
> answer" So if you increment the version number it's not the exact same
> answer.
>
> Is that not a violation?
>
> /Roger
>
>
>
>
>
>
>
> On Thu, Sep 17, 2015 at 8:26 PM, Brett Tate  wrote:
> > Hi,
> >
> > I assume that the INVITE contained an SDP and your example truly
> > reflects a single dialog (i.e. 18x/2xx To tags are the same).
> >
> > According to RFC 3261 section 13.2.1, the SDP modification must be
> > ignored.  Thus it shouldn't cause the call to be released.  With that
> > said, some devices have configuration options to violate that
> > statement and treat as an updated answer SDP (or a new offer SDP).
> >
> > RFC 3261 section 13.2.1: "The UAC MUST treat the first session
> > description it receives as the answer, and MUST ignore any session
> > descriptions in subsequent responses to the initial INVITE."
> >
> > More inline.
> >
> >> -----Original Message-
> >> From: sip-implementors-boun...@lists.cs.columbia.edu [mailto:sip-
> >> implementors-boun...@lists.cs.columbia.edu] On Behalf Of Roger
> >> Wiklund
> >> Sent: Thursday, September 17, 2015 1:47 PM
> >> To: sip-implementors@lists.cs.columbia.edu
> >> Subject: [Sip-implementors] SDP version increment without SDP change
> >> in
> > early
> >> dialog
> >>
> >> Hi list
> >>
> >> I'm seeing the following behavior from an Aastra 400 PBX.
> >>
> >> Flow below is ITSP to PBX
> >>
> >> INVITE>
> >> <100Trying
> >> <183 w/SDP
> >> PRACK>
> >> <200OK (PRACK)
> >> <180 w/SDP
> >> >PRACK
> >> <200OK (PRACK)
> >> <200OK (INVITE)w/SDP
> >> ACK>
> >> BYE>
> >> <200OK (BYE)
> >>
> >> Each time the PBX sends an SDP, the version number is incremented
> >> even
> > though
> >> nothing is changed.
> >>
> >> ITSP does not like this and sends the BYE.
> >>
> >> I'm trying to wrap my head around this and to figure out who's at
> >> fault
> > here.
> >>
> >> According to RFC6337 section 3.2
> >>
> >> When both UAs support the 100rel extension, they can update the
> >> session
> > in
> >> the early dialog once the first offer/answer exchange has been
> > completed.
> >>
> >> To me that means that the UAS can send many provisional responses
> >> each
> > with
> >> different SDP, each one updates the early dialog as long as PRACK is
> > used.
> >
> > RFC6337 section 2.2 (and RFC 3261) only allows 1 offer/answer for a
> > dialog's INVITE/response/ACK.  After the INVITE's offer/answer
> > completes; PRACK and UPDATE can be used for new offer/answer exchanges
> > before the INVITE transaction completes.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-17 Thread Roger Wiklund
Hi

Correct I forgot to mention that the initial INVITE contains SDP and
it's a single dialog.

RFC3261 section 13.2.1

If the initial offer is in an INVITE, the answer MUST be in a
reliable non-failure message from UAS back to UAC which is
correlated to that INVITE.  For this specification, that is
only the final 2xx response to that INVITE.  That same exact
answer MAY also be placed in any provisional responses sent
prior to the answer.  The UAC MUST treat the first session
description it receives as the answer, and MUST ignore any
session descriptions in subsequent responses to the initial
INVITE.

"That same exact answer MAY also be placed in any provisional responses sent
prior to the answer."

You MAY place it in subsequent responses but the key is "that same
exact answer" So if you increment the version number it's not the
exact same answer.

Is that not a violation?

/Roger







On Thu, Sep 17, 2015 at 8:26 PM, Brett Tate  wrote:
> Hi,
>
> I assume that the INVITE contained an SDP and your example truly reflects
> a single dialog (i.e. 18x/2xx To tags are the same).
>
> According to RFC 3261 section 13.2.1, the SDP modification must be
> ignored.  Thus it shouldn't cause the call to be released.  With that
> said, some devices have configuration options to violate that statement
> and treat as an updated answer SDP (or a new offer SDP).
>
> RFC 3261 section 13.2.1: "The UAC MUST treat the first session description
> it receives as the answer, and MUST ignore any session descriptions in
> subsequent responses to the initial INVITE."
>
> More inline.
>
>> -Original Message-
>> From: sip-implementors-boun...@lists.cs.columbia.edu [mailto:sip-
>> implementors-boun...@lists.cs.columbia.edu] On Behalf Of Roger Wiklund
>> Sent: Thursday, September 17, 2015 1:47 PM
>> To: sip-implementors@lists.cs.columbia.edu
>> Subject: [Sip-implementors] SDP version increment without SDP change in
> early
>> dialog
>>
>> Hi list
>>
>> I'm seeing the following behavior from an Aastra 400 PBX.
>>
>> Flow below is ITSP to PBX
>>
>> INVITE>
>> <100Trying
>> <183 w/SDP
>> PRACK>
>> <200OK (PRACK)
>> <180 w/SDP
>> >PRACK
>> <200OK (PRACK)
>> <200OK (INVITE)w/SDP
>> ACK>
>> BYE>
>> <200OK (BYE)
>>
>> Each time the PBX sends an SDP, the version number is incremented even
> though
>> nothing is changed.
>>
>> ITSP does not like this and sends the BYE.
>>
>> I'm trying to wrap my head around this and to figure out who's at fault
> here.
>>
>> According to RFC6337 section 3.2
>>
>> When both UAs support the 100rel extension, they can update the session
> in
>> the early dialog once the first offer/answer exchange has been
> completed.
>>
>> To me that means that the UAS can send many provisional responses each
> with
>> different SDP, each one updates the early dialog as long as PRACK is
> used.
>
> RFC6337 section 2.2 (and RFC 3261) only allows 1 offer/answer for a
> dialog's INVITE/response/ACK.  After the INVITE's offer/answer completes;
> PRACK and UPDATE can be used for new offer/answer exchanges before the
> INVITE transaction completes.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


Re: [Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-17 Thread Brett Tate
Hi,

I assume that the INVITE contained an SDP and your example truly reflects
a single dialog (i.e. 18x/2xx To tags are the same).

According to RFC 3261 section 13.2.1, the SDP modification must be
ignored.  Thus it shouldn't cause the call to be released.  With that
said, some devices have configuration options to violate that statement
and treat as an updated answer SDP (or a new offer SDP).

RFC 3261 section 13.2.1: "The UAC MUST treat the first session description
it receives as the answer, and MUST ignore any session descriptions in
subsequent responses to the initial INVITE."

More inline.

> -Original Message-
> From: sip-implementors-boun...@lists.cs.columbia.edu [mailto:sip-
> implementors-boun...@lists.cs.columbia.edu] On Behalf Of Roger Wiklund
> Sent: Thursday, September 17, 2015 1:47 PM
> To: sip-implementors@lists.cs.columbia.edu
> Subject: [Sip-implementors] SDP version increment without SDP change in
early
> dialog
>
> Hi list
>
> I'm seeing the following behavior from an Aastra 400 PBX.
>
> Flow below is ITSP to PBX
>
> INVITE>
> <100Trying
> <183 w/SDP
> PRACK>
> <200OK (PRACK)
> <180 w/SDP
> >PRACK
> <200OK (PRACK)
> <200OK (INVITE)w/SDP
> ACK>
> BYE>
> <200OK (BYE)
>
> Each time the PBX sends an SDP, the version number is incremented even
though
> nothing is changed.
>
> ITSP does not like this and sends the BYE.
>
> I'm trying to wrap my head around this and to figure out who's at fault
here.
>
> According to RFC6337 section 3.2
>
> When both UAs support the 100rel extension, they can update the session
in
> the early dialog once the first offer/answer exchange has been
completed.
>
> To me that means that the UAS can send many provisional responses each
with
> different SDP, each one updates the early dialog as long as PRACK is
used.

RFC6337 section 2.2 (and RFC 3261) only allows 1 offer/answer for a
dialog's INVITE/response/ACK.  After the INVITE's offer/answer completes;
PRACK and UPDATE can be used for new offer/answer exchanges before the
INVITE transaction completes.
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors


[Sip-implementors] SDP version increment without SDP change in early dialog

2015-09-17 Thread Roger Wiklund
Hi list

I'm seeing the following behavior from an Aastra 400 PBX.

Flow below is ITSP to PBX

INVITE>
<100Trying
<183 w/SDP
PRACK>
<200OK (PRACK)
<180 w/SDP
>PRACK
<200OK (PRACK)
<200OK (INVITE)w/SDP
ACK>
BYE>
<200OK (BYE)

Each time the PBX sends an SDP, the version number is incremented even
though nothing is changed.

ITSP does not like this and sends the BYE.

I'm trying to wrap my head around this and to figure out who's at fault here.

According to RFC6337 section 3.2

When both UAs support the 100rel extension, they can update the
session in the early dialog once the first offer/answer exchange has
been completed.

To me that means that the UAS can send many provisional responses each
with different SDP, each one updates the early dialog as long as PRACK
is used.

RFC3262 section 8

When issuing an offer that modifies the session,
the "o=" line of the new SDP MUST be identical to that in the
previous SDP, except that the version in the origin field MUST
increment by one from the previous SDP.  If the version in the origin
line does not increment, the SDP MUST be identical to the SDP with
that version number.  The answerer MUST be prepared to receive an
offer that contains SDP with a version that has not changed; this is
effectively a no-op.  However, the answerer MUST generate a valid
answer (which MAY be the same as the previous SDP from the answerer,
or MAY be different), according to the procedures defined in Section

The above does not state that you can't increment the version number
without SDP change.

Any tips?

/Roger
___
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors