网络管理与运维


网络管理与运维

[TOC]

网络管理与运维基本概念

网络管理是通过对网络中设备的管理,保证设备工作正常,使通信网络正常地运行,以提供高效、可靠和安全的通信服务,是通信网络生命周期中的重要一环

网络管理 [Network Management]分为两类:

  • 第一类是对网络应用程序、用户账号(例如文件的使用)和存取权限(许可)的管理
  • 第二类是对构成网络 W234的硬件即网元的管理,包括防火墙、交换机、路由器等等

网络管理基本功能

OSI定义了网络管理的五大功能模型:

  1. 配置管理 [Configuration Management]:配置管理负责监控网络的配置信息,使网络管理人员可以生成、查询和修改硬件、软件的运行参数和条件,并可以进行相关业务的配置
  2. 性能管理 [Performance Management] :性能管理以网络性能为准则,保证在使用较少网络资源和具有较小时延的前提下,网络能够提供可靠、连续的通信能力
  3. 故障管理 [Fault Management] :故障管理的主要目标是确保网络始终可用,并在发生故障时尽快将其修复
  4. 安全管理 [Security Management] :安全管理可以保护网络和系统免受未经授权的访问和安全攻击
  5. 计费管理 [Accounting Management]:记录用户使用网络资源情况并核收费用,同时也统计网络的利用率

网络管理方式对比

传统网络管理:

  • Web网管方式:利用设备内置的Web服务器,为用户提供图形化的操作界面。用户需要从终端通过HTTPS登录到设备进行管理
  • CLI方式:用户利用设备提供的命令行,通过Console口、Telnet或SSH等方式登录到设备,对设备进行管理与维护。此方式可以实现对设备的精细化管理,但是要求用户熟悉命令行
  • 基于SNMP集中管理:SNMP提供了一种通过运行网络管理软件的中心计算机来管理网元的方法。可以实现对全网设备集中式、统一化管理,大大提升了管理效率

基于iMaster NCE的网络管理:

iMaster NCE是集管理、控制、分析和AI智能功能于一体的网络自动化与智能化平台

iMaster NCE四大关键能力:全生命周期自动化、基于大数据和AI的智能闭环、开放可编程使能场景化APP生态、超大容量全云化平台

iMaster NCE采用NETCONF [Network Configuration Protocol,网络配置协议]、RESTCONF等协议对设备下发配置,使用Telemetry监控网络流量

传统网络管理

通过CLI或Web进行管理

当网络规模较小时,CLI和Web方式是常见的网络管理方式

网络管理员可以通过HTTPS、Telnet、Console等方式登录设备后,对设备逐一进行管理

  • 这种管理方式不需要在网络中安装任何程序或部署服务器,成本较低
  • 网络管理员自身需要熟练掌握网络理论知识、各设备厂商网络配置命令
  • 当网络规模较大,网络拓扑较为复杂时,这种方式的局限性较大

基于SNMP的集中式管理

SNMP [Simple Network Management Protocol,简单网络管理协议] ,提供了一种通过运行网络管理软件的中心计算机,即**NMS [Network Management Station,网络管理工作站]**来管理网元的方法

SNMP共有三个版本:SNMPv1、SNMPv2c和SNMPv3

  • 1990年5月,RFC 1157定义了SNMP的第一个版本SNMPv1,提供了一种监控和管理计算机网络的系统方法
    • SNMPv1基于团体名认证,安全性较差,且返回报文的错误码也较少
  • 1996年,IETF颁布了RFC 1901,定义了SNMP的第二个版本SNMPv2c
    • SNMPv2c中引入了GetBulk和Inform操作,支持更多的标准错误码信息,支持更多的数据类型
  • SNMPv3提供了基于USM [User-Based Security Model,用户安全模块] 的认证加密和VACM [View-based Access Control Model,基于视图的访问控制模型] 功能

SNMP集中管理的优势:

  • 网络管理员可以利用NMS在网络上的任意节点完成信息查询、信息修改和故障排查等工作,提升工作效率
  • 屏蔽了不同产品之间的差异,实现了不同种类和厂商的网络设备之间的统一管理
