Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt
"MUNSON, GARY A, ATTLABS" <gm3472@att.com> Thu, 31 December 2009 21:57 UTC
Return-Path: <gm3472@att.com>
X-Original-To: mediactrl@core3.amsl.com
Delivered-To: mediactrl@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 45A933A68F7 for <mediactrl@core3.amsl.com>; Thu, 31 Dec 2009 13:57:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -104.997
X-Spam-Level:
X-Spam-Status: No, score=-104.997 tagged_above=-999 required=5 tests=[AWL=-0.998, BAYES_50=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MIOMOiKKsf9r for <mediactrl@core3.amsl.com>; Thu, 31 Dec 2009 13:56:59 -0800 (PST)
Received: from mail121.messagelabs.com (mail121.messagelabs.com [216.82.242.3]) by core3.amsl.com (Postfix) with ESMTP id CBF9B3A68E5 for <mediactrl@ietf.org>; Thu, 31 Dec 2009 13:56:56 -0800 (PST)
X-VirusChecked: Checked
X-Env-Sender: gm3472@att.com
X-Msg-Ref: server-3.tower-121.messagelabs.com!1262296594!36156227!1
X-StarScan-Version: 6.2.4; banners=-,-,-
X-Originating-IP: [144.160.20.146]
Received: (qmail 9223 invoked from network); 31 Dec 2009 21:56:35 -0000
Received: from sbcsmtp7.sbc.com (HELO mlpd194.enaf.sfdc.sbc.com) (144.160.20.146) by server-3.tower-121.messagelabs.com with DHE-RSA-AES256-SHA encrypted SMTP; 31 Dec 2009 21:56:35 -0000
Received: from enaf.sfdc.sbc.com (localhost.localdomain [127.0.0.1]) by mlpd194.enaf.sfdc.sbc.com (8.14.3/8.14.3) with ESMTP id nBVLuV2M025474 for <mediactrl@ietf.org>; Thu, 31 Dec 2009 16:56:31 -0500
Received: from gaalpa1msgusr7b.ugd.att.com (gaalpa1msgusr7b.ugd.att.com [135.53.26.16]) by mlpd194.enaf.sfdc.sbc.com (8.14.3/8.14.3) with ESMTP id nBVLuSa7025470 for <mediactrl@ietf.org>; Thu, 31 Dec 2009 16:56:28 -0500
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Thu, 31 Dec 2009 16:56:31 -0500
Message-ID: <2F41EF28ED42A5489E41742244C9117C01C1A999@gaalpa1msgusr7b.ugd.att.com>
In-Reply-To: <20091224165609.c6ecebfd.lorenzo@meetecho.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt
Thread-Index: AcqEseGIHuMELzmfSbO4i2XHi/FuLgFrRtmQ
References: <4B2773C6.3080106@ns-technologies.com><2F41EF28ED42A5489E41742244C9117C01B711D0@gaalpa1msgusr7b.ugd.att.com> <20091224165609.c6ecebfd.lorenzo@meetecho.com>
From: "MUNSON, GARY A, ATTLABS" <gm3472@att.com>
To: Lorenzo Miniero <lorenzo@meetecho.com>
Cc: mediactrl@ietf.org
Subject: Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt
X-BeenThere: mediactrl@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Media Control WG Discussion List <mediactrl.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/mediactrl>, <mailto:mediactrl-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mediactrl>
List-Post: <mailto:mediactrl@ietf.org>
List-Help: <mailto:mediactrl-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mediactrl>, <mailto:mediactrl-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 31 Dec 2009 21:57:01 -0000
Hi Lorenzo and folks, I was formulating responses to some of your specific replies below, but began to suspect that perhaps there's a single underlying issue that needs clearing up first regarding IAMM. Let me explain the way I see IAMM working. (A) The way I have been thinking: The AS sends an INVITE to MRB with (1) SDP characterizing the *call leg* it wants to send to an MS and (2) MS characteristics it wants for that call leg. MRB picks one and sends a modified INVITE along to the MS. When there is a response from the MS, MRB will insert toward the AS the SIP uri of the chosen MS, which can be used as the basis for the AS 'directly' establishing a control channel with the MS, or the AS knowing that it already has one. (B) Are you thinking instead that with IAMM the SDP is characterizing the control channel it wants? And then the AS has the opportunity to set up call legs 'directly' to the MS without the SIP signaling going through the MRB? I had not been thinking that, although treating these MRB interfaces as a toolkit, I could see that as a possibility. It seems to me that we need to cover the way I had been thinking about it, because there's no necessity of a control channel between the AS and MS (e.g., AS could be happy using 4240 in a given situation). In addition one could use MRB a la (B), but it does raise some more questions - like how MRB knows when the MS resources are freed up. Thoughts? Thanks. Cheers, Gary -----Original Message----- From: Lorenzo Miniero [mailto:lorenzo@meetecho.com] Sent: Thursday, December 24, 2009 10:56 AM To: MUNSON, GARY A, ATTLABS Cc: Chris Boulton; mediactrl@ietf.org Subject: Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt Hi Gary, thanks a lot for your detailed feedback! We're glad you like how the doc is going on: hopefully, with the help of your comments, next doc will be almost ready to go. Some comments inline [LM] Merry Christmas and Happy New Year to you as well! L. On Mon, 21 Dec 2009 20:56:07 -0500 "MUNSON, GARY A, ATTLABS" <gm3472@att.com> wrote: > Hi Chris and Lorenzo, > > Firstly, thank you very much for all your work on this draft. Looking > fairly complete! > > Below are comments from me. Unfortunately I won't be much help on sanity > checking sections 6 and 7. Hopefully others will be. > > I'll be on vacation now through Jan. 1 and won't be looking at email > much, so no rush to react to my comments. > > Merry Christmas/Happy Holidays/Happy New Year, > > br, > > Gary > > --- GAM Comments below --- > > > >> General comments below << > > 1) For In-line, how does the AS know the identity of the MS for purposes > of > establishing a mediactrl Control Channel to it? I don't think this > described anywhere, > and it is an important point to cover conspicuously. (I do see a > sentence in the para > after Figure 8 that seems to say at least for In-line an AS could send a > Control dialog > to MRB, so MRB would select a MS resource for that; but if so, it raises > more questions > for me, like which comes first, or how you guarantee that a Control > request and the > corresponding call leg request end up at the same MS resource.) > [LM] That's a good point, and Chris and I discussed while updating the doc. The Consumer interface now has, in the <response-session-info> element of a reply, the SIP URI of the MS that the MRB has chosen for the request. This means that, both in Query and IAMM mode, the AS has a way to directly contact the MS for what concerns that request (e.g. attaching UACs there). This solves the issue, but also removes the MRB from the signaling path, meaning it won't be able to infer resources being freed by itself (e.g. a UAC sending a BYE). In IUMM that becomes a problem, since the AS is not aware of a MRB, and just sees it as a MS. The only solution to this problem is to have the MRB always the same MS when the same AS uses IUMM. If you think these solutions are ok, we might add some text about them in the doc to provide some guidance. Otherwise, any comment (from you or from any other in the list of course) is more than welcome. > 2) For In-line, in the case of conferencing, how does the MRB know to > send legs of the > same conference to the same MS resource? I would think by remembering > the conference ID > supplied in the SIP for the first leg it sees. This should be described. > (Not needed > for Query MRB). > [LM] This can be seen as the same as 1). Or did you have something different in mind? > 3) The required/optional aspect of attributes on the Consumer interface > is absent in > this draft. I had thought the conclusion of the last meeting (IETF 76) > was to include > it. > [LM] Yes, there was consensus in Hiroshima. Anyway, there also were some comments on the ML that raised a few concerns about this approach, specifically a post by Mark Syrett: http://www.ietf.org/mail-archive/web/mediactrl/current/msg01433.html and the following posts. After that, the idea was that we first needed to better investigate pros and cons of such an approach, considering it could be considered harmful. I guess it would be a good idea to keep on discussing about this on the ML and update the doc accordingly. At the moment, the important thing to have was a more or less complete Consumer Interface per se: now that we have it, we can shape and improve it. > >> Specific sections comments below << > > 1) Section 1 Intro 1st paragraph. Say "selection" instead of "location". > > > Because generally location is taken to mean actual location in some > sense, which > isn't what is intended here. > [LM] Thanks, noted. > 2) Section 1 Intro, para above Figure 3, add words ... "In this model > there are a > number (greater than 1) of application servers *, possibly supporting > dissimilar > applications,* controlling a single media server." > > > Because while the draft acknowledges MS resources are not > necessarily homogeneous, > nowhere does it yet say likewise for applications/ASes, and that's an > important point. > [LM] I agree, noted. > 3) In Abstract and Section 1, instead of "1:M and M:M" say either > "1:Many and > Many:Many" or "1:M and M:N" > > > Because implication is generally that M stands for an arbitrary > number, but then > M:M would imply same number of AS and MS, which we don't mean. > [LM] Thanks, that was proably a typo, noted. > 4) Section 2, Media Resource Broker MRB term. Change description to > > A logical entity that is responsible for > both collection of appropriate published Media Server (MS) > information and selecting appropriate MS resources on behalf of > consuming entities. > > > Because the current description says "... and supplying appropriate > MS information > to consuming entities", which is isn't really to the point at least for > In-Line use. > [LM] You're right, noted. > 5) Section 2, Query MRB, change "location" to "address" > > > Because 'location' is tended to mean actual location as in > presence/location and/or > as in media-server-location > [LM] Thanks, noted. > 6) Section 2, In-line MRB, change description to > > An instantiation of an MRB (See definition) that > directly receives requests on the signalling path. There is no > separate query. > > > Because present description says "decision making process is totally > delegated to > the MRB" which a good characterization because (a) even for Query MRB, > it's the MRB that > decides/picks an MS resource and (b) the AS can provide the same kind of > information > with IAMM In-line as for Query. > [LM] Actually, as you say in IAMM the query is still there, even if it's part of the INVITE (the multipart/mixed payload). Do you think just clarifying that the HTTP interface is not involved will be enough? > 7) Section 3, para 3, say "selection decisions" instead of "routing > decisions". > [LM] Thanks, noted. > 8) Section 4, para 4. Revise that para to > > Please note that there may be additional information that it is > desirable for the MRB > to have for purposes of selecting an MS resource, such as resource > allocation rules > across different applications, planned or > unplanned downtime of Media Server resources, the planned addition of > future Media Server resources, or MS resource capacity models. How > the MRB acquires > such information is outside the scope of this document. > > > Because the real point is that there are additional things the MRB > might want to > know about MS resources to factor into its decision making process. It's > not about what > else the AS might want to know. > [LM] Good point, noted. > 9) Section 4.1. At the very end of the section, last paragraph, add the > sentence > "Additionally, with Query MRB, the MRB is not in the signaling path > between the AS and > the selected MS resource." > > > Because this is a useful distinction between Query and In-line to > highlight. > [LM] If we take into account the possible solution proposed in 1), this also does not apply in IAMM mode, since the AS would be aware of the MS that was chosen. At least, that's true for UAC calls to proxy, while it's also true that in the IAMM case the MRB will be in the path for the Control Channel SIP dialog. > 9a) Section 4.2, first para, revise to > > The "In-line" MRB is architecturally different from the "Query" model > that was discussed in the previous section. The Concept of a > separate "Media > Server Consumer Interface" disappears. The client of the MRB simply > uses the media server control and media dialog signalling to involve > the MRB. This > type of deployment is illustrated in Figure 8. > > > Because the current para talks about offloading the decision making > process, but > that's the MRB role for Query or In-line, so isn't a distinction. (Also, > it's Media > Resource Consumer Interface, not Media Server Consumer Interface.) > [LM] Thanks, noted. > > 10) Section 4.2, the two paragraphs below Figure 8. Revise what is > currently there to > > The Media Servers still use the 'Media Server Publishing Interface' > to convey capabilities and resources to the MRB - as illustrated by > (1). The media server Control and Media dialogs are sent to the MRB > (2) which then selects an appropriate Media Server (3) and would stay > in the > signaling path between the AS and the MS resource for those dialogs. > > In-line MRB can be split into two distinct logical roles which can be > applied on a per request basis. They are: > > In-line Unaware MRB Mode (IUMM): Allows an MRB to act on behalf of > clients requiring media services who are not aware of an MRB or > its operation. In this case the AS does not provide explicit > information on the > kind of MS resource it needs (as in Section 5.2) and the MRB is > left to deduce it > by potentially inspecting other information in the request from > the AS; for > example, SDP content, or > address of the requesting AS, or additional Request-URI parameters > as per RFC 4240. > > In-line Aware MRB Mode (IAMM): Allows an MRB to act on behalf of > clients requiring media services who are aware of an MRB and its > operation. In particular it allows the AS to explicitly the convey > the same kinds of MS > characteristics desired as does the Query MRB mode (as in Section > 5.2). > > In either role, the MRB would deduce that the selected MS resources > are no longer > needed when the AS terminates the corresponding dialog. > > > Because some of the current description in the first of the > paragraph really only > applies to IUMM and not IAMM - i.e., about what the MRB knows; > and because the "decision making" on MS resource selection is always > the role of > the MRB whether for Query or either flavor of In-line. > [LM] Same as before, if an AS using the IAMM mode directly contacts the chosen MS when it comes to forwarding UAC calls, then the MRB won't always be on the signaling path (it will for the control channel, it won't for UAC). Or when you say "the MRB would deduce that the selected MS resources are no longer needed when the AS terminates the corresponding dialog" you actually mean the Control Channel SIP dialog and not any UAC dialog? > 11) Section 5.1, para 2, revise it to > > As already anticipated in the introduction, the MRB view > of MS resource availability will in practice be approximate - i.e., > partial and > imperfect. The MRB Publish interface does not provide an exhaustive > view of current MS resource consumption, the MS may in some cases > provide a > best-effort computed view of resource consumption > parameters conveyed in the Publish interface (e.g., DSP's with a > fixed number of > streams versus GPU's with CPU > availability), there may be licensing constraints not factored in > (e.g., even if > lots of CPU and memory > are available, licensing or other configuration elements may restrict > the number of stream types), and MS resource information may only be > reported > periodically over the Publish interface to MRB. > Nevertheless, despite such limitations and with the aid of good > engineering the MRB > can still perform its function well. > > > Because - seemed could benefit from better wording. I disagree about > the part that > the only way an AS could be guaranteed of a specific resource is "to > reserve it by > establishing a session" ... even that doesn't absolutely guarantee the > entire desired > set of resources will be available when needed. And seemed good to add > some words to the > effect that despite the MRB's approximate view, it can still do a good > job. And I > didn't think that the observation about reporting of resource > availability versus > predictive resource allocation was relevant or helpful to the primary > theme of this > paragraph. > [LM] You're right, and I agree that the paragraph did benefit from the rewording. The "reserve the resource to be sure you have it" came from face-to-face discussions, and that's why we added it to the text. > 12) Section 5.1, para 3. I think this para (copied below as currently > written for the > reader's convenience here) needs some clarification, but I don't have a > specific > proposal because I'm not sure what the intent is. If the intent is to > say that ASes can > figure out information on MS resource utilization by in effect making > queries of MRB, I > would argue that is exceedingly awkward and limited, and not worth > mentioning. Or if > ASes are thought of as hostile, I would worry about worse things like > requesting > resources they don't need, and thereby tying them up from MRB's point of > view. If the > intent is that given the use of the Publish interface there is the > possibility of some > interloper entity other than MRB of using the interface and finding out > stuff, then the > para should be clarified in that direction. > > It is also worth noting that, while the scope of the MRB is > definitely on providing interested Application Servers with the > available resources, the MRB also allows for the retrieval of > information about the currently occupied resources. While this is of > course a relevant piece of information (e.g. for monitoring > purposes), such a functionality inevitably raises security > considerations, and implementations should take this into account. > See Section 8 for more details. > [LM] This is related to th security considerations in both the IVR and Mixer drafts. In fact, in both of the drafts the auditing interface allows for the probing of package-specific identifiers (e.g. conference and dialog IDs, and the like), which means, for instance, that an unauthorized AS could tear down a dialog another AS allocated. The security considerations there provide some guidance with respect to that, which should also apply in the MRB draft for the same reason (since, for intance, we report conference IDs in publish responses). > 13) 5.2.2, first bullet under 2nd para - I don't understand why the > application/sdp > part is needed. > [LM] In IAMM, the AS adds both an SDP (to create a new CFW control channel) and a MRB Consumer request (to ask for a capable MS). According to the MRB request, the MRB chooses a MS, and forwards an INVITE there by attaching the SDP from the AS. The MS negotiates the control channel creation by replying with its own SDP. The MRB at this point can send a 200 back to the AS with a new multipart/mixed payload, including both the SDP from the chosen MS, and the MRB response to the original request. The AS can now connect to the MS using the SDP info. We prepared some examples for all the modes, I guess that this will be clearer when I'll send them to the list, but that's basically the procedure. > 14) 5.2.3 bullet on <action> part about "If the information is identical > as the > existing request, the MRB will attempt a session refresh." What does > that mean? Needs > clarification. > [LM] We'll reword that so that it makes more sense. > 15) 5.2.5.1.1, part about expires:, "If the lease is refreshed before > expiry, the MRB > will re-claim the resources and they will > no longer be guaranteed." -- I think this is meant to say "If > the lease is NOT > refreshed ..." ? > [LM] Yes, that was a typo, thanks for finding it. > 16) 5.2.5.1.1, Editor's note at end of section as to whether the SIP URI > is sufficient, > I don't have any ideas about what else is needed, so have nothing to > suggest, other > than to ask whether this single SIP URI is one and the same for sending > call legs to > the MS and for establishing a control channel? Practically, is there > some value in > allowing for separate URIs for those purposes? > [LM] That's a very good point, and I definitely think it should be in the document. I guess these two URIs will be enough, unless anyone else sees any value in having others. > 17) Section 5.3.1, very last sentence, " The techniques used for > selecting an > appropriate Media Server by an MRB acting in IUMM is outside the scope > of this document." - I would think this > statement applies to any kind of MRB, so should be generalized and > placed further up > front in the document, perhaps the beginning part of Section 3. > [LM] You're right, but I think it's also safer to make it clear that in IUMM mode you're more into the wild than in IAMM/Query. We'll reword the text to take your comment into account. > 18) Section 5.3.2 on IAMM. I would think that there are a few items from > the Consumer > interface that don't apply to the IAMM case. Or if they are used, then I > think need > more description (I at least wouldn't be clear on just how they would > get used without > getting into problems). Specifically, > - the ability to update/change a prior resource request > - the ability to ask for multiple ports (in so many words) at least in > the IVR case > - does the lease mechanism apply? is the client required to renew? MRB > knows the call > is still up if it's in the signaling path > [LM] I'd rather have some redundancy here than making distinctions for what concerns the Consumer interface according to the protocol it is conveyed upon. Do you think it's ok if we just point out that in IAMM mode you have more ways to do the same thing? (leasing being one of the best examples) > >> Editorial nits below << > > 1) Be consistent of use of MRB Publish interface or MRB Publishing > interface. > > 2) 5.1.1.2 para 3, "updating/removing" instead of "update/remove" > > 3) 5.1.4.4 "which represents" instead of 'which representing" > > 4) 5.1.4.5 "number of RTP sessions' instead of "number of RTP session" > > 5) 5.1.4.6 "which represents" instead of 'which representing" > > 6) 5.1.4.11 "can" instead of "cane" > > 7) 5.1.3.14 "media server supports." instead of 'media server support." > > 8) 5.1.3.19 "... a blue or green one." instead of "... a blue or green." > > 9) 5.2.3 "in Section 7 and Section 7" --> "in Section 5.2 and Section > 7" ? > > 10) 5.2.4.1.1.1 under seq: "information its use" --> "information about > its use" > > 11) 5.2.5.1.1, under expires: "that the media resources reserved" --> > "that the media resources are reserved" > [LM] All noted, thanks. -- Lorenzo Miniero <lorenzo@meetecho.com>
- [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt Chris Boulton
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt Lorenzo Miniero
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt Lorenzo Miniero
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt Lorenzo Miniero
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… Chris Boulton
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… Chris Boulton
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… MUNSON, GARY A, ATTLABS
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… Chris Boulton
- Re: [MEDIACTRL] draft-ietf-mediactrl-mrb-02.txt -… Chris Boulton