Docker OpenvSwitch 介绍 or 工作原理

Docker OpenvSwitch Network 介绍

什么是OpenVSwich

  • OpenvSwich Network:属于第三方网络项目,可以理解为是一个标准的交换机协议。
  • OpenvSwich:开放虚拟交换标准,是一种基于开源Apache2.0许可证的多层软件交换机,专门管理多租赁云计算网络环境,支持KVM、Xen等虚拟化技术。

支持以下功能:

1. 支持标准802.1Q VLAN模块的Trunk和access端口模式;

2. QoS(Quality of Service)配置,及管理;

3. 支持OpenFlow协议;

4. 支持GRE它是点到点的隧道协议、VXLAN、STT和LISP隧道;

5. 具有C和Python接口配置数据库;

6. 支持内核态和用户态的转发引擎设置;

7. 支持流量控制及监控。

主要组成部分:

  • ovs-vswitchd 一个实现交换机的守护程序
  • ovsdb-server 一个轻量级数据库,ovs-vswitchd查询以获取其配置
  • ovs-dpctl 用于配置交换机的内核模块工具
  • ovs-vsctl 用于查看和更新ovs-vswitchd的配置工具
  • ovs-appctl 一个向运行OVS守护程序发送命令的工具

还提供了openflow的工具:

  • ovs-ofctl 用于查看和控制OpenFlow交换机和控制器
  • ovs-pki 用于创建和管理公钥
  • ovs-tcpundump 解析openflow消息

Docker OpenvSwitch 工作原理

两台节点主机容器,Container通过OpenvSitch通信

1、Container eth0:veth它会将网络桥接到docker0网络。

2、Docker0:Docker网桥默认网络。

3、br0:OVS网桥,它会将Docker0网桥加入到br0网络,它会捕获到Container eth0 发出的数据包。

4、gre0:OVS网络捕获数据包后通过gre协议将数据包封装。

5、eth0:物理网卡,它会把gre数据包,转发给节点2。

6、节点2的eth0接收数据包后->交给OVS进行街封装->获取获取访问地址->装发到docker0->再交给容器的eth0。

 

 

posted @ 2018-11-03 16:16  kevin.Xiang  阅读(1437)  评论(0编辑  收藏  举报