searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

百家争鸣的容器网络虚拟化

2023-05-29 02:20:12
43
0

一、概述

受限于底层网络基础设施的多样性影响,容器网络虚拟化尚未出现事实上的胜出者。

当前容器网络虚拟化实践依然百家争鸣,一派繁荣。

二、容器网络虚拟化方案

容器网络虚拟化社区主要有underlay、overlay以及路由三大方向技术实践:

1、underlay方案

underlay方案中容器和宿主机链接于同一层基础网络上,容器与容器、容器与节点之间网络由底层网络基础设施打通。

underlay方案示意如下图:

underlay方案中,容器内网络包到宿主机网络流转路径如下:

1)容器内数据包经本地路由至容器网口

2)数据包经vethpair(类网线)到宿主机命名空间bridge设备

3)数据包出宿主机网口进入宿主机网络

接下来,数据包将经宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

2、overlay方案

overlay方案中容器网络独立于节点网络 ,容器跨主机通信时容器网络数据包被封装进节点网络数据包中,经节点间隧道通信。

overlay方案有二层、三层overlay两种常见实现,如下为二层overlay方案示意图:

overlay方案(二层vxlan实现)中,容器内数据包到宿主机网络流转路径如下:

1)容器内数据包经本地路由表至容器网络设备

2)数据包经类网线vethpair到宿主机命名空间brdige设备

3)经宿主机路由表进入vtep设备

4)vtep设备对数据包进行封包,封装成宿主机vxlan数据包

5)数据包经宿主机网络设备进入宿主机网络

接下来,数据包将经宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

 

overlay方案(三层udp实现)中,容器内数据包到宿主机网络流转路径如下:

详细过程略

3、路由方案

路由方案中容器网络和宿主机网络分属不同网段,容器跨主机通信经路由直接投递至目标节点,无需进行二次封解包。

路由方案方案示意图如下:

路由方案中,容器内数据包到宿主机网络流转路径如下:

1)容器内数据包经本地路由表至容器网络设备

2)数据包经类网线vethpair到宿主机命名空间brdige设备

3)经宿主机路由表进入节点网络投递给目标宿主机

 

接下来,数据包将经由宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

三、网络虚拟化方案评价

网络虚拟化方案  开源实践 方案评价
overlay方案 flannel(vxlan)、flannel(udp)、calico(ipip)

overlay方案性能差,社区数据表明二层overlay性能损耗20% - 30%之间,三层overlay性能损耗高达80%。

overvlay方案对底层网络依赖少,适用构建第三方kvm虚拟化主机之上的容器云平台。

underlay方案 contiv(underlay)

underlay方案性能好,部分厂商数据表明其基于underlay方案的容器虚拟化方案性能损耗在5%左右。

underlay方案对底层网络依赖强,适用构建可管控底层网络基础设施的物理机上私有云平台场景

路由方案 calico(bgp)、contiv(bgp)、flannel(host-gw)

overlay方案性能良好,社区数据表明路由方案性能损耗在5%~10%之间。

路由方案对底层基础设施有依赖,建议根据平台对基础设施掌握程度,酌情选择适宜路由方案套件

0条评论
0 / 1000
lorland
10文章数
0粉丝数
lorland
10 文章 | 0 粉丝
原创

百家争鸣的容器网络虚拟化

2023-05-29 02:20:12
43
0

一、概述

受限于底层网络基础设施的多样性影响,容器网络虚拟化尚未出现事实上的胜出者。

当前容器网络虚拟化实践依然百家争鸣,一派繁荣。

二、容器网络虚拟化方案

容器网络虚拟化社区主要有underlay、overlay以及路由三大方向技术实践:

1、underlay方案

underlay方案中容器和宿主机链接于同一层基础网络上,容器与容器、容器与节点之间网络由底层网络基础设施打通。

underlay方案示意如下图:

underlay方案中,容器内网络包到宿主机网络流转路径如下:

1)容器内数据包经本地路由至容器网口

2)数据包经vethpair(类网线)到宿主机命名空间bridge设备

3)数据包出宿主机网口进入宿主机网络

接下来,数据包将经宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

2、overlay方案

overlay方案中容器网络独立于节点网络 ,容器跨主机通信时容器网络数据包被封装进节点网络数据包中,经节点间隧道通信。

overlay方案有二层、三层overlay两种常见实现,如下为二层overlay方案示意图:

overlay方案(二层vxlan实现)中,容器内数据包到宿主机网络流转路径如下:

1)容器内数据包经本地路由表至容器网络设备

2)数据包经类网线vethpair到宿主机命名空间brdige设备

3)经宿主机路由表进入vtep设备

4)vtep设备对数据包进行封包,封装成宿主机vxlan数据包

5)数据包经宿主机网络设备进入宿主机网络

接下来,数据包将经宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

 

overlay方案(三层udp实现)中,容器内数据包到宿主机网络流转路径如下:

详细过程略

3、路由方案

路由方案中容器网络和宿主机网络分属不同网段,容器跨主机通信经路由直接投递至目标节点,无需进行二次封解包。

路由方案方案示意图如下:

路由方案中,容器内数据包到宿主机网络流转路径如下:

1)容器内数据包经本地路由表至容器网络设备

2)数据包经类网线vethpair到宿主机命名空间brdige设备

3)经宿主机路由表进入节点网络投递给目标宿主机

 

接下来,数据包将经由宿主机网络被投递至目标节点,进一步按上图示反向路径投递给目标容器。

三、网络虚拟化方案评价

网络虚拟化方案  开源实践 方案评价
overlay方案 flannel(vxlan)、flannel(udp)、calico(ipip)

overlay方案性能差,社区数据表明二层overlay性能损耗20% - 30%之间,三层overlay性能损耗高达80%。

overvlay方案对底层网络依赖少,适用构建第三方kvm虚拟化主机之上的容器云平台。

underlay方案 contiv(underlay)

underlay方案性能好,部分厂商数据表明其基于underlay方案的容器虚拟化方案性能损耗在5%左右。

underlay方案对底层网络依赖强,适用构建可管控底层网络基础设施的物理机上私有云平台场景

路由方案 calico(bgp)、contiv(bgp)、flannel(host-gw)

overlay方案性能良好,社区数据表明路由方案性能损耗在5%~10%之间。

路由方案对底层基础设施有依赖,建议根据平台对基础设施掌握程度,酌情选择适宜路由方案套件

文章来自个人专栏
kubernetes
10 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0