龙空技术网

「网络技术控」细述SDN技术的演进

浪潮网络业务 1295

前言:

目前咱们对“北向接口的实现方式”可能比较注意,兄弟们都想要知道一些“北向接口的实现方式”的相关资讯。那么小编也在网络上收集了一些关于“北向接口的实现方式””的相关文章,希望同学们能喜欢,看官们一起来了解一下吧!

1、传统网络存在的问题

传统网络系统承载的应用需求相对明确和稳定,其设计和部署都是基于这个前提,因此网络本身也是相对静态的和稳定的。随着云计算时代的到来,问题逐渐凸显。应用需要网络在规模扩展与服务能力上具有灵活性,能够快速适应业务与应用的多样性、动态性和不可预测性。例如云数据中心网络需要支持资源池化、网络功能虚拟化、虚机动态迁移、用户和应用之间的安全隔离等机制,确保系统的自动化部署和资源的动态适配。

由于传统网络的分布式控制与管理架构的制约,其管理平面、控制平面和数据平面是紧耦合的,设备的转发决策、配置与管理都是基于单台设备独立完成,效率低下,难以实现对上层应用与业务的弹性响应。

2、SDN技术的诞生

2007年斯坦福大学Nick McKeown教授领导的Clean Slate项目小组成员Martin Casado博士提出了控制平面与数据转发平面解耦的解决思路与网络架构,被认为是今天SDN技术的雏形。2008年,Nick McKeown教授等在SIGCOMM会议上发表论文“OpenFlow: Enabling Innovation in Campus Networks”,首次提出基于SDN架构的OpenFlow协议,同年其小组发布了第一个开源SDN控制器NOX-Classic。2011年,Google、Facebook、Yahoo等互联网企业发起成立了开放网络基金会(Open Networking Foundation, ONF),推动SDN架构、技术的规范和发展工作。2013年,由思科、Juniper、Broadcom、IBM等网络厂商主导发起开源平台项目OpenDaylight(ODL),目标是推出通用的企业级SDN控制器。

3、SDN的定义

SDN是一种控制与转发分离并且直接可编程的新型网络架构,其区别于传统网络体系架构的重要标志是实现了控制平面与数据平面的解耦,两个平面之间通过遵循相同协议的开放接口进行通信。这种设计思路可通过控制器实现网络逻辑的集中控制,同时网络设备工作在数据平面上,只负责报文的转发,因此可以大为简化。此外,两个平面分离后,各自可实现体系结构和技术的发展演进,有利于技术创新。

SDN可分为狭义SDN和广义SDN。前者特指通过OpenFlow协议将设备的控制平面与数据平面分离,以实现灵活的网络流量控制。

广义SDN不再局限于ONF提出的基于OpenFlow的三层架构(应用层、控制层和基础设施层),南向协议除了OpenFlow协议,还支持NETCONF、OVSDB、OPFlex、PCEP、XMPP、I2RS等多种选择,此外,还有目前被业界广泛采用的Overlay网络架构。

SDN网络模型

在SDN的架构中,控制器是核心,它是连接底层交互设备与上层应用之间的桥梁。控制器与转发设备之间的消息交互通过南向接口协议实现。控制器通过南向接口协议实现对底层网络交换设备的集中管理与状态监测,为数据平面提供转发决策和流量调度。目前,主流的南向接口协议包括OpenFlow、XMPP、PCEP、I2RS、LISP等。

同时,控制器通过北向接口为开发人员提供灵活的开发接口,向上层应用开放多个层次的可编程能力,对应用层业务提供支持与响应,允许用户根据特定的网络应用场景灵活地定制相应的运行与管理策略。网络编程接口是实现网络可编程的关键,其通过逻辑与模型抽象、接口协议、API等方式为网络可编程提供实现通道与接口支持。目前北向接口的实现以REST API为主,此外还有RPC、JAVA API、CORBA、SOAP等。

4、Overlay网络模型

“Overlay”是指对底层网络(Underlay)使用特定协议或技术进行抽象、封装之后而建立起来的逻辑网络层。Overlay覆盖/叠加在底层网络之上,给出Underlay中的数据传输决策或转发规则,控制并决定了Underlay中的数据传输行为,属于虚拟逻辑网络。

Overlay网络模型

传统的核心-汇聚-接入三层网络架构已无法适应现代数据中心网络的要求,当前数据中心网络普遍采用基于Clos网络的脊与叶(Spine-leaf)架构设计,可提供高吞吐、低延迟、无阻塞的端到端访问。

