• 《走进SDN/NFV》学习笔记


    SDN/NFV出现的原因

    随着网络规模快速扩大、用户需求动态变化、专用设备日趋庞杂、流量模型难预测等,现有网络无法满足当前社会发展的需求。

    为解决互联网在不断发展中出现的新问题,人们采用的传统做法是不断向现有网络添加各种协议。如 NAT、VLAN、VXLAN等,再加上厂商设备的封闭性,总体来说,这样的解决方案只治标不治本。所以,支持网络进行革新的研究者摒弃了上述“打补丁”式的解决思路,转而寻求新型的网络体系结构来解决当前网络存在的问题。

    于是SDN/NFV应运而生。

    P4

    2014年,可编程、协议无关的数据包处理器(Programming Protocol-Independent PacketProcessors,P4)的发布,开启了SDN数据平面可编程的先河。

    P4是发展最为迅速的数据平面可编程技术。作为一门高级网络编程语言,P4的思想是用一门通用的编程语言对网络转发逻辑编程,并且下发给转发面的设备,以指导转发层设备(如交换机、网卡、防火墙、过滤器等)处理数据分组。

    NFV 的核心思想

    将专用的物理网络设备与其上运行的网络功能解耦,即网络功能以软件的形式实现,并运行在工业标准硬件上,以取代当前网络中私有、专用和封闭的设备,企业可以根据需求在网络中的各个位置进行实例化或迁移,而无须安装新设备。

    NFV与SDN的区别

    SDN技术主要分离网络中交换设备的数据平面和控制平面,数据平面变得灵活可编程,控制平面的功能为控制可编程的数据平面。

    NFV技术主要将网络功能设备的功能从专用硬件中解耦出来,并利用软件在通用平台上实现这些功能。

    SDN是网络中L1L3的技术,不涉及网络的L4L7,而NFV是L4L7的技术,SDN更为底层,因此不依赖NFV。NFV的部分价值在SDN的帮助下可以发挥得更好,这是因为NFV是L4L7的技术,需要L1~L3的配合,但是这并不意味着NFV一定需要SDN才能工作。

    SDN的三大特点

    1. 转控分离;2. 集中式控制;3. 网络可编程

    SDN架构

    ONF定义的SDN架构由4个平面组成,分别为数据平面、控制平面、应用平面以及管理平面:

    SDN数据平面的实现

    主要有三大类:1. SDN芯片(支持openflow协议的ASIC芯片);2. 硬件交换机(支持openflow协议);3. 软件交换机(openvswitch)。

    DPDK

    DPDK,全称:数据平面开发套件。

    Intel在2010年启动了DPDK技术的开源化进程,于2014年4月正式成立了独立的开源社区平台。如今,DPDK已发展成为SDN和NFV的关键技术,可提供基于Linux的数据平面库、优化的轮询模式驱动(Pull Model Driver,PMD)。

    为什么DPDK能够提高网络数据平面的性能?

    DPDK应用程序运行在用户空间上,利用自身的数据平面库来收发数据分组,绕过了Linux内核协议栈对数据分组的处理过程。避免了Linux用户态和内核态的切换开销。

    SDN控制器的分类

    主要有开源SDN控制器和商用SDN控制器两大类。

    对于开源SDN控制器,主要有:

    • Ryu,由NTT主导开发的一个开源SDN控制器项目,旨在提供一个健壮又不失灵活性的SDN控制器,使用Python语言开发。
    • Floodlight,是一款基于Java语言的开源SDN控制器,遵循Apache 2.0软件许可,支持OpenFlow协议。
    • OpenDaylight,一个开源的通用SDN平台,提供开放的北向API,同时支持包括OpenFlow在内的多种南向接口协议,底层支持传统交换机和OpenFlow交换机。
    • ONOS,一个分布式开源控制器平台,核心目标是打造一个满足运营商网络要求的开源控制器。采用Java语言进行开发,基于OSGi框架,使用Maven构建项目。

    对于商用SDN控制器,主要有:

    • Big Network Controller,是由Big Switch公司推出的商业OpenFlow控制器。BigSwitch公司成立于2010年,是全球SDN领域最具影响力的公司之一。
    • Agile Controller,华为推出的商用SDN控制器,Agile Controller借鉴了OpenDaylight开放平台的设计架构,支持OSGi框架和REST API功能。
    • ZENIC,是中兴通讯推出的一款广义SDN控制器,支持丰富的南向接口协议,对OpenFlow和非OpenFlow交换机进行统一控制。

    SDN南向协议:OpenFlow

    OpenFlow协议是SDN的主流南向接口协议,目前大规模商用的版本为OpenFlow v1.3,架构如下图:

    SDN北向接口协议的现状

    SDN的本质是控制与转发相分离,目的是为用户提供网络的可编程能力,北向接口提供了SDN中开发者与控制器间的交互能力。从典型场景看,REST API已经成为SDN控制器和云计算管理平台OpenStack对接的支撑性技术。目前,SDN北向接口标准化的前景仍然不甚明朗。

    SDN东西向接口协议的现状

    为了解决SDN集中式控制带来的问题,控制平面可以由多个控制器实例构成一个大的集群。各控制器实例间通过SDN东西向接口协议实现控制信息的交互,从而根据全局网络信息制定策略,实现逻辑上的集中控制。目前,业界对SDN东西向接口的探讨还处在学术研究阶段。

    NFV的架构

    NFVI:构成了整个架构的基础,提供虚拟化资源。

    VNF:使用NFVI提供的虚拟资源创建虚拟环境,并通过软件实现网络功能。

    MANO中包括3个部分:VIM(虚拟基础设施管理器)、VNFM以及NFVO。其中,VIM负责管理基础设施的全部资源,VNFM负责VNF的生命周期管理等,NFVO负责与传统的OSS/BSS进行对接,完成业务相关的资源调配、信息收集、决策等。

    NFVI和VIM是NFV的“员工”。NFVI和VIM之间的关系则是普通员工和员工管理者之间的关系。

    VNF和VNFM可被认为是公司的“部门”。它们由不同职能的员工组成,它们之间的关系可被理解为部门和部门管理者之间的关系。

    而NFVO则可以被认为是公司的“管理层”,它会决定公司的具体业务如何开展以及由哪些部门负责。

    NFVI和VIM:NFV的员工

    NFVI属于数据平面,它会负责处理用户每一个数据包,但不会参与管控和决策。VIM是管理NFVI的模块,负责将上层编排器所做的决策具体化为对NFVI的操作并且通过接口,命令NFVI做出一些动作。

    VNF和VNFM:NFV的部门

    VNF是网络功能的软件实现部分,VNFM是负责管理VNF生命周期的模块。

    NFVO:NFV的领导层

    NFVO主要提供ETSI NFV规范中NFV的MANO领域中要求的功能,实现虚拟网络服务(Network Service,NS)和网络资源的自动化编排与生命周期管理。

    网络功能虚拟化基础设施即服务(NFVIaaS)

    对于NFVIaaS的提供商来说,它们将自身的NFVI以“服务”的形式提供给其他服务提供商使用满足了附加商业服务的需求,且直接支持和加速了NFVI的部署。随着云服务的兴起,NFVIaaS提供商也渐渐将“云化”作为NFVI的部署方案。在云服务中,聚集的资源指的是物理网络、储存和计算资源,在NFV模型中,其对应于NFVI中的计算、管理程序和网络域。

    安全即服务(SecaaS)

    随着NFV技术的发展,网络安全功能的虚拟化已成为解决网络威胁快速变化的有效解决方案,我们将称其为虚拟网络安全功能(Virtual NetworkSecurity Function,VNSF)。

    加密即服务(Crypto as a Service,CaaS)

    随着NFV技术的发展,一些重要的网络功能,例如防火墙、入侵防御系统、负载均衡器等都依据NFV的标准逐渐软件化、虚拟化。然而,当这些虚拟防火墙、虚拟入侵防御系统、虚拟负载均衡器迁移到云时,就会出现性能、密钥管理以及可扩展性等问题。

    CaaS应用案例的出现就是为了解决繁杂的密钥操作问题,它通过将需要处理加密流量的虚拟网络功能的密钥进行集中式管理,减轻了单个虚拟网络功能的加密、解密操作负担。

    SDN编排器(SDN Orchestrator,SDNO)

    SDNO负责SDN域的协同工作,即负责SDN控制器和网元管理系统(ElementManagement System,EMS)联合管理的SDN或传统网络的网络连接以及网络虚拟化的管控。

    SDNO提供统一的网络连接编排、业务模型管理、网络模型管理、资源管理、性能监测控制、安全控制,以及统一的、端到端的、业务路径的拓扑呈现等功能.

    Heat

    与Amazon提供的公有云服务相反,OpenStack提供的是私有云服务,云服务提供商可基于OpenStack平台搭建自己的云环境。

    为方便用户使用OpenStack提供的云计算资源,OpenStack开发了OpenStack Heat。

    它是一个编排复合云应用的服务,采用了业界流行使用的模板方式来设计或者定义编排。用户只需要打开文本编辑器,编写一段基于Key-Value的模板,就能够方便地得到想要的编排。

    Heat目前支持基于JSON格式的内容转发网络(Content Forward Network,CFN)模板和基于YAML格式的Heat编排模板(Heat Orchestration Template,HOT)。

    编排器的价值

    云计算的特点是计算资源虚拟化,作用是按需分配。那怎么实现按需分配呢?这就需要编排器的作用。

    编排器所拥有的这种可进行资源分配的特性可以帮助运营商按需分配资源,并可根据底层网络的状况,灵活地部署业务、以优化业务的性能、节约能源等。

    电信随选网络中的编排器

    编排器作为随选网络的核心组件,向上通过RestAPI接收上层应用下发的业务请求,向下通过NETCONF等协议把接收的业务请求转化成原子操作下发给控制器。

    编排器的两大核心功能是业务编排和网络协同。

    编排功能是指可以根据用户需求,对控制器请求的业务资源进行统一编排并生成新的业务。协同功能是指编排器可以统一地协同调度电信网络中的多厂商控制器,并生成复杂的业务。

    OPEN-O

    2016年年初,中国移动、Linux基金会等运营商和组织联合发起业内首个NFV/SDN OPEN-O项目。

    OPEN-O的项目架构如图,其中,编排服务(Orchestration Service)是整个架构的核心:

    根据负责管理的业务与资源范围的不同,OPENO的专业编排器包括负责SDN域的SDNO与负责NFV域的NFVO两类。

    面向端到端业务编排与资源调度的跨域协同器GSO,负责把端到端的跨域业务分解成多个由对应域内的专业协同器负责实现的本地业务,同时还要进行跨域的资源调度。

    OPEN-O是业界首个以实现SDN/NFV端到端业务自动编排为目标的开源参考平台,旨在提供面向SDN/NFV的顶层的编排能力。

    ONAP

    2017年2月,中国移动和AT&T宣布将ECOMP和OPEN-O项目合并为ONAP.

    ONAP融合了ECOMP和OPEN-O的现有功能,是一个为VNF、SDN以及构建在这两项基础设施之上的高级服务提供设计、创建、协调、监控和生命周期管理等功能的软件平台。

    虚拟网络功能的设计与开发

    网络功能未来大部分都将软件化,虚拟网络功能软件开发在未来也变得越发重要。在NFV的架构成熟后,虚拟网络功能的软件开发将占据一大部分的市场。

    SDN/NFV是迈向5G的重要技术

    5G技术涉及的领域非常广泛,包括SDN、NFV、云计算、边缘计算、网络切片、大数据和机器学习七大核心领域。

    其中,SDN和NFV作为两大基础技术领域,是5G网络创新的关键,更是全局性、颠覆性的网络变革,是未来电信网络实施网络变革的主线。这两大技术的应用标志着网络从此走向软件化、IT化和云化的新阶段。

    5G网络架构的“三朵云”

    5G网络由接入平面、转发平面和控制平面3个功能平面构成,这3个平面分别对应于三朵云,即接入云、转发云和控制云。

    简单来说,接入云负责用户的接入,例如用户从无线基站、Wi-Fi接入等;转发云负责用户数据的转发;控制云则负责管理转发云和接入云中的设备。

    切分5G网络大蛋糕

    5G网络的软件化和云化在当前已经成为一种趋势,基于SDN技术和NFV技术为5G网络提供所需的可编程性、灵活性和模块性,这些特性使得在一张物理网络上创建多张虚拟网络变得非常轻松,而且每张虚拟网络都是可编程的,是可以根据业务的需求灵活定制的。

  • 相关阅读:
    VB.net和c#利用IOleCommandTarget接口实现Html编辑器的Glyphs(原创)
    vb.net中用com通讯实现对HTMLDocument的事件捕捉(原创)
    自己写的用JS脚本定时执行Web地址并且得到它的源代码的页面程序
    Alice:曾经的CS反恐精英顶尖高手
    .net利用IOleCommandTarget接口实现Html编辑器表格边框的显示和隐藏(原创)
    ASP用语法及函数
    最近在研究质量统计与分析方面的项目开发
    propertyGrid实现选项(原创)
    .Net平台AOP技术研究
    c# propertyGrid属性控件跟Htmlelement元素绑定(原创精华)
  • 原文地址:https://www.cnblogs.com/youcoding/p/15329726.html
Copyright © 2020-2023  润新知