SDN核心技术

               

SDN核心技术

SDN的架构可以与人的身体做类比:控制层就是人的大脑,负责对人身体的总体管控;转发层的设备是人的四肢,在大脑的控制下进行各种活动;应用层对应的是各种创新的想法,大脑在它们的驱动下对四肢进行指挥以达到其所需的效果;南向接口和北向接口则分别相当于人体内的神经和脑电波,负责各种信号的上传下达。从类比中可以看出:作为四肢的转发层,其处理性能一定要高,而其本身可以不做更多的思考而成为“傻”设备;作为大脑的控制层,其控制逻辑一定要周全,能够根据全局的网络视图作出合理的资源调配决策;作为创新想法的应用层,其工作是充分利用大脑提供的能力完成各种花样翻新的任务,同时针对自身需要向大脑提出新的能力需求。

基于上述分析,SDN中引入了很多创新技术以支撑相应的需求。遵循SDN的层次架构,SDN核心技术体系如图1-6所示。

SDN核心技术_第1张图片

如图1-6所示,在SDN架构的每一层次上都具有很多核心技术,其目标是有效地分离控制层面与转发层面,支持逻辑上集中化的统一控制,提供灵活的开放接口等。其中,控制层是整个SDN的核心,系统中的南向接口与北向接口也是以它为中心进行命名的。

交换机及南向接口技术

SDN交换机是SDN网络中负责具体数据转发处理的设备。本质上看,传统设备中无论是交换机还是路由器,其工作原理都是在收到数据包时,将数据包中的某些特征域与设备自身存储的一些表项进行比对,当发现匹配时则按照表项的要求进行相应处理。SDN交换机也是类似的原理,但是与传统设备存在差异的是,设备中的各个表项并非是由设备自身根据周边的网络环境在本地自行生成的,而是由远程控制器统一下发的,因此各种复杂的控制逻辑(例如链路发现、地址学习、路由计算等等)都无需在SDN交换机中实现。SDN交换机可以忽略控制逻辑的实现,全力关注基于表项的数据处理,而数据处理的性能也就成为评价SDN交换机优劣的最关键指标,因此,很多高性能转发技术被提出,例如基于多张表以流水线方式进行高速处理的技术。另外,考虑到SDN和传统网络的混合工作问题,支持混合模式的SDN交换机也是当前设备层技术研发的焦点。同时,随着虚拟化技术的出现和完善,虚拟化环境将是SDN交换机的一个重要应用场景,因此SDN交换机可能会有硬件、软件等多种形态。例如,OVS(OpenvSwitch,开放虚拟交换标准)交换机就是一款基于开源软件技术实现的能够集成在服务器虚拟化Hypervisor中的交换机,具备完善的交换机功能,在虚拟化组网中起到了非常重要的作用。

SDN交换机需要在远程控制器的管控下工作,与之相关的设备状态和控制指令都需要经由SDN的南向接口传达。当前,最知名的南向接口莫过于ONF倡导的OpenFlow协议。作为一个开放的协议,OpenFlow突破了传统网络设备厂商对设备能力接口的壁垒,经过多年的发展,在业界的共同努力下,当前已经日臻完善,能够全面解决SDN网络中面临的各种问题。当前,OpenFlow已经获得了业界的广泛支持,并成为了SDN领域的事实标准,例如前文提及的OVS交换机就能够支持OpenFlow协议。OpenFlow解决了如何由控制层把SDN交换机所需的用于和数据流做匹配的表项下发给转发层设备的问题,同时ONF还提出了OF-CONFIG协议,用于对SDN交换机进行远程配置和管理,其目标都是为了更好地对分散部署的SDN交换机实现集中化管控。

控制器及北向接口技术

SDN控制器负责整个网络的运行,是提升SDN网络效率的关键。SDN交换机的“去智能化”、OpenFlow等南向接口的开放,产生了很多新的机会,使得更多人能够投身于控制器的设计与实现中。当前,业界有很多基于OpenFlow控制协议的开源的控制器实现,例如NOX、Onix、Floodlight等,它们都有各自的特色设计,能够实现链路发现、拓扑管理、策略制定、表项下发等支持SDN网络运行的基本操作。虽然不同的控制器在功能和性能上仍旧存在差异,但是从中已经可以总结出SDN控制器应当具备的技术特征,从这些开源系统的研发与实践中得到的经验和教训将有助于推动SDN控制器的规范化发展。另外,用于网络集中化控制的控制器作为SDN网络的核心,其性能和安全性非常重要,其可能存在的负载过大、单点失效等问题一直是SDN领域中亟待解决的问题。当前,业界对此也有了很多探讨,从部署架构、技术措施等多个方面提出了很多有创见的方法。

SDN北向接口是通过控制器向上层业务应用开放的接口,其目标是使得业务应用能够便利地调用底层的网络资源和能力。北向接口是直接为业务应用服务的,其设计需要密切联系业务应用需求,具有多样化的特征。同时,北向接口的设计是否合理、便捷,以便能被业务应用广泛调用,会直接影响到SDN控制器厂商的市场前景。因此,与南向接口方面已有OpenFlow等国际标准不同,北向接口方面还缺少业界公认的标准,成为当前SDN领域竞争的焦点,不同的参与者或者从用户角度出发,或者从运营角度出发,或者从产品能力角度出发提出了很多方案。虽然北向接口标准当前还很难达成共识,但是充分的开放性、便捷性、灵活性将是衡量接口优劣的重要标准,例如REST API就是上层业务应用的开发者比较喜欢的接口形式。部分传统的网络设备厂商在其现有设备上提供了编程接口供业务应用直接调用,也可被视作是北向接口之一,其目的是在不改变其现有设备架构的条件下提升配置管理灵活性,应对开放协议的竞争。

应用编排和资源管理技术

SDN网络的最终目标是服务于多样化的业务应用创新。因此随着SDN技术的部署和推广,将会有越来越多的业务应用被研发,这类应用将能够便捷地通过SDN北向接口调用底层网络能力,按需使用网络资源。

SDN推动业务创新已经是业界不争的事实,它可以被广泛地应用在云数据中心、宽带传输网络、移动网络等种种场景中,其中为云计算业务提供网络资源服务就是一个非常典型的案例。众所周知,在当前的云计算业务中,服务器虚拟化、存储虚拟化都已经被广泛应用,它们将底层的物理资源进行池化共享,进而按需分配给用户使用。相比之下,传统的网络资源远远没有达到类似的灵活性,而SDN的引入则能够很好地解决这一问题。SDN通过标准的南向接口屏蔽了底层物理转发设备的差异,实现了资源的虚拟化,同时开放了灵活的北向接口供上层业务按需进行网络配置并调用网络资源。云计算领域中知名的OpenStack就是可以工作在SDN应用层的云管理平台,通过在其网络资源管理组件中增加SDN管理插件,管理者和使用者可利用SDN北向接口便捷地调用SDN控制器对外开放的网络能力。当有云主机组网需求(例如建立用户专有的VLAN)被发出时,相关的网络策略和配置可以在OpenStack管理平台的界面上集中制定并进而驱动SDN控制器统一地自动下发到相关的网络设备上。因此,网络资源可以和其他类型的虚拟化资源一样,以抽象的资源能力的面貌统一呈现给业务应用开发者,开发者无需针对底层网络设备的差异耗费大量开销从事额外的适配工作,这有助于业务应用的快速创新。

SDN核心技术_第2张图片

本文节选自《SDN核心技术剖析和实战指南》

雷葆华等 编著

电子工业出版社出版

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

你可能感兴趣的:(SDN核心技术)