SDN软件定义网络 学习笔记(1)--基本概念

  • 1. 定义
  • 2. 提出背景
  • 3. 体系结构

1. 定义

软件定义网络(Software Defined Network,SDN),顾名思义,SDN 与传统网络的最大区别就在于可以通过编写软件的方式来灵活定义网络设备的转发功能。

ONRC(开放网络研究中心)的定义:“SDN是一种逻辑集中控制的新网络架构,关键属性包括:数据平面与控制平面分离;控制平面与数据平面有统一的开放接口OpenFlow。”
       
ONF(开放网络基金会)认为:“SDN是一种支持动态、弹性管理的新型网络体系结构,是实现高带宽、动态网络的理想架构。SDN将网络的控制平面与数据平面相分离,抽象了数据平面的网络资源,并支持通过统一的接口对网络直接进行编程控制。”

综上,无论哪种定义,SDN拥有以下三个特征:

  • 网络开放可编程
  • 控制平面与数据平面分离
  • 逻辑上的集中控制

2. 提出背景

传统的网络设备硬件、操作系统和网络应用三部分紧紧耦合在一起,相互依赖,隶属于同一家网络设备厂商,每一部分的创新和演进都需要其余部分做出同样的升级。如果能像当今的计算机产业一样,有一个通用的硬件底层、利用软件定义功能,一定也能取得更快的发展。

传统的网络配置,例如配置端口IP地址、划分VLAN等,这种配置效率低下,当网络工程师要配置更多的设备时,耗时很久。所以,网络需要更多的可编程能力。

由此提出SDN,将控制平面与数据平面相分离,数据平面与计算机通用平面底层类似,只需要接受指令并执行,控制逻辑由控制器与SDN应用定义,从而实现网络功能的软件定义化。

如下图所示,能够看出SDN与传统的网络设备的主要区别。

3. 体系结构

一般来说,SDN体系结构主要分为五部分:SDN应用平面、北向接口、SDN控制平面、南向接口、SDN数据平面。北向接口连接控制层与应用层,南向接口连接数据层和控制层。如果控制层由多个控制器实例协同组成,各个控制器之间由东西向接口连接。
       其基本架构如下两图所示:

下面简单介绍各个部分的主要功能:

  1. 数据平面
           一个被管理的资源在逻辑上的抽象集合,它没有控制能力,只是单纯用来转发和处理数据,它在逻辑上代表全部或部分的物理资源,可以包括与转发相关的各类计算、存储、网络功能等虚拟化资源。
  2. 控制平面
           SDN 控制器是一个逻辑上集中的实体,它主要承担两个任务:一是将 SDN 应用层请求转换到数据平面,二是为 SDN 应用提供底层网络的抽象模型(可以是状态,也可以是事件)。
  3. 接口协议
    (1)南向接口协议完成控制平面与数据平面间的交互及部分管理配置功能。
    (2)北向接口协议实现控制器与业务应用层间的交互。
    (3)东西向接口协议负责控制器间的协同。

参考资料:
《软件定义网络核心原理与应用实践》
《重构网络:SDN架构与实现》

