netconf学习

Linux netconf命令教程:网络配置监控(附案例详解和注意事项) netconf是一个用于网络配置监控的命令。它可以监控IPv4和IPv6参数,如转发、rp_filter、proxy_neigh、ignore_routes_with_linkdown或mc_forwarding状态。此外,netconf也是一个客户端应用程序,可以通过SSH在默认的NETCONF端口(830)上建立NETCONF会话。 阅读详情

转载:https://blog.csdn.net/anzheangel/article/details/78885880

目录

  随着SDN的大热,一个诞生了十年之久的协议焕发了第二春,它就是NETCONF协议。如果你在两年前去搜索NETCONF协议,基本得到的信息都是“这个协议是一个网管协议,主要目的是弥补SNMP协议的不足,希望可以取代SNMP协议”。SNMP有哪些不足,而NETCONF是否真的能够弥补,这都不是重点,重点是NETCONF诞生至今SNMP依旧活的好好的。所以如果我们还是把NETCONF当做一个网管协议的话,估计它会在冷板凳上一直坐下去,而如果我们换一个角度去看待NETCONF协议,你会发现也许它是最适合SDN的一个协议。

0. 概述

  NETCONF = The Network Configuration Protocol
  SDN = Software Define Network
  从文字含义上就觉得NETCONF和SDN可以在一起搞事情,搞什么事情? 搞Network啊。
  SDN要用软件去定义网络,如何定义?简单就是要用软件去配置网络,有人说”配置网络太空泛了,能不能具体点?”,但我真的没法说的具体,因为网络能配置的东西太多了,网络的设备类型多种多样,业务类型更是成百上千了,但SDN就是想在这么复杂的网络上开辟一番新的天地,NETCONF可以说是其不二的选择。
  接下来就对NETCONF1.1(RFC6241)版本进行详细分析。

1. NETCONF1.1协议详解

  NETCONF采用的是C/S的模式:
Netconf协议框架
  从上图中可以看出NETCONF协议内部分为4层,由下至上分别是安全传输层,消息层,操作层和内容层。
  在详细介绍这四层之前,需要提前建立一个概念,NETCONF认为网络的模型数据可以分为两大类,即状态数据和配置数据。状态数据一般指server(设备)的固有属性数据和当前运行的状态数据等,这类数据仅能查询。而配置数据则是指由用户(以某种方式)配置到server上的数据。而配置数据本身又可以存在多个数据库,标准中提到了<running/>库用于保存当前已经生效的配置;<candidate/>用于保存可以提交为生效的数据;以及<startup/>用于保存启动时的配置数据。

1.1. 安全传输层

  NETCONF的第一大优势就是其从协议层面就已经规定其传输层必须使用带有安全加密的通信协议,例如SSH,TLS等。相比与其它也允许明文传输的协议来说其在协议层面就已经对数据安全做了第一道守护。由于NETCONF协议规定必须要支持SSH,所以目前SSH是NETCONF使用最广泛的传输层协议。
  NETCONF的协议内容是承载在安全传输层之上的,所以NETCONF本身是一个应用层协议,所以NETCONF协议中并没有规定建链保活相关的内容。

1.2. 消息层

  NETCONF中定义了三种消息类型,分别是hello, rpc和rpc-reply, notification。

1.2.1. <hello>

  <hello>仅用于回话刚刚建立时netconf-server和netconf-client之间进行能力交换。
  server和client需要在回话建立后互相发送<hello>消息,并在<hello>消息中携带自身支持的能力,以及支持的netconf协议的版本号,server和client根据自身和对方的能力信息协商使用的netconf版本。
  一般来说,C/S双方互发<hello>且协商版本成功后,认为netconf会话建立成功。

1.2.1.1. 几种常用的能力

(1) XPath Capability
  该能力表示client可以在filter中使用XPath表达式作为过滤条件
  Capability Identifier:
  urn:ietf:params:netconf:capability:xpath:1.0
(2) Writable-Running Capability
  该能力表示server支持直接对<running/>库进行修改操作。
  Capability Identifier:
  urn:ietf:params:netconf:capability:writable-running:1.0
