OpenDaylight Lithium架构——OpenStack实例 如图所示,OpenDaylight由许多不同组件组成,可根据需要,满足给定的场景需求进行安装组件,为编写自己的服务体系结构或者利用20多个可用的基于ODL...通过安装一些列的功能后: 123456 opendaylight-user@root>feature:install odl-restconfopendaylight-user@root>feature...:install odl-l2switch-switchopendaylight-user@root>feature:install odl-openflowplugin-allopendaylight-user...@root>feature:install odl-dlux-allopendaylight-user@root>feature:install odl-mdsal-allopendaylight-user...@root>feature:install odl-adsal-northbound ?
5 OpenDayLight 5.1 ODL项目背景 ODL项目成立于2013年4月,是由Linux基金会管理管理的开源SDN项目。...也就是说ODL的定位开始转变成以SDN为核心构建生态系统。 5.2 ODL架构 5.2.1 ODL架构分层 ODL的架构大致如下,可以分为三层。...另一方面,SAL接收network devices的消息,通过plugin manager抽象消息,再转发给northbound模块。...SAL是做northbound和southbound的实际转换工作。...5.2.6 Northbound APIs 为Cloud Orchestrator和application提供接口。接口包括了RESTful和OSGI。
今天想跟大家分享如何通过ODL控制器下发流表来创建VxLAN网络。ODL作为当前流行的控制器,已经有广泛的应用。基于ODL提供了丰富的北向接口,使得应用对网络有了更好的掌控。...在VM3上运行ODL,通过karaf控制台执行如下命令进行安装: $> feature:install odl-l2switch-all odl-ovsdb-all odl-base-all odl-aaa-authn...odl-restconf-all odl-nsf-all odl-adsal-northbound odl-mdsal-apidocs odl-dlux-all $> feature:install...odl-ovsdb-southbound-api odl-ovsdb-southbound-impl odl-ovsdb-southbound-impl-rest odl-ovsdb-southbound-impl-ui...odl-openflowplugin-all-li odl-openflowplugin-adsal-compatibility-all 如图1所示的网络部署图,分别启动Mininet虚拟机,复制
OpenDaylight中的northbound组件也可以用来创建VxLAN网络,但northbound不是基于yang的且OVSDB封装的不好,beryllium版本已经将其删除。...2 实验环境和原理 实验环境 VMware workstation: 11.1,共需要3台虚拟机,其中两台为mininet(mininet-1, mininet-2),一台为ODL(ODL-VM),ODL...ODL-VM即可)。...3.2 OVS配置 将mininet-1和mininet-2上的 OVS配置为被动监听模式,此模式下,ODL和OVS的连接由ODL发起。...URL中的“odl”是ODL-VM的eth2的IP,本文将此IP配置到了hosts文件中。 ? 3.5Postman配置Vxlan网络 首先ODL连接到mininet-1上的OVS。
mechanism drivers (如OVS, adrivers from ODL, Cisco, NEC, etc) 负责一系列动作(更新、创建、删除)网络、子网、端口。 ...Northbound Interface Northbound Interface是SDN将底层网络抽象成软件概念,并暴露出来的接口。 ...像ODL还提供了OSGI接口,而OVN和Dragonflow直接提供DB读写的接口。 ...像ODL和Midonet采用的是RPC作为消息机制,OpenContrail则是参考MPLS V**自己制定的消息通讯机制,OVN和Dragonflow则是简单的消息发布订阅机制。...相比ODL、ONOS其架构也较为简单。
OVN的DB本身又细分为了Northbound DB和Southbound DB,两者之间是通过守护进程OVN-Northd来联系起来的。...Northbound DB收集业务数据,而Southbound DB收集底层网络的实时数据,这和ODL MD-SAL中DB的设计是类似的,尽管OVN中的Northbound DB和Southbound...具体点说,Northbound DB负责把Neutron中的数据结构(如network、subnet、port、securitygroup等等)转换为OVN的数据结构(如logical switches...2、如果把DragonFlow/OVN看做面向云的SDN控制器的话,其实它在功能上相比于ODL、ONOS这些开源SDN控制器并无特别优势。...因此,相比于ODL和ONOS这类SDN科班出身的产品,从技术演进角度个人并不看好DragonFlow和OVN。
This project provides the infrastructure (chaining logic, APIs) needed for ODL to provision a service...Northbound REST APIs....ODL的呢?...所有的脚本,我都commit到sfc/sfc-demo下面了 Q4:目前ODL实现用的OVS是私有版本吗?...最近也在玩这个,苦于找不到合适image ,ODL的SFC现在做到什么程度了,是处在迭代中还是已经可以demo了?
其中transact是OVSDB管理协议中比较重要的操作方法,它是RPC请求的参数中提供数据库的增、删、改、查等常用操作: 二、ODL中的OVSDB插件 ODL中包括三个OVSDB插件,OVSDB southbound...、northbound、openstack,他们的逻辑关系如下图所示: 2.1 OVSDB的不兼容性 These 2 ovsdb features cannot be installed at the...same time: odl-ovsdb-plugin and odl-ovsdb-southbound-impl that is so, because they will instantiate...When odl-ovsdb-openstack is used, it assumes no other application in odl is managing network-virt....In other words, it is assumed that if ovsdb is using odl-neutron-service, no other feature in odl is
、南向协议多样化:Multiprotocol Southbound 3、服务抽象层:Service Abstraction Layer 4、北向应用API“收缩自如”:Open Extensible Northbound...下图为ODL的“全家福”,列出了Carbon版本众多工程及相互之间的依赖关系(图片来自官网): ?...即可获得ODL统一设置,是opendaylight中所有项目的Maven配置基础。...【人际关系】爱戴ODL Parent(项目依赖于ODLParent) 三、MD-SAL 【家族角色】Kernal project,ODL家族的“外交部长”,制定家族外事的标准规范。...五、AAA 【家族角色】Kernal project,ODL家族护卫,负责家族的安保系统。
同时我很自豪的宣布,当人们考虑自己金钱和时间为何种网络技术作为投资对象的时候,过半数的选择了ODL。我想这表明了ODL的一些特质。 ? ODL无疑拥有大量的开发者,那么用户呢?...今天早上,我的中国朋友告诉我,ODL的中国QQ群人数已经有1600人在活跃的谈论ODL,关注和探讨ODL的变化。在此之前,我以为全世界大概只有2000多人在经常性地讨论ODL。...比如有人基于ODL开发自己的服务,建立自己的发行版, 也有人将ODL嵌入到自己的项目中,作为更大的解决方案的一部分 。...有人提供培训,有人通过ODL打包销售自己的硬件产品,这都是在ODL这一共同平台上实现自己的价值的例子。...我们相信没有一种技术或者协议能够解决所有的问题,比如ODL支持很多种南向协议,ODL一直致力于提供网络的抽象层服务,MD-SAL ,Yang模型等,这些都深刻的反映在ODL的整体架构上。
在今后的一段时间里,我将会带着我的故事和大家一起学习ODL,帮助大家更好的理解和掌握ODL。...上篇我们讲一讲怎么阅读ODL文档及分析ODL源码的套路。 一、知己知彼-ODL文档的正确阅读姿势 了解学习一个开源项目就是从阅读这个开源项目的文档开始的。...另外ODL社区的官方wiki上有大量的各个项目,各个模块的各种各样的文档,其中的文档涵盖ODL方方面面。...比如ODL早期版本里的adsal和config subsystem相关的文档,看这些文档时,我们要时时刻刻问自己,这些功能为什么在最新版本里最终完全废弃了,其设计到底有什么问题和不足,而不能仅仅从当时的介绍文档字面上去理解...二、抽丝剥茧-分析ODL源码的若干建议 要想深入研究学习ODL,阅读分析一些ODL的项目源码是不可避免的,特别是我们在使用或者基于ODL开发碰到bug的情况下,为了定位问题,跟踪分析源码就是我们开发人员不得不做的事情了
ODL和OpenStack完整的安装步骤如下: 1、在虚拟机或者物理机上构建和安装合适的ODL版本(取决于你的选择)。...ODL包含北向REST服务(Neutron API服务),能够调用这些代理API缓存数据并可用于ODL的其他服务。...ODL机制驱动由“mechanism_odl.py”文件和网络ODL驱动组成。...基于ODL的API手册,机制驱动被分成了两个部分(核心API和扩展API),ODL机制驱动和ODL驱动类实现了核心API,ODL的3层路由插件类只实现了扩展API。...图3:OpenDaylight Neutron API实现架构 Northbound API Bundle OpenDaylight的北向API处理来自OpenStack插件的REST请求并作出合适的应答
odl-l2switch-switch opendaylight-user@root>feature:install odl-openflowplugin-all opendaylight-user@...root>feature:install odl-dlux-all opendaylight-user@root>feature:install odl-mdsal-all 值得一提的是:此版本完全清除了...AD-SAL的冗余代码,没有odl-adsal-*的功能。...但是之前的版本中的Node Connector、Container、Network、Flows都是由AD-SAL提供,铍版本官网中说明安装odl-l2switch-switch、odl-dlux-node...和odl-dlux-yangui将在dlux web界面中显示这些功能,但是在实验验证时,仍然没有显示,如下图所示: ?
3.Hashmap中键值value是SessionContext,这个上下文包含了一个ModelDrivenSwitchImpl,实则是ODL对交换机的抽象。...也就是说ODL用类ModelDrivenSwitchImpl来表示一个交换机。...以上全部内容基本上(加上前一篇)就是ODL代码从上到下,从下到上,openflow消息处理流程。有些内容分析不到位,请各位网友多多批评指出,欢迎大家及时讨论。
This project provides the infrastructure (chaining logic, APIs) needed for ODL to provision a service...Northbound REST APIs....ODL的呢?...或者说怎么向ODL import这些middlebox呢? 就是fw, dpi, firewall这些function....最近也在玩这个,苦于找不到合适image ,ODL的SFC现在做到什么程度了,是处在迭代中还是已经可以demo了?
3.ODL实现 3.1.Yang基础 Yang是一种专门针对NETCONF而设计的建模语言,使用树形结构描述数据,具有良好的可读性,具有数据描述和接口描述两种功能。其基本信息如下所示: ?
三 ODL开源社区 ODL是由Linux基金会推出的一个开源项目,集聚了行业中领先的供应商和Linux基金会的一些成员。...五 ODL社区运营模式 ODL社区的运行模式自主、开放,奉行协作原则,只要你有能力就能参与其中。这是一个开源组织,并不是只有会员才能使用里面的代码,每个人都可以使用ODL的代码,为它做出贡献。...ODL的项目并不是一成不变的,而是不断地提出新项目,待项目成熟后即可加入ODL核心项目。...4、开放的可扩展北向API(Open Extensible Northbound API):提供可扩展的应用API,通过REST或者函数调用方式。两者提供的功能要一致。...八 ODL控制器架构 如图1.2所示,ODL控制器主要包括开放的北向API,控制器平面,以及南向接口和协议插件。
因此我们在使用Docker构建ODL集群时,需要在镜像中添加ODL控制器,就好比我们在本机运行ODL控制器时,需要下载ODL控制器发行版的压缩包或者是用maven生成ODL的基本项目框架。...所以运行在不同容器中的ODL控制器会有不同的IP地址,不同的进程空间等,使用起来就像在不同虚拟机下运行ODL控制器一样。 ?...ODL版本可能并不包含最新的,而且这些镜像所用的ODL多是已经打包好的发行版,我们在构建ODL集群时也可能会使用自己根据特定需求开发后用maven编译打包的ODL控制器,所以这里给出构建ODL镜像的方法...四、启动容器构建ODL集群 ? 在这里我们运行3个容器构建ODL集群,也可以根据自己的需要创建更多的容器构建规规模更大的集群,打开一个终端,在终端中输入如下命令: ?...本文分享了一种用Docker容器来构建ODL集群的方法,在计算机数量不足以及计算机性能不高的情况下,是在单机上模拟ODL集群的一种不错的方法。
postman是Chrome浏览器的一个插件,常常会被用来调用服务器端的restful接口进行数据请求 下面记录一下如何用Chrome的插件postman来操作ODL查看和下发流表 准备工作 1)Chrome...浏览器安装postman插件,如何安装,网上一搜一把 2)OpenDaylight启动完毕,并安装好需要的插件 3)OVS(IP:10.10.33.28)设置controller信息,端口号6653,连接ODL...正常,ODL的Web管理界面能够看到这台OVS 4)在ODL或是OVS上获取OVS的DPID,例如openflow:128983913991 5)postman支持多种格式,例如JSON/XML/HTML...流表再send一遍,可能会添加失败,但是返回值还是OK的 2)此时可以稍微修改一下流表内容,例如修改一下priority的值,就可以添加成功了 关于流表的格式 有时可能不知道要怎么写消息的主体 可以先通过ODL
领取专属 10元无门槛券
手把手带您无忧上云