vxlan

VXLAN篇之初识

邮差的信 提交于 2019-12-27 21:34:41
在如今的网络世界,如果你还不知道VXLAN那么你就真的是out了。。。不管是各个厂商,还是各个论坛,都会或多或少的有一些VXLAN的文章,谈主也赶个时髦整理一些以前学习过的VXLAN知识。Ok,第一篇开始~ 一、什么是VXLAN 传统的802.1Q VLAN 标识符只有12 Bits,12 Bits表示最大可以有4096个唯一的二层网络分段。VXLAN扩展至了24 Bits,24 Bits表示最大可以有1600万个唯一的二层网络分段。 在虚拟化大量应用的今天,如果仍然使用802.1Q VLAN,那么VM 移动会被限制在本VLAN。使用VXLAN 封装,原始数据帧会被封装成MAC in UDP,这样,就允许二层网络连接跨越三层路由网络。 同时,保证VM迁移前后的IP地址、MAC地址不变。PS:本篇还讲不到,敬请期待后续~ 二、VXLAN 帧格式 从上图可知, 1、除原始数据帧外,外层头部需要消耗额外Bytes(上图几个header相加即可)。PS:如果有需要,我们就需要修改交换机接口MTU以适应VXLAN数据包,看具体业务包大小。 2、UDP 源端口:VTEP设备动态分配的。通过内层头部的L2/L3/L4信息做Hash计算得出。 3、UDP目的端口:固定的使用4789。 4、Outer IP:IP首部的源IP地址为源端VTEP的IP地址,目的IP地址为目的端VTEP的IP地址。 5

VXLAN和外部连接

懵懂的女人 提交于 2019-12-20 06:43:29
本文将介绍以下内容: VXLAN 二层和三层外部连接方式; VXLAN 外部网络和共享业务; 1 VXLAN外部连接方式 VXLAN通过边界节点和外部连接,边界节点负责对VXLAN进行解封装,和外部交换路由,边界节点有两种选择: 使用spine作为边界节点。在使用spine作为边界节点时,为了使spine上路由的一致性,建议所有的spine都和外部连接。如图: 图中spine还承担了RR,RP,VTEP的角色。 使用专门的leaf作为边界节点。这种情况下,对于南北流量,增加了额外的一跳;但也使得spine不用承担VTEP功能,减轻VTEP负担。 1.1 VXLAN 3层外部连接 VXLAN边界节点对出方向的VXLAN流量进行解封装,同时保持数据包中关于VRF,或租户信息。可使用的方法包括VRF Lite , LISP, MPLS L3 VPN。在介绍这些方式前,先介绍边界节点和外部的连接方式。 1.1.1 全互联模型和U形模型 全互联模型连接如图: 该模型中,每个边界节点和所有外部设备互联,保证网络具有足够的弹性;边界节点之间不需要线互联,直接和外部交换路由,无需在两台边界设备之间进行路由同步。全互联模型不会产生流量黑洞问题。 另一种可选的模型时U形连接,如图: 该模型中,每台边界节点和一台外部设备相连,两台边界节点相连。 1.1.2 VRF Lite /Inter-As

building data centers vxlan BGP EVNP

我与影子孤独终老i 提交于 2019-12-19 12:53:27
书名:building data centers vxlan BGP EVNP,A Cisco NX-OS Perspective 出版社:cisco press 语言:英文 页数:401(电子书) 内容:介绍了VXLAN出现背景,原理,实现,和多种场景下VXLAN的部署。原理方面主要内容包括,标准VXLAN实现原理,evnp实现,数据包转发流程,IRB,anycast gateway ,vPC集成等;场景方面介绍外部连接,multi-pod和DCI,集成服务等。 阅读时间:2019年12月; 评价:系统全面介绍了VLXAN的各个方面,但没有很深入,例如IRB,转发流程这些没有介绍得很详细,如果想要更深入VXLAN,IETF,RFC文档时很好的推荐。 来源: CSDN 作者: 灵气小王子 链接: https://blog.csdn.net/qq_43691045/article/details/103610947

Neutron 理解 (3): Open vSwitch + GRE/VxLAN 组网 [Netruon Open vSwitch + GRE/VxLAN Virutal Network]

