Skip to main content
QUICK REVIEW

[论文解读] SMaRtLight: A Practical Fault-Tolerant SDN Controller

Fábio Andrade Botelho, Alysson Bessani|arXiv (Cornell University)|Jul 22, 2014
Software-Defined Networks and 5G参考文献 12被引用 14
一句话总结

SMaRtLight 提出了一种针对中小型网络的实用、容错的 SDN 控制器架构,采用作为拜占庭容错复制状态机(BFT-RSM)实现的复制共享数据库,消除了对外部协调服务的依赖。该设计确保了低延迟、高性能的主控制器无缝接管,其在学习交换机工作负载下达到 200 个流/秒的吞吐量,显著优于基于磁盘日志的替代方案,同时在故障情况下仍保持一致性和安全性。

ABSTRACT

The increase in the number of SDN-based deployments in production networks is triggering the need to consider fault-tolerant designs of controller architectures. Commercial SDN controller solutions incorporate fault tolerance, but there has been little discussion in the SDN literature on the design of such systems and the tradeoffs involved. To fill this gap, we present a by-construction design of a fault-tolerant controller, and materialize it by proposing and formalizing a practical architecture for small to medium-sized scale networks. A central component of our particular design is a replicated shared database that stores all network state. Contrary to the more common primary-backup approaches, the proposed design guarantees a smooth transition in case of failures and avoids the need of an additional coordination service. Our preliminary results show that the performance of our solution fulfills the demands of the target networks. We hope this paper to be a first step in what we consider a necessary discussion on how to build robust SDNs.

研究动机与目标

  • 为解决文献中对中小型网络容错 SDN 控制器设计缺乏详细讨论的问题。
  • 提出一种通过构造实现的实用架构,确保 SDN 控制器的高可用性和平滑故障切换。
  • 通过将协调逻辑嵌入容错数据存储中,消除对外部协调服务(如 ZooKeeper)的依赖。
  • 证明通过复制和缓存,即使在控制器或数据存储副本发生故障时,集中式控制器仍可实现鲁棒性和高性能。
  • 为开源 SDN 控制器(如 OpenDaylight)提供可有效集成容错机制的设计蓝图。

提出的方法

  • 控制器使用作为拜占庭容错复制状态机(BFT-RSM)实现的复制共享数据库,确保副本之间的一致性和容错性。
  • 所有网络和应用状态均存储在共享数据存储中,使所有控制器(主控制器或备用控制器)能够保持对网络的完全一致视图。
  • 在每个控制器中集成缓存,通过避免重复访问共享数据存储来减少读取延迟。
  • 系统利用 BFT-SmaRt 的一致性语义原生处理主控制器选举和租约获取,无需外部协调服务。
  • 通过利用数据存储内置的协调机制,支持快速、有界时间的主控制器替换——实验中在 1 秒内完成。
  • 通过修改后的 CBench 工作负载评估性能,测量正常运行期间以及控制器或数据存储故障场景下的吞吐量。

实验结果

研究问题

  • RQ1如何为中小型网络设计一种实用的、容错的 SDN 控制器,且不依赖外部协调服务?
  • RQ2基于 BFT-RSM 的共享数据存储在状态管理中,其控制器的性能和故障切换特性如何?
  • RQ3通过复制和缓存,集中式控制器设计能否在保持一致性的前提下实现高可用性和快速故障切换?
  • RQ4在真实 SDN 工作负载中,基于 BFT-RSM 的数据存储性能与基于磁盘日志的状态持久化相比如何?
  • RQ5在 SDN 控制器容错设计中,将协调逻辑嵌入数据存储与使用 ZooKeeper 等外部服务相比,存在哪些权衡?

主要发现

  • SMaRtLight 架构在学习交换机工作负载下实现 200 个流/秒的吞吐量,是基于磁盘日志状态持久化方案的 250 倍。
  • 主控制器故障切换在 1 秒内完成,系统吞吐量在约 4 秒内完全恢复,主要受交换机重新配置和 JVM 热身影响。
  • 数据存储副本的故障对系统性能无任何可观测影响,证明了复制模型的弹性。
  • 控制器端缓存的使用显著降低了读取延迟,通过最小化对共享数据存储的访问,提升了整体系统响应能力。
  • 系统在所有故障条件下(包括网络分区和控制器崩溃)均保持强一致性和安全性。
  • 由于采用了优化的吞吐量技术,基于 BFT-RSM 的数据存储性能优于 Onix 中使用的持久化数据存储,尤其在高负载下表现更优。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。