SDN为何一直热度不减?一文解析SDN的前世今生

1、SDN是什么?

SDN全称叫软件定义网络(Software Defined Network,SDN),是由美国斯坦福大学Clean-Slate课题研究组提出的一种新型网络创新架构,是网络虚拟化的一种实现方式。其核心技术OpenFlow通过将网络设备的控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能,为核心网络及应用的创新提供了良好的平台。

简单地说,SDN就是尝试摆脱硬件对网络架构的限制,将对网络的管控、配置、升级等功能都可以像操作手机安卓系统一样在控制器上进行直接的编程控制,从而使网络管理变得更加灵活快捷和简单。

2、为什么会需要SDN

说到SDN的诞生起因,不得不从传统网络的诞生史说起。大家知道IP网络最早被应用是美国国防部基于与苏联的军事对抗中。为了保证网络能够在遭受核打击之后,可以自主恢复,所以被设计成分布式的架构,保证即便某个节点遭受攻击,不影响整个网络的正常运作。

网络新业务升级速度缓慢受限制
但是分布式架构使得传统网络中每个设备是单独控制的,其中网络设备硬件、操作系统和网络应用三部分紧耦合在一起组成一个封闭的系统,每一部分的创新和演进都要求其余部分做出同样的升级,对硬件设备的依赖非常之大。

网络协议复杂,无法自主管理
另外,各种各样不同的网络协议也限制了硬件设备的信息转发,比如路由信息转发必须通过IP转发,交换机则根据MAC地址表进行转发。这些规则在出厂之际就被厂商决定,用户无法根据自己的需求自定义转发策略。

流量路径的灵活调整乏力
现今,云计算、大数据等互联技术日趋成熟,导致网络流量以指数增长的形式上升,流量的可视化与控制极为重要,传统网管无法做到全局的流量监控和即时调整。

传统网络的模式是按需发展的思路,即出现什么问题就解决什么问题。底层对于用户是封闭的,客户的意见只能反映厂商,再有厂商研究如何解决他们的需求,十分被动和漫长的等待。可不可以有一个架构,让网络像软件一样,可以按需即时的更新和管理,于是SDN应运而生。

3、SDN的架构和工作原理

SDN架构的典型表示分为三层,从上到下分别是应用层、控制层、基础设施层,三层之间使用北向和南向应用程序编程接口(API)进行通信。

应用层:包含入侵检测系统、负载均衡、防火墙等网络应用或者功能。传统网络使用的专用的物理设备,而SDN则用控制器等应用程序来替换物理设备实现这些功能。

控制层:代表集中式SDN控制器软件,是SDN的大脑,控制器驻留在服务器上并管理整个网络的策略和流量。

基础设施层:由网络中的多个物理交换机组成,这些交换机将网络流量转发到他们的目的地

API接口:以上三层使用各自的北向和南向API进行通信,应用程序通过其北向接口与控制器通信,控制器和交换机使用南向接口(例如OpenFlow)进行通信。

SDN 包含多种类型的技术,包括功能分离、网络虚拟化和开放接口等。

功能分离:主要是指数据转发和控制分离,将基础硬件与业务实现分离, 其硬件仅负责数据转发和存储 , 因此可以采用相对廉价的通用设备构建网络基础设施。且将控制与转发分离后,更利于网络的集中控制,使得控制层获得网络资源的全局信息,并根据业务需求进行资源的全局调配和优化,例如流量工程、负载均衡等。同时,集中控制还使得,整个网络可在逻辑上,被视作是一台设备进行运行和维护,无需对物理设备进行现场配置,从而提升了网络控制的便捷性

网络虚拟化:通过南向接口的统一和开放, 屏蔽了底层物理转发设备的差异,实现了底层网络对上层应用的透明化。逻辑网络和物理网络分离后,逻辑网络可以根据业务需要进行配置、迁移,不再受具体设备物理位置的限制。

开放接口:通过开放的南向和北向接口,能够实现应用和网络的无缝集成,使得应用能告知网络如何运行,才能更好的满足应用的需求,比如网络的带宽、时延需求,计费对路由的影响等。另外,支持用户基于开放接口,自行开发网络业务并调用资源,加快新业务的上线周期。

4、SDN的价值

简化策略规则
使用 SDN,管理员可以在必要时更改任何网络交换机的规则——优先、取消优先级甚至阻止具有细粒度控制和安全级别的特定类型的数据包。

网络管理和可见性
SDN 的其他好处是网络管理和端到端可见性,网络管理员只需处理一个集中控制器即可将策略分发到连接的交换机,这与配置多个单独的设备相反。

此功能也是一个安全优势,因为控制器可以监控流量并部署安全策略,例如,如果控制器认为流量可疑,它可以重新路由或丢弃数据包。

减少硬件占用空间和运营成本
SDN 还虚拟化了以前由专用硬件执行的硬件和服务,这样可以最大程度减少硬件占用空间,从而降低运营成本。

网络创新
SDN 还促成了软件定义广域网 ( SD-WAN ) 技术的出现,SD-WAN 采用了 SDN 技术的虚拟覆盖方面,SD-WAN 抽象了组织在其 WAN 中的连接链接,创建了一个虚拟网络,该网络可以使用控制器认为适合发送流量的任何连接。

5、小结:

SDN是一种新兴的、控制与转发分离、并直接可编程的网络架构。本质上是希望用用软件可以参与对网络的控制管理,满足上层业务需求,通过自动化业务部署简化网络运维。
SDN目前已经在很多领域被广泛地应用,很多硬件大厂也相应推出了SDN管理平台.锐捷2011年便开始投入资源进行SDN技术储备和产品研究,作为“中国SDN和开放网络专业委员会”12家初始会员之一,截至目前,已经形成覆盖园区、数据中心和广域网络,基于场景,面向业务的特色SDN解决方案。
SDN代表的开放网络架构,也将是未来网络的必然趋势!


