Frank, if the simplistic model behind NETCONF's <get> or RESTCONF's unified view on the datastores does not work for you, you have to invest in a proper solution. Every solution addressing the limitation has costs. There is no free lunch.
/js On Fri, Jun 28, 2019 at 02:06:54PM +0000, Fengchong (frank) wrote: > Hi Rob, > I think IETF solution: migrate to NMDA is unrealistic. The cost of > migration to NMDA is too expensive, If the entire industry migrates to NMDA, > the time will be long. > This will delay the deployment of the IETF model in the industry. > Anyway, even if vendor implements NMDA, the network manager/ controller > or client tools may not support NMDA client. > A non-NMDA client only support get/get-config, it still has no way to > retrieve system-controlled data. > > Generation config false copy for IETF YANG model is not reasonable, > because published IETF standard YANG should not be changed, moreover, this is > not friendly to the client or the server. > -----邮件原件----- > 发件人: Rob Wilton (rwilton) [mailto:[email protected]] > 发送时间: 2019年6月28日 17:18 > 收件人: Fengchong (frank) <[email protected]>; Juergen Schoenwaelder > <[email protected]> > 抄送: [email protected]; [email protected]; Zhangwei (SS) <[email protected]> > 主题: RE: [netmod] pls clarify get operation > > Hi Frank, > > You can't just change definitions in RFCs. It breaks all existing > clients/servers. Besides, what you suggest doesn't really work (path clashes > between configuration and operational state), unless you return two trees ... > which starts to look extremely similar to the NMDA architecture ... > > IETF has already explored this problem and there is already a published IETF > solution to the problem that you describe: Migrate to NMDA. The NMDA > architecture has many other benefits as well (E.g. allows for templating, > inactive configuration, dynamic configuration, consistent OIR handling). > > Thanks, > Rob > > > -----Original Message----- > From: Fengchong (frank) <[email protected]> > Sent: 28 June 2019 10:07 > To: Juergen Schoenwaelder <[email protected]>; Rob Wilton > (rwilton) <[email protected]> > Cc: [email protected]; [email protected]; Zhangwei (SS) <[email protected]> > Subject: 答复: [netmod] pls clarify get operation > > Should we change the definition of get operation? Like this, get operation > can retrieve all running operational data including running configuration, > system configuration. > Otherwise, we have no way to get the information of system-controlled data > according a NMDA-style YANG module(because has no config false copy ) unless > we implement NMDA. > -----邮件原件----- > 发件人: Juergen Schoenwaelder [mailto:[email protected]] > 发送时间: 2019年6月28日 16:50 > 收件人: Rob Wilton (rwilton) <[email protected]> > 抄送: Fengchong (frank) <[email protected]>; [email protected]; > [email protected]; Zhangwei (SS) <[email protected]> > 主题: Re: [netmod] pls clarify get operation > > Yes, both the NETCONF <get> operation and the RESTCONF GET on the unified > view of the underlying datastores have limitations and a solution in > situations where these limitations hurt is to move towards NMDA. > > /js > > On Fri, Jun 28, 2019 at 08:38:38AM +0000, Rob Wilton (rwilton) wrote: > > Hi Frank, > > > > Pre NMDA: > > > > * You have a the <running> datastore, along with some others like > > <candidate> and <startup> that you can ignore for the purposes of this > > discussion. > > * The <running> datastore can only contains data for schema nodes that > > are marked as “config true” in YANG (i.e. “rw” in your tree output below). > > * The system may also have some operational state data that is marked > > as “config false” in YANG (i.e. “ro” in your tree output below). > > > > The NETCONF <get-config> operation returns the contents of the <running> > > datastore. > > The NETCONF <get> operation returns the contents of the <running> datastore > > combined with all the operational state as well. Filters can be applied to > > return a subset of the data. > > > > Regarding your question about user created configuration vs system created > > configuration, it depends on whether the devices instantiates the > > configuration in <running> or not. If it does, then it would be returned > > in <get> and <get-config> operations. If it doesn’t then it would not. > > Different vendors/devices will likely implement this in different ways. > > > > Generally, I think that <running> should only contain the configuration > > explicitly configured by the operator’s systems. But this means that there > > isn’t a clean way to represent system created configuration or applied > > configuration, unless you make a config false copy of every config true > > node in YANG. This is approach that was taken by the original IETF YANG > > models (e.g. RFC 7223) before they were superseded by NMDA, and also the > > OpenConfig YANG models (but using a different structure – which also > > struggles to cleanly represent system created configuration data). > > > > The NMDA architecture was written to solve this problem in a clean way > > without requiring duplication in the YANG data models. > > > > Hopefully this helps clarify. > > > > Thanks, > > Rob > > > > > > From: netmod <[email protected]> On Behalf Of Fengchong (frank) > > Sent: 28 June 2019 04:29 > > To: [email protected]; [email protected] > > Cc: Zhangwei (SS) <[email protected]> > > Subject: [netmod] 答复: pls clarify get operation > > > > Hi all, > > > > Pls clarify this question. I have been confused for a long time. > > > > ________________________________ > > 华为技术有限公司 Huawei Technologies Co., Ltd. > > [Company_logo] > > 个人签名:冯冲 > > 手 机:13776612983 > > 电子邮件:[email protected]<mailto:[email protected]> > > 公司网址:www.huawei.com<http://www.huawei.com> > > ________________________________ > > 本邮件及其附件含有华为公司的保密信息,仅限于发送给上面地址中列出的个人或群组。禁 > > 止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制、或散发)本邮件中 > > 的信息。如果您错收了本邮件,请您立即电话或邮件通知发件人并删除本邮件! > > This e-mail and its attachments contain confidential information from > > HUAWEI, which is intended only for the person or entity whose address > > is listed above. Any use of the information contained herein in any > > way (including, but not limited to, total or partial disclosure, > > reproduction, or dissemination) by persons other than the intended > > recipient(s) is prohibited. If you receive this e-mail in error, > > please notify the sender by phone or email immediately and delete it! > > > > 发件人: Fengchong (frank) > > 发送时间: 2019年6月27日 9:59 > > 收件人: '[email protected]' <[email protected]<mailto:[email protected]>>; > > [email protected]<mailto:[email protected]> > > 抄送: Yangshouchuan > > <[email protected]<mailto:[email protected]>>; Zhangwei > > (SS) <[email protected]<mailto:[email protected]>> > > 主题: pls clarify get operation > > > > Hi all, > > In RFC6241, get operation is defined as: > > 7.7<https://tools.ietf.org/html/rfc6241#section-7.7>. <get> > > > > Description: Retrieve running configuration and device state > > > > information. > > This description is too simply, so I think it should be clarified. > > > > The case is: a data node modelled by one yang can be configured by user, > > but also can be created/modified by system or other protocols. If client > > issues get operation to retrieve this node, > > The data is created/modified by system or other protocols SHOULD > > be returned? > > For example: > > Rib can be configured by user and also can be created by routing > > protocols. In RFC 8349, the rib list is defined as: > > > > > > > > +--rw ribs > > > > +--rw rib* [name] > > > > +--rw name string > > > > +--rw address-family? identityref > > > > +--ro default-rib? boolean {multiple-ribs}? > > > > +--ro routes > > > > | +--ro route* > > > > | ... > > > > +---x active-route > > > > | +---w input > > > > | | +---w v4ur:destination-address? inet:ipv4-address > > > > | | +---w v6ur:destination-address? inet:ipv6-address > > > > | +--ro output > > > > | ... > > > > +--rw description? string > > > > > > > > If client issued get operation to retrieve ribs from non-NMDA > > device, rib instance created by routing protocols should be returned? > > > > Another associated question: If client issued get-config operation > > from non-NMDA device, only user-controlled rib instance should be returned? > > > > > > > _______________________________________________ > > netmod mailing list > > [email protected] > > https://www.ietf.org/mailman/listinfo/netmod > > > -- > Juergen Schoenwaelder Jacobs University Bremen gGmbH > Phone: +49 421 200 3587 Campus Ring 1 | 28759 Bremen | Germany > Fax: +49 421 200 3103 <https://www.jacobs-university.de/> -- Juergen Schoenwaelder Jacobs University Bremen gGmbH Phone: +49 421 200 3587 Campus Ring 1 | 28759 Bremen | Germany Fax: +49 421 200 3103 <https://www.jacobs-university.de/> _______________________________________________ netmod mailing list [email protected] https://www.ietf.org/mailman/listinfo/netmod
