ML2 Plugin框架说明

2023-11-11

在H版本中,ML2 Plugin被添加意图取代所有的Core Plugin,它采用了更加灵活的结构进行实现,下图即为ML2 Plugin的实现框架。
作为一个Core Plugin,ML2自然会实现network/subnet/port三种核心资源,同时它也实现了包括Port Binding等在内的部分扩展资源。
ML2解耦了网络拓扑类型与底层的虚拟网络实现机制,并分别通过Driver的形式进行扩展,其中,不同的网络拓扑类型对应着Type Driver,由Type Manager管理,不同的网络实现机制对应着Mechanism Driver,由Mechanism Manager管理。
目前,Neutron中已经实现了Flat/GRE/VLAN/VsLAN等拓扑类型的Type Driver,也实现了Linux Birdge/Open vSwitch以及众多厂商的Mechanism Driver,通过这些众多的Driver,ML2 Plugin实现了其他Core Plugin的功能。
ML2 Plugin的源码结构为:
# neutron/plugins/ml2/
--common
--config.py -一些配置选项定义
--db.py
--driver_api.py -定义了TypeDriver和MechanismDriver基类
--driver_context.py
--drivers -各种TypeDriver和MechanismDriver的实现
--managers.py -定义TypeManager和MechanismManager类
--models.py
--plugin.py -类ML2Plugin实现
--rpc.py -与Agent进行RPC交互


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ML2 Plugin框架说明 的相关文章

随机推荐

  • eslint+prettier前端代码规范配置

    前端代码规范配置 参考来源 https blog csdn net u013361179 article details 108885859 前言 eslint的作用 eslint作用是按照一定规则 检测代码质量 prettier的作用 p
  • Hyperledger Fabric网络快速启动

    目录 1 网络服务配置 2 关联的docker compose base yaml 各Peer节点容器设置如下信息 3 被关联的Peer base yaml 4 启动网络 2 完成通道的创建 2 1将节点加入应用通道 更新锚节点 2 为什么
  • 【数据结构实验】哈希表设计

    数据结构实验 哈希表设计 简介 针对本班同学中的人名设计一个哈希表 使得平均查找长度不超过R 完成相应的建表和查表程序 文末贴出了源代码 需求分析 假设人名为中国人姓名的汉语拼音形式 待填入哈希表的人名共有三十个左右 取平均查找长度上限为2
  • python将dataframe输出到word文档中

    python将文本 dataframe输出到word文档中 加载基本库 from docx import Document import pandas as pd temp name link dir south beizhu test d
  • 【2019.09.08】python 基于Excel设计实现的关键字驱动的自动化测试框架

    之前写过PO模式 数据驱动的测试框架 最近要做一个测试平台 先写一个关键字驱动的测试框架练练手 Excel 样式展示 如图 结果展示 代码 结构 读取excel usr bin env python coding utf 8 Time 20
  • UE4 C++ 一个Character踩地雷

    UE4 C 一个Character踩地雷 Fill out your copyright notice in the Description page of Project Settings pragma once include Core
  • MD5加密

    interface NSString LuckyMD5 NSString md5String MD5加密 32位 小写 param str 传入要加密的字符串 return 返回加密后的字符串 NSString MD5ForLower32B
  • 推荐系统公平性论文阅读(一)

    公平性 fariness 新的突破点 推荐系统的公平性 fairness 正在成为推荐系统领域的一个新的突破点 目前对于推荐系统这种需要落地的应用 单纯的在模型领域取得准确率等指标的突破已经不是唯一的追求 虽然fancy的模型依然重要 但是
  • 国产弱网测试神器 QNET零基础快速上手(上)

    01 APP弱网测试背景 App 在使用的过程中 难免会遇到不同的弱网络环境 像在公车上 在地铁 地下车库等 在这种情况下 手机常常会出现网络抖动 上行或下行超时 导致 APP 应用中出现丢包延迟 从而影响用户体验 作为软件测试工程师 我们
  • brew install报错Error: No developer tools installed. Error: Command failed with exit 128: git

    先来解决第一个问题 Error No developer tools installed Install the Command Line Tools xcode select install xcode select install 然后
  • 【C++】auto关键字的使用(C++11)

    1 auto简介 C语言中auto关键字专门用来修饰函数中定义的变量 表明 该变量为自动存储类型的变量 即该变量会被自动销毁掉 C 11中 标准委员会赋予了auto全新的含义即 auto不再是一个存储类型指示符 而是作为一个新的类型指示符来
  • web前端开发主要课程,CSS字体样式值,赶紧收藏!

    前言 基础知识是前端一面必问的 如果你在基础知识这一块翻车了 就算你框架再好 无济于事 因为对方就不会再给你展示的机会 千万不要因为基础错过了自己心怡的公司 本篇文章可能只是适用于刚毕业的同学或者毕业 2 年之内的小伙伴 大家酌情阅读 零基
  • linux中ldconfig的使用介绍

    ldconfig是一个动态链接库管理命令 其目的为了让动态链接库为系统所共享 ldconfig的主要用途 默认搜寻 lilb和 usr lib 以及配置文件 etc ld so conf内所列的目录下的库文件 搜索出可共享的动态链接库 库文
  • npm安装electron时卡死 ,而利用cnpm安装electron时失败(等一系列幺蛾子)

    按照这个教程 安装cnpm 并执行 cnpm install g electron 时出现 post install failure 部署失败 原因是cnpm只会安装electron的js脚本和js依赖 electron所需要的chromu
  • java求最小公倍数(亲测秒懂)

    直接上代码 public static int gcd int a int b int r while r a b 0 a b b r return b
  • [4G/5G/6G专题基础-154]: 5G无线准入控制RAC(Radio Admission Control)+ 其他准入控制

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 126234036 目录 第1章 什么是
  • Qt中的字符串类QByteArray功能讲解

    得把这话写在前面 不要看到有很多东西都不会就学不下去了 事实上这些不是全部要装到脑子里的 尝试着用的时候就查 现阶段是入门 毕竟之前没接触过 不要心急 勇敢牛牛 字符串类型 c gt char c gt std string Qt gt Q
  • vtk表面提取参数研究

    marching cubes是三维图形处理中常见的算法 实际使用中 对一个影像数据做表面提取 然后平滑得到一个组织表面是一个常用功能 下面这段代码是参考3d slicer的分割流程的代码 boneExtractor vtkMarchingC
  • 【牛客网】OR63 删除公共字符串

    一 题目描述 牛客网题目链接 删除公共字符 牛客题霸 牛客网 描述 输入两个字符串 从第一字符串中删除第二个字符串中所有的字符 例如 输入 They are students 和 aeiou 则删除之后的第一个字符串变成 Thy r std
  • ML2 Plugin框架说明

    在H版本中 ML2 Plugin被添加意图取代所有的Core Plugin 它采用了更加灵活的结构进行实现 下图即为ML2 Plugin的实现框架 作为一个Core Plugin ML2自然会实现network subnet port三种核