Re: [netconf] 答复: Which is the better way for vendor-specific extension?

Jürgen Schönwälder <jschoenwaelder@constructor.university> Thu, 18 May 2023 06:57 UTC

Return-Path: <jschoenwaelder@constructor.university>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 624E9C15C513 for <netconf@ietfa.amsl.com>; Wed, 17 May 2023 23:57:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=jacobsuniversity.onmicrosoft.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OAgxIjTeRnsT for <netconf@ietfa.amsl.com>; Wed, 17 May 2023 23:57:07 -0700 (PDT)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060a.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1b::60a]) (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 53F78C14CF13 for <netconf@ietf.org>; Wed, 17 May 2023 23:57:07 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JWmVCLnkoqlh2/K0/C217aJBFr6Cg9iaYzQ28x9z0jlMBqUhdA3myjJ9ZFFHFFhs95Nmsa6ngma+Aa519bimlClMOj4ZZSYyH/vEfSZN8M1XH897ZOJOxLmSO9WKHwt3vtpthBB6neDWykpBftVyY41QxwrUczwPg+iW/dTmnnn9UqsxrTNpVbSr6Mntdj+MaV5twEJqQBZ1mq/P22FEkNSmoCaEb4XsGem77xQxG9BDUix4ZI+NWZ93oUiRKtWHUGoXTKdfdhAPfkHEzPNf++zzJpQDVtiK82x/+f9gweDfaWH9LYEojVwSxMqcDRSWAzAQax1bbnvRJsAVJjfBkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=l3SCYSTy6XCXJNHBi4zvqqulqTvlTrp7ivj8O7kWQRY=; b=LJREL+3rFsHUKN3UmTXLJMV2L4L/QvY+3zrGOrQn10XqGwg/+dazvtT50uAmLk/kzCZbnTZ1vneHLA2Ql3cthjmeAOH3MnKENWusVo5cQw7LBrNdGrUcpmHL58FynzbTsE1yDz/GshE0yHM3ioIBw+BcpSjJjN9dUcjrcr4HSi7vgFY7aoMRiE/szH0x3Aaa1YPKV4wQRMAPlzI2cmFq1r0JJl1Jt/NTt40DOUiGOYJ507YXwMdRvDLz1vnWiqlxMIagIpJA4kl/+fHbVTetqCN+LUyRHyqKLP+/SU9uc6AjH33wMFj8Y7X0+AocYK9FE0a+hwpVXZnEJnCSK36ZnA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=constructor.university; dmarc=pass action=none header.from=constructor.university; dkim=pass header.d=constructor.university; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jacobsuniversity.onmicrosoft.com; s=selector2-jacobsuniversity-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l3SCYSTy6XCXJNHBi4zvqqulqTvlTrp7ivj8O7kWQRY=; b=SB5Y9yjBR+LbqPbwLT6gvekmqVBmw8LbhuZEytJQMRmmihEokz/9Ht/4uKLfoGGGv5d0lwYSHUQ785DIQl3AcHqYpB6b7WQunLOs1ak2rbDRPw9q8KfR67TrO2cvCiqVp65NvP1epjRdUBUJsazARpY7RzduY+sVjWfYmWAJ9dA=
Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=constructor.university;
Received: from GVXP190MB1991.EURP190.PROD.OUTLOOK.COM (2603:10a6:150:3::6) by GVXP190MB1846.EURP190.PROD.OUTLOOK.COM (2603:10a6:150:3e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.19; Thu, 18 May 2023 06:57:00 +0000
Received: from GVXP190MB1991.EURP190.PROD.OUTLOOK.COM ([fe80::581b:1ec3:e89b:df50]) by GVXP190MB1991.EURP190.PROD.OUTLOOK.COM ([fe80::581b:1ec3:e89b:df50%6]) with mapi id 15.20.6411.019; Thu, 18 May 2023 06:57:00 +0000
Date: Thu, 18 May 2023 08:56:57 +0200
From: Jürgen Schönwälder <jschoenwaelder@constructor.university>
To: yuchaode <yuchaode=40huawei.com@dmarc.ietf.org>
Cc: 'Jan Lindblad' <janl@tail-f.com>, "netconf@ietf.org" <netconf@ietf.org>
Message-ID: <rf3jtkzrkqbxfv3cpcnmebyoo3pnauw4w2aksyueur7wzse5jg@srpd7tcelbka>
Reply-To: Jürgen Schönwälder <jschoenwaelder@constructor.university>
Mail-Followup-To: yuchaode <yuchaode=40huawei.com@dmarc.ietf.org>, 'Jan Lindblad' <janl@tail-f.com>, "netconf@ietf.org" <netconf@ietf.org>
References: <bf46e86e2802449797521fd7a8746a2c@huawei.com> <AE0584AB-8FAE-4798-A82C-F23B00A76109@tail-f.com> <f7ef21f5a67243d19080851b62983bf0@huawei.com>
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f7ef21f5a67243d19080851b62983bf0@huawei.com>
X-ClientProxiedBy: AM0PR04CA0121.eurprd04.prod.outlook.com (2603:10a6:208:55::26) To GVXP190MB1991.EURP190.PROD.OUTLOOK.COM (2603:10a6:150:3::6)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: GVXP190MB1991:EE_|GVXP190MB1846:EE_
X-MS-Office365-Filtering-Correlation-Id: ff03659b-4f0d-40af-aa21-08db576d13b2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: s26KsDPp+NE7S72zeYX+dWX7o2DW3IJsM21Qy1/7dFHJtkvVrGE/UtCIXvnYmrzN4TCLjfRai5DRsgMQK3df22n7bDmzv7SY7dKSgKGlFteExnLJoLqnCcBEaFog0+lWxdb+jFbPll0fMmKw9C9FMPFRwjXkmmmNo2TpqLbksGHaznc8n2qKwm0Q3vTN1kYxCwXSYNbgFv6ydHoLVqRNo7DToQ43RDZy+mrpCQfB4fQ3d0V2jAG/TTkEyFtnbU/TlV53+EBygvSRo+OxTnzzbZWLMCfZUDm6RRT2/XWwji58STWIKWqRLS2cWEqBrmje7OKVVGtmTawYz4A3El2ZJMm5gyFDtM87SjRM+615XCrV+ceHdBHhtBJDrfg2dEBRl0pjSPUpw5XTQt5kkjMfQ6dxmjhCMsavqXbSvh0oW+ei1E0i9CxhetfIE48PDaXuOdw14/llBNl1D1zHfvRDMtUG4ssVRZ/jw1IBVZ+O48e/X4TqK129aF3waUJJYpBcy9OvrZh0Yr0oLIDvS2VkWfrZOaIAQwwErDawtcXF69wue4AmYlr4PEDXsdgRZ3MotGlu1GnYfBTu4XgveRu8TPF7noAZERJaFnWSqkOT2yCt0cMWXHzLc6Bt7aalPEeT
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:GVXP190MB1991.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230028)(7916004)(136003)(39850400004)(396003)(366004)(376002)(346002)(451199021)(3450700001)(2906002)(786003)(316002)(478600001)(41300700001)(8936002)(4326008)(6486002)(54906003)(6666004)(66476007)(66946007)(66556008)(5660300002)(6512007)(9686003)(6506007)(26005)(52116002)(33716001)(38350700002)(38100700002)(186003)(66574015)(85182001)(41320700001)(86362001)(40140700001)(85202003)(224303003)(46492015); DIR:OUT; SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: V1U9UkffJK0QFZEjz5X6SB5do/R4ShTViD+S4zkpcjWD0gWx3X15upVPjuctyjeMIO9VdRUYMB9t+toIL19/HO/0Ux/WJjvw/x9ctZwNgfB5dgQeSLQvpRsk3I2lXTCpgyQJNrIegBCd3pHwQOTMBh/8kT0uLpXl1T8JgprLPs4cS1z1e2jsBapBrOZfKR3mAyDyjvcnQZvic8DkA5Twc2ON2ruNQ0BxVus31QjpbMo6DuyEu83fwbw8wsPgy2KA+eAB7RGhCprttf9aJMIPoHnfyra/vEE8Wb031TPG0YlIih1mtl7sCJGcKW9FD8EhCsPQhSHIa1VAdYXR9RXC2hxtLZyPevIpGUWdO5i9g4WcVA4PSmIu8CKPr1zUX7K1qe0XLcXtAdiTUpvdSjdInVOMuq86d0QoEkta+aAxUnM6Rs3J34G+C5ysdiwiACGq2oTcJuOZ4BZeo7K7e8zt5+5pj4eLxFpiSsDWsII0exttNpNyJzMOehHo+9O15Ss4FU2G6Ae0FROvoRJIguSj1sJKcGLGyVr26LcRbTtFMGjNsk/1VmXuMPXOGhFLDxpUrkSVMi42proZsIx3qSgGoQErZIx3R8aWgbENlD1m0Zn+dPKcYewp7PvTKVNUt5x028RiMHJbYs6ScGrwAljpDrHDiRdOM4LMY7WEAm9VTlZtwc5NhpHedXJjFZr2c9uaBuaWRrs2bijynicwhWk6s3GVgAVVrjSUP6xe1S8hztqhXcJdFtfm8Rv82OwgUmLqnNnua5XT53sAslOn969YOvShz5qQbC8LtojnYMmLNsf5UtmD8BJo8hEqaqB0oh3u119xdWxX7zloFbbTFfuv1duZw6u/qclT2b7etOqYUkQVC96vA63PvHfg8CdA1AeV87Hka4lcYC4aTT7hLaZFLOYOda2ZbD66lq+pXSoib/NGTCLzv/eKF709U05NBa0lXN63QUAHRPzPtrIfL4oncNrxzoCvr1T8Hb/uT+5r04svBmaEYpGQUWFhBa86yPbprLPMsvIaa5xA5qo0vigwZPQEeFAJgkaaoheirqW6k/js9TAT9XZ5c0ox7oz36ScS87ScuhzNTNcqs6auiR0qYEIhwo1uVl3Y9uCMQC0C0dts48UcUikYrN8TO9Vq73agj+x4QR1crg6m2sYZLfNdNgzMbZ6RuFgFD1Cu1kOewyILfWwEvbuG07Whf4tGPXMclUxg4nyQt4gw1BJOhO+M5WTJ+boVhPg4fCxYWf12s4L31vhZdDZtoaG3VuMf0ZZEDFsRO6nnEnxGV8UWuPP2IhH12bzbcaSA+DJTrUV6UMjhyhGUvnkA4Tozy23B+BcpP493gBF5vTLhz63rPRFPqNd6zGzML7Qf/+uH0x/wWkZA69HEi6Wbqvik2zzHrtqVwrOBJ3zWl2xv9C4hfahVc+JPBHjg6jrE3Ov58A5yh8jJvke1kfMLoPEVXHCchu+Ps1ZImSxfYA4VCNJZafAX4N1cWQKLPUsJOqnbRIHGC7lRaCJOhhgbHrhOxoTtCsqqVZx0mP7xg2WrEQhwhSVdjuZ9cbGMkOIcYLM32xpxIFUnr20MaLf9IiuXAHBT2Oc6RBhe7fzH4ZpfJYM4m0esWGoocYH2bQXIEu/URTVmBFw=
X-OriginatorOrg: constructor.university
X-MS-Exchange-CrossTenant-Network-Message-Id: ff03659b-4f0d-40af-aa21-08db576d13b2
X-MS-Exchange-CrossTenant-AuthSource: GVXP190MB1991.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 May 2023 06:57:00.0942 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f78e973e-5c0b-4ab8-bbd7-9887c95a8ebd
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mwbxjX7zYEhnrBVavqTy8ODHBGvGinZc12QK3KhgXD6OIiJPEYc3D4t0LKwtYMW95yKHVJpAQM537PVYeAZLf2YRo9MiallJs96nCYxvRp4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXP190MB1846
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/4QKTPqNNAH1GwiAW2pEdFsWfA6A>
Subject: Re: [netconf] 答复: Which is the better way for vendor-specific extension?
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETCONF WG list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 18 May 2023 06:57:11 -0000

On Thu, May 18, 2023 at 06:17:17AM +0000, yuchaode wrote:
> Hi Jan,
> 
> Thanks for your comments. I will send another email to NETMOD mailing list too.
> At the same time, I also add an example to explain why the augmentation is a heavy burden for the orchestrator.
> 
> If a orchestrator needs to coordinate multiple domain controllers who all have their owned extensions, and the source standard YANG data structure is very complex.
> Because that all the vendors can their owned extensions in any places, from orchestrator’s view, the overall data structure can look like:
> {
>   "ietf-example:root”: {
>     "attr-1”: a,
>     "attr-2”: b,
>     "attr-3”: c,
>     "vendor-a-ext:attr-4”: d,
>     "vendor-b-ext:attr-5": e,
>     "containter-1": {
>       "attr-6”: f,
>       "attr-7”: g,
>       "attr-8”: h,
>       "vendor-a-ext:attr-9”: i,
>       "vendor-c-ext:attr-10": j,
>       "vendor-d-ext:list-11”: [{
>         "attr-12”: k,
>         "attr-13”: l
>       }],
>       "list-14": [{
>         "attr-15”: m,
>         "attr-16”: n,
>         "attr-17”: o,
>         "vendor-a-ext:attr-18”: p,
>         "vendor-c-ext:container-19”: {
>           "attr-20”: q,
>           "attr-21”: r
>         }
>       }]
>     }
>   }
> }
> Please note that the attributes start with vendor-*-ext are extended by different vendors.
> We can see that, the extensions can be happened at any places with any format or structures. The orchestrator need to do a lot of judgement and adaption for these extension.

There are many ways to filter effectively in YANG. The 'judgement'
part does not change if you force hierarchical data into a flat list.
It is a feature that YANG allows augmentations at the place in the
hierarchy where it makes the most sense.

/js

-- 
Jürgen Schönwälder              Constructor University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <https://constructor.university/>