虚拟网络技术:overlay和underlay实现网路承载和隔离
overlay
在网络技术领域,指的是在网络架构上叠加的虚拟化技术,其大体是对基础网络不进行大规模修改的条件下,实现应用在网络上的承载,并能与其他网络业务分离,并且以基于ip的基础网络技术为主。Overlay技术是在现有物理网络之上构建一个虚拟网络,上层应用只与虚拟网络相关。
网络Overlay是指通过控制协议对边缘的网络设备进行网络构建和扩展
边缘设备:是指与虚拟机相连的设备
控制平面:只要负责虚拟隧道的建立维护以及主机可达性信息的通道
转发平面;承载Overlay报文的物理网络
Overlay网络技术:TRILL、VxLan、GRE、NVGRE等隧道技术;当前主流的Overlay技术有VxLAN,GRE/NVGRE和STT,这三种二层Overlay技术,均是将以太网报文承载到某种隧道层面,差异性在于选择和构造隧道的不同,而底层均是IP转发。
Underlay网络:
underlay就是当前数据中心网络基础转发架构的网络,只要数据中心网络上任意两点路由可达即可,指的是物理基础层。
虚拟网络在物理网络或者其他虚拟网络之上,用软件方法构造出的逻辑网络,以实现用户定义的网络拓扑,并满足用户特定的需求。
从静态的角度来看,网络可以表示为数据结构中的图,网络的节点(交换机和路由器)为图的顶点,而链接就是图的边,就是网络的拓扑图。
ovs:虚拟交换机
DPDK:用户态网卡驱动
VF/vNic VM网卡
CNI接口:Container Network Interface,旨在为容器平台提供网络标准化,是容器网络标准,综合考虑了灵活性、扩展性、ip分配、多网卡,这个协议连接了两个组件,容器管理系统和网络插件,它们之间通过JSON格式的文件进行通信,实现容器的网络功能。具体分为:创建容器网络上的空间ns: namespaces;把网络接口interface放到对应的网络空间、给网络接口分配ip。
不同的容器平台都需要网络功能,适配没有统一的标准,需要通过相同的接口调用不同的网络组件
目前的网络方案有:Flannel、calico、openvswitch、weave、ipvlan
NIC: network interface controller,网络接口控制器
组网underlay_ipvlan:
组网overlay_12/underlay_12:ovs
dpdk-direct: DPDK:用户态网卡驱动
phy-direct: VF/vNic VM网卡
br_tun: tunnel网桥,一个节点一个,只要作用是依据流表里的规则,对pod间跨节点通信进行vxlan封装和 转发操作
br_overlay_int: internal网桥,一个节点一个,主要作用是连通同一个节点内的pod,让同一个节点的pod可以相互通信,里面设置一个虚拟网口gw_xxx作为网关,负责扮演pod和节点间的通信媒介
br_plc_xx:policy网桥,一个pod一个,只要作用是对进入pod的报文进行过滤
br_plc_xx里设置有网络策略里定义的报文以外的其他报文进入pod
网桥和网桥,网桥与pod之间通过虚拟网口veth进行连通,veth成对出现,一端在pod上,一端在网桥上。