5 OpenDayLight
5.1 ODL项目背景
ODL项目成立于2013年4月,是由Linux基金会管理管理的开源SDN项目。项目的目的是提供一个开放的,全功能的,厂商中立的SDN解决方案。目前ODL有超过40个公司作为成员,例如Cisco,IBM,Huawei等。乐观人士认为:ODL对networking的意义就像Linux对computing的意义一样。
ODL controller是一个纯软件的实现,基于Java+OSGI,运行在自己的JVM中,理论上,任何支持Java的设备都能运行ODL。采用OSGI作为框架,基于这点可以看出ODL内部是一个个相对独立的模块。ODL项目最开始的定位是SDN controller,在它的第三个版本(Lithium版本),ODL将自己的定位变成了SDN Platform。也就是说ODL的定位开始转变成以SDN为核心构建生态系统。
5.2 ODL架构
5.2.1 ODL架构分层
ODL的架构大致如下,可以分为三层。
- Application Layer:逻辑业务层,不关心底部网络设备,网络协议的实现。通过RESTful接口和OSGI接入到Control Layer。
- Coordination,Control Layer:对应SDN控制器,实现网络功能,并将抽象网络模型转换成实际的网络底层数据,并下发到网络设备。Control Layer连接了Application Layer和Network Device Layer。使得Application Layer不必关心Network Device的变化性,而只需要关心业务逻辑,另一方面,同一个application通过Control Layer可以适配多种Network Device。
- Network Device Layer:网络设备层,各种各样的网络设备和网络协议,以及接入到ODL的plugin。
5.2.2 networking-odl架构
OpenStack Neutron通过networking-odl项目接入到OpenDayLight,目前networking-odl的架构如下图所示:
前面说过Neutron server可以部署多个,以达到HA和水平扩展的目的。ODL接入OpenStack Neutron也考虑了多个Neutron server的情况。Networking-odl包括了同步DB和通过RESTful API访问OpenDayLight。在OpenDayLight也加入了适配Neutron的module。OpenDayLight的详细架构如下图所示:
简单看一下ODL的架构组成部分:
5.2.3 ODL southbound protocol
ODL用来支持多种网络协议和网络设备的多个plugin的集合,通过OSGI框架与Service Abstraction Layer连接。为了支持OpenStack Neutron的接入,在ODL southbound protocol中加入了OVSDB的支持。ODL南向协议不仅支持OpenFlow,还支持很多其他协议,因此ODL可以认为是广义上的SDN。
5.2.4 Service Abstraction Layer
ODL中,SAL是最重要的组成部分。SAL接收从Controller Platform来的service request,通过自身的plugin manager找到最合适的plugin,也就是southbound protocol,进而通过这个plugin操作特定的网络设备。另一方面,SAL接收network devices的消息,通过plugin manager抽象消息,再转发给northbound模块。SAL是做northbound和southbound的实际转换工作。
5.2.5 Controller Platform
包含了Basic Network Service Function和Platform Service Function。前者是基本网络功能,后者是厂商平台对应的模块。为了适配OpenStack Neutron,在Platform Service Function中有一个OVSDB Neutron模块。
5.2.6 Northbound APIs
为Cloud Orchestrator和application提供接口。接口包括了RESTful和OSGI。
参考链接
理解OpenStack与SDN控制器的集成_筋斗云计算的博客-CSDN博客_openstack sdn
OpenStack与SDN控制器的集成 | SDNLAB | 专注网络创新技术
为OpenStack而生的SDN控制器——OVN_筋斗云计算的博客-CSDN博客_openstack sdn控制器
openstack架构详解图_大规模SDN云计算数据中心组网的架构设计_weixin_39804523的博客-CSDN博客
开源SDN控制器和商用SDN控制器一览_weixin_33714884的博客-CSDN博客
OVN – OVN OpenStack(二)_cuibin1991的博客-CSDN博客
OpenStack中SDN泛谈1 (Neutron&ODL&ONOS) - 知乎
OpenStack中SDN泛谈3 (OVN&Dragonflow) - 知乎
OpenStack中SDN泛谈4 (SDN发展与架构) - 简书
《重识云原生系列》专题索引:
- 第一章——不谋全局不足以谋一域
- 第二章计算第1节——计算虚拟化技术总述
- 第三章云存储第1节——分布式云存储总述
- 第四章云网络第一节——云网络技术发展简述
- 第四章云网络4.2节——相关基础知识准备
- 第四章云网络4.3节——重要网络协议
- 第四章云网络4.3.1节——路由技术简述
- 第四章云网络4.3.2节——VLAN技术
- 第四章云网络4.3.3节——RIP协议
- 第四章云网络4.3.4节——OSPF协议
- 第四章云网络4.3.5节——EIGRP协议
- 第四章云网络4.3.6节——IS-IS协议
- 第四章云网络4.3.7节——BGP协议
- 第四章云网络4.3.7.2节——BGP协议概述
- 第四章云网络4.3.7.3节——BGP协议实现原理
- 第四章云网络4.3.7.4节——高级特性
- 第四章云网络4.3.7.5节——实操
- 第四章云网络4.3.7.6节——MP-BGP协议
- 第四章云网络4.3.8节——策略路由
- 第四章云网络4.3.9节——Graceful Restart(平滑重启)技术
- 第四章云网络4.3.10节——VXLAN技术
- 第四章云网络4.3.10.2节——VXLAN Overlay网络方案设计
- 第四章云网络4.3.10.3节——VXLAN隧道机制
- 第四章云网络4.3.10.4节——VXLAN报文转发过程
- 第四章云网络4.3.10.5节——VXlan组网架构
- 第四章云网络4.3.10.6节——VXLAN应用部署方案
- 第四章云网络4.4节——Spine-Leaf网络架构
- 第四章云网络4.5节——大二层网络
- 第四章云网络4.6节——Underlay 和 Overlay概念
- 第四章云网络4.7.1节——网络虚拟化与卸载加速技术的演进简述
- 第四章云网络4.7.2节——virtio网络半虚拟化简介
- 第四章云网络4.7.3节——Vhost-net方案
- 第四章云网络4.7.4节vhost-user方案——virtio的DPDK卸载方案
- 第四章云网络4.7.5节vDPA方案——virtio的半硬件虚拟化实现
- 第四章云网络4.7.6节——virtio-blk存储虚拟化方案
- 第四章云网络4.7.8节——SR-IOV方案
- 第四章云网络4.7.9节——NFV
- 第四章云网络4.8.1节——SDN总述
- 第四章云网络4.8.2.1节——OpenFlow概述
- 第四章云网络4.8.2.2节——OpenFlow协议详解
- 第四章云网络4.8.2.3节——OpenFlow运行机制
- 第四章云网络4.8.3.1节——Open vSwitch简介
- 第四章云网络4.8.3.2节——Open vSwitch工作原理详解
- 第四章云网络4.8.4节——OpenStack与SDN的集成
- 第四章云网络4.8.5节——OpenDayLight
- 第四章云网络4.8.6节——Dragonflow
本文由mdnice多平台发布
标签:4.3,4.8,网络,重识云,ODL,OpenDayLight,OpenStack,SDN,第四章 From: https://www.cnblogs.com/kevin-jun-2022/p/16879277.html