网络管控协议

1. CLI(命令行接口)管控

概述:

  • CLI主要通过命令行对网络设备进行管控,分为带内和带外两种方式。
    • 带内接口:通过插网线与设备数据传输共用一条线路。
  • 带外接口(console口):专用于设备控制,通常为蓝色线。
    存在问题:
  • 网络环境复杂时,自动化编程难度加大。
  • 不同设备命令支持不一致,可能导致部分命令执行失败。
  • 监控性较差,命令输出解析成本高。

2. SNMP协议

原理:

  • 每台设备配置代理,通过SNMP实现网络设备管理。
    主要组件:
  • NMS(网络管理系统)
  • Agent(代理进程)
  • 被管理对象
  • MIB(管理信息库)
    工作模式:
  • Polling/Get:NMS与代理一问一答,基于UDP传输。
  • TRAP:代理主动上报告警。
  • Set:NMS向代理下达指令,管理设备。
    MIB管理信息库:
  • 采用树形结构,每个指标用OID标识,包含权限、数据类型、含义等。
    问题分析:
  • UDP传输不安全,且set命令事务性无法保障。

3. 广义遥测

结构划分:

  • 管理系统分为采集器、控制器、分析器、设备。
    数据流:
  • 控制器向设备发送订阅请求,设备主动向采集器推送数据,再传递至NMS。

4. YANG数据模型

作用:

  • 用于描述网络设备模型,类似表格结构,便于编程和数据管理。
    示例:
    list user { key "name"; leaf name { type string; } leaf full-name { type string; } }
    数据格式:
  • 管理员查询设备数据时返回XML格式。
  • XML标签可自定义,相较于JSON更为规范,但冗余较多。
    XML示例:
    <user> <name>zhangsan</name> <full-name>张三</full-name> </user> <user> <name>lisi</name> <full-name>李四</full-name> </user>

5. NETCONF协议

特点:

  • 与SNMP类似,均为网络设备管理协议。
  • SNMP数据存储和组织复杂,基于UDP协议,安全性和一致性不足。
    工作流程:
  1. 设备开启NETCONF服务。
  2. 客户端通过SSH创建会话,互发标签交换功能集。
  3. 客户端发送RPC请求,设备响应。
  4. 优雅关闭SSH连接。
    技术细节:
  • 全过程采用XML格式传输。
  • YANG数据模型用于标准化数据建模。
  • XML命名空间指定后,可使用对应YANG模板标签。

6. RESTCONF协议

优势:

  • 无需记忆复杂XML标签,通过API即可配置设备。
  • 基于HTTP协议访问设备资源,支持JSON格式传输。
    工作流程:
  1. 设备配置RESTCONF支持。
  2. 构建HTTP请求,设置请求头、请求体。
  3. 根据响应码处理请求结果。

7. OpenConfig数据模型

说明:

  • OpenConfig不是协议,而是一套用YANG编写的厂商无关数据模型。
  • 解决不同运营商对同一设备YANG模型不一致的问题。
    内容包含:
  • 通用数据模型
  • 流式遥测(设备主动持续推送数据)
  • 管理协议
  • 测试与合规
    流式遥测特点:
  • 主动推送与持续流式传输结合,提升远程数据采集效率。

8. GPB(Google Protocol Buffers)

原理:

  • 通过.proto文件定义数据结构,将传输内容加密为二进制格式。
  • 每个字段有编号,接收方通过密码本解码。
    流程举例:
  1. 编写.proto文件定义结构。
  2. 数据编码为二进制流。
  3. 接收方解码,生成对象。
    示例:
    message WebLog { required int32 srcIP = 1; required int32 srcPort = 2; required string url = 3; optional string agent = 4; }
    数据编码示例:

字段编号1, 类型=整型\] \[值3232235777\] \[字段编号2, 类型=整型\] \[值8080\] \[字段编号3, 类型=字符串\] \[长度8\] \[sina.com\] \[字段编号4, 类型=字符串\] \[长度...\] \[Mozilla/5.0...

解码过程:

  • 按编号查密码本,读取对应字节,生成对象。
    工具支持:
  • Protobuf库可生成多语言代码工具库(如Java类及get/set方法)。

9. gNMI(gRPC Network Management Interface)

定位:

  • 标准化接口,支持RPC风格远程调用。
    与RESTCONF区别:
  • RESTCONF适合Web开发者,侧重API管理网络。
  • gNMI创建统一接口,支持高效性能指标推拉结合。
    应用思考:
  • 设备监控指标推送需合理决策,按需拉取与条件触发推送结合。
  • 华为案例:设备默认30秒推送基本指标,检测到错误时提升频率至1秒,持续30秒。运维人员可通过gNMI临时拉取数据。
相关推荐
乾元1 小时前
红队测试:如何对大模型进行系统性的安全红队评估
运维·网络·人工智能·神经网络·安全·网络安全·安全架构
上海云盾-小余1 小时前
端口扫描防御实战:一招识别攻击前兆,筑牢网络第一道屏障
网络
gfdhy2 小时前
【Linux】服务器网络与安全核心配置|静态IP+SSH加固+防火墙,公网服务器必学实操
linux·服务器·网络·tcp/ip·算法·安全·哈希算法
somi72 小时前
Linux-网络通信02-UDP 与 TCP Socket
linux·网络·udp·tcp
Hello World . .2 小时前
Linux:网络编程-UDP通信
linux·网络·udp
努力搬砖的鱼2 小时前
校园网运维-生成树协议实战
运维·网络
蜕变的小白2 小时前
Linux系统编程:揭秘网络通信 IP与端口号的奥秘
linux·网络·网络协议·tcp/ip
津津有味道2 小时前
易语言数据报UDP通讯接收RFID网络读卡器获取卡号驱动设备播报TTS语音
网络·udp·rfid·读卡器·易语言·数据报
战族狼魂3 小时前
基于SpringBoot+Vue的基因调控网络推断系统
网络·vue.js·spring boot