Re: [MMUSIC] Draft-ietf-mmusic-rfc4566bis-05: session-level attributes

Paul Kyzivat <pkyzivat@alum.mit.edu> Mon, 31 December 2012 22:06 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A5FDE21F8781 for <mmusic@ietfa.amsl.com>; Mon, 31 Dec 2012 14:06:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.088
X-Spam-Level: *
X-Spam-Status: No, score=1.088 tagged_above=-999 required=5 tests=[AWL=-1.475, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_NET=0.611, J_CHICKENPOX_14=0.6, J_CHICKENPOX_15=0.6, J_CHICKENPOX_16=0.6, J_CHICKENPOX_17=0.6, J_CHICKENPOX_18=0.6, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VqRog0xSNTOg for <mmusic@ietfa.amsl.com>; Mon, 31 Dec 2012 14:06:00 -0800 (PST)
Received: from qmta09.westchester.pa.mail.comcast.net (qmta09.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:43:76:96:62:96]) by ietfa.amsl.com (Postfix) with ESMTP id 4B0A721F8738 for <mmusic@ietf.org>; Mon, 31 Dec 2012 14:06:00 -0800 (PST)
Received: from omta07.westchester.pa.mail.comcast.net ([76.96.62.59]) by qmta09.westchester.pa.mail.comcast.net with comcast id iK9L1k0031GhbT859N5z3b; Mon, 31 Dec 2012 22:05:59 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([50.138.229.164]) by omta07.westchester.pa.mail.comcast.net with comcast id iN5z1k0093ZTu2S3TN5zz5; Mon, 31 Dec 2012 22:05:59 +0000
Message-ID: <50E20C46.8000102@alum.mit.edu>
Date: Mon, 31 Dec 2012 17:05:58 -0500
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/17.0 Thunderbird/17.0
MIME-Version: 1.0
To: mmusic@ietf.org
References: <1.589bc0ea592cb7a6f399@cisco.com>
In-Reply-To: <1.589bc0ea592cb7a6f399@cisco.com>
Content-Type: text/plain; charset="EUC-KR"
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1356991559; bh=+OoUXWj6UULMea41oqLtn0hDgqDKJb1up105YVfPMtY=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=fdBwBWJmurenaKjfM0389eJmh0Tboyc1/E2lcoLRZHAnIOi7sn5+GRGN6tmnoXCKv XkWz+TFAAhqsof27e8j0lxLoshK9b7dtalSGMOEnDLVwBvC1tCW/BQHk0fW4Y1LF0s /zL/i2td6Pg6AGqrOZDLcefkpRwIFT8Hi26120BeCEaYmQ8q/Uf1p+6M4hr0P9bV8V wbiJ7mUg6YSI4u20238m1iiTX5bAYJGBtxGF7J754z9NIxaxsrpw7kDllc0vTBpusW nl16VR0rJvRt2xq3wiVGle0qeRCgRDw7s+1cPJIrhWBVqIcpN5+cijXCVqrDY7YRvh SltYe0xKonOFQ==
Subject: Re: [MMUSIC] Draft-ietf-mmusic-rfc4566bis-05: session-level attributes
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 31 Dec 2012 22:06:01 -0000

Inline.

On 12/29/12 7:45 PM, Ali C. Begen (abegen) wrote:
> 
> 
> -----Original Message-----
> From: Paul Kyzivat <pkyzivat@alum.mit.edu>
> Date: Saturday, December 29, 2012 7:36 PM
> To: "mmusic@ietf.org" <mmusic@ietf.org>
> Subject: Re: [MMUSIC] Draft-ietf-mmusic-rfc4566bis-05:
> session-level attributes
> 
>  >On 12/29/12 6:03 PM, Ali C. Begen (abegen) wrote:
>  >> I don¹t remember us reaching a consensus regarding the text proposed by
>  >> Brett. One thing certain is that we don't wanna break anything that
>  >> complies with 4566 but we should also make the text as clear as
>  >>possible.
>  >>
>  >> I am OK with Brett's suggestion as I don't recall an attribute like 
> what
>  >> Paul might have seen. But, even if such an attribute exists, the 
> current
>  >> text would be incorrect, too (This would indicate a problem with that
>  >> particular attribute not 4566 or 4566bis).
>  >
>  >I found one: a=maxprate in RFC3890.

> Well, I still don't see a problem in replacing the current text with the
> proposed text. Do you?

Yes - I do see a problem.

I wish I didn't. IMO it was intended to work this way.
(The text we are proposing to revise was present in RFC2327.)
But it is a little bit confusing when you start to talk about attributes
that are session-only, or are explicitly defined for both session and
media level, as maxprate is.

ISTM that one way to move forward while retaining backward compatibility
is to make clear that this only applies to attributes defined as valid
for both session and media level, and and that has no special syntax or
semantics defined for session level.

