所选语种没有对应资源,请选择:

本站点使用Cookies,继续浏览表示您同意我们使用Cookies。Cookies和隐私政策>

提示

尊敬的用户,您的IE浏览器版本过低,为获取更好的浏览体验,请升级您的IE浏览器。

升级

CloudEngine 8800, 7800, 6800, 5800 V200R005C10 配置指南-网络管理与监控

本文档介绍了网络管理与监控的配置,具体包括SNMP配置、RMON配置、NETCONF配置、OpenFlow Agent配置、LLDP配置、NQA配置、镜像配置、报文捕获配置、Packet trace、路径/连通性探测配置、NetStream配置、sFlow配置和iPCA配置。

评分并提供意见反馈 :
华为采用机器翻译与人工审校相结合的方式将此文档翻译成不同语言,希望能帮助您更容易理解此文档的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 华为对于翻译的准确性不承担任何责任,并建议您参考英文文档(已提供链接)。
子树过滤

子树过滤

概述

子树过滤是为<get>、<get-config>操作提供查询指定数据的一种选择机制。

子树过滤有包含、精确匹配和选择三种过滤方式。NETCONF使用这种机制,可以采用简单、统一的策略实现选择,而不需要关注数据模型具体定义。

子树过滤组件

子树过滤中指定的每一个节点表示一个过滤器。过滤器只选择NETCONF服务器上指定数据库基础数据模型中有关联的节点,节点如果匹配到了过滤规则和层次结构就会被选中。子树过滤器组成部分如表3-7所示。

表3-7 子树过滤器组成部分

组成部分

说明

名字空间(Namespace Selection)选择

在子树匹配过滤应用中,如果使用名字空间,输出结果仅包含指定名字空间中的元素。

容器节点(Containment Node)

在子树过滤器中,包含子元素的节点称为容器节点。

在子树过滤器中的每个容器节点中,所有名字空间、元素层次和设备当前的数据模型完全匹配的实例,都会被输出。

内容匹配节点(Content Match Node)

在子树过滤器中,含有内容的节点称为内容匹配节点。

内容匹配节点用来在查询结果中选择输出自己的部分节点或全部相关节点,也表示一个节点内容上的精确匹配过滤器。

选择节点(Selection Node)

在子树过滤器中,内容为空的节点称为选择节点。

选择节点表示过滤输出的数据项。子树过滤器中只要出现一个或多个选择节点,查询结果只选择输出指定的选择节点。

  • 名字空间选择

    如果<filter>元素内的特定节点相关联的XML命名空间与底层数据模型中的相同,则认为名字空间匹配。

    <filter type="subtree">
     <top xmlns="http://example.com/schema/1.2/config"/>
    </filter>

    此示例中,<top>元素是一个选择节点,只要节点名字空间符合“http://example.com/schema/1.2/config”时,该节点及子节点将被包含在过滤器中输出。

  • 容器节点

    每个子元素可以是任意类型的节点,包括另一个容器节点。对于在子树过滤器中指定的每个容器节点,所有与指定名字空间、元素层次结构和任何属性匹配表达式完全匹配的数据模型实例都会包含在输出结果中。

    <filter type="subtree">
     <top xmlns="http://example.com/schema/1.2/config">
      <users/>
     </top>
    </filter>

    此示例中,<top>元素是容器节点。

  • 内容匹配节点

    一个包含简单内容的叶子节点被称为“内容匹配节点”。它用于选择部分或所有兄弟节点用于过滤后的输出,并且它表示叶子节点元素内容上的精确匹配。

    <filter type="subtree">
     <top xmlns="http://example.com/schema/1.2/config">
      <users>
       <user>
        <name>fred</name>
       </user>
      </users>
     </top>
    </filter>

    此示例中,<users>和<user>节点都是容器节点,<name>是内容匹配节点。由于没有指定<name>的兄弟节点,只有符合“http://example.com/schema/1.2/config”名字空间,并且元素层次结构能够匹配“name”元素且值等于“fred”的<user>节点才会包含在过滤器输出中,其中<name>的所有兄弟节点都将包含在过滤器中输出。

    YANG模型中support-filter语句表示了在对该节点进行操作时,是否支持对节点内容过滤:

    1、对于Key节点,默认支持内容过滤。

    2、对于非Key节点,默认不支持内容过滤,如果对该节点定义了support-filter "true",则支持内容过滤。

  • 选择节点

    代表一个“显式选择”过滤器的基础数据模型。一组同级兄弟节点内若出现任何选择节点,将使得过滤器选择指定的子树,并且抑制基础数据模型中的整个兄弟节点集合的自动选择。过滤的表达方式,可以用空标签(例如,<foo />)或具有显式开始和结束标签的表达(例如,<foo> </ foo>)来声明空叶节点。这种形式下任何空白字符都将被忽略。

    <filter type="subtree">
     <top xmlns="http://example.com/schema/1.2/config">
      <users/>
     </top>
    </filter>

    此示例中,<top>节点为容器节点,<users>为选择节点,只有“users”节点符合名字空间“http://example.com/schema/1.2/config”,并且作为配置数据库根目录的<top>元素中出现的内容,才会包含在过滤器中被输出。

