SDN是什么?对SDN的认识
懒人小魔法师
2024-04-23 23:32
SDN是我们所说的软件定义网络的简称,那具体是什么呢?别着急,就在这里跟着小编来认识一下它吧。
SDN是一种新型的网络架构,络虚拟化的一种实现方式。它的设计理念是将网络的控制平面与数据转发平面进行分离,从而通过集中的控制器中的软件平台去实现可编程化控制底层硬 件,实现对网络资源灵活的按需调配。在SDN网络中,网络设备只负责单纯的数据转发,可以采用通用的硬件;而原来负责控制的操作系统将提炼为独立的网络操 作系统,负责对不同业务特性进行适配,而且网络操作系统和业务特性以及硬件设备之间的通信都可以通过编程实现。
SDN不是一种具体的技术,而是一种思想,一种理念。SDN的核心诉求:让软件应用参与到网络控制中并起到主导作用,而不是让各种固定模式的协议来控制网络。为了满足这种核心诉求,SDN思想指导下的网络必须设计一种新的架构。
SDN本质
说到SDN,必然提到OpenFlow,但是SDN不等于OpenFlow,就如同互联网不等于IP协议,PSTN不等于7号信令,IMS不等于SIP,WEB体系不等于HTTP协议一样。OpenFlow仅仅是SDN中控制器控制转发面设备的协议而已,控制器本身的架构、网络拓扑算法、运行环境、编程工具,以及和上层应用的集成技术都是SDN的一部分,并且是架构上更为核心的部分。
当然,对于SDN而言,不能仅仅只有抽象的架构,一定要有具体的实现实例,因此业界选择了OpenFlow协议作为指令集,并围绕其来建立一系列的操作系统、软件、编译器、外设框架和实现。
SDN的本质就是让用户/应用可以通过软件编程充分控制网络的行为,让网络软件化,进而敏捷化。那么为什么网络需要软件化、敏捷化?当然是为了更加快速地满足最终客户的需求,附带地,降低Capex和Opex。
SDN的特征
与传统网络相比,SDN的基本特征有3点,如下图所示:
控制与转发分离。转发平面由受控转发的设备组成,转发方式以及业务逻辑由运行在分离出去的控制面上的控制应用所控制。
控制平面与转发平面之间的开放接口。SDN为控制平面提供开放可编程接口。通过这种方式,控制应用只需要关注自身逻辑,而不需要关注底层更多的实现细节。
逻辑上的集中控制。逻辑上集中的控制平面可以控制多个转发面设备,也就是控制整个物理网络,因而可以获得全局的网络状态视图,并根据该全局网络状态视图实现对网络的优化控制。
SDN的典型架构共分三层,最上层为应用层,包括各种不同的业务和应用;中间的控制层主要负责处理数据平面资源的编排,维护网络拓扑、状态信息等; 最底层的基础设施层负责基于流表的数据处理、转发和状态收集。SDN本质上具有“控制和转发分离”、“设备资源虚拟化”和“通用硬件及软件可编程”三大特 性,这至少带来了以下好处。
第一,设备硬件归一化,硬件只关注转发和存储能力,与业务特性解耦,可以采用相对廉价的商用的架构来实现。
第二, 网络的智能性全部由软件实现,网络设备的种类及功能由软件配置而定,对网络的操作控制和运行由服务器作为网络操作系统(NOS)来完成。
第三, 对业务响应相对更快,可以定制各种网络参数,如路由、安全、策略、QoS、流量工程等,并实时配置到网络中,开通具体业务的时间将缩短。
SDN与传统网络的区别
SDN区别于传统网络技术的关键是“通过可编程性,将应用与网络设备之间的交互更紧密结合”。二这种紧密结合性,需要上述三种思路:“控制转发分离”、“物理网络抽象”、“可编程接口”。
可编程性是SDN的核心。将控制和管理平面从交换机、路由器中移到设备外的软件中,并通过SDN协议来连接网络设备。这些设备外的软件平台有自己的API、处理逻辑,以及向网络提要求、接受事件、处理SDN通信协议的能力,这些软件平台就是“控制器/Controller”。
应用开发人员只使用控制器提供的API来实现网络自动化、网络编排和操作网络。
控制器被认为代表了支持SDN的应用程序的基础架构,体现了SDN的可编程性。
以上的内容不知道大家觉得如何?有没有给到大家学习的帮助呢?感谢大家的阅读,编程学习网教育会继续努力,更用心地为大家提供更多优质的文章。如果大家想要学习关于IT的相关内容,可以到编程学习网教育搜索自己想要的课程来学习哦,编程学习网的各类课程等着您来挑选。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341