本次试验基于mininet平台,在平台中利用ovs新建1个交换机,以pox为控制器,ovx作为中间层实现虚拟化。

基础请参照http://ovx.onlab.us/getting-started/tutorial/

但是由于上述只是直线拓扑,而且中间不经过节点,因此我们要构建一个复杂的拓扑,如标红的拓扑

首先我们将pox的l2_learing修改一下,也就是把host,switch与path信息写进去

其次开启ovx,pox

在/ovx/utils/具体代码如下:

新建虚拟网络,并制定控制器与host的ip域

python ovxctl.py -n createNetwork tcp:192.168.100.107:6633 10.0.0.0 16

由switch的DPID新建虚拟交换机

python ovxctl.py -n createSwitch 1 00:00:00:00:00:00:02:00
python ovxctl.py -n createSwitch 1 00:00:00:00:00:00:05:00
python ovxctl.py -n createSwitch 1 00:00:00:00:00:00:08:00

为每一个虚拟交换机添加port,指定物理port,注意返回的虚拟port_id

python ovxctl.py -n createPort 1 00:00:00:00:00:00:02:00 5
python ovxctl.py -n createPort 1 00:00:00:00:00:00:02:00 6

python ovxctl.py -n createPort 1 00:00:00:00:00:00:05:00 5
python ovxctl.py -n createPort 1 00:00:00:00:00:00:05:00 6

python ovxctl.py -n createPort 1 00:00:00:00:00:00:08:00 5
python ovxctl.py -n createPort 1 00:00:00:00:00:00:08:00 7

连接switchs,这里10 10 是因为我们对协议进行改变了,支持ooe了
python ovxctl.py -n connectLink 1 00:a4:23:05:00:00:00:01 2 00:a4:23:05:00:00:00:02 1 10 10 spf 1
python ovxctl.py -n connectLink 1 00:a4:23:05:00:00:00:01 1 00:a4:23:05:00:00:00:03 1 10 10 spf 1
python ovxctl.py -n connectLink 1 00:a4:23:05:00:00:00:02 2 00:a4:23:05:00:00:00:03 2 10 10 spf 1

新建port,并通过该port与host相连

python ovxctl.py -n createPort 1 00:00:00:00:00:00:02:00 1
python ovxctl.py -n connectHost 1 00:a4:23:05:00:00:00:01 3 00:00:00:00:02:01

python ovxctl.py -n createPort 1 00:00:00:00:00:00:05:00 2
python ovxctl.py -n connectHost 1 00:a4:23:05:00:00:00:02 3 00:00:00:00:05:02

python ovxctl.py -n createPort 1 00:00:00:00:00:00:08:00 3
python ovxctl.py -n connectHost 1 00:a4:23:05:00:00:00:03 3 00:00:00:00:08:03

开启虚拟网络

python ovxctl.py -n startNetwork 1

我们可以在mininet dump_flows查看流表信息

*** ATL ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
cookie=0x100000000, duration=10.141s, table=0, n_packets=0, n_bytes=0, idle_timeout=10000,priority=42,ooe,in_port=5,dl_src=a4:23:05:01:00:00,dl_dst=a4:23:05:10:00:06,ooe_dst=0x2 actions=output:7
*** CLE ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
*** EWR ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
*** IAD ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
cookie=0x100000003, duration=9.167s, table=0, n_packets=0, n_bytes=0, idle_timeout=10000,priority=42,ooe,in_port=5,dl_src=a4:23:05:01:00:00,dl_dst=a4:23:05:10:00:06,ooe_dst=0x2,ooe_start=11,ooe_length=2 actions=mod_dl_src:00:00:00:00:02:01,mod_dl_dst:00:00:00:00:05:02,output:2
*** IAH ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
cookie=0x100000000, duration=10.177s, table=0, n_packets=0, n_bytes=0, idle_timeout=10000,priority=42,ooe,in_port=5,dl_src=a4:23:05:01:00:00,dl_dst=a4:23:05:10:00:06,ooe_dst=0x2 actions=output:7
*** LAX ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
cookie=0x100000000, duration=10.184s, table=0, n_packets=0, n_bytes=0, idle_timeout=10000,priority=42,ooe,in_port=5,dl_src=a4:23:05:01:00:00,dl_dst=a4:23:05:10:00:06,ooe_dst=0x2 actions=output:7
*** MCI ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
*** ORD ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
*** SEA ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
*** SFO ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):
cookie=0x100000003, duration=10.232s, table=0, n_packets=0, n_bytes=0, idle_timeout=10000,priority=42,ooe,in_port=1,dl_src=00:00:00:00:02:01,dl_dst=00:00:00:00:05:02,ooe_dst=0x2 actions=mod_ooe_start:11,mod_ooe_length:2,mod_dl_src:a4:23:05:01:00:00,mod_dl_dst:a4:23:05:10:00:06,output:6
*** SLC ------------------------------------------------------------------------
NXST_FLOW reply (xid=0x4):

