Re: [Dime] AD evaluation of draft-ietf-dime-load-06
Steve Donovan <srdonovan@usdonovans.com> Mon, 16 January 2017 06:19 UTC
Return-Path: <srdonovan@usdonovans.com>
X-Original-To: dime@ietfa.amsl.com
Delivered-To: dime@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 418FD129436 for <dime@ietfa.amsl.com>; Sun, 15 Jan 2017 22:19:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.12
X-Spam-Level:
X-Spam-Status: No, score=-1.12 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_NEUTRAL=0.779] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5YQOWgdSzlLo for <dime@ietfa.amsl.com>; Sun, 15 Jan 2017 22:19:33 -0800 (PST)
Received: from biz131.inmotionhosting.com (biz131.inmotionhosting.com [74.124.197.190]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0460C12940B for <dime@ietf.org>; Sun, 15 Jan 2017 22:19:33 -0800 (PST)
Received: from [12.198.235.13] (port=46413 helo=Steves-MacBook-Air.local) by biz131.inmotionhosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.87) (envelope-from <srdonovan@usdonovans.com>) id 1cT0dS-003YAF-MU; Sun, 15 Jan 2017 22:19:32 -0800
To: Misha Zaytsev <misha.zaytsev.rus@gmail.com>
References: <75a3dd19-bf69-5600-f439-0f544b65508d@cs.tcd.ie> <2ca7e5a2-c157-b548-c680-4c3b26e34112@cs.tcd.ie> <875060e8-aab3-1f75-39ed-615a364d466b@usdonovans.com> <CABPQr24uRf_1H4q8ficWZKM5Vci+AkmCc92f0r=tO_w_Y+2PKA@mail.gmail.com> <6c28f017-612e-3a17-8e23-5b4626d0f341@usdonovans.com> <CABPQr2417MwytGYDCqR+swiV99Oxas0CrROg32BoFdz-0F-8gA@mail.gmail.com> <6b755a56-6183-97ff-d306-978a9dce8b3c@usdonovans.com> <CABPQr24q+nFX2sf0293HQaJUPd4X8Kw+6=ApkWbSdFWJ=cmM8g@mail.gmail.com>
From: Steve Donovan <srdonovan@usdonovans.com>
Message-ID: <e5a0609c-dc91-651c-1b21-63afa9fbaa2e@usdonovans.com>
Date: Sun, 15 Jan 2017 22:19:18 -0800
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.6.0
MIME-Version: 1.0
In-Reply-To: <CABPQr24q+nFX2sf0293HQaJUPd4X8Kw+6=ApkWbSdFWJ=cmM8g@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------E1C4F0A553EAAEE3A249D8B5"
X-OutGoing-Spam-Status: No, score=-1.0
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - biz131.inmotionhosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - usdonovans.com
X-Get-Message-Sender-Via: biz131.inmotionhosting.com: authenticated_id: srdonovan@usdonovans.com
X-Authenticated-Sender: biz131.inmotionhosting.com: srdonovan@usdonovans.com
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: <https://mailarchive.ietf.org/arch/msg/dime/2bAPo9rHj0jIGTgWMwyPs4be2nQ>
Cc: "dime@ietf.org" <dime@ietf.org>
Subject: Re: [Dime] AD evaluation of draft-ietf-dime-load-06
X-BeenThere: dime@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Diameter Maintanence and Extentions Working Group <dime.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dime>, <mailto:dime-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dime/>
List-Post: <mailto:dime@ietf.org>
List-Help: <mailto:dime-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dime>, <mailto:dime-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 16 Jan 2017 06:19:35 -0000
Misha, Thank you for the very detailed review of the draft. See my comments inline. Regards, Steve On 1/15/17 2:00 AM, Misha Zaytsev wrote: > Hi Steve, > > Sure, you can treat it as you wish since it is just a minor comment > from my side. > However, I have other comments/questions to address: > > 0. general (editorial) Proposals regarding wording in the spec: > - Use either "fulfil" or "fulfill" even if both forms are possible Agreed, I'll update in the next release. > - Use "remove"/"discard" instead of "strip" since it seems to be more > formal This is a matter of preference and I prefer strip. :-) > > 1. section 4.1 (editorial) > - "did not had" -> "did not have" > - "reacting node reduce" -> "reacting node reduce*s*" Agreed, I'll update accordingly. > > 2. general (question): Why is different writing used for the same > terms through the spec? > Example#1, "Load report" and "load report" > Example#2, "report of type peer" and "load report of PEER" > Example#3, "Diameter agent" and "Diameter Agent" > Is this intentional? If yes, please clarify the intention. This is a good point. I'll update accordingly. > > 3. section 5 (editorial) > > The load report includes a value indicating the load of the sending > node relative load of the sending node, specified in a manner > consistent with that defined for DNS SRV [RFC2782]. > Should not be re-phrased a little bit in this way - "...a value > indicating the relative load of the sending node, specified..."? > Yes, that is more clear. > 4. section 5 (editorial): "weigh" -> "weigh*t*" > > The distribution algorithm used by Diameter nodes supporting the > Diameter Load mechanism is an implementation decision but it needs to > result in similar behavior to the algorithm described for the use of > weight values specified in [RFC2782]. > Agreed > 5. section 5 (question) > > The second type of load report is a peer report. This report is used > by Diameter nodes as part of the logic to select the next-hop > Diameter node and, as such, does not have significance beyond the > peer node. These load reports are removed by the first supporting > Diameter node to receive the report. > Under "These load reports are removed..." the report of type PEER is > meant, right? > Probably it is better to re-phrase this statement saying more explicitly: > "The report of type PEER is removed by the first Diameter node > supporting Load mechanism." The paragraph is talking about peer reports so I don't think there is any ambiguity. However, I will update the last sentence to be clear it is referring to PEER reports. > > 6. section 6.1.2 (editorial) "insures" -> "*e*nsures" > > Note: In the case of peer load reports it is only necessary to > include load reports when the load value has changed by some > meaningful value, as long as the agent*e*nsures that all peers > receive the report. It is also acceptable to include the load > report in every answer message handled by the Diameter agent. > Agreed > 7. section 6.2 (editorial) "weigth" -> "weight" > > How a Diameter node uses load information for making routing > decisions is an implementation decision. However, the distribution > algorithm MUST result in similar behavior as the algorithm described > for the use of weig*ht* values in [RFC2782]. > Agreed > 8. section 6.4 (editorial) "Addition and removal of Nodes" -> > "Addition and Removal of Nodes" Agreed > > 9. general. I'm voting for that the term "server selection" would be > defined explicitly in the spec. > You answered on the comment from Stephen that this term came from RFC7683. > But I have found only one place where it is mentioned: Appendix B, > "Non-supporting Agents". I'll add a definition to the next version. > > Thanks a lot in advance. > > /Misha > > 2017-01-13 0:06 GMT+03:00 Steve Donovan <srdonovan@usdonovans.com > <mailto:srdonovan@usdonovans.com>>: > > Misha, > > This draft has completed working group last call, so to some > degree the comment period has passed. That said, there are no > hard and fast rules and we can certainly make changes that improve > the draft. However, once it gets into IESG review, which is the > next step, it will be more difficult to make significant changes. > > On your comment below, I don't see the need for the change. I am > willing, however, to qualify the word connection to say "Diameter > connection". > > Regards, > > Steve > > On 1/12/17 11:51 AM, Misha Zaytsev wrote: >> Hi Steve, >> >> Thanks a lot for your explanation! >> My bad that I have not read the draft more carefully - will try >> to avoid this next time. >> >> Then I can propose another version of statement that will exclude >> confusing "connection" term. >> >>> This is achieved by comparing SourceID AVP in the Load report with host identity field of the entries from peer table defined in RFC6733. >> >> If SourceID AVP contains the identity of one of the peer nodes >> (that our node has a direct connection to), then this is what we >> are looking for, right? >> >> However, I find the term "connection" legal as it is defined in >> RFC6733, for instance section 5.1 "Peer Connections". >> >> Or it can be easily re-phrased in this way, the term "peer" >> should not confuse anyone, I guess :) >> >> This is achieved by comparing the DiameterIdentity of the peer from which the message was received with the >> DiameterIdentity included in the SourceID AVP in the Load report. >> >> Btw, what is the due date for providing the comments for this draft? >> >> Best regards, >> >> /Misha >> >> 2017-01-12 20:16 GMT+03:00 Steve Donovan >> <srdonovan@usdonovans.com <mailto:srdonovan@usdonovans.com>>: >> >> Misha, >> >> I've added the DIME WG mailing list. >> >> See my comments inline. >> >> Regars, >> >> Steve >> >> On 1/11/17 12:03 PM, Misha Zaytsev wrote: >>> Hi Steve, >>> >>> I'm a newcomer in DiME working group - so, may not be >>> familiar with all rules. >>> So, excuse me in advance if it is not a good manner to >>> comment the ongoing draft review. >> SRD> Welcome to the working group! >>> >>> But let me still put my 5 cents here. >>> >>> Regarding this question from Stephen: >>> >>> - 6.2: What is a Diameter "connection?" I thought that >>> Diameter could use UDP as well as TCP so is that really >>> the right term? Maybe "message sender" is a better way to >>> identify the peer? >>> >>> Why can't we re-phrase the related statement in the >>> following way? >>> >>> This is achieved by comparing Origin-Host AVP with SourceID AVP in the Load report. >>> >> SRD> This actually doesn't work for the peer report case. >> The Origin-Host AVP is inserted by the Diameter client and it >> remains the same as the request passes through Diameter >> agents. For peer reports, it is necessary to know the peer >> that sent the request, not the client. Thus the need to look >> at the DiameterID associated with the Diameter connection. >> >>> Also if it does not bother you, could you explain what is >>> the official way to comment DiME drafts? >> SRD> The official way is to do exactly what you are doing, >> but by sending the questions and comments to the DIME WG >> mailing list. >> >>> >>> Thanks a lot in advance! >>> >>> /Misha >>> >>> >>> >>> 2017-01-10 1:28 GMT+03:00 Steve Donovan >>> <srdonovan@usdonovans.com <mailto:srdonovan@usdonovans.com>>: >>> >>> Stephen, >>> >>> Thanks for the review and for the ping. Comments below. >>> >>> Regards, >>> >>> Steve >>> >>> On 1/6/17 10:33 AM, Stephen Farrell wrote: >>>> Just bumping this, post holidays. I believe the >>>> ball is not in my court for this one:-) >>>> >>>> Cheers, >>>> S. >>>> >>>> On 16/12/16 17:38, Stephen Farrell wrote: >>>>> Hiya, >>>>> >>>>> Thanks for getting this stuff progressed. I've done my >>>>> AD evaluation and have a few questions I'd like to ask >>>>> before starting IETF last call. Those are below along >>>>> with some more nitty comments that can be handled now or >>>>> later as the authors/WG prefer. >>>>> >>>>> Cheers, >>>>> S. >>>>> >>>>> Things to chat about before starting IETF LC: >>>>> --------------------------------------------- >>>>> >>>>> (1) Is "server selection" sufficiently clear? Where is >>>>> that defined? I was a bit confused as to what this means >>>>> that is not next-hop selection. >>> SRD> Server selection is touched on in RFC7638 (DOIC) >>> and the concept carries over to Load. It refers to >>> selection of the specific server instance that will be >>> handling the request. This is according to the Diameter >>> Client, Server model. I think it is well understood >>> what is meant by those who understand Diameter and would >>> be implementing this spec. We can, if needed, add some >>> definition. That would have been best do be in the DOIC >>> RFC but it can go here if needed. >>>>> (2) PEER reports that are first received at a >>>>> non-supporting node will be left in place and will reach >>>>> the destination of the message. If that destination is in a >>>>> different domain then that leaks some internal structure >>>>> (the SourceID) to outsiders. Is that desirable? Why not >>>>> have the first node that does support this AVP delete the >>>>> PEER report even if the node that added the PEER report is >>>>> not a peer of this node? (Note: I see this risk is ack'd >>>>> in section 8, I'm asking if we can avoid it almost >>>>> entirely by removing PEER reports that are useless.) >>> SRD> There is no formal mechanism in place in Diameter >>> to do "topology hiding". There are many other places >>> where topology information can leak, so it isn't an >>> issue specific to Load. It is addressed today through >>> proprietary implementations. SRD> Having a node that >>> does not support would go against the Diameter >>> extensibility strategy. Nodes that don't understand an >>> AVP are required to pass it on. Nodes that do support >>> the mechanism and see a Load report of type peer that >>> isn't of type peer are supposed to remove it. Doing >>> anything other than this would require a change to the >>> base Diameter specification. >>>>> (3) This spec is a bit like RFC7944 (DRMP) in that it >>>>> defines some but not all of the things one needs to end up >>>>> with a workable system. That aspect of DRMP caused some >>>>> discussion during IESG evaluation. Have the authors of >>>>> this reviewed that discussion to see if we can avoid any >>>>> likely iterations being needed at that point? I'm hoping >>>>> that Steve, as an author of both, won't find this too >>>>> hard to do:-) If that's been done, great. If not, please >>>>> consider if there's any additional explanatory material >>>>> that could be added that might help us not to have to >>>>> iterate to discuss the same kinds of concern. >>> SRD> I'll go back and review that discussion and see if >>> there is something that needs to be added. I'm hoping >>> that the fact that we made it through the discussion >>> with DRMP will make it easier to do so with Load (and >>> maybe agent overload). I'm doubtful that we can fully >>> inoculate the draft from some of this level of >>> discussion as we are dealing with Diameter here. >>>>> nits (fine to be considered last call comments): >>>>> ------------------------------------------------- >>> SRD> I'll deal with these as part of last call. >>>>> abstract: maybe put the 1st sentence last? that might read >>>>> better >>>>> >>>>> 4.1: the "opinion of the authors" isn't really of interest >>>>> at this point - is this also the opinion of the WG? (I >>>>> assume it is) >>>>> >>>>> section 5 says "The load report includes a value >>>>> indicating the load of the sending node relative load of >>>>> the sending node, specified in a manner consistent with >>>>> that defined for DNS SRV [RFC2782]." I can't parse that. >>>>> >>>>> - 6.2: What is a Diameter "connection?" I thought that >>>>> Diameter could use UDP as well as TCP so is that really >>>>> the right term? Maybe "message sender" is a better way to >>>>> identify the peer? >>>>> >>>>> - section 8: "might require a transitive trust model" is >>>>> far too coy IMO. I think you should say that DOIC and this >>>>> entirely require transitive trust because we have no >>>>> Diameter mechanism that allows authenticated adding and >>>>> removal of AVPs as messages transit a network. (We did try >>>>> develop that ages ago but it was too complex, so I'm not >>>>> arguing to try again, just that we clearly ack the fact >>>>> that this stuff requires transitive trust.) >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> DiME mailing list >>>>> DiME@ietf.org <mailto:DiME@ietf.org> >>>>> https://www.ietf.org/mailman/listinfo/dime >>>>> <https://www.ietf.org/mailman/listinfo/dime> >>>>> >>>> _______________________________________________ >>>> DiME mailing list >>>> DiME@ietf.org <mailto:DiME@ietf.org> >>>> https://www.ietf.org/mailman/listinfo/dime >>>> <https://www.ietf.org/mailman/listinfo/dime> >>> _______________________________________________ DiME >>> mailing list DiME@ietf.org <mailto:DiME@ietf.org> >>> https://www.ietf.org/mailman/listinfo/dime >>> <https://www.ietf.org/mailman/listinfo/dime> >>>
- [Dime] AD evaluation of draft-ietf-dime-load-06 Stephen Farrell
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Stephen Farrell
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Stephen Farrell
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Misha Zaytsev
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Misha Zaytsev
- Re: [Dime] AD evaluation of draft-ietf-dime-load-… Steve Donovan