一、VTN简介及架构分析:


 

具体详见开发人员指南wiki:https://wiki.opendaylight.org/view/Release/Lithium/VTN/developer_Guide

这里有两篇很好的初学者文章作为入门:

《OpenDaylight VTN 简单介绍及部署》

《Opendaylight VTN虚拟网功能验证与开发环境搭建》

《OpenDaylight VTN源码及架构分析》

1. VTN Coordinator:

VTN Coordinator是外置的一个网络应用,通过ODL上的VTN Manager提供的北向REST接口,向上层VTN Application用户提供虚拟网络功能。Coordinator架构如下:

 

Web Server 子模块负责与上层VTN应用通过REST API进行交互,并将上层的REST API向下转换成对应的Java API。其主要功能包括:

-通过catalina.sh启动

-VTN 应用以XML或者JSON格式发送HTTP请求给Web Server

-创建会话和获取读写锁定

-根据url调用下层对应的java API library

-向上层vtn应用返回响应消息

VTN Service JAVA API Library 提供java api library来与coordinator的下层模块进行通信。其主要功能包括:

-创建一个对下层的进程间通信客户端会话

-将应用请求转换成进程间通信框架格式

-调用下层API(比如UPPL API, UPLL API, TC API)

-将下层响应消息返回给上层web服务器

-vtn service java library详细类

* 需要注意的是,vtn coordinator并不具有karaf特性。更多rest api相关信息请登录wiki

* coordinator向上提供有限的获取底层物理网络信息的api。

*详见官方文档:https://wiki.opendaylight.org/view/OpenDaylight_Virtual_Tenant_Network_(VTN):VTN_Coordinator

2. VTN Manager:

ODL控制器上的一个功能插件。通过控制器上的其他功能模块进行交互从而部署vtn功能。它同样提供rest api接口来配置控制器上的vtn组件(增加、更新、删除vtn)。用户命令被coordinator处理后通过coordinator底层的odc driver驱动组件转换为rest api发送给vtn manager。它同样可以与著名的openstack进行整合。详见相关文档:

https://wiki.opendaylight.org/view/OpenDaylight_Virtual_Tenant_Network_(VTN):VTN_Manager:Specification

3. 用例实验

这里是一些基本的配置和用例实验:

Coordinator的 Web UI 和 CLI:http://plvision.eu/blog/opendaylight-vtn-coordinator-enabling-webui-and-cli/

Manager:How to:Provision virtual L2 network:https://wiki.opendaylight.org/view/VTN:Manager:How_to:Provision_virtual_L2_network

Coordinator:RestApi:How to configure L2 Network with Single Controller:https://wiki.opendaylight.org/view/OpenDaylight_Virtual_Tenant_Network_(VTN):VTN_Coordinator:RestApi:How_to_configure_L2_Network_with_Single_Controller

更多请访问本人博客地址:https://jiang-hao.com

OpenDaylight虚拟租户网络(VTN)详解及开发环境搭建的更多相关文章

  1. 超全详解Java开发环境搭建

    摘自:https://www.cnblogs.com/wangjiming/p/11278577.html 超全详解Java开发环境搭建   在项目产品开发中,开发环境搭建是软件开发的首要阶段,也是必 ...

  2. Linux网络配置文件详解

    --Linux网络配置文件详解----------------------2013/10/03 目前在企业级服务器的Linux系统中,RHEL占有绝对的优势,不管是曾经在互联网公司还是在目前测试Vir ...

  3. Docker:网络模式详解

    Docker作为目前最火的轻量级容器技术,牛逼的功能,如Docker的镜像管理,不足的地方网络方面. Docker自身的4种网络工作方式,和一些自定义网络模式 安装Docker时,它会自动创建三个网络 ...

  4. Vmware在NAT模式下网络配置详解

    Vmware在NAT模式下网络配置详解 Linux中的网络配置对于接触Linux不久的小白菜来说,还是小有难度的,可能是不熟悉这种与windows系列迥然不同的命令行操作,也可能是由于对Linux的结 ...

  5. Docker网络模式详解

    一.Docker四种工作模式 安装Docker时,它会自动创建三个网络,bridge(创建容器默认连接到此网络). none .hosthost:容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用 ...

  6. docker 网络概述及网络模式详解

    docker 网络概述及网络模式详解 1.网络概述 2.网络模式详解 1.网络概述: Docker 网络实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0) ...

  7. 用netstat查看网络状态详解

    --用netstat查看网络状态详解 -----------------------------2014/06/11 一.Linux服务器上11种网络连接状态:                     ...

  8. Docker基础 :网络配置详解

    本篇文章将讲述 Docker 的网络功能,包括使用端口映射机制来将容器内应用服务提供给外部网络,以及通过容器互联系统让多个容器之间进行快捷的网络通信,有兴趣的可以了解下. 大量的互联网应用服务包含多个 ...

  9. 【转】Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备

    原文:https://www.cnblogs.com/bakari/p/10449664.html -------------------------------------------------- ...

随机推荐

  1. 测试与发布(Alpha版本)——小谷围驻广东某工业719电竞大队

    测试与发布(Alpha版本)--小谷围驻广东某工业719电竞大队 一.引言 1.需求规格说明书: https://www.cnblogs.com/TaoTaoLV1/p/9819913.html 2. ...

  2. C# 使用ftp下载一个文件夹下的所有文件,包括子目录文件夹

    这篇博客给大家补充一个方法,就是得到一个目录下的所有文件名称.在前端调用,大家写一个递归去遍历就可以了,我在这里就不在写了.具体ftp下载的方法在我的另一篇博客里有,需要的可以去看一下. /// &l ...

  3. vux组件简单使用请大佬指点

    一.打开vux项目 我用的是vsCode工具自己找看个人选择,第一次使用请去找vc方便开发使用的插件 二.项目目录及文件,有遮挡部分自行查看文件 三.根据官方文档实现引入插件 通过vux-loader ...

  4. cmd命令使用笔记

    使用资源管理器打开当前路径 explorer %cd%

  5. asp.net 下载EXCEL文件

    一.需要导入NPOI 库文件 打开VS2012 工具>>库程序包管理器>>管理解决方案的NuGet程序包,搜索NPOI,如下图 安装完成: 添加 using NPOI.HSSF ...

  6. DevExpress WinForms Controls 学习系列1

    一个偶然的机会,接触到DevExpress.项目是WinForm的,应用了DevExpress.为了使项目具备维护开发的生命力,我觉得有必要系统的学习一下DevExpress,今天是学习笔记的第一篇. ...

  7. Day 32 网络编程

    一.网络协议基础篇 一台完整的计算机由硬件.系统.软件组成,具备这三个条件,计算机就可以运行,但是只能自己和自己玩.为了实现计算机和计算机间的连接,就需要借助互联网,如全世界人类交流将英语作为标准语言 ...

  8. 673. Number of Longest Increasing Subsequence

    Given an unsorted array of integers, find the number of longest increasing subsequence. Example 1: I ...

  9. MySQL中整型和字符串类型指定长度的含义

    引入: int(5)和char(5)或者varchar(5)中的数字指的是什么意思?是字节数,还是字符长度?为什么在整型中指定了int(5)却可以输入123456? 答案是后者,不管是整型还是字符串类 ...

  10. LINUX中如何查看某个端口是否被占用

    之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下: 1.netstat  -anp  |grep   端口号 如下,我以3306为例,netstat  -anp  |grep   ...