在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → 分布式SDN控制器实现报告

分布式SDN控制器实现报告

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:3.35M
  • 下载次数:11
  • 浏览次数:127
  • 发布时间:2020-07-30
  • 实例类别:一般编程问题
  • 发 布 人:robot666
  • 文件格式:.pdf
  • 所需积分:2
 

实例介绍

【实例简介】
分布式SDN控制器实现报告,其中包含设计思想及具体实现
6.附录 37 2/40 应用名称 分布式SDN控制器集群 、应用的简介和摘要 在SDN网终架构中,控制器一直是业界研究的热点,在各大厂商和组织的参与 下,开源控制器人量涌现,如 Floodlight、 Openday.、Ryu等。但是,单点的 控制器往往难以支撑目前复杂的网络布局和用户对网络稳定性的要求。所以,在SD 由学术研究到实践的过程中,如何让单点的控制器提供稳定的服务已然成为一个重 要的研究方向。 单一的SDN控制节点中,控制器只能管理自身控制交换机的数据平面和控制平 面。从性能上分析,单一的节点必然会有性能瓶颈,导致在大规模网络状况下的效 率低下;从可靠性上分析,单点控制器故障则会导致大规模网络瘫痪。所以采用分 布式控制器集群,则是提高SDN架构性能和可靠性的可行方案 本应用提供了一套基于分布式系统的S叭N控制器集群解决方案,在保证单点控 制器稳定工作的同时,实现了多自治域的控制器集群。应用中控制器通过发送 TCP/IP心跳包的机制来完成控制器之间的相互发现。通过对MLDP协议中TV标记 的修改来完成全局链路发现,并在此基础上完成了链路层的故障检测恢复与具有集 群功能的MAC自学习模块。与此同时,借助发布/订阅模型和分布式数据库实现了全 局流表下发和控制器角色主从切换请求下发以及全局信査询,并在此基础上实现 了平衡控制器负载的负载均衡功能,从而达到了分布式控制器集群的要求 3/40 、应用场景介绍 SDN网络架构常常应用于数据中心等大型网络管理中心,其数据平面和控制平面 的分离带来了全局集中控制和高速转发的优势。然而随着网络规模的高速增长,网 络从过去分布在二三层到由控制节点集中控制的转变过程中,单个控制节点面临着 大量的挑战,如单点故障问题和性能瓶颈问题。当控制节点承载的网络转发仼务过 重的时侯,单台控制节点面临着转发效率低下的问题,同时面对控制器自身故障和 链路层故障的时候,单台控制节点没有能力完成网络修复。所以分布式的控制器集 群将是SDN技术向产业发展的重要方向。 日前的集群主要分为单自治域多控制器和多自治域多控制器两种集群,本应用对 两种集群均有良好的支持,两种集群应用场景分別如下图所示: 场景一:单自治域多控制器集群: 场景介绍:在单自治域中,所有的控制器均连接上相同的交换机,此时有一个主 控制器,多个从控制器,主控制器负责处理流表下发等控制任务,从控制器只共享 主控制器的数据,并不会对交换机进行控制。 4/40 场景二:多自治域多控制器集群 场景介绍:多自治域多控制器集群中,不同的控制器会连接上不同的交换机,形 成多个自治域。此时每个自治域中会有一个主控制器和多个从控制器,每个自治域 的主控制器会控制各自自治域下的交换机,自治域之间会共享与转发全局数据。 5;40 三、方案特色和创新 1、分布式控制器集群之间的信息通信和数据同步 本应用集成了分布式内存网格数据库 Hazelcast来保障分布式集群中的数据同 步和成员监听,采用了发布/订阅模型来完成控制器之问的信息通信。解决了多控制 器之间消息发送和数据同步的问题,为分布式控制器集群提供了实现的基础。 2、控制器之间的主从切换机制 通过对控制器集群中成员加入和离开的监听,利川依据控制器负载状态的选举 算法来完成控制器之间的主从切换 3、全局消息转发和共享 对于单点控制器,只能给自己所连接的交换机下发流表或者发送角色请求。对 于集群,木应用通过使用发布/订阅模型来转发消息请求至合适的控制器成员,同时 通过全局数据的同步来共享所有数据。应用中提供了全局的北向REST接口,方便了 管理人员对集群的状态进行管理和查询 4、多自治域全局拓扑发现 单点控制器中,控制器通过LLDP协议发出TL标记来获得自已所在自治域中的 网终节点,但是无法发现邻近自治域中的网终节点,无法满足集群中的网终拓扑发 现需求。本应用创造性地改变了控制器发出TⅤ标记的算法,有效解决了全局网络 拓扑发现的问题 5、单自治域多控制器之间的负载均衡 对于单自治域多控制器集群,提供了多控制器之问的负载均衡算法,有效地降低 了主控制器的负载压力 6/40 四、应用具体设计论述 1、背景介绍 数据平面和控制平面的分离让SDN平台具有了集中控制和高效转发的能力,但是 在单点SDN架构中往往会存在很多问题,比如当控制器单点故障的时候会导致整个 网络陷入瘫痪、网络规模超过单点控制器的计算能力吋的效率低下等等,单点场景 如下图所示: Controller 所以针对单点控制器所面临的问题,本应用结合SDN和现有的集群技术,实现了分 布式SDN控制器集群,很好的解决了上述的问题,集群场景如下图所示 7/40 2、研究问题陈述: 木应用主要针对单自治域多控制器和多自治域多控制器两种集群架构进行设计, 研究问题如下所示: 单自治域多控制器 单白治域多控制器中,主要研究以下问题: ①当主控制器右机后,集群如何监听到宕机事件并进行主从切换 ②单一控制器的性能瓶颈问题,如何使用控制器集群进行负毂均衡 ③单自治域中如果主控制器连接到某个交换机的链路断开,如何让其他控制器 接管该交换机。 多自制域多控制器: 多自治域多控制器中,在上述问题的基础上,主要研究一下问题: ①在多自治域中由于控制器只能发现自己连接的交换机,难以构建岀全局的网 络拓扑。 ②在多自治域控制器集群中,当某个控制器节点接受到了自口无法处理的消息 时,无法将消息传递给相应的控制器来处理消息,并且多控制器之间难以共享全局 信息。 8/40 3、具体解决方案 控制器故障发现和主从切换 控制器故障发现 Controller TCP/IP TCP/IP Controller Controller TCP/IP 解决方案:如上图所示,我们使用了分布式数据库 Hazelcast提供的集群成员监 听功能,所有的 controller之间通过TCP/IP连接, controller之间通过定时发送 TCP/IP心跳包的机制来维持通信,一旦失去了某个控制器的心跳包即可检测到 controller掉线,视为集群成员故障。 9/40 【实例截图】
【核心代码】

标签:

实例下载地址

分布式SDN控制器实现报告

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警