其架构为: OVS提供的命令: ovs-dpctl 管理OVS内核模块,提供缓存流表的操作方法 ovs-vsctl 管理ovsdb-server的配置,提供OVSDB的配置方法,包括创建和删除网桥、...OpenFlow消息 ovsdb-tool 创建和管理ovsdb 一、OVSDB介绍 开放虚拟交换机数据库(OpenvSwitch Database,OVSDB)是开放虚拟交换机中保存的各种配置信息(如网桥...另外,ovsdb-client也可以部署在远端,从而实现对ovsdb-server的远程配置。...目前在Opendaylight控制器中也有一个单独的子项目实现此管理协议,即OVSDB(比如ovsdb-release-lithium-sr3)。...:http://www.sdnlab.com/15030.html OVSDB与ODL Lithium版本集成测试: https://wiki.opendaylight.org/view/OpenDaylight_OVSDB
OpenDaylight中的northbound组件也可以用来创建VxLAN网络,但northbound不是基于yang的且OVSDB封装的不好,beryllium版本已经将其删除。...OVSDB方式下,ODL作为OVS的manager,用来配置OVS,包括创建bridge和port等。在生产环境中,这两中协议一般配合使用。...默认情况下,Mininet-1和mininet-2上的h1的IP都是10.0.0.1,而h2的IP都是10.0.0.2。为了区别开,我们将mininet-2上的h1和h2重新配置IP。 ?...下发成功后,执行postman命令集中的”Get Operational Topology”,可以在operational中查询到创建的ovsdbNode,且可以查询到sudo mn命令创建的名为s1的...在mininet-1上用wireshark抓包,如下图所示,抓到的是VxLAN封装类型的包。 ? 3.7其他 实验中,我们直接用了mininet创建的bridge。
OpenDaylight和OpenStack的集成一直是热门话题,OpenDaylight官网也提供了相应的文档(https://wiki.opendaylight.org/view/OpenStack_and_OpenDaylight...OpenDaylight与OpenStack集成主要依赖OpenStack的ML2 plugin,本文的前半部分先给大家简单介绍一下集成中所涉及的组件以及它们之间的交互,后半部分为具体的集成过程和一些值得注意的点...图1.2.1是一个networking_odl组件在OpenStack Neutron中工作以及同步信息到OpenDaylight的情形。...图1.2.2 新版networking_odl工作模式 3.OpenDaylight Neutron和ovsdb-openstack OpenDaylight Neutron项目在集成中主要有两方面的作用...图1.3.1 OpenDaylight Neutron组件创建子网实例 ovsdb-openstack组件中注册了各种监听Data Store中不同资源变化的listener,根据变化的情况,进行对应的处理
4、配置OpenStack,为ODL和OpenStack的融合作准备: 确保核心插件在模块化的二层组件(ML2)上。 将ODL作为“机制驱动”部署在ML2上。...:8080/controller/nb/v2/neutron 5、在OpenStack上创建虚拟机,构建虚拟网络。...ODL用于Neutron API实现的插件包括: 1、OVSDB:OpenDaylight将其北向API与Neutron结合,使用OVSDB对计算节点的虚拟交换机进行配置。...3、检查租户是否已经存在,否则就创建一个租户。 4、创建网桥并执行VLAN映射。...图4:在OpenDaylight上创建网络的过程 图4简要地总结了网络创建的过程和上述OpenDaylight Neutron实现方案中bundle的调用。
配置管理器则通过OVSDB管理协议(Open vSwitch Database Management Protocol)来实现对数据库ovsdb的管理。...然后将计算所得的转发状态(即流表项和数据库表项)通过OpenFlow协议和OVSDB管理协议送到传输节点上。 为了简化上述过程,NVP提出一种新的计算模型,nlog。...3.2.NEC VTN NEC VTN(全称Virtual Tenant Network)是NEC为Opendaylight提供的开源网络虚拟化解决方案,集成在Opendaylight的Hydrogen...虚拟化版本中,也集成在Opendaylight的Helium版本中。...前者独立于Opendaylight存在,对Opendaylight来说是一个外部应用,后者为Opendaylight的组件(在Hydrogen版本中通过“-virt vtn”选项在启动odl 控制器时启动
为每个项目添加Apache Karaf 4.X功能是希望在OpenDaylight下一个版本Nitrogen版本中使用新的容器,此外Carbon版本还增强了测试功能,以确保功能导入所有适当的运行时包,从而提高...Yang 1.0数据建模语言的RFC 6020已经被新的Yang 1.1数据建模语言RFC 7950所取代,对于应用程序开发人员来说,这意味着他们现在可以在Yang模型中使用Yang 1.1结构。...此外,使用RFC 7950的南向Netconf设备的互操作性在Carbon版本中成为可能。 NETCONF集群实现通过集群单例服务进行重新架构变得更加稳定,并大大提高了测试覆盖率。...新的RFC 8040RESTCONF API通过单独的端点提供,OpenDaylight鼓励用户开始探索并使用标准版本的API,因为社区支持DRAFT 02版本的时间具有很大的不确定性。...AAA贡献者还增加了对基于模型的证书管理的支持,虽然证书管理功能目前旨在Carbon版本中与OVSDB相集成,但计划在未来提供与其他南向协议的集成。
挑战 然而就算前景再好,迁移到虚拟化网络也不是没有障碍的。首先新的网络必须能够适应的现有的由多供应商产品组成的基础环境。其次操作程序必须进行彻底更新才能充分享受到自动化带来的好处。...为什么选择OpenDaylight OpenDaylight是一个开源框架,可以被用于向SDN架构方向的迁移。它已经被成功的部署在多个数据中心,企业和运营商网络中。...✔ 对大部分SDN协议如OpenFlow,OVSDB,NETCONF,LISP有良好的支持 ✔ 基于intent的北向API框架:能够支持广泛的应用 ✔ 开放的生态系统:具有大量产品和基于OpenDaylight...✔ 服务抽象层(SAL):轻松添加对传统设备和SDN设备的支持 ✔ 支持OVSDB,OpenFlow,NETCONF等插件以及一系列专用的交换机和路由器 OpenDaylight填补了从现有网络向开放SDN...OpenDaylight被OPNFV选中是因为以下原因: ✔ 独立于厂商的开放的平台 ✔ 基于Intent北向接口能与多个业务流程系统集成 ✔ 域间的连通覆盖支持 ✔ 内置的网络虚拟化和服务功能链 ✔
为什么选择OpenDaylight OpenDaylight是一个开源框架,可以被用于向SDN架构方向的迁移。它已经被成功的部署在多个数据中心,企业和运营商网络中。...✔ 对大部分SDN协议如OpenFlow,OVSDB,NETCONF,LISP有良好的支持 ✔ 基intent的北向API框架:能够支持广泛的应用 ✔ 开放的生态系统:具有大量产品和基于OpenDaylight...✔ 服务抽象层(SAL):轻松添加对传统设备和SDN设备的支持 ✔ 支持OVSDB,OpenFlow,NETCONF等插件以及一系列专用的交换机和路由器 OpenDaylight填补了从现有网络向开放SDN...OpenDaylight被OPNFV选中是因为以下原因: ✔ 独立于厂商的开放的平台 ✔ 基于Intent北向接口能与多个业务流程系统集成 ✔ 域间的连通覆盖支持 ✔ 内置的网络虚拟化和服务功能链 ✔...Hewlett Packard Enterprise ContextNet HPE ContexNet是一个基于OpenDaylight电信级分布式软件定义网络(SDN)架构,能使网络运营商在传统网络之上创建一个服务抽象层
,该端口号在创建流表时会用到。...需要注意的是隧道创建是双向的,即是说在一端创建了VTEP,在另一个所指的remote机器上也应创建相应的vxlan端口。 我们接下来不准备用命令行创建,而是用ODL的北向接口创建隧道。...依然在VM1上创建 POST: http:// 192.168.3.30:8282/ovsdb/nb/v2/node/OVS/192.168.1.10:63344/tables/interface...如果在创建过程中指定属性值,属性值可能不会被写入。 上述过程描述的是利用OpenDaylight的REST接口创建隧道,相对于命令而言显得复杂。...如命令行创建隧道一样,在一个节点创建隧道,统一需要对另一个节点创建隧道,是一个双向的操作过程,在实践过程中,请注意根据实际情况对REST中相应的参数进行修改。
模块中提供功能的开发者可以定义一个模型,从而可以创建对于所提供功能的更简单的、数据类型的API。因此降低了通过服务抽象层提供的数据结构的错误交互。...的形式重新报回。...OpenDaylight南北向接口 针对以上讨论了这么多关于YANG模型的知识, YANG模型除却本身作为NETCONF协议的数据建模语言之外,在OpenDaylight中的应用诞生了众所周知的MD-SAL...在ovsdb->southbound中定义了ovsdb的具体南向接口,截取southbound-api中ovsdb.yang中的一条主线如下所示,其实由此我们同时也可以分析出ovsdb的北向接口,即为http...在wiki.opendaylight.org中很容易搜到yang-java mapping的页面,在此不再敖述。
ODL Be版本在性能、可扩展性、功能方面有了很大的改善,新的网络服务在集群和高可用性上提升不少,数据处理、消息传输方面也有很大的提高,提供更好的网络模型抽象,实现网络元素的管理并且对GUI进行了全新的改善...除此之外,OpenDaylight Be版本在性能上有所提高,并且在UI设计上支持大型的复杂网络拓扑显示,增加了新的NeXt组件来支持复杂网络的可视化效果。...在铍版本上,仍然重视与OpenStack的集成与对接,但是这一方面我还没有使用,感兴趣的小伙伴可以验证看看。 另外Be版本中增加了很多新的应用程序,这将对SDN的发展过渡变得更加便捷、快速: ?...插件收集的信息可用于网络配置防火墙和创建IP黑名单,大大提高了网络的安全性。...因为基于这个模式的基础上,给控制器增加新的北向绑定是简单的,且很容易的实现和集成,所以添加的Messaging Oriented Middleware (MOM)北向绑定除了将YANG规范映射到一个RESTful
目前,能够以plugin的方式集成到OpenStack的控制器有:NEC的控制器以及开源控制器OpenContrail、Ryu、OpenDayLight和Floodlight等,这里我们选择Ryu。...一、使用Ryu插件与OpenStack的网络 在开始之前,让我们先来看看Ryu和OpenStack集成的架构吧,如下图所示: ?...Ryu作为sdn的控制器,br-int/br-tun就是二层虚拟交换机,两者之间可以运行OpenFlow协议沟通,下面是其集成步骤: 1. 在一台单独的主机或虚拟机上,安装ryu控制器。...# ryu-manager 3.在所有计算和网络节点的br-int和br-tun网桥上,设置SDN控制器为10.0.0.10 3.1认识OVS集成网桥br-int br-int是OpenvSwitch创建的虚拟网桥...每一个使用neutron net-create 命令创建的network都有一个新的ID。见ovsl-vsctl show命令显示结果中的Port的tag值。
在构建虚拟网络时,管理员需要进行大量的配置工作,例如端口的ip地址和VXLAN配置等等。显然,没有人愿意在系统每次启动时都将繁琐的配置工作重复一遍,所以将配置信息持久化是必然选择。...目前在Opendaylight控制器中也有一个单独的子项目实现此管理协议,即OVSDB[2]。 ? 图 1....在中可指定“operation”属性,例如合并(merge)、替换(replace)、创建(create)、删除(delete)和去除(remove)。...两种消息格式分别对应YANG模块的XML-YANG和JSON-YANG。当数据库创建一个新资源时,会返回一个“Location”头,该头用于标识这个资源的路径。...Integration:Main https://wiki.opendaylight.org/view/OVSDB_Integration:Main [3]NETCONF Configuration
他认为体现在其公司NSX产品中的网络虚拟化技术是未来的前进方向,因为网络虚拟化在复制了应用所希望的所有东西的同时抽象化了来自网络硬件的控制,极大地简化了创建与管理复杂网络环境的任务。...新的硬件定义数据中心则是一种让过时模式适应新的按需IT世界的尝试。硬件定义数据中心强调应用程序和硬件之间的紧密集成,并需要来自单个供应商的专有硬件和定制ASIC。...网络虚拟化还能够更简单地过渡到新的网络拓扑结构,同时,解耦和抽象化能够提高创新。通过硬件(VTEP)和软件网关跨虚拟和物理工作负载所进行的集成和配置能够进一步加快向新模式过渡的速度。...两个截然不同的协议:OpFlex和OVSDB ACI是一个开放架构,具有开放北向REST API和开放南向API,允许与任何设备的集成。...在OpenDaylight的最前端,思科、惠普、IBM、Midokura、One Convergence、Plexxi和红帽已经启动了一个正式项目,在OpenDaylight中构建基于组的策略。
ODL项目最开始的定位是SDN controller,在它的第三个版本(Lithium版本),ODL将自己的定位变成了SDN Platform。...在OpenDayLight也加入了适配Neutron的module。...为了支持OpenStack Neutron的接入,在ODL southbound protocol中加入了OVSDB的支持。...前者是基本网络功能,后者是厂商平台对应的模块。为了适配OpenStack Neutron,在Platform Service Function中有一个OVSDB Neutron模块。...参考链接 理解OpenStack与SDN控制器的集成_筋斗云计算的博客-CSDN博客_openstack sdn OpenStack与SDN控制器的集成 | SDNLAB | 专注网络创新技术 为OpenStack
ovs-vswitchd在启动时会读取ovsdb-server中配置信息,然后配置内核中的datapaths和所有OVS switches,当ovsdb中的配置信息改变时(例如使用ovs-vsctl工具...命令创建并初始化此数据库文件。...Slow Path:内核态并没有被分配太多内存,所以内核态能够保存的流表项很少,往往有新的流表项到来后,老的流表项就被丢弃。...,就进入自己的处理流程,然后再次将网络包重新注入到 Datapath。...第四章云网络4.8.5节——OpenDayLight 第四章云网络4.8.6节——Dragonflow
在构建虚拟网络时,管理员需要进行大量的配置工作,例如端口的ip地址和VXLAN配置等等。显然,没有人愿意在系统每次启动时都将繁琐的配置工作重复一遍,所以将配置信息持久化是必然选择。...另外,ovsdb-client也可以部署在远端,从而实现对ovsdb-server的远程配置。本专题第二期讨论的Nicra公司的NVP平台正是采用此种方式来实现中央控制器对网络边缘层的配置。...目前在Opendaylight控制器中也有一个单独的子项目实现此管理协议,即OVSDB[2]。 ? 图 1....在中可指定“operation”属性,例如合并(merge)、替换(replace)、创建(create)、删除(delete)和去除(remove)。...两种消息格式分别对应YANG模块的XML-YANG和JSON-YANG。当数据库创建一个新资源时,会返回一个“Location”头,该头用于标识这个资源的路径。
防DDoS攻击SDN应用开发 基础环境 Opendaylight + Mininet (安装好karaf等组件) Open vSwitch 2.3.1 实验步骤 查看控制器ip和交换机的连接状态 登录控制器...,查看端口是否处于监听状态 netstat -an|grep 6633 登录交换机,查看交换机与控制器的连接情况 root@guest-virtual-machine:/home/guest# ovs-vsctl...show 2e6efe16-6875-4feb-8451-7da554fbd3c8 ovs_version: "2.0.2" //以上是交换机与控制器未连接成功,需要手动连接,显示以下的“is_connected...root@guest-virtual-machine:/home/guest# ovs-vsctl show 登陆主机,查看主机与控制器连接情况,如果没连接,需要手动连接 登录交换机,连接控制器(基于OVSDB...协议创建一个新的连接) ovs-vsctl set-manager tcp:192.168.123.10:6640 安装sFlow 将sFlow安装包上传至控制器,并解压 登录交换机,部署sFlow