会有一股神秘感。 提交于 2019-12-18 16:41:38
学习 Neutron 系列文章: (1) Neutron 所实现的虚拟化网络 (2) Neutron OpenvSwitch + VLAN 虚拟网络 (3) Neutron OpenvSwitch + GRE/VxLAN 虚拟网络 (4) Neutron OVS OpenFlow 流表 和 L2 Population (5) Neutron DHCP Agent (6) Neutron L3 Agent (7) Neutron LBaas (8) Neutron Security Group (9) Neutron FWaas 和 Nova Security Group (10) Neutron VPNaas (11) Neutron DVR (12) Neutron VRRP (13) High Availability (HA) 目前,OpenStack Neutron 支持使用两种隧道网络技术 通用路由封装(GRE) 和 VxLAN 来实现虚拟的二层网络。这两种技术大致看起来非常相似,都是需要使用 OpenStack 在计算和网络节点上建立隧道来传输封装的虚机发出的数据帧: 在Neutron 中使用 GRE/VxLAN 时的配置也几乎完全相同。具体可以参考我已有的几篇文章: 探索 OpenStack 之(8):Neutron 深入探索之 OVS + GRE 之 完整网络流程

k8s集群的搭建之三:flannel

ぐ巨炮叔叔 提交于 2019-12-17 06:39:44
一介绍 flannel是CoreOS提供用于解决Dokcer集群跨主机通讯的覆盖网络工具。它的主要思路是:预先留出一个网段,每个主机使用其中一部分,然后每个容器被分配不同的ip;让所有的容器认为大家在同一个直连的网络,底层通过UDP/VxLAN等进行报文的封装和转发。flannel是Overlay网络的一种,也是将源数据包封装在另一种网络包里面进行路由转发和通信,目前已经支持UDP,VXLAN,host-gw,AWS,VPC,GCE路由等级传输,推荐 vxlan或者host-gw 二搭建(这里以两台为例) 2.1 分配网段,封装类型为vxlan,高效,稳定(master上执行) etcdctl --ca-file=/etc/etcd/ssl/etcd-root-ca.pem --cert-file=/etc/etcd/ssl/etcd.pem --key-file=/etc/etcd/ssl/etcd-key.pem \ --endpoints=https://192.168.137.66:2379,https://192.168.137.16:2379 set /coreos.com/network/config '{ "Network": "172.17.0.0/16", "Backend": {"Type": "vxlan"}} 查看分配的结果: [root@k8s

IE-LAB网络实验室:简单了解vxlan技术(1)

萝らか妹 提交于 2019-12-11 20:35:33
VLAN (Virtual Local Area Network)意为虚拟局域网,是在交换机实现过程中涉及到的概念,由802.1Q标准所定义。由于交换机是工作在链路层的网络设备,连接在同一台交换机的终端处于同一个三层网中,同时也处于同一个广播域。当交换机接入较多的终端时,任意一台终端发送广播报文时(例如:ARP请求),报文都会传遍整个网络。对于规模较大的组网场景,广播报文的泛滥对于网络通信将会造成较大的影响。VLAN技术为这一问题提供了解决方案,VLAN将同一网络划分为多个逻辑上的虚拟子网,并规定当收到广播报文时,仅仅在其所在VLAN中进行广播从而防止广播报文泛滥。VLAN技术在链路层的层次中实现了广播域的隔离。 VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网),是由IETF定义的NVO3(Network Virtualization over Layer 3)标准技术之一,采用L2 over L4(MAC-in-UDP)的报文封装模式,将二层报文用三层协议进行封装,可实现二层网络在三层范围内进行扩展,同时满足数据中心大二层虚拟迁移和多租户的需求。 NVO3是基于三层IP overlay网络构建虚拟网络的技术的统称,VXLAN只是NVO3技术之一。除此之外,比较有代表性的还有NVGRE、STT。 任何技术的产生

Linux运维工程师资源汇总---OpenStack专题

