Docker Overlay 工做原理

Docker 原生Overlay 网络工做流程docker

如图:有两个Container 独立的容器节点。他们经过Overlay网路进行通讯。网络


网卡设备架构

Container eth0:eth0它是Overlay网络分配的惟一的IP地址,它是veth pair虚拟设备对,做用是实现点对点的通讯,经过桥接到br0这个网桥中,能够实现不一样 NameSwitch之间容器进行通讯。spa

br0:它是Overlay默认建立的网桥。blog

VETP:对VXLAN数据包的封装与街封装。工作流

Container eth1:eth1是容器主机的默认网络,主要提供容器访问外网所提供的服务,走的默认docker网络架构,只不过他建立了docker_gwbridge这个网桥。it

docker_gwbridge:docker_gwbridge是容器所建立的网桥它替代了docker0的服务。容器

eth0:真机网卡与外界网卡链接得真机网卡,它用来转发,容器VXLAN与NAT两种网卡类型的数据包到指定的对端节点。im


发送数据包流程通信

容器Container1 发送数据包 到容器 Container2。

  • 一、容器Container1会经过Container eth0 将这个数据包发送到 10.0.0.1 的网关。
  • 二、网关将数据包发送出去后到达b20网桥。
  • 三、b20网桥针对VXLAN设备,主要用于捕获对外的数据包经过VETP进行数据包封装。
  • 四、封装好将VXLAN格式数据包交给eth0,经过UDP方式交给Container2的eth0。
  • 五、Container2收到数据包后经过VETP将数据包解封装。
  • 六、网桥经过网关将解封装的数据包转发给Container eth0,完毕通讯。

相关文章
相关标签/搜索