前言

软件定义网络(Software-defined Networking,简称SDN)技术是一种网络管理方法,它支持动态可编程的网络配置,提高了网络性能和管理效率,使网络服务能够像云计算一样提供灵活的定制能力。SDN将网络设备的转发面与控制面解耦,通过控制器负责网络设备的管理、网络业务的编排和业务流量的调度,具有成本低、集中管理、灵活调度等优点。

01

     为什么需要SDN

1.1  传统网络的局限

传统网络是一个分布式的网络,在二层网络中,设备通过广播的方式传递设备间的可达信息。在三层网络中,设备间通过标准路由协议传递拓扑信息。这些模式要求每台设备必须使用相同的网络协议,保证各厂商的设备可以实现相互通信。随着业务的飞速发展,用户对网络的需求日新月异,一旦原有的基础网络无法满足新需求,就需要上升到协议制定与修改的层面,这样就会导致网络设备升级十分缓慢。

传统网络为了适应不同的需求和场景,发展也越来越复杂。部署一个传统网络往往需要使用到很多协议,由于标准协议中往往存在一些未明确的地方,导致各厂商的实现有差异。

传统网络以单台设备为单位,以命令行的方式进行管理。网络管理和业务调度时效率低下,运维成本高。

1.2  SDN的技术路线

为了解决传统网络发展滞后、运维成本高的问题,服务提供商开始探索新的网络架构,希望能够将控制面(操作系统和各种软件)与硬件解耦,实现底层操作系统、基础软件协议以及增值业务软件的开源自研,这就诞生了SDN技术。

在传统网络中,网络设备可以分为管理面、控制面和转发面。管理面负责业务的编排和策略的制定,控制面负责操作系统的运行以及各种算法的运算,转发面负责数据包的转发和接收。SDN的理念是将网络设备的控制和转发功能解耦,使网络设备的控制面可直接编程,将网络服务从底层硬件设备中抽象出来。SDN架构与传统网络架构的对比如下图所示。

传统网络架构与SDN架构对比

经典的SDN技术路线强调控制面的剥离,希望能够将网络设备变为白盒设备,实现网络功能的自定义。

但在SDN的发展过程中,由于底层协议的复杂性、软件开发投入等多方面原因,厂商逐渐转向了以自动化运维为主要目标,弱化控制面剥离的SDN技术路线。厂商们主张将操作系统以及大部分的软件仍放在硬件设备上进行,保留原有的网络设备形态,通过控制器实现与硬件设备、与网络配置管理工具的对接,由控制器在管理面的维度完成对硬件设备的统一管理和业务编排。下图为两种SDN技术路线的对比,经典的SDN技术路线又可以称为软件SDN,而弱化控制面剥离的SDN技术路线可以称为硬件SDN。

软件SDN与硬件SDN对比

02

 SDN架构

SDN架构可分为基础设施层、控制层和应用层。

  • 基础设施层:主要为转发设备,实现转发功能,例如数据中心交换机。

  • 控制层:由SDN控制软件组成,可通过标准化协议与转发设备进行通信,实现对基础设施层的控制。

  • 应用层:常见的有基于OpenStack架构的云平台。另外,也可以基于OpenStack构建用户自己的云管理平台。

SDN使用北向和南向应用程序接口(API)来进行层与层之间的通信,分为北向API和南向API。北向API负责应用层和控制层之间的通信,南向API负责基础设施层和控制层之间的通信。

SDN架构

03

SDN的优点

在当前主流的SDN架构中,保留了传统硬件设备上的操作系统和基础的协议功能,通过控制器收集整个网络中的设备信息,具有如下优点:

  • 网络可编程

    网络设备提供应用编程接口(API),使得开发和管理人员能够通过编程语言向网络设备发送指令。网络工程师可以使用脚本自动化创建和分配任务,收集网络统计信息。将基于CLI与SNMP的封装脚本变为实实在在的可编程对象,提供了更丰富的功能。

  • 网络抽象化

    控制器作为中间层,通过南北向API接口与网络设备和应用程序进行交互,将底层的硬件设备抽象为虚拟化的资源池,应用和服务不再与硬件紧密耦合。

  • 降低成本

    保留了原有的网络设备,硬件设备仍然具备管理、控制、转发的全部功能,方便进行整网的改造,无需进行大规模的搬迁。控制器的引入将人工配置转变为机器配置,提升运维效率,降低运维成本。

  • 业务灵活调度

    传统的硬件设备在网络中无法进行灵活的负载分担,最优路由上往往承担着最重的转发任务,即使QoS、流控等功能缓解了这一问题,但流量的调度仍然强依赖于管理员对单台设备的配置,因此我们可以将传统的硬件设备看作是一种孤岛式的、分布式的管理模式。SDN在没有改变硬件设备整体逻辑的基础上,通过增加开放的南北向接口,实现了将计算机语言到配置命令行的翻译,使界面式的管理、集中管理变成了可能,解决了传统网络业务调度不灵活的问题。

  • 集中管理

    传统网络设备的管理是分布式的,单台网络设备不感知整个网络的状态。网络管理员使用控制器来管理底层硬件设备,编排网络业务,分配网络资源和调整流量优先级。管理员可以直接感知整个网络的状态,及时调整带宽和优化策略,便于进行整网的管理。

  • 开放性

    SDN架构支持供应商开发自己的生态系统,开放的API支持云编排、OSS/BSS、SaaS等多种应用程序,同时也可以通过Openflow控制多个供应商的硬件。

