IBN(基于意图的网络)十问

2023-11-03 08:10
文章标签 网络 意图 ibn 十问

本文主要是介绍IBN(基于意图的网络)十问,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


网络何时可以实现无人驾驶?Gartner预测,至2020年,网络会在全世界1000多家大中型以上企业中实现完全的无人驾驶”。无人驾驶的网络会先于呼之欲出的无人驾驶汽车而到来,究其原因,正是一种全新崛起的革命性的网络架构——基于意图的网络(Intent-based Network,IBN),促成了网络的快速演变。


1IBN起源


2016年至今,IBN在世界范围内被广泛热议,但最初是谁明确提出IBN的概念已经无从考证。我们无法得知“IBN之父”是谁,但我们可以很清晰地看到IBN理念的演化轨迹。


最早提及与网络意图有关的线索可以追溯到2015年2月12日,时任美国开放网络基金会北向接口工作组(ONF NBI WG)主席的Daivd Lenrow,发布了一篇名为《Intent:Don`t Tell Me What to Do! Tell Me What You Want》的标准草案,其中提出:“在所谓的‘意图’模式中,智能软件(如SDN控制器)将决定如何把意图转化为针对特定基础设施的配置手段,从而使网络以期望的方式行事。”


随后,ONF在2016年10月发布了白皮书《Intent NBI – Definition and Principles》,这是第一份描述“基于意图的北向接口(NBIs)”的文档。


2017年的6月,ONF委员会宣布停止NBI项目并将其转交给“城域以太网论坛(MEF: Metro Ethernet Forum)”,后者继续该项目的研究工作。


2016年,美国硅谷的一批创业企业就已经打响了IBN概念产品化的第一枪,至今均已获得超过1000万美元的融资。分析机构Gartner在2017年年初发布报告定义了基于意图的网络系统(IBNS),并预言IBNS是网络领域的“下一件大事(The next big thing)”。同样,在2017年年中,网络界的各大巨头纷纷在海外开始响应IBN理念,各自推出基于IBNS的产品和用例,并产生出类似“全智慧网络(Intuitive Network)”,“自动驾驶网络(Self-driving Network)”等衍生概念。2017年11月29日,北京GNTC全球网络技术大会上,云杉网络CEO亓亚烜博士发表演讲,首次发出中国自己的IBN声音:“云杉已有来自于中国客户的IBN技术诉求和扎实的技术用例”。

2什么是IBN?

  总体来说,IBN是一种在掌握自身“全息状态”的条件下,基于人类业务意图去进行搭建和操作的闭环的网络架构。


传统的网络依赖人类输入具体的策略执行命令。在IBN中,人类将不必直接输入策略命令,而转为输入期望达到的“业务意图”,即“我希望网络达到某一种情形”。网络将自动转译并完成后续的操作。之后,网络需实时地验证实际网络状态和业务意图所期望达成的网络状态相互匹配,形成持续的闭环控制过程。为了维持这个闭环过程,网络必须能够获取自身的全局实时状态,即我们所说的“全息状态”。


拿日常生活中的一件事举例:一个人在晚间下班准备驾车回家,他打开车载导航,说出“尽快回家”(意图);系统将这条语音转译为“规划从当前位置到‘家’(东大街7号)的路线”;导航检测到最短路线处在拥堵中(状态),因此推荐了一条躲避拥堵的备用路线并开始了导航(执行);在行进过程中,若发现突发的事故、拥堵或管制等影响回家时间的情形,导航还会进行时间比较和评估,可能会调整路线,以满足用户的最终意图“尽快回家”。


同样在网络中也有类似的例子:某网络负责人希望web集群内新上架的一台服务器对外提供HTTPS协议服务(意图)。系统感知到这台服务器的IP为x.x.x.x,且自动将这个意图转译为“配置ACL仅允许外界对IP x.x.x.x的访问通过端口443进行”(执行)。下发之后,通过实际流量验证网络状态是否符合该意图。

 

3IBN的关系因素有哪些?


1. 网络要有全面、精细、实时状态——网络的状态就是指网络中各个网元上的状态信息以及它们之间的流量状态信息。对网络状态的验证是解释用户业务意图合理性的决定性指标也是将其转化成实际策略并验证生效的唯一途径。获取网络状态,可以解决网络配置不能大规模并发的现状,极大地提高了效率。同时,为了更好地验证意图并产生对应的策略,获取的网络状态需要是全面的、精细的、实时的。


2. 对意图的转译和验证——意图是IBN体系中的核心驱动力,IBN将对于意图的理解穿插到网络的生命周期中,由基于算法的意图模型去分解、转译意图;在意图被下发至网络基础设施之前,必须确认其可行性。这项操作基于对网络全息状态的掌握,在下发前后持续进行验证,目的是为了保证原始的业务意图能被不折不扣地达成。


3. 网络的自动化——IBNS进一步实现了网络生命周期管理中的设计、配置、变更和运维等过程的自动化,同时实现了闭环,让网络成为一个可自动控制,自动运转的系统。


4. 形成持续的闭环——从一条意图被录入IBNS开始,系统的各个流程就需要维持一个闭合的环路。唯有持续闭环的系统才可以保证意图的有效性,才可以确保意图不会被突发的网络状况干扰,半途而废。


4IBN是如何运作的?


IBNS由以下5个步骤组成闭环运作——意图的收集(Intent Collection):即收集意图发起者期望达成的网络情形,在意图尚未生效前可以进行灵活修改。


转译和验证(Translation and Validation):将意图转化为网络能理解的语言——策略(policy),并根据网络的状态实时验证该策略的有效性,如果验证不通过将会返回第一步。

自动下发与执行策略(Automated Implementation):转译出的策略在通过验证后由IBNS自动下发到网络基础设施上,并自动执行。

 

自发的优化补救(Self-remediation):网络的状态时时变化,执行时的状态与验证时的状态可能存在不一致,此时IBNS会主动地根据期望的状态对策略进行优化补救 ,这一过程中不需要人类介入。


实时反馈 (Post-Assessment):将结果返回至意图的发起者处,这个结果可以是意图已经达成,或者是意图需要被重新定义。反馈仅在需要人类介入时才触发。


5SDN与IBN之间有何联系?


SDN(Software-defined Networking)即软件定义网络,业内对于SDN的界定非常的清晰:将网络的控制平面与转发平面分离,并存在独立的控制器;控制器与交换机之间采用开放的南向控制协议(比如OpenFlow);控制器提供开放的北向API,能够以可编程的方式实现控制。


SDN是一种网络构建的方法,而IBN在实现层面更多的是以整体IBNS的系统形式存在。SDN和IBN是两种互帮互利的技术,它们既可以各自独立部署,也可以混合部署于网络中,前面提到的ONF所提倡的NBI项目目的之一就是为了更好的支持IBN技术 。


此外,SDN更专注于如何控制网络中的基础设施,基于软件,以开放、可编程的方式进行网络策略的配置。IBN的控制环节,可以是传统控制,也可以是SDN控制。IBN更关注如何使得网络能够更好地满足用户的业务意图,使意图和网络状态之间可以平滑地、持续地达成高度一致。

6传统的网络运作方式与IBN有何根本不同?

 

IBN具有一套高效的网络状态采集和下发机制,能够为网络设备和管理团队赋能。传统网络在企业的IT中会被交给单独的网络团队去管理,同样是单点式(box-by-box)地管理诸如交换机、路由器、防火墙,无线设备等等,期间如果需要进行配置或变更,通常需要以“1条/次”的方式逐个在大量的设备上进行操作。


此外,网络当中的每台设备都极度依赖于网工的详细命令才可以执行变更。比如:

配置IP:#ip address 10.11.90.10 255.255.255.0
配置VLAN:#vlan 99 name office
基于VLAN指定端口优先级:#spanning-tree vlan port-priority


这些命令必须非常规范,任何小错误都会导致命令无法被执行。另外各大设备厂商都有私有命令格式,使得统一操作更加困难。更重要的,实际网络状态无法被验证,各个网元之间的状态无法联动。


这些低效、笨重的方式已经困扰着网络工程师近40年之久,让大部分网络行业者在“不求有功但求无过”的思路中,仅仅考虑如何让网络能工作而丧失了对“网络该做什么”的大局把握和对未来网络形态的探索欲望。究其根本有两点:一、网络的状态从未被全面且系统化地察觉、存储和有效利用;二、网络从没有一套闭环的自动控制流程或系统。


7IBN能为业务带来什么好处?

从长远利益的角度,IBN基于业务意图,对于网络全息状态的获取和对设备细粒度的控制都毫无疑问给网络带来了巨大的敏捷性;同时它无需依赖于物理网络层的各种设备和厂商纷繁不同的接口,继SDN以后更进一步地解除了厂商的绑定。从运维层面,这也解决了异构环境之间网络的管理问题,使得用户能够完成以意图为导向,以策略为介质的高集中度统一管控。


从眼前利益出发,IBN融入了网络自动化(Network Automation),降低了网络的复杂性,大幅提高了运维效率,也很大程度上节省了人工,为企业带来Opex效益。2017年Gartner曾在报告中指出:“我们认为一套IBNS的部署可以减少50%-90%的网络基础设施交付时间,同时可以减少至少50%的宕机发生次数和时长”。在增加了网络的鲁棒性、提高了网络安全性的同时,对于网络全局性的把握可以针对业务应用进行单独的优化和配置,增强了应用的性能,紧密了应用与网络之间的关联,为企业的数字化业务转型做了铺垫。


IBN理念与云杉网络的目的一致:让网络无难事(Network, No Complexity)

 

8IBN技术的应用面临哪些挑战?

 

从用户角度分析,IBN正式的商业化技术应用是从2016年开始,因此面临的第一个挑战就是时至今日仅有极少数人真正熟悉这个概念。其次,在IT这个普遍存在脆弱性 、技术周期相对较长的行业内进行新技术的尝试将会面临极大阻力:高层管理者对于风险的敏感,采购尚不存在针对IBN的独立预算,市场尚无广泛反响和经验可借鉴等等,都会制约IBN技术的进一步发展。


从生态角度分析,在IBNS的运行过程中,各个组件和设备大量地依赖相互之间的API/CLI对接,目前统一的标准规范尚未形成。然而这是一个存在利润冲突的区域,目前厂商各自存在私有的API/CLI,以此建立的壁垒隔绝对其他IBN组件的支持,这会从很大程度上抑制异构组件的IBN闭环的成型。


9中国哪些行业会需求IBN?


海外市场上,对于IBN的部署趋势已经有了成熟的预测。Gartner在2017年12月发布的报告中断言:“至2020年,全球将有超过1000家大型企业会把IBNS用于生产环境中,而今天这一数字大概是15家”。更有比较乐观的其他分析机构人员曾经预测:“在2020年,仅余30%网络运维团队会继续采用CLI作为主要的接口,在2016年这个数字大约是85%”。


中国网络市场长期处于世界第一梯队。在“十九大”的伟大蓝图和“十三五”的经济要求中,中国将于2020年底全面实现小康社会的目标与国外针对网络领域革新预测的时间点不谋而合。网络产业作为国民经济的重要组成部分,从5G时代的叩门到全面的云计算、大数据产业升级,从中国制造2025的实践到智慧城市、智慧政务的创新,中国经济高速发展的背后没有一刻可以离开它的支撑。而现如今,业务已经不满足于稳定、高速的网络,转而向在此基础上的更高效、更经济、更智能的网络提出要求。


DCN(数据中心网络)承载了数据中心业务,是云计算发展的重要载体,也是网络投入最重要的部分。IBN会最先应用于具有大规模或超大规模DCN的客户中,包括大型企业用户、大型公有云/行业云服务提供商、电信运营商。针对企业用户,金融、能源、制造等行业,具有大量行业数据和应用系统需求;尤其是金融行业,需要多地域数据中心部署以及大规模的数据计算和存储能力,因此其网络效率和网络成本的优化亟需创新方案的推动。IBN将会在金融企业、大型公有云/行业云服务提供商、电信运营商中率先尝试和应用,以DCN作为IBN部署的主航道。

 

10从何处可以了解更多关于IBN的信息?


IBN是一个全新的话题,率先由云杉网络在中国市场提出并着力推广,更多关于IBN的信息和观点,欢迎访问云杉网络的官方网站:https://www.yunshan.net/,或扫描下方的二维码添加微信号:yunshannetworks并关注以了解详细内容。

 


一些组织及公司也致力于推动IBN概念的普及,罗列如下,请参考:

SDxCentral:https://www.sdxcentral.com/?s=IBN

NetworkWorldhttps://www.networkworld.com/article/3202699/lan-wan/what-is-intent-based-networking.html

CiscoIBNS: https://www.cisco.com/c/en/us/solutions/enterprise-networks/intent-based-networking.html

Veriflow:https://www.veriflow.net/intent-based-networking/

SDNlab:https://www.sdnlab.com/







这篇关于IBN(基于意图的网络)十问的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/336791

相关文章

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~

poj 3068 有流量限制的最小费用网络流

题意: m条有向边连接了n个仓库,每条边都有一定费用。 将两种危险品从0运到n-1,除了起点和终点外,危险品不能放在一起,也不能走相同的路径。 求最小的费用是多少。 解析: 抽象出一个源点s一个汇点t,源点与0相连,费用为0,容量为2。 汇点与n - 1相连,费用为0,容量为2。 每条边之间也相连,费用为每条边的费用,容量为1。 建图完毕之后,求一条流量为2的最小费用流就行了

poj 2112 网络流+二分

题意: k台挤奶机,c头牛,每台挤奶机可以挤m头牛。 现在给出每只牛到挤奶机的距离矩阵,求最小化牛的最大路程。 解析: 最大值最小化,最小值最大化,用二分来做。 先求出两点之间的最短距离。 然后二分匹配牛到挤奶机的最大路程,匹配中的判断是在这个最大路程下,是否牛的数量达到c只。 如何求牛的数量呢,用网络流来做。 从源点到牛引一条容量为1的边,然后挤奶机到汇点引一条容量为m的边

配置InfiniBand (IB) 和 RDMA over Converged Ethernet (RoCE) 网络

配置InfiniBand (IB) 和 RDMA over Converged Ethernet (RoCE) 网络 服务器端配置 在服务器端,你需要确保安装了必要的驱动程序和软件包,并且正确配置了网络接口。 安装 OFED 首先,安装 Open Fabrics Enterprise Distribution (OFED),它包含了 InfiniBand 所需的驱动程序和库。 sudo

【机器学习】高斯网络的基本概念和应用领域

引言 高斯网络(Gaussian Network)通常指的是一个概率图模型,其中所有的随机变量(或节点)都遵循高斯分布 文章目录 引言一、高斯网络(Gaussian Network)1.1 高斯过程(Gaussian Process)1.2 高斯混合模型(Gaussian Mixture Model)1.3 应用1.4 总结 二、高斯网络的应用2.1 机器学习2.2 统计学2.3

网络学习-eNSP配置NAT

NAT实现内网和外网互通 #给路由器接口设置IP地址模拟实验环境<Huawei>system-viewEnter system view, return user view with Ctrl+Z.[Huawei]undo info-center enableInfo: Information center is disabled.[Huawei]interface gigabit

Golang 网络爬虫框架gocolly/colly(五)

gcocolly+goquery可以非常好地抓取HTML页面中的数据,但碰到页面是由Javascript动态生成时,用goquery就显得捉襟见肘了。解决方法有很多种: 一,最笨拙但有效的方法是字符串处理,go语言string底层对应字节数组,复制任何长度的字符串的开销都很低廉,搜索性能比较高; 二,利用正则表达式,要提取的数据往往有明显的特征,所以正则表达式写起来比较简单,不必非常严谨; 三,使

Golang网络爬虫框架gocolly/colly(四)

爬虫靠演技,表演得越像浏览器,抓取数据越容易,这是我多年爬虫经验的感悟。回顾下个人的爬虫经历,共分三个阶段:第一阶段,09年左右开始接触爬虫,那时由于项目需要,要访问各大国际社交网站,Facebook,myspace,filcker,youtube等等,国际上叫得上名字的社交网站都爬过,大部分网站提供restful api,有些功能没有api,就只能用http抓包工具分析协议,自己爬;国内的优酷、