忽略下面。。。

个人博客,也可以随便点点,里面是一些前端学习,http://wearejq.github.io/,还有一个写着玩的,http://hhjiang91.github.io/

在mininet上基于ovs,ovx,pox搭建三点虚拟网络的更多相关文章

  1. 在阿里云主机上基于CentOS用vsftpd搭建FTP服务器

    最近需要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下我们根据实际需求进行的一些配置. ftp软件用的是vsftpd. vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序 ...

  2. [原创]基于Zynq Linux环境搭建(三)

    此篇编译Kernel 解压: [#17#17:26:56 FPGADeveloper@ubuntu ~/Zybo_Demo]$tar zxvf *.tar.gz 进入到文件kernel文件夹中,cle ...

  3. Hadoop集群搭建(三)~centos6.8网络配置

    安装完centos之后,进入系统,进行网络配置.主要分为五个部分: 修改虚拟机网络编辑器:配置Winodws访问虚拟机:配置centos网卡:通过网络名访问虚拟机配置网络服务. (一)虚拟机网络编辑器 ...

  4. window平台基于influxdb + grafana + jmeter 搭建性能测试实时监控平台

    一.influxdb 安装与配置 1.1 influxdb下载并安装 官网无需翻墙,但是下载跳出的界面需要翻墙,我这里提供下载链接:https://dl.influxdata.com/influxdb ...

  5. Mac上基于hexo+GitHub搭建个人博客(一)

    原文地址: http://fanjiajia.cn/2018/11/23/Mac%E4%B8%8A%E5%9F%BA%E4%BA%8Ehexo+GitHub%E6%90%AD%E5%BB%BA%E4% ...

  6. 基于OVS的VLAN虚拟化简易实践方案

    基于OVS的VLAN虚拟化简易实践方案 前言 本实验基于ovs的vlan流表匹配,根据端口进行vlan标签插入.手工配置ovs,使其具有vlan虚拟化方案. 实验拓扑 ---- ---- | h1 | ...

  7. Mininet实验 基于Mininet测量路径的损耗率

    实验原理 在SDN环境中,控制器可以通过对交换机下发流表操作来控制交换机的转发行为,此外,还可以利用控制器测量路径的损耗率.在本实验中,基于Mininet脚本,设置特定的交换机间的路径损耗速率,然后编 ...

  8. 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用

    史上最详细Windows版本搭建安装React Native环境配置   2016/01/29 |  React Native技术文章 |  Sky丶清|  95条评论 |  33530 views ...

  9. 面向服务体系架构(SOA)和数据仓库(DW)的思考基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台

    面向服务体系架构(SOA)和数据仓库(DW)的思考 基于 IBM 产品体系搭建基于 SOA 和 DW 的企业基础架构平台 当前业界对面向服务体系架构(SOA)和数据仓库(Data Warehouse, ...

随机推荐

  1. Maven的相关知识及使用

    一.简介 maven: 是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的,Maven是跨平台的项目管理工具. 1.自动化构建和项目管理工具 Ant→Make→Maven ...

  2. 面试d090305知识点准备01

    1.1  类成员访问[jL1] 权限 1.2  写个双线程,计算50内的奇偶数 1.3  打印等腰三角形 1.4  运算符优先级 括号,非正负和自增减(右到左),乘除加减,等于不等于,逻辑与和或,然后 ...

  3. docker compose容器互联

    使用docker-compose编排容器时,如容器之间需要互相通信,使用本地连接,需要使用容器名来代替localhost "connection": "postgresq ...

  4. 微信小程序通过JS动态修改页面标题setNavigationBarTitle

    wx.setNavigationBarTitle({title: '当前页面'})

  5. rem字体在rem盒子里面不一样,或者不同的行解决

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 2、kvm基础常用命令操作

    KVM 虚拟机默认的配置文件在 /etc/libvirt/qemu 目录下,默认是以虚拟机名称命名的.xml文件,如下: root@xuedianhu:~# ls /etc/libvirt/qemu ...

  7. vue 生产模式

    vue.js 最后一行添加... Vue.config.productionTip = false;

  8. Collections.copy

    List<String> names = Arrays.asList(new String[nameList.size()]); Collections.copy(names, nameL ...

  9. mysql事务锁表

    -- 查看被锁住的SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; -- 等待锁定SELECT * FROM INFORMATION_SCHEMA.INNO ...

  10. LeetCode 148 Sort List 链表上的归并排序和快速排序

    Sort a linked list in O(n log n) time using constant space complexity. 单链表排序----快排 & 归并排序 (1)归并排 ...