04

SDN与NFV有什么区别

NFV也是一种网络架构,它将传统物理设备的网络功能封装成独立的模块化软件,通过在硬件设备上运行不同的模块化软件,在单一硬件设备上实现多样化的网络功能。

SDN和NFV的相似之处主要体现在如下方面:

  • 都以实现网络虚拟化为目标,实现物理设备的资源池化。

  • 都提升了网络管理和业务编排效率。

  • 都希望通过界面操作或者编程语言来进行网络编排。

SDN和NFV的不同之处参见下图。

NFV与SDN有什么不同

SDN抽象物理网络资源(交换机、路由器等),并将决策转移到虚拟网络控制平面。控制平面决定将流量发送到哪里,而硬件继续引导和处理流量,无需依赖标准的硬件设备。NFV的目标是将所有物理网络资源进行虚拟化,允许网络在不添加更多设备的情况下增长,这依赖于标准的硬件设备。

其实经典SDN架构也将硬件与软件解耦作为目标,但在实现过程中由于软件研发成本、设备替换等原因的影响,现行的SDN方案弱化了控制面的分离,仅以网络自动化运维为目标。

05

 SDN的未来与挑战

在数据中心领域,大多数大规模数据中心已经采用扁平化架构,这给网络设备的管理带来了极大的挑战。SDN带来的自动化运维、集中管理在数据中心的自动化调配以及扩容中有极大的应用空间。

在视频领域,由于SDN支持数据流的实时调配,使得网络能够承载更多的流量。

在机器学习和人工智能领域,SDN也会受到运营需求和软件创新的影响,提供更丰富、更新潮的网络体验。

在未来的网络自动驾驶(ADN)中,SDN架构也能够发挥重要作用。

SDN并非没有缺点,与其他IT产品一样,SDN存在安全、扩展以及缺乏广泛合作、缺乏生态的问题。

  • 集中管理的安全风险

    虽然集中管理十分方便,但这也是一种安全风险。集中管理的单节点被攻击,整个网络可能都会受到影响。

  • SDN控制器的瓶颈

    对于软件完全从硬件上分离的SDN思路来说,控制器的软件开发难度、控制器的计算压力都是巨大的挑战。

  • 北向API缺乏统一标准

    缺乏标准的北向API导致供应商提供的接口不统一,应用程序开发困难上升,同一组开发人员必须同时开发与不同控制器的相互操作。

逆锋起笔是一个专注于程序员圈子的技术平台,你可以收获最新技术动态最新内测资格BAT等大厂的经验精品学习资料职业路线副业思维,微信搜索逆锋起笔关注!

这款网络排查工具,堪称神器!

计算机网络基础知识总结

网络常见的 9 大命令,非常实用!

推荐 10 个不错的网络监视工具,建议收藏!

人手必备的常用网络命令合集,吐血整理!