SNMP典型架构
  • 基于SNMP管理的网络中,NMS是网络的网管中心运行管理进程。每个被管理设备需要运行代理 [Agent] 进程
  • 管理进程和代理进程利用SNMP报文进行通信
  • NMS是一个采用SNMP协议对网络设备进行管理/监控的系统,运行在NMS服务器上
  • 被管理设备是网络中接受NMS管理的设备
  • 代理进程运行于被管理设备上,用于维护被管理设备的信息数据并响应来自NMS的请求,把管理数据汇报给发送请求的NMS
SNMP的信息交互
  • NMS和被管理设备的信息交互分为两种:
    • NMS通过SNMP协议给被管理设备发送修改配置信息请求或查询配置信息请求。被管理设备上运行的代理进程根据NMS的请求消息做出响应
    • 被管理设备可以主动向NMS上报告警信息 [Trap] 以便网络管理员及时发现故障
  • 被管理对象 [Managed object]:每一个设备可能包含多个被管理对象,被管理对象可以是设备中的某个硬件,也可以是在硬件、软件 [如路由选择协议] 上配置的参数集合
  • SNMP规定通过MIB [Management Information Base,管理信息库] 去描述可管理实体的一组对象
MIB

MIB是一个数据库,指明了被管理设备所维护的变量。MIB在数据库中定义了被管理设备的一系列属性:

  • 对象标识符 [Object IDentifier,OID]
  • 对象的状态
  • 对象的访问权限
  • 对象的数据类型等

MIB给出了一个数据结构,包含了网络中所有可能的被管理对象的集合。因为数据结构与树相似,MIB又被称为对象命名树

MIB可以分为公有MIB和私有MIB两种

  • 公有MIB:一般由RFC定义,主要用来对各种公有协议进行结构化设计和接口标准化处理。大多数的设备制造商都需要按照RFC的定义来提供SNMP接口。
  • 私有MIB:是公有MIB的必要补充,当公司自行开发私有协议或者特有功能时,可以利用私有MIB来完善SNMP接口的管理功能,同时对第三方网管软件管理存在私有协议或特有功能的设备提供支持

常见MIB节点

  • MIB节点的最大访问权限表明网管能够通过该MIB节点对设备进行的操作:
    • not-accessible:无法进行任何操作
    • read-only:可以读取信息
    • read-write:可以读取信息和修改配置
    • read-create:可以读取信息、修改配置、新增配置和删除配置
  • 设备在生成告警时,不仅会上报当前发生的告警类型,同时会绑定一些变量。比如当发送接口linkDown告警时,需要同时绑定接口索引,接口的当前配置状态等变量。
    • ifIndex:接口索引(编号)
    • ifAdminStatus:管理状态,即接口是否被shutdown:1,undo shutdown;2,shutdown
    • ifOperStasuts:接口当前的操作状态,即接口的链路层协议状态:1,Up;2,Down
    • ifDesc:接口描述
SNMP管理模型

SNMP不同版本:

SNMPv1:

SNMPv1定义了5种协议操作:

  • Get-Request :NMS从被管理设备的代理进程的MIB中提取一个或多个参数值
  • Get-Next-Request :NMS从代理进程的MIB中按照字典式排序提取下一个参数值
  • Set-Request :NMS设置代理进程MIB中的一个或多个参数值
  • Response:代理进程返回一个或多个参数值。它是前三种操作的响应操作
  • Trap:代理进程主动向NMS发送报文,告知设备上发生的紧急或重要事件

SNMPv2

SNMPv2c新增了2种协议操作:

  • GetBulk:相当于连续执行多次GetNext操作。在NMS上可以设置被管理设备在一次GetBulk报文交互时,执行GetNext操作的次数
  • Inform:被管理设备向NMS主动发送告警。与Trap告警不同的是,被管理设备发送Inform告警后,需要NMS进行接收确认。如果被管理设备没有收到确认信息则会将告警暂时保存在Inform缓存中,并且会重复发送该告警,直到NMS确认收到了该告警或者发送次数已经达到了最大重传次数