文图: 来自锐捷网络的技术专栏
原文链接: https://www.ruijie.com.cn/jszl/88592/
排版: 胖虎
审核: 二月二

更多视频课程请访问 “CSDN 正月十六工作室讲师学院首页

SDN为何一直热度不减?一文解析SDN的前世今生相关推荐

  1. 热度不减的计算机专业,真是就业“万金油”?毕业生晒出真实工资

    "男怕入错行,女怕嫁错郎",在男生女生都需要重视事业的时代,对于任何需要求职的毕业生,专业方向都是一个对自己和家庭影响颇多的问题. 现在的行业可以说非常多,不过有时候或许选择越多, ...

  2. 2021年中国网约车行业发展回顾及行业发展趋势分析:行业赛道热度不减,市场规模不断扩大[图]

    一.网约车发展历程 网约车,即网络预约出租汽车经营服务的简称,是指以互联网技术为依托构建服务平台,接入符合条件的车辆和驾驶员,通过整合供需信息,提供非巡游的预约出租汽车服务的经营活动.中国网约车经历了 ...

  3. 短视频APP白热化,泛娱乐社交热度不减

    2019独角兽企业重金招聘Python工程师标准>>> 历史总是惊人的相似,在南抖音北快手两大热门短视频社交APP产品激烈竞争中,近日内涵段子责令被永久封停.在整个短视频市场中,老牌 ...

  4. 2022年2月编程语言排行 Python领队C语言热度不减

    2022年2月编程语言排行 Python领队C语言热度不减,前3名编程语言,即Python.C和Java的都上涨了1%.在2022年1个月 ,Python也摘得年度编程语言宝座 ,2月是Python第 ...

  5. 【研究方向是SDN该怎么做?】软件定义网络(SDN)的安全挑战和机遇

    软件定义网络(SDN)的安全挑战和机遇 目录 软件定义网络(SDN)的安全挑战和机遇 写在前面的话 SDN是什么? 有必要研究SDN的安全问题吗? SDN的优点与缺点 SDN中的集中化 对于攻击者和防 ...

  6. sscanf 连续相同编辑符_【第1995期】钉钉文档编辑器的前世今生

    前言 编辑器,一个重前端的领域方向.今日早读文章由钉钉@展新授权分享. @展新,来自钉钉文档团队.2011 年加入支付宝,一路成长于支付宝的前端团队,孵化了语雀,2018 年到钉钉,开启钉钉文档的旅程 ...

  7. 开课吧:一文解析Nexus是什么

    Nexus是Sonatype公司发布的一款仓库(Repository)管理软件,常用来搭建Maven私服,所以也有人将Nexus称为"Maven仓库管理器". 一文解析Nexus是 ...

  8. 阿里云、腾讯云、百度云究竟谁比较厉害?一文解析云计算的未来趋势

    阿里云.腾讯云.百度云究竟谁比较厉害?一文解析云计算的未来趋势 近年来,"云"非常热,此云既非萧红笔下的"火烧云",也不是徐志摩康桥别过的那片云,而是网络虚拟世 ...

  9. 第五人格服务器维护中8月6日,第五人格5月8日更新维护 最新关键改动一文解析...

    第五人格5月8日更新维护 最新关键改动一文解析以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 第五人格5月8日进行了更新 ...

  10. 带你一文解析RCU锁机制原理

    原理 Read Copy Update 读(Read):读者不需要获得任何锁就可访问RCU保护的临界区: 拷贝(Copy):写者在访问临界区时,写者"自己"将先拷贝一个临界区副本, ...

最新文章

  1. hdu1042 java_hdu 1431 素数回文
  2. SQL语言之多表查询(oracle)
  3. spring service ,controller反向代理生成AOP代理类流程
  4. javase阶段总结脑图
  5. 北斗云计算机怎么样,北斗定位2.0版服务平台来了
  6. 零基础学python裴帅帅_人工智能时代,爬虫如此简单。
  7. .net core上 K8S(七).netcore程序的服务发现
  8. 51nod-猴猴的比赛【莫队,线段树】
  9. 在MFC,Win32程序中向控制台(Console)窗口输出调试信息
  10. php curl密码控件,检索通过curl传递的用户名,密码参数 - php
  11. android打包成apk会屏蔽注解,Android解决混淆打包之后注解被去掉的问题-Go语言中文社区...
  12. 【转】HttpModule和HttpHandler(续)
  13. zabbix 监控项-计算公式监控磁盘使用率
  14. LNMP的安装(命令)
  15. 运维面试官喜欢问的问题
  16. 网络安全——常见的几种WEB攻击:
  17. TCP长连接与短连接、心跳机制
  18. NOI / 2.5基本算法之搜索-6044:鸣人和佐助详解
  19. 广点通sdk接入(作为广告主身份)
  20. python读取.tsv文件例子(大文件处理)

热门文章

  1. 【新手必看】C语言开发环境,请查收!
  2. DNS 服务器配置02
  3. YOLO1、YOLO2、YOLO3对比
  4. Java静态代理、动态代理
  5. nmap超快高效扫描端口
  6. 云服务器我的数据保存在哪个文件夹,云服务器存储在哪里
  7. 泛微e9隐藏明细表_泛微Ecology权限整理大全,相当全要点
  8. 华为设备静态路由配置命令
  9. 浙大PAT考试经验/考前必看/日常刷题总结(经验只写了一点点
  10. mysql监控工具:zabbix+MPM(Performance Monitor for MySQL)