0
点赞
收藏
分享

微信扫一扫

Topaz Gigapixel AI for Mac 图像放大软件

贵州谢高低 04-01 19:30 阅读 2

SDN控制平面

SDN架构

数据平面交换机

  • 快速、简单,商业化交换设备采用硬件实现通用转发功能
  • 流表被控制器计算和安装
  • 基于南向API,SDN控制器访问基于流的交换机
    • 定义了哪些可以被控制哪些不能
  • 也定义了和控制器的协议

在这里插入图片描述

SDN控制器(网络OS)

  • 维护网络状态信息
  • 通过上面的北向API和网络控制应用交互
  • 通过下面的南向API和网络交换机交互
  • 逻辑上集中,但是在实现上通常由于性能、可拓展性、容错性以及鲁棒性采用分布式方法实现

在这里插入图片描述

控制应用

网络控制应用:

  • 控制的大脑:采用下层提供的服务(SDN控制器提供的API)实现网络功能
    • 路由器、交换机
    • 接入控制防火墙
    • 负载均衡
    • 其他功能
  • 非绑定:可以被第三方提供,与控制器厂商以通常上不同,与分组交换机厂商也可以不同

在这里插入图片描述

SDN控制器里的原件

在这里插入图片描述

通信层:SDN控制器和SDN交换机之间进行通信

网络范围的状态管理层:网络链路、交互设备和服务的状态:分布式数据库

网络控制应用的界面层:抽象API

OpenFlow协议

  • 控制器和SDN交换机交互的协议
  • 采用TCP来交换报文
    • 加密可选
  • 3种OpenFlow报文类型
    • 控制器 > 交换机
    • 异步(交换机 > 控制器)
    • 对称

在这里插入图片描述

控制器 - 交换机报文

一些关键的控制器到交换机的报文

  • 特性:交换机查询交换机特性,交换机应答
  • 配置:交换机查询/设置交换机的配置参数
  • 修改状态:增加删除修改OpenFlow表中的流表
  • packet-out:控制器可以将分组通过特定的端口发出
  • 分组进入:将分组(和它的控制)传给控制器,见来自控制器的packet-out报文
  • 流移除:在交换机上删除流表项
  • 端口状态:通告控制器报文端口的变化

幸运的是,网络管理员不需要直接通过创建/发送流表来编程交换机,而是采用在控制器上的app自动运算和配置

控制 - 数据平面交互的例子

在这里插入图片描述

  • S1, 经历了链路失效,采用OpenFlow报文通告控制器:端口状态报文
  • SDN 控制器接收OpenFlow报文,更新链路状态信息
  • Dijkstra路由算法应用被调用(前面注册过这个状态变化消息)
  • Dijkstra路由算法访问控制器中的网络拓扑信息,链路状态信息计算新路由
  • 链路状态路由app和SDN控制器中流表计算元件交互,计算出新的所需流表
  • 控制器采用OpenFlow在交换机上安装新的需要更新的流表

OpenDaylight()ODL控制器

在这里插入图片描述

  • ODL Lithium 控制器
  • 网络应用可以在SDN 控制内或者外面
  • 服务抽象层SAL:和内部以及外部的应用以及服务进行交互
  • 控制应用和控制器分离(应用app在控制器外部)
  • 意图框架:服务的高级规范:描述什么而不是如何
  • 相当多的重点聚焦在分布式核心上,以提高服务的可靠性,性能的可扩展性

SDN面临的挑战

  • 强化控制平面:可信、可靠、性能可扩展性、安全的分布式系统
    • 对于失效的鲁棒性: 利用为控制平面可靠分布式系统的强大理论
    • 可信任,安全:从开始就进行铸造
  • 网络、协议要满足特殊任务的需求,例如实时性,超高可靠性、超高安全性
  • 要满足互联网络范围内的扩展性而不是仅仅在一个AS的内部部署,全网部署
举报

相关推荐

0 条评论