SDN网络模型

Overlay网络通过“隧道”(Tunnel)技术来传递内层数据,实现底层承载网络和上层用户网络之间的隔离,以及支持虚机漂移、网络策略随行的大二层网络。隧道的构造需要借助于控制平面和数据平面技术。其中,数据平面负责运载已知单播流量及BUM(广播、未知单播和组播)流量,并将其封装为指定的Tunnel格式。目前数据平面技术的事实标准为VXLAN(虚拟扩展局域网),支持将以太帧封装到UDP报文中在L3网络中传输,可以很好地满足虚拟机动态迁移和数据中心海量的多租户隔离能力。

控制平面负责对等体发现、条目学习和分发,目前被广泛采用的控制平面技术是EVPN(以太网VPN),其作为通用的标准化技术,可支持多厂商设备的互联。早期的VXLAN通过数据平面泛洪来发现VTEP对等体并学习远端主机的路由,该机制存在极大的可扩展性问题。VXLAN应用EVPN作为控制平面,使用了基于MP-BGP协议扩展的VTEP(VXLAN 隧道终端)对等体发现机制,并且通过NLRI(网络层可达性信息)来通告和分发主机可达性信息,将基于数据平面的学习能力提升为控制平面学习能力,可动态地发现隧道建立的起点和终点,灵活地实现路由过滤,支持ARP抑制,减少网络泛洪,解决了多宿主的双活问题等。现在,基于EVPN的VXLAN已成为数据中心网络部署的主流模式。

基于EVPN的VXLAN作为数据中心网络部署的一种通用模型,需要逐台设备手工配置,严重制约了其部署的可行性。因此一般网络设备厂商会提供配套的控制器,利用软件定义功能,实现网络的自动化部署和可视化管理。如浪潮网络的SDN控制器ICE(浪潮智能云引擎),基于OpenDaylight开源架构深度开发和优化,采用标准的Restful API北向管理接口,易与第三方云管理平台及应用对接;支持标准的南向管理接口,如OpenFlow/Netconf/OVSDB/Cisco NX API等,轻松实现与SDN网络设备的对接。

5、SDN的应用

在学术界与产业界的共同推动与促进下,SDN的应用范围和使用场景在不断扩大:最初软件定义网络技术被应用在数据中心,如Google数据中心骨干网实际部署案例B4;软件定义网络技术被用于广域网,即SD-WAN,实现不同数据中心之间的连接或者对企业现有的广域网升级改造;SDN技术被应用于园区网,实现与拓扑无关的服务和策略随行,如思科的软件定义访问技术(SDA)。另外,SDN技术还被用于网络安全等场景。

6、SDN的发展趋势

目前业界SDN的一个发展方向是支持多域(跨域)集成。因为现代大型企业网络需要支持跨越园区网、分支机构、远程家庭办公、WAN、移动终端、数据中心以及混合云等不同网络域,为用户提供快速而安全的访问,并实现一致的访问与管理策略。

跨域的SDN集成

SDN的另一个发展方向是向基于意图的网络(IBN)演进。Gartner定义基于意图的网络系统(IBNS)是提升网络基础设施可用性和敏捷性的中间件产品,包含对网络基础设施的设计、实施、运行、保障等完整生命周期的管理,其目的是提高网络的可用性和敏捷性,这是企业数字化转型的关键。

意图网络的架构

SDN网络作为一个整体,向上与业务适配,将用户的业务意图转化为网络策略;向下将策略推送给具有分布式智能的网络设备,翻译成设备的本地配置。同时,收集网络信息,如网络服务信息(DHCP,AAA等),网络设备信息(设备日志、NetFlow、SNMP、基于流的遥测数据等),并引入大数据和人工智能技术,进行关联分析和机器推理,监控网络的运行状态是否与业务意图一致,实现自动化的故障排查和故障原因分析,从而快速定位网络故障,甚至可以预先发现网络故障,并基于最佳实践为网络管理员给出故障处理建议。也就是说以网络自动化为基础,形成一个从意图策略转化-自动化部署-监控&改进的闭环系统,实现智能的网络运维。在意图网络的产品化方面,浪潮网络推出了浪潮智能云引擎ICE,可以帮助用户实现SDN网络的智能运维。

浪潮智能云引擎ICE

标签: #北向接口的实现方式