SNMPv3

  • SNMPv3与SNMPv1和SNMPv2c的工作机制基本一致但添加了报头数据和安全参数
  • SNMPv3增加了身份验证和加密处理的功能
    • 身份验证:身份验证是指代理进程 NMS 接收到信息时首先必须确认信息是否来自有权限的NMS 代理进程 并且信息在传输过程中未被改变
      加密处理:SNMPv3报文中添加了报头数据和安全参数字段。这种安全加密机制特别适用于管理进程和代理进程之间需要经过公网传输数据的场景

SNMP基本配置

1. 使能SNMP代理功能:

[Huawei] snmp-agent #在进行SNMP配置之前,需要先使能SNMP Agent

2. 配置SNMP的版本:

[Huawei] snmp-agent sys-info { contact contact | location location | version { { v1 | v2c | v3 } * | all } }
#	用户可以根据自己的需求配置对应的SNMP版本,但设备侧使用的协议版本必须与网管侧一致
参数 参数说明
contact contact 设置系统维护联系信息
location location 设置设备节点的物理位置
version { { v1 | v2c | v3 } * | all } 设置系统启用SNMP版本

3. 创建或者更新MIB视图的信息:

[Huawei] snmp-agent mib-view view-name { exclude | include } subtree-name [mask mask]
参数 参数说明
view-name MIB视图名称
exclude 表示不包括该MIB子树
include 表示包括该MIB子树
subtree-name 配置的子树名称。用于唯一标识此子树
mask 子树掩码值。用于确定用户操作节点与该视图包含子树的匹配方式和匹配长度

4. 增加一个新的SNMP组,将该组用户映射到SNMP视图

[Huawei] snmp-agent group v3 group-name { authentication | noauth | privacy } [ read-view view-name | write-view view-name | notify-view view-name ] 
# 该命令用于SNMPv3版本中创建SNMP组,指定认证加密方式、只读视图、读写视图、通知视图。是安全性需求较高的网管网络中的必需指令。
# authentication:指定对报文进行认证但不加密。noauth:指定对报文进行不认证不加密。privacy:指定对报文进行认证和加密,为了保证安全性,建议配置SNMP组的安全级别为privacy。
参数 参数说明
group-name 指定SNMP组名
authentication | noauth | privacy 指定SNMP组的安全级别。
read-view read-view 指定只读视图名
write-view write-view 指定读写视图名
notify-view notify-view 指定通知视图名

5. 为一个SNMP组添加一个新用户

[Huawei] snmp-agent usm-user v3 user-name group group-name

6. 配置SNMPv3用户认证密码

[Huawei] snmp-agent usm-user v3 user-name  authentication-mode { md5 | sha | sha2-256 }   

7. 配置SNMPv3用户加密密码

[Huawei] snmp-agent usm-user v3 user-name privacy-mode { aes128 | des56 }

8. 配置设备发送Trap报文的参数信息

[Huawei] snmp-agent target-host trap-paramsname paramsname v3 securityname securityname { authentication | noauthnopriv | privacy }

9. 配置Trap报文的目的主机

[Huawei] snmp-agent target-host trap-hostname hostname address ipv4-address trap-paramsname paramsname

10. 打开设备的所有告警开关

[Huawei] snmp-agent trap enable
#	注意该命令只是打开设备发送Trap告警的功能,要与snmp-agent target-host协同使用,由snmp-agent target-host指定Trap告警发送给哪台设备

11. 配置发送告警的源接口

[Huawei] snmp-agent trap source interface-type  interface-number 
#	注意Trap告警无论从哪个接口发出都必须有一个发送的源地址,因此源接口必须是已经配置了IP地址的接口

基于华为iMaster NCE的网络管理

华为iMaster NCE是一款集管理、控制、分析和AI智能功能于一体的网络自动化与智能化平台

在管理与控制方面,iMaster NCE支持:

  • CLI和SNMP等传统技术实现传统设备的管理和控制
  • NETCONF协议实现对支持SDN的网络的管理和控制