(3) Candidate Configuration Capability
  该能力表示server具有一个candidate数据库,并且可以将candidate数据库中的配置提交生效并更新running数据库
  Capability Identifier:
  urn:ietf:params:netconf:capability:candidate:1.0
(4) Rollback-on-Error Capability
  该能力表示server在执行client发送的配置数据出错后可以进行回滚
  Capability Identifier:
  urn:ietf:params:netconf:capability:rollback-on-error:1.0
(5) Validate Capability
  该能力表示server可以校验client发送的配置数据是否正确
  Capability Identifier:
  urn:ietf:params:netconf:capability:validate:1.1
(6) Distinct startup Capability
  该能力表示server有一个startup数据库,用于保存启动配置
  Capability Identifier:
  urn:ietf:params:netconf:capability:startup:1.0

1.2.2. <rpc>和<rpc-reply>

  <rpc>是由netconf-client发起的发送到netconf-server的消息。用于client请求server执行某项具体的操作。
  <rpc>包含一个强制属性”message-id”,这个id是一个单调递增的正整数,同一会话内不能重复。该id用于<rpc>和<rpc-reply>的配对。
  <rpc-reply>是有netconf-server发送给netconf-client的rpc响应。不能主动发起,仅能在收到<rpc>之后回复,切必须携带与收到的rpc相同的message-id。
  在<rpc-reply>定义了两种默认的元素分别是<ok>和<rpc-error>。<ok>表示未定义响应内容的rpc执行成功,而<rpc-error>表示rpc执行失败。
  关于RPC最重要的一点: 原文如下:
  NETCONF<rpc>requests MUST be processed serially by the managed device. Additional<rpc>requests MAY be sent before previous ones have been completed. The managed device MUST send responses only in the order the requests were received.
  个人对这段话的理解是这样的:
  1. netconf-client必须保证server收到的rpc请求的顺序和message-id的顺序是一致的。
  2. netconf-server在能保证数据不冲突的前提下可以并行处理收到的rpc请求。
  3. netconf-server在发送<rpc-reply>时必须严格按照收到的<rpc>的顺序。

1.2.3. <notification>

  在netconf的1.0版本中还没有加入Notification相关的内容,而在1.1版本已经将RFC5277(NETCONF Event Notifications)囊落在内了。支持Notification上报的netconf-server需在能力交换时上报能力:
  “urn:ietf:params:netconf:capability:notification:1.0”
  几个关键的知识点:
  1. Netconf的通知采用的是订阅发布机制,server仅会向发送过订阅请求的client发送通知。
  2. Netconf的通知是以Stream进行分类的,不同类的Stream以不同的stream-name进行区分。netconf-server默认需要支持的stream-name是”NETCONF”。
  3. client不能重复下发订阅,即同一Stream的订阅不能重复下发,也不能同时订阅多个Stream,订阅可以设置定时取消,如果没有设置终止时间,取消订阅需要使用close-session或者kill-session。定时取消的订阅netconf的会话还是激活的,而使用close-session或者kill-session来取消的话,netconf会话会关闭。
  Stream发现:
例如:

<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <get>
        <filter type="subtree">
            <netconf xmlns="urn:ietf:params:xml:ns:netmod:notification">
                <streams/>
            </netconf>
        </filter>
    </get>
</rpc>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <data>
        <netconf xmlns="urn:ietf:params:xml:ns:netmod:notification">
            <streams>
                <stream>
                    <name>NETCONF</name>
                    <description>default NETCONF event stream</description>
                    <replaySupport>true</replaySupport>
                    <replayLogCreationTime>2007-07-08T00:00:00Z</replayLogCreationTime>
                </stream>
                <stream>
                    <name>SNMP</name>
                    <description>SNMP notifications</description>
                    <replaySupport>false</replaySupport>
                </stream>
                <stream>
                    <name>syslog-critical</name>
                    <description>Critical and higher severity</description>
                    <replaySupport>true</replaySupport>
                    <replayLogCreationTime>2007-07-01T00:00:00Z</replayLogCreationTime>
                </stream>
            </streams>
        </netconf>
    </data>