什么是 SDN?SDN 和 NFV 有什么区别?相关推荐

  1. 什么是SDN?SDN和NFV有什么区别?

    点击蓝字 2021 关注我们 前言 软件定义网络(Software-defined Networking,简称SDN)技术是一种网络管理方法,它支持动态可编程的网络配置,提高了网络性能和管理效率,使网 ...

  2. 路由表和转发表以及SDN的open-flow table表的区别

    1.路由表 路由信息最终要存储在用于路由器的主机或者专业路由器上,存放这些信息的地方称为路由表.其中最低包含三元素:目标地址,掩码,下一跳. 1.1.查询路由表的开销 有人认为查询路由表是一件和交换机 ...

  3. MEF加入中国SDN/NFV产业联盟

    在本周举办的中国SDN/NFV年度会议期间,城域以太网论坛(MEF)和SDN/NFV产业联盟宣布建立双方合作的高层框架谅解备忘录(MOU).该谅解备忘录确定了聚焦于MEF的LSO(生命周期服务编排)计 ...

  4. SDN和NFV的区别

    网络虚拟化受到热捧的原因是什么?SDN与NFV的区别又在哪里?下面我们就来回答一下这些问题. SDN: SDN抽象地说就是让管理员从功能的角度来管理整个网络.SDN把网络流量的管理层与底层控制流量的数 ...

  5. 什么是NFV?它与SDN有什么关系?

    NFV负责各种网元的虚拟化,而SDN负责网络本身的虚拟化(比如,网络节点和节点之间的相互连接 什么叫网络虚拟化?先上两张简单粗暴的图. 所有的通信应用无非就是两部分组成:计算和网络.这两者关系密不可分 ...

  6. 中国电信云计算及SDx联合技术开发实验室执行主任王峰:中国电信SDN/NFV实践-从边缘到核心...

    2016年6月1-2日,"2016全球SDNFV技术大会"在北京盛大召开.作为连续举办三届的SDN/NFV技术与产业盛会,本届大会着眼于SDN /NFV的实践应用与部署,从SDN/ ...

  7. 【SDN vs. NFV】纠缠不清的SDN和NFV

    本人就职于国际知名终端厂商,负责modem芯片研发. 在5G早期负责终端数据业务层.核心网相关的开发工作,目前牵头6G算力网络技术标准研究. 博客内容主要围绕:        5G/6G协议讲解    ...

  8. NFV 和 SDN 之间到底有什么关系?

    零.前言 NFV.SDN 是近年来信息通信行业兴起的热门技术,拥有极高的人气.尤其是 5G 时代到来后,两者的出现频率更是激增. 随着对这两个概念的深入了解,很多读者向我提出了这样的疑问-- NFV ...

  9. SDN、NFV学习与理解

    SDN.NFV介绍 SDN Software Defined Network即软件定义网络. ONF(Open Network Forum),Open Flow协议. . 网络功能虚拟化(NFV)的目 ...

最新文章

  1. 【DBMS 数据库管理系统】OLAP 核心技术 : 数据方体 ( 数据方体 | 数据方体格结构 | 数据单元 )
  2. Python爬虫开发:url中文字符编码的两种解决方式
  3. Java多线程--使用future进行异步编程
  4. wx:for-item循环数组失败
  5. Aixs2发布webservice服务
  6. xshell 上下左右键乱码和退格键失效
  7. Linux之FineBI集群部署 1
  8. 开源GIS(十二)——openlayers中加载切片原理
  9. [Algorithm] Fibonacci Sequence - Anatomy of recursion and space complexity analysis
  10. 阿里云云计算 42 CDN中的常用名词
  11. 【J2EE】【1.HelloWorld】J2EE基础(jsp,servlet,tomcat,eclipse)
  12. 基于HTTP协议的Java文件传输
  13. http接口公网对接时用到的RSA加密/解密实现示例
  14. gbd调试的基本使用方法
  15. 顺序表 —— Java附加代码
  16. 英国脱欧要拍电视剧了,卷福将是男主角
  17. SimpleDateFormat.parse()方法中的时区设置缺陷
  18. Axure 9 实战案例,基本元件的应用 5,利用情形实现B站图文登录验证
  19. tpg色卡查询_潘通TPX色卡|PANTONE TPG色卡-潘通服装和家居色彩指南-纸版Pantone for fashion home color guide-paper...
  20. 液晶电视怎么选才不花冤枉钱?整理液晶电视常用参数及选购技巧

热门文章

  1. 在浏览器查看base64格式的图片
  2. 使用 Apple Watch S6 测量血氧教程
  3. “68道 Redis+168道 MySQL”精品面试题(带解析),你背废了吗?
  4. 仓库设计之ER图箭头讲解
  5. 移动端手机网页适配iPad与折叠屏设备
  6. WebDAV之葫芦儿·派盘+人升
  7. 魔兽世界---熊猫人之谜
  8. 计算机科学与技术专业图书,《计算机科学与技术专业毕业论文选》—甲虎网一站式图书批发平台...
  9. 路由协议之:WSN网络的RPL路由协议 for 6LOWPAN
  10. 华为更新系统10.1显示连接服务器失败,emui10.1正式版-华为emui10.1系统更新正式版预约 -优盘手机站...