SDN软件定义网络 学习笔记(1)--基本概念相关推荐

  1. SDN软件定义网络 学习笔记(4)--数据平面

    SDN软件定义网络 学习笔记(4)--数据平面 1. 简介 2. SDN数据平面架构 2.1 传统网络交换设备架构 2.2 SDN交换设备架构 2.3 数据平面架构图 3. SDN芯片与交换机 3.1 ...

  2. SDN软件定义网络 学习笔记(3)--北向接口、东西向接口

    1. 北向接口 北向接口提供了 SDN 中开发者与控制器间的交互功能.从更为宽泛的角度考虑,北向接口在 SDN 控制器中的作用类似于命令行在传统NOS 中的作用,都是实现了网络管理者对网络的设计与管理 ...

  3. SDN(Software Defined Network) 软件定义网络学习

    SDN(Software Defined Network) 软件定义网络学习 SDN是啥? 简单来说就是软件定义网络!其旨在对现有的网络架构进行重构,使得我们能够像安装软件一样对网络进行修改,加快部署 ...

  4. 科普:SDN(软件定义网络)

    http://www.zdnet.com.cn/wiki-SDN SDN(软件定义网络) 软件定义网络(Software Defined Network, SDN ),是由美国斯坦福大学clean s ...

  5. 网络流算法学习笔记——最大流问题基本概念和Ford-Fulkerson方法(标号法C++实现)

    屈婉玲<算法设计与分析>第2版第7章网络流算法学习笔记. 基本概念 最大流问题,相当于有从s到t的供水系统,每段路径都有限定流量,除了s.t两地外,每个中间点都不能滞留,从s流入多少,就从 ...

  6. 关于SDN软件定义网络和NFV网络功能虚拟化

    1.SDN软件定义网络 在传统的网络中,各个转发节点(路由器.交换机)都是独立工作的,内部管理命令和接口也是厂商私有的,不对外开放.而SDN(Software Defined Networking)网 ...

  7. SDN软件定义网络之SDN交换机物理设备

    文章目录 SDN软件定义网络之SDN交换机 交换芯片 芯片详解 主流芯片 交换机产品 物理交换机 虚拟交换机 设备选型主要考虑的参数 背板带宽 端口密度 端口速率 支持模块类型 带宽类型 其他 时延 ...

  8. 利用计算机技术实现对文本篇章,自然语言处理NLP学习笔记一:概念与模型初探...

    前言 先来看一些demo,来一些直观的了解. 自然语言处理: 可以做中文分词,词性分析,文本摘要等,为后面的知识图谱做准备. 知识图谱: 还有2个实际应用的例子,加深对NLP的理解 九歌机器人: 微软 ...

  9. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)--基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

最新文章

  1. 机器学习和洗衣机的关系?
  2. 《Microsoft Sql server 2008 Internal》读书笔记--第八章The Query Optimizer(1)
  3. A wizard’s guide to Adversarial Autoencoders: Part 1, Autoencoder?
  4. 下载远程url文件(或者文件流)到本地
  5. PAT-乙级-1012. 数字分类 (20)
  6. Mac上恢复已删除或未保存的Word文档该怎么做
  7. 如何使用简单的接入点扩展您的Wi-Fi网络
  8. 高数_证明_弧微分公式
  9. 服务器ftp上传失败的原因有什么
  10. Ant design vue 表格合并 合并行 合并列
  11. android 闪屏动态界面,Android 实现闪屏
  12. ML 2021 Attention is Not All You Need: Pure Attention Loses Rank Doubly Exponentially with Depth
  13. 中国省市关系+各地经纬度【Python版】
  14. 反向代理和正向代理之间的区别
  15. AutoLeaders控制组——51单片机学习笔记(蜂鸣器、AT24C02芯片)
  16. Nature子刊:机器学习方法扩展了anti-CRISPR蛋白家族的所有成员
  17. 小米电脑重装系统后亮度无法调节的解决办法
  18. 微信推送平台-测试号定制推送
  19. centOS和宝塔linux面板详细使用
  20. Excel之UPPER、LOWER、IFERROR和SUBSTITUTE函数

热门文章

  1. 读取一个文件,将其Base64编码,每76个字符加一个换行
  2. java 生成静态页面——Freemarker实例教程
  3. asp:boundfield html,BoundField 类 (System.Web.UI.WebControls) | Microsoft Docs
  4. c语言如何使一行抹去,c语言,clrscr();怎么清除指定的内容,不是页面都清除掉。比如第一行是标题,我只想清除第二行...
  5. [Warning] implicit declaration of function ‘clrscr‘ [-Wimplicit-function-declaration]
  6. 蓝凌平台型OA应用标杆 招商局集团OA3.0正式上线
  7. HTC Incredible S|G11|vivo|S710e怎么在HBOOT下面卡刷官方ROM
  8. python读取hdf-eos5数据_python读取与写入csv EXCEK HDF 文件
  9. 《实战AI低代码》:普元智能化低代码开发平台发布,结合专有模型大幅提升软件生产力
  10. oracle cude报错,解析OracleOLAP使用MView刷新Cube