</rpc-reply>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34

  发起订阅:
  

<rpc message-id="101" xmlns:netconf="urn:ietf:params:xml:ns:netconf:base:1.0">
    <create-subscription xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
        <stream>SNMP</stream>
    </create-subscription>
</rpc>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <ok/>
</rpc-reply>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

  通知内容举例:
  

<notification xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
    <eventTime>2007-07-08T00:10:00Z</eventTime>
    <event xmlns="http://example.com/event/1.0">
        <eventClass>state</eventClass>
        <reportingEntity>
            <card>Ethernet0</card>
        </reportingEntity>
        <operState>enabled</operState>
    </event>
</notification>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

1.3. 操作层

  操作层仅承载在仅<rpc>和<rpc-reply>消息上,<hello>和<notification>消息无操作层。
  NETCONF协议规定了9种简单的rpc操作,同时也支持用户自定义rpc操作。有关自定义操作的内容放到内容层来讲。

1.3.1. <get>

  用于查询状态数据,另外如果server支持能力:urn:ietf:params:netconf:capability:xpath:1.0则还可以使用filter进行条件查询,例如:

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <get>
        <filter type="subtree">
            <top
                xmlns="http://example.com/schema/1.2/stats">
                <interfaces>
                    <interface>
                        <ifName>eth0</ifName>
                    </interface>
                </interfaces>
            </top>
        </filter>
    </get>
</rpc>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <data>
        <top xmlns="http://example.com/schema/1.2/stats">
            <interfaces>
                <interface>
                    <ifName>eth0</ifName>
                    <ifInOctets>45621</ifInOctets>
                    <ifOutOctets>774344</ifOutOctets>
                </interface>
            </interfaces>
        </top>
    </data>
</rpc-reply>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

1.3.2. <get-config>

  用于查询配置数据,可以通过 <source/>来指定不同的配置库,例如:

<rpc message-id="101"xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <get-config>
        <source>
            <running/>
        </source>
        <filter type="subtree">
            <top xmlns="http://example.com/schema/1.2/config">
                <users/>
            </top>
        </filter>
    </get-config>
</rpc>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <data>
        <top xmlns="http://example.com/schema/1.2/config">
            <users>
                <user>
                    <name>root</name>
                    <type>superuser</type>
                    <full-name>Charlie Root</full-name>
                    <company-info>
                        <dept>1</dept>
                        <id>1</id>
                    </company-info>
                </user>
                <!-- additional <user> elements appear here... -->
            </users>
        </top>
    </data>
</rpc-reply>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

1.3.3. <edit-config>

  用于对指定配置数据库的内容进行修改,支持以下几种操作:
  merge: 合并操作,此操作为默认操作。
  replace: 替换操作,如果对象已经存在则替换,不存在则创建。
  create: 创建操作,如果对象已经存在,则报错误“data-exists”。
  delete: 删除操作,如果对象存在则删除,不存在则报错 “data-missing”。
  remove: 删除操作,如果对象存在则删除,不存在则忽略。
举例:

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <edit-config>
        <target>
            <running/>
        </target>
        <config
            xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0">
            <top
                xmlns="http://example.com/schema/1.2/config">
                <interface xc:operation="replace">
                    <name>Ethernet0/0</name>
                    <mtu>1500</mtu>
                    <address>
                        <name>192.0.2.4</name>
                        <prefix-length>24</prefix-length>
                    </address>
                </interface>
            </top>
        </config>
    </edit-config>
</rpc>
<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <edit-config>
        <target>
            <running/>
        </target>
        <default-operation>none</default-operation>
        <config
            xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0">
            <top
                xmlns="http://example.com/schema/1.2/config">
                <protocols>
                    <ospf>
                        <area>
                            <name>0.0.0.0</name>
                            <interfaces>
                                <interface xc:operation="delete">
                                    <name>192.0.2.4</name>
                                </interface>
                            </interfaces>
                        </area>
                    </ospf>
                </protocols>
            </top>
        </config>
    </edit-config>
