OPS(Open Programmability System)即为开放可编程系统,即指设备通过提供统一的应用程序接口API(Application Programming Interface)来开放系统,使得系统具备可编程能力,可以运行第三方应用程序。
与传统网络设备有限的功能与固有的服务相比,开放可编程的系统能提供多层次的设备网络业务开放性,可以满足用户多样化、差异化的需求,便于迅速地实现业务功能扩展、自动部署和设备的智能化管理,降低运维成本和操作的复杂度。
网络的快速发展衍生出了对网络设备的新需求,但传统的网络设备只能提供有限的功能和已知的服务,这极大限制了网络业务的部署与管理,网络业务正面临着诸多挑战:
传统方式下,用户部署新业务时,交付周期常以年、月为单位,需求开发时间长,业务部署成本高。
当前网络是封闭的,网络与应用相割裂,二者之间不会产生互动,而是通过“管理员”(即各种协议和工具)来协调。而这样的多层操作,不但会降低业务部署效率和响应时间,也增加了业务部署成本。
在社会快速发展、技术日新月异的大趋势下,网络需要能够迎接创新并且拥抱创新。
目前OPS提供的开放接口还在持续扩充,随着开放接口的逐渐增多,未来大部分的定制化需求都可以通过Python脚本利用已开放的接口进行实现。
系统架构
OPS架构包含三层:应用呈现层、通信通道层、网络设备层。应用呈现层主要面向程序员,由应用程序中使用的RestFul API接口组成,这些接口用于各种网络应用的处理。通信通道层提供了一种快速、安全可扩展的应用程序和网络设备之间的通道。网络设备层对底层设备进行抽象,克服不同平台之间的差异,提供统一访问网络设备内部资源的功能。
OPS架构图
业务逻辑
OPS功能基于OPS API实现。监测的事件和执行的动作可以使用Python脚本根据设备支持的OPS API进行定义。
OPS实现逻辑
OPS把“简单”给予了网络应用开发者,提供了多层次的网络开放,重新定义了网络和业务行为,使得业务部署效率提升,市场响应事件缩短,而且让客户网络集成更加敏捷,操作维护更加简化。
针对应用呈现层、通信通道层、网络设备层的不同用户,OPS均为其提供了可编程能力,用户可以借助相应的API进行自定义的管理策略部署。
场景一:设备巡检
场景二:ZTP自动部署
场景三:故障处理
用户通过订阅系统开放的设备管理事件,感知单板状态的变化,并在单板故障时可以通过自定义执行动作来记录设备的运营状态,执行故障处理操作。
场景四:智能诊断与智能配置
注:本文素材来自华为,版权归作者所有