只谈情不闲聊 提交于 2019-12-07 02:13:55
OpenStack专题(已更新12.19) http://dwz.cn/yZdBi openstack网络架构(nova-network/neutron) openstack网络体系中,网络技术没有创新,但用到的技术点非常庞杂,包括bridge、vlan、gre、vxlan、ovs、openflow、sdn、iptables等,当然这里不会做具体技术介绍,概述技术,主要将其与openstack的结合点做详细分析。 nova-network网络架构 在nova-network中,其网络模型包括flat、dhcp flat、vlan,用到的技术主要有bridge、vlan, dhcp flat多网络节点架构图如下所示: 优点 :结构简单,稳定 缺点 :所有租户都在一个水平面上,租户之间没有隔离,由于所有租户都在一个子网内,当大规模部署后,其广播风暴将会是不小的负面因素,至于这种模型其vm的上限,笔者还没有条件测试。 vlan架构如下所示 : 为租户创建独占的 bridge 创建 vlan 接口 vlan100 ,依据 802.1q 协议打 vlan id Dnsmasq 监听网桥网关,负责 fixed ip 的分配 switch port 设定为 chunk mode eth0 负责 vm 之间的数据通信, eth1 负责外网访问 vlan模型: 优点 :租户有隔离 缺点

OpenStack(一)——OpenStack的相关概念

假装没事ソ 提交于 2019-12-05 06:48:09
(1).OpenStack概述   OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。   OpenStack是一个旨在为公共及私有云的建设与管理提供软件的开源项目,支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack能够将诸如计算能力、存储、网络和软件等资源抽象成服务,以便让用户可以通过互联网远程来享用,付费的形式也变得因需而定,调整方便,拥有极强的虚拟可扩展性。 (2).OpenStack的作用   OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(IaaS)资源的通用前端。  1)IaaS   IaaS(Infrastructure as a Service),即基础设施即服务。消费者通过Internet可以从完善的计算机基础设施获取服务,这类服务称为基础设施即服务。基于 Internet 的服务(如存储和数据库)是 IaaS的一部分。   例如:前往阿里云、腾讯云、百度云、华为云购买一台云主机,选择基础设施(CPU、内存、硬盘)。  2)PaaS   PaaS是Platform

SDN实验---OVS了解(转载)

倖福魔咒の 提交于 2019-12-04 20:25:23
转载自: https://opengers.github.io/openstack/openstack-base-use-openvswitch/ 一:Open vSwitch介绍 (一)介绍 在过去,数据中心的服务器是直接连在硬件交换机上,后来VMware实现了服务器虚拟化技术,使虚拟服务器(VMs)能够连接在虚拟交换机上,借助这个虚拟交换机,可以为服务器上运行的VMs或容器提供逻辑的虚拟的以太网接口,这些逻辑接口都连接到虚拟交换机上,有三种比较流行的虚拟交换机: VMware virtual switch, Cisco Nexus 1000V,和Open vSwitch Open vSwitch(OVS)是运行在虚拟化平台上的虚拟交换机,其支持OpenFlow协议,也支持gre/vxlan/IPsec等隧道技术。在OVS之前,基于Linux的虚拟化平台比如KVM或Xen上,缺少一个功能丰富的虚拟交换机,因此OVS迅速崛起并开始在Xen/KVM中流行起来,并且应用于越来越多的开源项目,比如openstack neutron中的网络解决方案 在虚拟交换机的Flow控制器或管理工具方面,一些商业产品都集成有控制器或管理工具,比如Cisco 1000V的Virtual Supervisor Manager(VSM),VMware的分布式交换机中的vCenter

DOCKER学习_005:Flannel网络配置

孤街浪徒 提交于 2019-12-04 12:12:45
一 简介 Flannel是一种基于overlay网络的跨主机容器网络解决方案,也就是将TCP数据包封装在另一种网络包里面进行路由转发和通信, Flannel是CoreOS开发,专门用于docker多机互联的一个工具,让集群中的不同节点主机创建的容器都具有全集群唯一的虚拟ip地址 Flannel使用go语言编写 二 Flannel实现原理 2.1原理说明 Flannel为每个host分配一个subnet,容器从这个subnet中分配IP,这些IP可以在host间路由,容器间无需使用nat和端口映射即可实现跨主机通信 每个subnet都是从一个更大的IP池中划分的,flannel会在每个主机上运行一个叫flanneld的agent,其职责就是从池子中分配subnet Flannel使用etcd存放网络配置、已分配 的subnet、host的IP等信息 Flannel数据包在主机间转发是由backend实现的,目前已经支持UDP、VxLAN、host-gw、AWS VPC和GCE路由等多种backend 2.2 数据转发流程 容器直接使用目标容器的ip访问,默认通过容器内部的eth0发送出去。 报文通过veth pair被发送到vethXXX。 vethXXX是直接连接到虚拟交换机docker0的,报文通过虚拟bridge docker0发送出去。 查找路由表