</rpc>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49

1.3.4. <copy-config>

  将一个库的数据复制到另一个库。
  举例:

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <copy-config>
        <target>
            <running/>
        </target>
        <source>
            <url>https://user:password@example.com/cfg/new.txt</url>
        </source>
    </copy-config>
</rpc>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

1.3.5. <delete-config>

  删除一个数据库。但是<running/>库不能被删除。

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <delete-config>
        <target>
            <startup/>
        </target>
    </delete-config>
</rpc>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

1.3.6. <lock>

  获取指定数据库的锁,当某个client获得了指定数据库的锁之后,在其没有释放该锁之前,其余client均不能获得该数据库的锁,也不能对其进行修改操作。同一client也不能在没有释放锁之前,重复申请锁。
获取锁的主要目的就是避免并发导致数据冲突。
  举例:

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <lock>
        <target>
            <running/>
        </target>
    </lock>
</rpc>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

1.3.7. <unlock>

  释放指定数据库的锁。client只能释放自己持有的锁,不能释放其它client的锁。
  举例:

<rpc message-id="101"
    xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
    <unlock>
        <target>
            <running/>
        </target>
    </unlock>
</rpc>
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

1.3.8. <close-session>

  优雅关闭netconf会话,netconf-server将释放该client持有的锁和为其分配的资源,并优雅的关闭与该client链接。所有在<close-session>之后收到的操作均会被忽略。

1.3.9. <kill-session>

  强制关闭netconf会话。
  

1.4. 内容层

  开放但规范的内容层是netconf协议的精髓所在。其开放体现在netconf协议本身没有对内容层的数据结构做任何的限定。而其规范则体现在其内容层需要使用Yang语言对其数据进行建模。
  在netconf出现之前,我们所熟知且常用的协议,均采用在协议中规定报文的结构体,并按字节流读取并解析的架构。为了更好的在字节流中表达更丰富的报文结构,我们采用TLV等方式来定义对象。但不知大家是否发现,这种方式几乎不具备任何扩展性,一旦扩充对象,或修改对象就需要变更代码。而如果对一个协议扩展了大量的私有数据,那么首先协议不在标准,其次协议栈的代码几乎是完全重写。
  而netconf的出现可以说直接对上述问题进行了一次”降维“打击,它完全站在了一个更高的维度来解决上述问题。其内容层未指定具体的模型结构,而是指定了一套建模语言–yang。也就是说使用yang定义的数据模型,均可以作为netconf的内容层。所以扩展对netconf来说就是不断的增加和修改yang文件而已。
  做一个比喻,传统基于字节流的协议可以比作一份具有特定可执行的程序,而NETCONF则是写程序的编程语言。
  另外一点我们在上面将操作的时候提到netcon支持用户自定义操作。也就是说我们不必纠结标准制定的9个操作类型是否够用,完全可以根据实际的需求在yang文件中定义相应的rpc操作。
  Netconf协议本身的一些扩展也是采用在标准中增加默认支持的yang文件的方式来实现的,比如yang-moudle-monitor。

2. 标准地图

RFCTitleDateMore Info
RFC 4741NETCONF Configuration ProtocolDecember 2006Netconf的首个版本, Obsoleted by RFC 6241
RFC 4742Using the NETCONF Configuration Protocol over Secure SHell (SSH)December 2006Obsoleted by RFC 6242
RFC 4743Using NETCONF over the Simple Object Access Protocol (SOAP)December 2006
RFC 4744Using the NETCONF Protocol over the Blocks Extensible Exchange Protocol (BEEP)December 2006
RFC 5277NETCONF Event NotificationsJuly 2008Netconf通知标准文档
RFC 5381Experience of Implementing NETCONF over SOAPDecember 2006
RFC 5539NETCONF over Transport Layer Security (TLS)December 2006Obsoleted by RFC 7589
RFC 5717Partial Lock Remote Procedure Call (RPC) for NETCONFDecember 2006
RFC 6020YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)December 2006Yang语言1.0版本
RFC 6022YANG Module for NETCONF MonitoringDecember 2006Netconf server上报Yang模型标准
RFC 6110Mapping YANG to Document Schema Definition Languages and Validating NETCONF ContentDecember 2006Updated by RFC 7952
RFC 6241Network Configuration Protocol (NETCONF)December 2006Obsoletes RFC 4741, Updated by RFC 7803
RFC 6242Using the NETCONF Protocol over Secure Shell (SSH)December 2006Obsoleted by RFC 4742
RFC 6243With-defaults Capability for NETCONFDecember 2006
RFC 7589Using the NETCONF Protocol over Transport Layer Security (TLS) with Mutual X.509 AuthenticationJune 2015Obsoletes RFC 5539
RFC 7950The YANG 1.1 Data Modeling LanguageAugust 2016Yang语言1.1版本
RFC 8071NETCONF Call Home and RESTCONF Call HomeFebruary 2017