But even this is a bit of a risk for backward compatibility, because
some existing implementations may not work this way. I'm ambivalent
about whether to take the hit on this. We could argue that such
implementations have always been  broken.

I'll also note that of the attributes defined in this draft, the only
ones defined as both media and session level are
sendrecv/sendonly/recvonly/inactive, sdplang, and lang. So these are the
only ones eligible to be used in an example here. And all of these have
special issues that make them bad examples:

The sendrecv, sendonly, ... attributes override each other: a sendonly
at media level overrides sendrecv at session level. This requires
special per-attribute description of the interaction between session and
media level, so they aren't a good example for the general override
principle. (The descriptions of these in section 6 should be updated to
discuss this.)

And a=lang and a=sdplang may appear multiple times to specify multiple
languages. E.g. suppose I have:

      a=lang:en
      a=lang:fr
      m=audio 49170 RTP/AVP 0
      m=video 51372 RTP/AVP 99
      a=lang:de

Presumably this means the audio has both English and French.
But oes the "a=lang:de" *override* those?
Or does it add a third language for the video stream?

ISTM that the specifications of these in section 6 need to be beefed up
to make this clear.
And once they are, they probably preempt the default rule.

And once that is done, we have no attributes defined at both media and
session level that are good to use in an example of the general
principle of session level providing a default for media level.
(Certainly there are others, but they aren't defined in this document.)

Now we *could* say this session-level default rule also applies to
attributes that are defined as media-level-only attributes. But then I
think we would incur a significant backward compatibility issue. (E.g.
if I use a=rtpmap at session level.)

I had hoped to provide some alternative wording here, but now I don't
think I'm ready to do that.

I think this needs more discussion, and we need to work out improvements
to the description of a=sendrecv, ... a=lang, ...
I am willing to take a crack at proposing new language for them, but
lets have this discussion play out first.

	Thanks,
	Paul

>  > Thanks,
>  > Paul
>  >
>  >> Brett's proposal does not make the text any worse. So, I am planning to
>  >> incorporate this change.
>  >>
>  >> Any objections?
>  >>
>  >> -acbegen
>  >>
>  >> -----Original Message-----
>  >> From: Paul Kyzivat <pkyzivat@alum.mit.edu>
>  >> Date: Monday, August 27, 2012 12:03 PM
>  >> To: "mmusic@ietf.org" <mmusic@ietf.org>
>  >> Subject: Re: [MMUSIC] Draft-ietf-mmusic-rfc4566bis-05:
>  >> session-level attributes
>  >>
>  >> >I've always thought this should be the way things work, for all
>  >> >attributes. But somewhere I came across an attribute (sorry, don't
>  >> >remember which one) where the attribute at session level means
>  >>something
>  >> >different than the attribute at media level, and so can't be treated
>  >>as
>  >> >a default for media level. (E.g. the session level is an aggregate
>  >>limit
>  >> >for something, while the media level is a limit for a single m-line.)
>  >> >
>  >> >Am I just dreaming this? Or can someone identify specific attributes
>  >> >that behave this way?
>  >> >
>  >> >If there are existing attributes that behave this way, then we can't
>  >> >make a blanket statement like this. There will need to be an escape
>  >> >hatch. For example:
>  >> >
>  >> >"The connection ("c=") information in the
>  >> > session-level section applies to all the media of that session unless
>  >> > overridden by connection information
>  >> > in the media description. For instance, in the example
>  >> > below, TBD..."
>  >> >
>  >> >"The attribute ("a=") information in the
>  >> > session-level section applies to all the media of that session unless
>  >> > overridden by connection information or an attribute of the same name
>  >> > or choice in the media description, or the specification of that
>  >> > attribute calls for a different treatment.
>  >> > For instance, in the example
>  >> > below, each media behaves as if it were given a "recvonly" attribute.
>  >> > If the example had additionally contained a "sendrecv" media-level
>  >> > attribute for audio, only the video media would behave as if it were
>  >> > given a "recvonly" attribute."
>  >> >
>  >> >Even this could have some backward compatibility consequences I think
>  >> >there are some attributes that are only defined for media level. This
>  >> >revision would mean that a session level value could override a
>  >>default
>  >> >for media level. Implementations that aren't prepared for that might
>  >> >break.
>  >> >
>  >> > Thanks,
>  >> > Paul
>  >> >
>  >> >On 8/27/12 12:04 PM, Ali C. Begen (abegen) wrote:
>  >> >> Brett suggested the following change in the SDP draft. Any
>  >>objections?
>  >> >>
>  >> >> -acbegen
>  >> >>
>  >> >> Current text:
>  >> >>
>  >> >> "The connection ("c=") and attribute ("a=") information in the
>  >> >> session-level section applies to all the media of that session
>  >>unless
>  >> >> overridden by connection information or an attribute of the same
>  >>name
>  >> >> in the media description. For instance, in the example below, each
>  >> >> media behaves as if it were given a "recvonly" attribute."
>  >> >>
>  >> >> Proposed text:
>  >> >>
>  >> >> "The connection ("c=") and attribute ("a=") information in the
>  >> >> session-level section applies to all the media of that session
>  >>unless
>  >> >> overridden by connection information or an attribute of the same
>  >>name
>  >> >> or choice in the media description. For instance, in the example
>  >> >> below, each media behaves as if it were given a "recvonly"
>  >>attribute.
>  >> >> If the example had additionally contained a "sendrecv" media-level
>  >> >> attribute for audio, only the video media would behave as if it were
>  >> >> given a "recvonly" attribute."
>  >> >>
>  >> >>> -----Original Message-----
>  >> >>> From: Brett Tate [mailto:brett@broadsoft.com]
>  >> >>> Sent: Wednesday, August 08, 2012 7:54 AM
>  >> >>> To: Ali C. Begen (abegen); mmusic@ietf.org
>  >> >>> Subject: RE: Draft-ietf-mmusic-rfc4566bis-05: session-level
>  >>attributes
>  >> >>>
>  >> >>>>> Draft-ietf-mmusic-rfc4566bis-05 section 5 indicates the
>  >> >>>>> following.
>  >> >>>>>
>  >> >>>>> "In general, session-level values are the default for all
>  >> >>>>> media unless overridden by an equivalent media-level value."
>  >> >>>>>
>  >> >>>>> "The connection ("c=") and attribute ("a=") information
>  >> >>>>> in the session-level section applies to all the media of
>  >> >>>>> that session unless overridden by connection information
>  >> >>>>> or an attribute of the same name in the media description.
>  >> >>>>> For instance, in the example below, each media behaves
>  >> >>>>> as if it were given a "recvonly" attribute."
>  >> >>>>>
>  >> >>>>> If the attributes are related but with different names
>  >> >>>>> (such as "inactive" and "sendrecv"), does the attribute
>  >> >>>>> at the media-level have precedence over the value at the
>  >> >>>>> session-level? If so, I recommend that the draft be
>  >> >>>>> updated to clarify the topic.
>  >> >>>>
>  >> >>>> I believe so. at least that is my understanding from the
>  >> >>>> text. Does it really need clarification? Thoughts?
>  >> >>>
>  >> >>> I think that it should be clarified because it is unclear if "an
>  >> >>>attribute of the same name" indicates the typical situation or only
>  >> >>> situation concerning application of "unless overridden by an
>  >> >>>equivalent media-level value". For instance if I sent "a=inactive"
>  >> >>> at session-level and "a=sendrecv" at media-level, I'd be concerned
>  >> >>>that the receiver may interpret the SDP as being
>  >> >>> abnormal (such as including both values at media-level) instead of
>  >> >>>allowing "a=sendrecv" to override "a=inactive".
>  >> >>>
>  >> >>> In case it matters from an extendibility perspective, requiring the
>  >> >>>same name might make it easier to recognize the override.
>  >> >>> However since section 6 already introduces complications with
>  >> >>>defaulting to "sendrecv" if a new option is defined/used and
>  >> >>> unknown, allowing the override even when the names are not the same
>  >> >>>doesn't make things too much worse; it actually
>  >> >>> allows communication of a backup attribute (such as "a=inactive")
>  >>if
>  >> >>>they don't understand the preferred new attribute (such
>  >> >>> as "a=foo").
>  >> >>>
>  >> >>> "If none of the attributes "sendonly", "recvonly", "inactive",
>  >> >>> and "sendrecv" is present, "sendrecv" SHOULD be assumed as the
>  >> >>> default for sessions that are not of the conference type
>  >> >>> "broadcast" or "H332" (see below)."
>  >> >>>
>  >> >>> Thanks for the response,
>  >> >>> Brett
>  >> >>
>  >> >> _______________________________________________
>  >> >> mmusic mailing list
>  >> >> mmusic@ietf.org
>  >> >> https://www.ietf.org/mailman/listinfo/mmusic
>  >> >>
>  >> >
>  >> >_______________________________________________
>  >> >mmusic mailing list
>  >> >mmusic@ietf.org
>  >> >https://www.ietf.org/mailman/listinfo/mmusic
>  >>
>  >> _______________________________________________
>  >> mmusic mailing list
>  >> mmusic@ietf.org
>  >> https://www.ietf.org/mailman/listinfo/mmusic
>  >
>  >_______________________________________________
>  >mmusic mailing list
>  >mmusic@ietf.org
>  >https://www.ietf.org/mailman/listinfo/mmusic
> 
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic