容器网络分类介绍

容器网络概述

与传统的虚拟化相比,容器其生命周期更短、数量密度更高、集群变更速度更快。基于这些特性,容器平台网络就必须对集群节点之间的高速通信进行充分的考量。除此之外,在企业级的容器云平台上,承载众多租户的计算负载之间资源的安全隔离,也必须要考虑到的因素。

显而易见,传统的物理网络架构无法满足容器平台高灵活性的需求,容器平台网络构建必须要有一种崭新的设计架构来满足,这便推动了容器平台网络设计的发展。

容器网络发展到目前,已经形成了Docker主导的CNM模型和Google、CoreOS、Kubernetes主导的CNI模型两种模型共存的情况。CNM和CNI并不是网络实现,他们是网络规范和网络体系。从研发的角度来看就是一些接口,主要是和网络管理相关的问题。容器平台的网络方案,通常可以从协议栈、穿越方式、隔离方法三个维度去设计方案:
在这里插入图片描述

协议栈

二层(桥接、ARP+MAC)

三层(路由转发)

二层+三层(节点内部二层转发、跨节点三层转发)

穿越方式

Overlay(隧道穿越底层基础设施)

Underlay(直接穿越底层基础设施)

隔离方法

VLAN

VXLAN

容器网络分类介绍

协议栈

二层解决方案,常见于传统机房或者虚拟化场景中,针对ARP和MAC(桥接模式)学习,广播风暴是这个方案最核心要解决的问题。众所周知,二层广播,对整个集群中节点的数量也会有严格的限制。三层解决方案一般是基于BGP协议实现路由转发,通过自主学习完善整个数据中心的路由状态。这个方案的优势是IP穿透性,可以实现IP网络透传。因为基于IP,所以其优势在于规模性,具有非常优秀的扩展性。但在实际使用过程中,受限于各个企业自身网络安全的考量,例如生产网和开发测试网隔离,或者网络本身不支持BGP,那么这个方案就受限了。二层+三层的方案,集成了前面两种方案的优势(既解决了二层规模性扩展的问题,又解决三层网络隔离受限的问题),正成为容器云网络场景下首选的协议栈层级的解决方案。

按穿越方式分类

Underlay网络

提到Underlay网络,就必须从以太网说起,以太网从最开始设计出来就是一个分布式网络,没有中心的控制节点,网路中的各个设备之间通过协议传递的方式学习网络的可达信息,由每台设备自己决定要如何转发,这直接导致了没有整体观念,不能从整个网络的角度对流量进行调控。由于要完成所有网络设备之间的互通,就必须使用通用的语言,这就是网络协议,RFC就是网络协议的法律,相当于国际法,各个设备供应商遵从国际法行事,就基本保证了整个网络世界的正常运行。Underlay就是当前数据中心网路基础转发架构的网络,只要数据中心网络上任意两点路由可达即可,指的是物理基础层。我们可以通过物理网络设备本身的技术改良、扩大设备数量、带宽规模等完善Underlay网络,其包含了一切现有的传统网络技术。

Overlay网络

Overlay技术可以分为网络Overlay,主机Overlay和混合式Overlay三大类。网络Overlay是指通过控制协议对边缘的网络设备进行网络构建和扩展,也就是本文所讲的Overlay网络技术。Overlay网络技术多种多样,一般采用TRILL、VXLAN、GRE、NVGRE等隧道技术。TRILL(Transparent Interconnection of Lots of Links)技术是电信设备厂商主推的新型环网技术;NVGRE(Network Virtualization using Generic Routing Encapsulation)STT(Stateless Transport Tunneling Protocol)是IT厂商主推的Overlay技术;以及大家非常熟悉的LAN)等基于隧道的封装技术。由于这些也都是新增的协议,均需要升级现有网络设备才能支持。Overlay网络中应用部署的位置将不受限制,网络设备可即插即用、自动配置下发,自动运行,Overlay网络业务变化,基础网络不感知,并对传统网络改造极少,最为重要的是虚拟机和物理服务器都可以接入Overlay网络中。

根据基础设施划分

VLAN

VLAN(Virtual Local Area Network)意为虚拟局域网,是在交换机实现过程中涉及到的概念,由802.1Q标准所定义。由于交换机是工作在链路层的网络设备,连接在同一台交换机的终端处于同一个三层网中,同时也处于同一个广播域。当交换机接入较多的终端时,任意一台终端发送广播报文时(例如:ARP请求),报文都会传遍整个网络。对于规模较大的组网场景,广播报文的泛滥对于网络通信将会造成较大的影响。VLAN技术为这一问题提供了解决方案,VLAN将同一网络划分为多个逻辑上的虚拟子网,并规定当收到广播报文时,仅仅在其所在VLAN中进行广播从而防止广播报文泛滥。VLAN技术在链路层的层次中实现了广播域的隔离。

随着大数据、云计算技术的兴起以及虚拟化技术的普及,VLAN技术的弊端逐渐显现出来,具体表现为如下3个方面:

(1) 虚拟化技术的发展促使大数据、云计算技术公司采用单个物理设备虚拟多台虚拟机的方式来进行组网,随着应用模块的增加,对于支持VLAN数目的要求也在提升,802.1Q标准中的最多支持4094个VLAN的能力已经无法满足当下需求。

(2) 公有云提供商的业务要求将实体网络租借给多个不同的用户,这些用户对于网络的要求有所不同,而不同用户租借的网络有很大的可能会出现IP地址、MAC地址的重叠,传统的VLAN仅仅解决了同一链路层网络广播域隔离的问题,而并没有涉及到网络地址重叠的问题,因此需要一种新的技术来保证在多个租户网络中存在地址重叠的情况下依旧能有效通信的技术。

(3) 虚拟化技术的出现增加了交换机的负担,对于大型的数据中心而言,单台交换机必须支持数十台以上主机的通信连接才足以满足应用需求,而虚拟化技术使得单台主机可以虚拟化出多台虚拟机同时运行,而每台虚拟机都会有其唯一的MAC地址。这样,为了保证集群中所有虚机可以正常通信,交换机必须保存每台虚机的MAC地址,这样就导致了交换机中的MAC表异常庞大,从而影响交换机的转发性能。

基于以上需求,VXLAN技术被提出。

VXLAN

VXLAN技术是网络Overlay技术的一种实现,对于Overlay技术,笔者的理解是:在基于物理网络拓扑的基础上通过一定的技术来构建虚拟的、不同于物理网络拓扑的逻辑网络,而物理网络的拓扑结构对于Overlay终端而言是透明的,终端不会感知到物理网络的存在,而仅仅能感知到逻辑网络结构。对于终端的视角,网络的情况和直接通过物理设备实现逻辑拓扑的效果是相同的。VXLAN技术可以基于三层网络结构来构建二层虚拟网络,通过VLAN技术可以将处于不同网段网络设备整合在同一个逻辑链路层网络中,对于终端用户而言,这些网络设备似乎“真实地”部署在了同一个链路层网络中。

相比VLAN技术,VXLAN技术具有以下的优势:

(1) 24位长度的VNI字段值可以支持更多数量的虚拟网络,解决了VLAN数目上限为4094的局限性的问题。

(2) VXLAN技术通过隧道技术在物理的三层网络中虚拟二层网络,处于VXLAN网络的终端无法察觉到VXLAN的通信过程,这样也就使得逻辑网络拓扑和物理网络拓扑实现了一定程度的解耦,网络拓扑的配置对于物理设备的配置的依赖程度有所降低,配置更灵活更方便。

(3) VLAN技术仅仅解决了二层网络广播域分割的问题,而VXLAN技术还具有多租户支持的特性,通过VXLAN分割,各个租户可以独立组网、通信,地址分配方面和多个租户之间地址冲突的问题也得到了解决。

总结

通过本章的学习,可以初步了解容器网络相关的基础概念,主要涉及到了容器网络的协议栈、穿越方式以及隔离方式。针对协议栈,到底是采用二层互通,还是采用三层互通,还是结合两种方式的优点整合一个综合的方式取决于业务场景;针对穿越方式,是采用传统的Underlay网络,还是基于SDN的Overlay网络,和客户现场情况,以及硬件设备支持的情况都有比较大的关联;同样,隔离方式采用VLAN还是VXLAN,也和场景强相关。由此可见,容器云网络的设计,需要因地制宜,因材施教,从客户需求以及现场情况发出,才能制定出一个完善的解决方案。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值