3. 相关网络资源

http://www.netconfcentral.com/

38、网络API:GraphQL与NETCONF的深入解析 本文深入解析了两种网络API技术:GraphQL和NETCONF。GraphQL作为一种灵活的查询语言,简化了客户端与服务器间的数据交互;而NETCONF作为一种成熟的网络配置管理协议,支持事务性配置更改和多设备协同操作。文章详细介绍了NETCONF的协议栈、操作流程、交互示例以及同厂商平台(如Junos和Cisco IOS XE)的实现差异,并提供了从学习到生产环境的应用建议。 阅读详情

相关推荐

NETCONF配置操作指导手册

NETCONF中文协议使用说明,配置设备操作指导手册,非常适合新手入门,值得推荐。

NETCONF原理

NETCONF简介 NETCONF(网络配置协议),提供一套管理网络设备的机制。用户可以使用这套机制增加、修改、删除网络设备的配置,获取网络设备的配置和状态信息。 NETCONF有三个对象: NETCONF客户端(管理平台、SDN控制器) NETCONF服务器(网络设备) NETCONF消息(对数据的增删改查) NETCONF协议的编码格式:XML编码,NETCONF用文本文件表示复杂的层次化数据。 NETCONF协议框架 NETCONF协议在概念上可以划分为4层:安全传输层、消息层、操作层、内容层.

DDsoup 24小时不打烊芜湖! 2945

NETCONF协议基础

了解NETCONF框架 理解NETCONF的技术要点 掌握NETCONF的使用方式

NETCONF浅解

KeepAlive并是TCP协议规范的一部分,但在几乎所有的TCP/IP协议栈(管是Linux还是Windows)中,都实现了KeepAlive功能。由于作者使用netconf中都是用的callhome方式,所以本文默认都是 callhome连接方式,以下再赘述。: 在tcp_keepalive_time之后,没有接收到对方确认,继续发送保活探测包次数,默认值为9(次): KeepAlive的空闲时长,或者说每次正常发送心跳的周期,默认值为7200s(2小时)对应的以下的 TCP_KEEPIDLE,

程序媛进阶之路 731

SDN之NETCONF Call Home

NETCONF Call Home

gzwu的博客 3120

【Shell 命令集合 网络通讯 】Linux 网络配置 netconf命令 使用指南

netconf命令是Linux系统中的一个网络配置工具,用于管理网络连接和配置网络接口。它允许用户查看和修改网络配置,包括IP地址、子网掩码、网关、DNS服务器等。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1731

Netconf协议学习笔记

Netconf简介 网络配置协议NETCONF(Network Configuration Protocol)提供一套管理网络设备的机制,用户可以使用这套机制增加、修改、删除网络设备的配置,获取网络设备的配置和状态信息。通过NETCONF协议,网络设备可以提供规范的应用程序编程接口API(Application Programming Interface),应用程序可以直接使用这些API,向网络设...

曹世宏的博客 2万+

python网络自动化netconf配置模块ncclient学习笔记

