1.1 导言
互联网几乎改变了每个人生活的方方面面。现在大多数人都认为它(上网)是理所当然的。当你在家里听到“嘿,没有互联网!”时,你明白必须将其作为当务之急的事件来处理,就像世界上任何值得尊敬的技术支持中心一样——如果你想让你的家庭保持正常的话。诚然,无论对于商务、教育、社交网络、银行还是休闲而言,今天的互联网比以往任何时候都更为重要。换句话说,互联网将继续变得越来越重要。
在互联网基础设施的背后,网络运维人员努力设计、部署、维护和监控网络。他们的确切工作是什么?FCAPS模型尝试将网络运维工程师的工作进行分类(从起源甚早至今仍有关联的FCAPS模型开始,即故障(Fault)、配置(Configuration)、计费(Accounting)、性能(Performance)和安全(Security)管理),这是一个国际标准,由国际电信联盟(ITU)[1]定义,描述各种网络管理域。
表1-1 ITU-T FCAPS模型参考ITU-T M.3400和ISO/IEC 7498-4(开放系统互连——基本参考模型,第4部分:管理框架)描述了FCAPS模型中每个功能域的主要目标。
表1-1 ITU-T FCAPS模型
注释
每本优秀的网络管理手册都有FCAPS参考资料,所以本书将很快涵盖此主题并继续介绍后面的内容。
该模型的好处是将管理工作分成更独立、更易于理解的工作。必须通过故障管理来分析故障并主动管理网络。配置管理是必不可少的,不仅实例化新服务,而且改进服务和修复错误。计费管理有助于计量流量使用情况,用于计费或简单的数据收集。性能管理按需提供服务或持续监控服务,以便主动检测网络故障或性能降级。
FCAPS中一个更独立的部分是安全:安全保护网络设备(无线接入点、交换机和路由器)以及所有网络连接设备(PC、平板电脑、智能手机等)的压力越来越大,安全工程师已经成为一份独立的工作。
请注意,几年前FCAPS旁边出现了一个新术语:FCAPS+E(能耗(Energy)管理)。网络设备耗费很多电能,包括来自互联网的核心路由器、包含服务器的数据中心以及连接到互联网的设备。例如,IP电话的功耗仅2.3W(待机时),最高14.9W,具体取决于以太网供电(PoE,802.3AF标准)分类和启用的功能。
不管现在和未来,顾客关心的都是服务。他们最担心的是网络罢工。服务提供商按需提供服务,并提供出色的用户体验。当运行的服务不符合客户期望时,提供商需要尽快修复。现有的配置、监控和故障排除方法无法满足客户按需、高质量、即时服务的需求。从应用服务器到网络连接再到最终消费者,需要全面实现服务交付的自动化。要提供高质量的服务体验,需要对服务质量进行自动监控、问题检测和自动恢复。编程自动化是大规模、高质量服务交付的关键。
采用编程自动化的网络工程师将是下一代服务交付的关键。通过扩展他们的技能以实现模型驱动的编程自动化,将使他们将成为有价值的贡献者,为客户提供下一代服务。
实施五个(加上能耗是六个)FCAPS管理需要更多的自动化和更多的可编程性。基于这些类别划分为割裂的网络管理系统的时代已经过去。网络需要作为一个统一的整体进行管理。显然,实现某一个类别的自动化是朝着正确方向迈出的一步。但是,在不集成故障管理、不考虑网络和服务性能、不考虑安全、不收集计费信息的情况下,自动化网络配置不会提供真正完整的自动化。从这个意义来讲,FCAPS类别之间的界限目前正在模糊化。来自不同FCAPS背景的工程师需要将特定领域的知识集成到整个公司范围、集成到整个FCAPS内的通用自动化框架中,这基本上是在开发DevOps模型,本章稍后将对此进行介绍。
网络运维人员可以清楚地设想未来的服务模式:所有网络元素都是单个可编程交换结构的一部分。服务可以从广泛存在的虚拟设备中快速组装而成,每个设备都会自动通告其可编程能力。它们可以在更高层次上设计,独立于异构基础设施的复杂性和设备依赖性。
以网络业务链为例,它又称业务功能链(SFC)[2],利用软件定义网络(SDN)的功能,将连接的网络服务(如流量整形器、入侵防御系统、入侵检测系统、内容过滤、广域网加速、防火墙等)创建一个业务链,并将其连接成一个虚拟链。网络运维人员可以实现SFC端到端的配置自动化,在几分钟内创建甚至重新订购服务。
目前此模型可以通过SDN和网络功能虚拟化(NFV)的强大功能来实现。然而,实施它需要一个完全可编程的网络,其服务器资源可以随着需求的增长而扩展。虚拟网络功能(VNF)必须由SDN控制器远程编程,无须网络运维人员人工干预,配置和变更必须完全自动化。为实现这一点,整个行业的设备供应商、VNF供应商和服务器供应商必须将其虚拟化设备升级为在SDN环境中可编程的设备。为此,需要一个标准的配置管理协议来提供安全、可靠的传输,并支持在全网络范围内创建、修改和删除VNF中的配置信息。
在未来的服务模式中,该框架应进一步包括服务保障。服务降级时事件会自动触发网络的重新配置。为了给基于意图的网络打开大门,网络运维人员必须指定服务的特征(连接、带宽、性能指标,例如最大延迟/丢失/抖动等),而不是网络配置。然后,网络将优化其配置以支持所有服务。
业界将NETCONF与YANG数据建模语言一起作为一种配置协议。NETCONF/YANG组合最初设计为管理协议,它提供了一种简单的标准化方法,可以让任何设备或服务使用可编程接口。YANG作为网络行业的数据建模语言引发了网络运营的转型变化,即数据模型驱动的管理。在本书中,你将发现NETCONF/YANG组合对可编程性的明显好处,包括:
- 通过自动化实现更快的服务部署
- 通过对配置更改进行程序化验证,减少服务部署错误
- 提高可服务性(即更快地诊断和修复问题)
- 通过减少传统网络工程费用降低运营成本
作为网络工程师,应该对自己进行投资,并成为面向未来的网络工程师,使用编程自动化来提高你的工作效率和客户体验。本书是你转型的关键一步。
以下各节研究了几年前开始出现的一些行业趋势。即便不是所有趋势,大多数趋势都指向YANG带来的变革和网络可编程性。