子树过滤处理

子树过滤的输出首先被置空,每个子树过滤器可以包含一个或者多个数据模型片段,每个片段表示被选数据模型的其中一个选择输出部分。每个子树数据片段都是由NETCONF Server支持的数据模型组成,如果整个子树数据片段与NETCONF Server支持的数据模型中的一部分完全匹配,这个子树数据片段的所有节点和子节点都会被选择输出到查询结果中。
  • 不使用过滤器,查询结果返回当前数据模型中的所有数据内容。

    RPC请求

    <rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
     <get/>
    </rpc>

    RPC应答

    <rpc-reply message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
     <data>
      <!-- ... entire set of data returned ... -->
     </data>
    </rpc-reply>
  • 使用空的过滤器,查询结果不会输出任何数据,因为没有指定任何内容匹配或选择节点。

    RPC请求

    <rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
     <get>
      <filter type="subtree">
      </filter>
     </get>
    </rpc>

    RPC应答

    <rpc-reply message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
     <data>
     </data>
    </rpc-reply>
  • 多子树过滤

    以三个子树过滤(name = root, fred, barney)为例。

    “root”子树过滤器包含两个容器节点(<users>,<user>),一个内容匹配节点(<name>)和一个选择节点(<company-info>)。满足选择标准的子树,仅company-info会做为过滤选择结果。

    “fred”子树过滤器包含三个容器节点(<users>,<user>,<company-info>),一个内容匹配节点(<name>)和一个选择节点(<id>)。满足选择标准的子树,仅company-info中<id>元素会做为过滤选择结果。

    “barney”子树过滤器包含三个容器节点(<users>,<user>,<company-info>),两个内容匹配节点(<name>,<type>)和一个选择节点(<dept>)。用户“barney”不是一个“superuser”,不满足子树过滤规则。所以“barney”的整个子树(包括其父节点<user>)不会作为过滤器选择结果。

    RPC请求

    <rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
      <get-config>
        <source>
          <running/>
        </source>
        <filter type="subtree">
          <ifm xmlns="http://example.com/schema/1.2/config">
            <users>
              <user>
                <name>root</name>
                <company-info/>
              </user>
              <user>
                <name>fred</name>
                <company-info>
                  <id/>
                </company-info>
              </user>
              <user>
                <name>barney</name>
                <type>superuser</type>
                <company-info>
                  <dept/>
                </company-info>
              </user>
            </users>
          </ifm>
        </filter>
      </get-config>
    </rpc>

    RPC应答

    <rpc-reply message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
     <data>
      <ifm xmlns="http://example.com/schema/1.2/config">
       <users>
        <user>
         <name>root</name>
         <company-info>
          <dept>1</dept>
          <id>1</id>
         </company-info>
        </user>
        <user>
         <name>fred</name>
         <company-info>
          <id>2</id>
         </company-info>
        </user>
       </users>
      </ifm>
     </data>
    </rpc-reply>
翻译
下载文档
更新时间:2020-01-09

文档编号:EDOC1100075464

浏览量:12986

下载量:225

平均得分:
本文档适用于这些产品

相关版本

相关文档

Share
上一页 下一页