1. 交换机上建立gre隧道,对端ip为ip1
2. 交换机上报gre隧道的OF逻辑端口port id,这里gre tunnel的id实际就是OF逻辑端口id
3. 控制器建立流ipflow1的镜像配置,参数为流特征五元组及对应的隧道OF逻辑端口id
4. 控制器下流表,match ipflow1,action为output到隧道OF逻辑端口

这个gre 隧道端点所在的交换机是SDN域内或者SDN域边缘,其实是无所谓的,无论域内还是边缘,隧道封装后,外层报文,都会被SDN域,或者网关发送到目标主机处,控制器已经关注/不关注外层报文的通达性。

对vxlan而言。
vtep所在交换机会上报vtep对外的出向OF逻辑端口,控制器理解为普通OF端口,并采集拓扑,生成Path。
控制器通过arp及其他手段收集各主机的arp,ip,deviceid,portid以及vnet信息,对和主机相连的各交换机下表,match这些目的主机mac则output到和主机相连的port,这个实际是L2路径的尾节点。
当vnet跨交换机时,对目的mac为连接到其他交换机的主机的第一个入向报文,交换机会no match上送,控制器查找路径下表,首交换机的动作是set vni,output到特定端口,若该端口为vtep出向OF逻辑端口,vtep会进行vxlan封装,外层IP为隧道对端IP,外层mac由underlay网络arp解决。
所以,vtep所在交换机需要知道vxlan隧道端口和对端ip的对应关系,----这里要修改下,vtep通过arp学习到内层目的mac和对端vtep ip的映射关系

如同上面gre隧道一样,控制器不关注外层报文通达性,交换机需要知道gre隧道和对端IP的对应关系,在配gre隧道时已经关联了,查一下即可。

vxlan中vtep角色,以及通过GRE隧道进行流镜像的更多相关文章

  1. Gre 隧道与 Keepalived

    这一篇文章是做了不少功课的. 什么是 Gre 隧道 什么是 Vrrp KeepAlived 是什么 用Keepalived 怎么玩 附录 什么是 Gre 隧道 GRE 隧道是一种 IP-2-IP 的隧 ...

  2. linux 下创建GRE隧道

    其他国家的互联网如同一个孤岛.要想访问国外网站异常的缓慢,甚至被和谐了.可以建立一条隧道来避免这种情况,下面说说GRE隧道如何建立. 1. GRE介绍 GRE隧道是一种IP-over-IP的隧道,是通 ...

  3. 内部办公网与IDC机房的GRE隧道配置实践

    背景 公司内网与机房服务器为了实现用内网IP通信的功能,故使用了linux的IP gre隧道的方式.使得公司内部可以直接通过路由直连的方式访问机房服务器. 拓扑图如下: 注:拓扑中的外网IP为虚构的I ...

  4. Open vSwitch系列实验(二):Open vSwitch的GRE隧道实验网络

    一.实验目的 了解GRE协议及原理 理解 Open vSwitch如何配置GRE隧道 二.实验原理 Open vSwitch创建GRE原理很简单,就是把对GRE头和外部IP头的一些操作从原来的代码中抽 ...

  5. 华三F100系列防火墙 、华为USG6300系列防火 GRE 隧道配置

    GRE概述: 通用路由封装(GRE: Generic Routing Encapsulation)是通用路由封装协议,可以对某些网络层协议的数据报进行封装,使这些被封装的数据报能够在IPV4网络中传输 ...

  6. ubantu与CentOS虚拟机之间搭建GRE隧道

    Author       : Email         : vip_13031075266@163.com Date          : 2020.01.23 Copyright : 未经同意不得 ...

  7. GRE隧道协议

    1. GRE协议简介 GRE(General Routing Encapsulation ,通用路由封装)是对某些网络层协议(如IP和IPX)的数据报文进行封装,使这些被封装的报文能够在另一网络层协议 ...

  8. docke跨主机通信之gre隧道

    GRE简介 GRE可以对网络层的任何协议来进行封装,类似LVS的IPIP协议,在原有的数据报上增加GRE协议数据报.然后在网络上传输,到达对端后,解开GRE数据报头,得到真实的数据报.其中的mac地址 ...

  9. ASP.NET Core 2.1中基于角色的授权

    ASP.NET Core 2.1中基于角色的授权 授权是来描述用户能够做什么的过程.例如,只允许管理员用户可以在电脑上进行软件的安装以及卸载.而非管理员用户只能使用软件而不能进行软件的安装以及卸载.它 ...

随机推荐

  1. freertos 建立任务超过几个后系统不能能运行

    /* *** NOTE *********************************************************** If you find your application ...

  2. Compile pam with pam_cracklib.so

    pam_cracklib.so is dependent on libcrack.so. Configure command will search libcrack.so. If it didn't ...

  3. 项目实战02:nginx 反向代理负载均衡、动静分离和缓存的实现

    目录 实验一:实现反向代理负载均衡且动静分离 1.环境准备: 2.下载编译安装tengine 3.设置代理服务器的配置文件 4.启动tengine服务 5.开启后端的web服务 6.测试 实验二:ng ...

  4. node_modules文件过长无法删除问题记录

    执行指令 rimraf node_modules

  5. QSS独门秘籍:subcontrol

    QSS是C++ Qt中的界面美化神器,其语法和CSS区别不大,但是QSS有一个独有的功能——subcontrol,这是CSS所没有的,一个widget往往由多个子部件构成,利用subcontrol可以 ...

  6. JQuery插件之【jqGrid】常用语法整理

    jqGrid常用语法整理,包含数据获取.常用函数.触发事件等 jqGrid表格数据获取相关语法 获取表格所有数据 $("#grid").jqGrid("getRowDat ...

  7. sublime----------快捷键的记录

    1.鼠标选中多行,按下 Ctrl Shift L (Command Shift L) 即可同时编辑这些行: 2.鼠标选中自定义的多行,ctrl+鼠标左键

  8. SpringBoot项目启动时链接数据库很慢

    SpringBoot项目启动时链接数据库很慢 springboot项目在启动时候,如下图所示,链接数据库很慢 解决方法:在mysql 的配置文件中 配置 skip-name-resolve

  9. db2空值、null

    1. 输入参数为字符类型,且允许为空的,可以使用COALESCE(inputParameter,'')把NULL转换成''; 2. 输入类型为整型,且允许为空的,可以使用COALESCE(inputP ...

  10. 今天整理了一下Winform用的UI插件信息

    平时主要用了一下几个比较好的UI控件: 1:IrisSkin2 皮肤插件.这是一款与编程开发相关的素材资源,主要是提供一些采用IrisSkin2.dll控件进行软件窗口换肤的素材文件,包括一些GIF图 ...