SDN(软件定义网络)基本概念

定义

SDN(Software Defined Network)是“软件定义网络”的缩写,它是一种网络架构和技术,旨在将网络控制器与数据转发分离开来,以提高网络管理的灵活性和可编程性。传统的网络架构中,网络控制器和数据转发通常是耦合在一起的,而SDN通过将它们分离,可以使网络管理员更轻松地管理网络,通过集中控制平面来配置和管理网络中的各个设备。

**新的网络体系结构 **

具体来说就是,SDN技术采用了编程化、分块化思想。将原来的网络体系结构再进一步优化了,使其变的更加灵活。

个人认为SDN也许能和IPv6一样都能成为网络的未来。

发展

SDN是美国国家自然科学基金会资助启动全球网络创新实验环境(GENI)计划

ppntFb9.png

  1. 第一阶段(2006-2011):提出了SDN的主要架构、设计思想和实现技术,属于学术界的研究与试验初创阶段,引起了产业界的关注;

  2. 第二阶段-SDN的发展中期(2012至今):产业界开始普遍接受SDN的思想。SDN演变成以学院派、网络创新公司、传统网络巨头和运营商为代表的不同技术流派,同时,出现了更多的SDN控制器、网络操作系统、商用产品和应用案例

学术界

ppntMKe.png

应用场景

数据中心

ppntlbd.png

广域网

ppnt8UI.png

安全

ppntt8f.png

接入

ppntUxS.png

传统网络&SDN

传统网络的局限性

当前的网络体系架构指的是传统的网络架构,也称为“分布式网络架构”,它通常是基于路由器和交换机的分布式控制系统。在这种架构中,网络设备(如路由器和交换机)在本地进行数据包处理和转发决策,而网络管理员通过命令行界面或Web界面来配置和管理这些设备。

但是随着科技的发展,基于IP的简洁网络架构日益臃肿且越来越无法满足高校、灵活的业务承载需求,网络发展将面临这一系列问题。

  1. 管理运维复杂。 由于 IP 技术缺乏管理运维方面的设计,网络在部署 一个全局业务策略时,需要逐一配置每台设备。这种管理模式很难随着网络规模 的扩大和新业务的引入,实现对业务的高效管理和对故障的快速排除。
  2. 网络创新困难。 由于 IP 网络采用“垂直集成”的模式,控制平面和 数据平面深度耦合,且在分布式网络控制机制下,导致任何一个新技术的引入都 严重依赖现网设备,并且需要多个设备同步更新,使得新技术的部署周期较长(通 常需要 3~5 年),严重制约网络的演进发展。
  3. 设备日益臃肿。 由于 IP 分组技术采用“打补丁”式的演进策略,随着 设备支持的功能和业务越来越多(目前 IETF 发布的 RFC 标准超过 7000 个),其 实现的复杂度显著增加。

传统网络的痛点

1、需求相对明确与稳定(应用数量、每项应用的对象、类型、规模、服务质量),应用与业务变化较小或可预期
2、基于上述需求特征的规划与设计(拓扑、IP、路由、安全、QoS)
3、强调冗余设计,为可扩展性与业务弹性留下一定的空间

目前面临的挑战:
多元应用与业务层出不穷
相对稳定的规划与部署赶不上快速变化的应用与业务需求
分布式的架构、部署与管理
厂商和设备的多样性
业务弹性响应“捉襟见肘”“应接不暇”

问题关键所在为

  1. 传统网络的只可配置、不可编程
  2. 数据平面和控制平面的紧耦合

SDN

为从根本上摆脱上述网络困境,业界一直在探索技术方案来提升网络的灵 活性,其要义是打破网络的封闭架构,增强网络的灵活配置和可编程能力。经过 多年的技术发展,SDN(软件定义网络)技术应运而生。

解决问题的出路
  1. 新的网络架构、新的网络设计
  2. 能够弹性响应上层应用的网络可编程
  3. 网络设备数据平面和控制平面的解耦
三层网络结构

ppnNYw9.png

特征
  1. 网络开放可编程: SDN 建立了新的网络抽象模型,为用户提供了一套完整的通用 API,使用户可以在控制器上编程实现对网络的配置、 控制和管理, 从而加快网络业务部署的进程。
  2. 控制平面与数据平面的分离: 此处的分离是指控制平面与数据平面的解耦合。控制平面和数据平面之间不再相互依赖, 两者可以独立完成体系结构的演进, 双方只需要遵循统一的开放接口进行通信即可。 控制平面与数据平面的分离是 SDN 架构区别于传统网络体系结构的重要标志,是网络获得更多可编程能力的架构基础。
  3. 逻辑上的集/中控制: 主要是指对分布式网络状态的集中统一管理。 在 SDN 架构中,控制器会担负起收集和管理所有网络状态信息的重任。 逻辑集中控制为软件编程定义网络功能提供了架构基础,也为网络自动化管理提供了可能。

SDN标准化组织

  1. 开放网络基金会(ONF)
  2. 因特网工程任务组(IETF)
  3. 国际电信联盟电信标准化部门(ITU-T)
  4. 欧洲电信标准化协会(ETSI)。

ppnN2FI.png

SDN主流技术架构

ppnNHTs.png

ONF

ppnNOf0.png

数据平面&控制平面

数据平面和控制平面是构成网络架构中的两个重要部分,它们分别负责处理网络数据和控制网络行为。

数据平面指的是网络设备(例如交换机、路由器)中处理网络数据包的部分。数据平面通常由硬件实现,用于快速处理和转发网络数据包。当网络设备收到数据包时,它会根据预先配置的规则(例如访问控制列表、路由表等)对数据包进行分类和处理,并根据需要将数据包转发到相应的目的地。数据平面通常需要具备快速转发和处理数据包的能力,因此它通常由专用的网络硬件实现,如芯片、ASIC、FPGA等。

控制平面则是管理和配置网络设备的部分。它是一种软件程序,通常在网络设备中运行,并提供网络管理和配置的功能。控制平面可以配置数据平面的规则和策略,以确保网络设备能够正确处理和转发数据包。它还可以监视网络设备的状态,并在需要时执行故障排除和维护操作。控制平面通常需要处理和管理网络中的各种信息,如路由协议、拓扑结构、网络拥塞等,因此它通常由通用计算机或虚拟化的网络功能实现。

,并提供网络管理和配置的功能。控制平面可以配置数据平面的规则和策略,以确保网络设备能够正确处理和转发数据包。它还可以监视网络设备的状态,并在需要时执行故障排除和维护操作。控制平面通常需要处理和管理网络中的各种信息,如路由协议、拓扑结构、网络拥塞等,因此它通常由通用计算机或虚拟化的网络功能实现。

数据平面和控制平面的分离可以提供更灵活和可扩展的网络架构。通过将数据平面和控制平面分离,网络管理员可以更轻松地配置和管理网络设备,并对网络进行更细粒度的控制和优化。例如,网络管理员可以通过控制平面对数据平面的规则进行修改,以改进网络性能或增强安全性。此外,分离数据平面和控制平面还可以实现网络功能的虚拟化,从而使网络管理更加灵活和高效。

更多推荐