ncclient介绍 ncclient简介: ncclient是一个用于NETCONF客户端的Python库。它旨在体用一个直观的API,将NETCONFXML编码特性映射到Python构造和习语,并使编写网络管理脚本更容易。 其他主要功能有: 支持RFC 4741中定义的所有操作和功能。 管道请求。 异步RPC请求。 保持XML的方式,除非真正需要变更。 扩展。可以轻松添加新的传输映射和功能...

曹世宏的博客 2万+

RFC6243 netconf with-defaults学习笔记

RFC6243 RFC位置:https://tools.ietf.org/html/rfc6243 默认情况下,netconf协议规定 server是会将带有默认值的data node response给client侧的,但是在一些情况下,例如operator需要做一些配置上的检查、校验设备侧的默认值是否与文档一致等需要在client侧获得默认值,该标准定义了在server侧处理d...

alimjan3800的博客 371

网络自动化学习-基于H3C模拟器的Netconf基础准备与练习

NETCONF(Network Configuration Protocol,网络配置协议)是一种基于 XML 的网络管理协议,它提供了一种可编程的、对网络设备进行配置和管理的方法。用户可以通过该协议设置参数、获取参数值、获取统计信息等。

专注通信工程师的技术学习与成长。专注于OTN,PTN,传输网,数据通信等技术,以及其他相关的前沿技术。 405

使用NETCONF配置设备操作指导书-6W100-整本手册.pdf

华三H3C 三层交换机手册指导 亲测好用 适合网络运维和做网络安全的机房维护人员使用 维护简单易操作

netconf协议(全)

强大的数据建模能力,强大的过滤能力,良好的事务管理能力,良好的可扩展性

NETCONF协议基础中文讲解》PDF资源推荐

NETCONF协议基础中文讲解》PDF资源推荐 去发现同类优质开源项目:https://gitcode.com/ 项目核心功能/场景 深入剖析NETCONF协议,助力SDN技术掌握与应用。 项目介绍 在软件定义网络(SDN)日益成为网络技术发展主流的今天,理解并运用好NETCONF协议至关重要。《NETCONF协议基础中文讲解》PDF资源应运而生,为网络技术爱好者、SDN实践者提供了一份详尽的N...

gitblog_06787的博客 848

netconf学习-安装ncclient客户端提示'install_requires'错误

环境说明 (1)操作系统:centos7.7 (2)python版本:2.7.5 问题描述 在学习netconf的时候需要编写netconf自动化,此时就需要用到netconf客户端工具,需要进行安装,安装过程中出现安装失败问题,无法安装,尝试在python 3.x版本上安装可以安装成功,在windows上使用pip安装也可以正常安装,后来查找了一些其他博主的博客通过对setuptools工具进行...

xianyuesuifeng的博客 4865

Netconf学习笔记(手写版)

m0_64769544的博客 140

Headlamp 资源监控实战:从概览页到 Pod 级定位的排查路径

节点内存告警响了,但告警只告诉你"哪个节点快满了",告诉你"哪个 Pod 在吃资源"。Headlamp 是 Kubernetes 资源监控的一条捷径:它的 Web 仪表板直接给出集群级 CPU 与内存水位、Pod 数量,并能从集群一路钻取到单个容器的实时用量,帮你把定位过程从十几分钟压到几十秒。 ## Metrics Server:唯一需要预装的前置依赖 Headlamp 的资源用量数据全部

gitblog_00878的博客 994

华为hcie认证重要吗?华为hcie必看的NETCONF 基本介绍

华为hcie认证重要吗?华为hcie必看的NETCONF 基本介绍,随着网络规模的增大、复杂性的增加,使用传统的SNMP( SimpleNetwork Management Protocol)的简单管理模式已经能适应复杂网络的要求,特别是能满足配置管理的需求。 为解决上述问题,开发使用了NETCONF,所谓NETCONF是指Network Configuration Protocol。是一种实现网管和设备之间通信的一套协议,可以通过NETCONF协议实现本地管理,对远端设备配置进行下发、修改和删除

IE-lab网络实验室的博客 1120
上一篇: 初识句柄含义
下一篇: netconf之xml
ysh_fj
博客等级 码龄5年 476粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值