iMaster NCE通过SNMP、Telemetry等协议采集网络数据,结合AI算法进行大数据智能分析,通过Dashboard、报表等方式多维度呈现设备及网络状态、帮助运维人员快速发现设备及网络异常情况并处理,保障网络的正常运作

iMaster NCE包含四大关键能力:

  1. 全生命周期自动化:以统一的资源建模和数据共享服务为基础,提供跨多网络技术域的全生命周期的自动化能力,实现设备即插即用、网络即换即通、业务自助服务、故障自愈和风险预警
  2. 基于大数据和AI的智能闭环:基于意图、自动化、分析和智能四大子引擎构建完整的智能化闭环系统。基于Telemetry采集并汇聚海量的网络数据,iMaster NCE实现实时网络态势感知,通过统一的数据建模构建基于大数据的网络全局分析和洞察,并注入基于华为30多年电信领域经验积累的AI算法,面向用户意图进行自动化闭环的分析、预测和决策,提升客户满意度,持续提升网络的智能化水平
  3. 开放可编程使能场景化APP生态:iMaster NCE对外提供可编程的集成开发环境Design Studio和开发者社区,实现南向与第三方网络控制器或网络设备对接,北向与云端AI训练平台和IT应用快速集成,并支持客户灵活选购华为原生APP,客户自行开发或寻求第三方系统集成商的支持进行APP的创新与开发
  4. 大容量全云化平台:基于Cloud Native的云化架构,iMaster NCE支持在私有云、公有云中运行,也支持On-premise部署模式,具备大容量和弹性可伸缩能力,支持大规模系统容量和用户接入,让网络从数据分散、多级运维的离线模式转变为数据共享、流程打通的在线模式

NETCONF

NETCONF [Network Configuration Protocol,网络配置协议],提供一套管理网络设备的机制

  • 用户可以使用这套机制增加、修改、删除网络设备的配置,获取网络设备的配置和状态信息

NETCONF有三个对象:NETCONF客户端、NETCONF服务器端、NETCONF消息

NETCONF客户端(Client):Client 利用NETCONF协议对网络设备进行系统管理。一般由网络管理系统(NMS)作为NETCONF Client。Client向Server发送请求,查询或修改一个或多个具体的参数值。Client可以接收Server发送的告警和事件,以获取被管理设备的状态

NETCONF服务器端(Server):Server用于维护被管理设备的信息数据并响应Client的请求,把管理数据汇报给Client。一般由网络设备(例如交换机、路由器等)作为NETCONF Server。Server收到Client 的请求后会进行数据解析,并在CMF(Configuration Manager Frame,配置管理框架)的帮助下处理请求,然后给Client 返回响应。当设备发生故障或其他事件时,Server利用Notification机制将设备的告警和事件通知给Client,向网络管理系统报告设备的当前状态变化。

功能 NETCONF SNMP CLI
接口类型 机机接口:接口定义完善、规范、标准,便于接口控制和使用 机机接口 人机接口
操作效率 基于对象建模,对象操作一次交互即可,支持过滤、批量等操作
扩展能力 可以扩展协议私有能力 一般
事务处理 支持:试运行、出错回滚、配置回退等事务处理机制 不支持 部分支持
安全传输 多种安全协议:SSH,TLS,BEEP/TLS,SOAP/HTTP/TLS 仅SNMPv3支持 支持SSH

Telemetry基本概述

Telemetry也作Network Telemetry,网络遥测技术,是一项远程地从物理设备或虚拟设备上高速采集数据的技术

设备通过推模式 [Push Mode]周期性地主动向采集器上送设备的接口流量统计、CPU或内存数据等信息,相对传统拉模式 [Pull Mode]交互,提供了更实时更高速的数据采集功能


文章作者: 十二惊惶
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 十二惊惶 !
 上一篇
2023年ciscn题解 2023年ciscn题解
时隔一年再战Ciscn,也算是有所收获吧。本年度中团队共完成题目12道,包含全部分类,个人因为大三考研的事情基本退回了端茶倒水杂项手的状态,不过队友到是有不少收获,在前两届没多少成绩的RE和逆向上同队的师弟也有所发挥
2023-05-27
下一篇 
  目录