1. 什么是虚拟网络?

答:从架构角度考虑,我们可以采用与服务器虚拟化引入Hypervisor的方式一样,引入Nypervisor或者叫“虚拟网络管理平台”实现虚拟网络。虚拟网络必须像虚拟机一样,脱离物理网络设备,能够随时被创建、删除、扩展、收缩,实现高度灵活性。

2. 什么是VXLAN?

答:VXLAN全称Virtual eXtensible LAN,是一种覆盖网络技术或隧道技术。VXLAN将虚拟机发出的数据包封装在UDP中,并使用物理网络的IP/MAC作为outer-header进行封装,然后在物理IP网上传输,到达目的地后由隧道终结点解封并将数据发送给目标虚拟机。

3. VLAN、虚拟网卡、VPN、虚拟交换机,这些不都是虚拟网络技术嘛,那你这边指的虚拟网络和他们有什么区别?

答:这些技术仅用于解决某一个问题,但没有一个能够呈现完整的网络给用户。所谓完整的网络,我的理解是能够提供L2/L3,甚至L4/L7服务的网络,它不仅仅是交换机或路由器,它还能提供负载均衡、防火墙、ACL、VPN、NAT、DHCP、DNS、QoS等高层服务。而所有这些服务,必须能够在一个能够被单独创建出来的虚拟网络中实现。所以,我们必须有新的方式来实现完整的虚拟网络

4. VXLAN实现了完整的虚拟网络了吗?

答:没有。VXLAN更多的注重workload mobility,它打破了传统二层网络的限制,能够让跨IP子网传输同一个虚拟二层网络的MAC帧,使得虚拟机的移动不再受二层限制。因为跨三层的虚拟机移动是必需要更改IP的,而IP的更改,意味着与之绑定的N多策略也需要跟着变,非常不灵活。总的来说,VXLAN提供了二层网络框架,为实现上层网络服务虚拟化提供了基础。

5. VXLAN是实现网络虚拟化的唯一方式吗?

答:不是。VXLAN是一种网络覆盖技术实现二层虚拟化,如果需要三层以上服务,依旧需要额外的手段。另外,以SDN虚拟化控制器来分片网络的方式也能实现网络虚拟化。VXLAN也不是唯一的覆盖技术,微软NVGRE,Nicira STT都是同类实现。

6. 虚拟机如何连接到虚拟网络?

答:取决于具体实现。VMware ESXi虚拟机通过为虚拟机指定network label连接到VXLAN segment。而Network label就是virtual distributed switch上的port group。

7. VXLAN虚拟网络之间如何隔离?

答:通过VXLAN header中的VNI字段,这就相当于VLAN ID。不同的是,VNI是一个24bits的字段,可以实现1.6千万个虚拟网络,而VLAN只有4096个,在多租户的云计算环境中,4096个ID显然是不够的。

8. VXLAN封装是由谁来做的?

答:在VMWARE vCNS环境中,VXLAN的封装和解封装是由运行在ESXi上的一个内核模块,virtual tunnel endpoint(VTEP)来实现的。VTEP维护一张映射表,能够知道目标虚拟机所在的目标ESXi的位置。VMware VTEP会自动创建vmkernel port并为其分配IP地址与物理网络通信

9. VXLAN如何处理广播、多播和未知目的地单播?

答:VXLAN使用IP多播技术处理广播、多播和未知目的单播。每个VXLAN与一个多播地址绑定,从而确保来自虚拟网络的广播不会泛洪到物理交换机的所有端口。

10. VTEP只能运行在ESXi中吗?

答:不是。VTEP根据具体实现可以运行在单独的设备中,以软件或硬件的方式实现。

11. 如何虚拟化实现三层以上的服务?

答:VMware vCNS将L3以上的服务以edge appliance的方式实现,支持NAT,静态路由、VPN、负载均衡、防火墙、DNS、DHCP。

12. VXLAN之间如何通信?

答:必须通过edge appliance路由,就向VLAN间通信需要走一路由一样。

虚拟网络学习笔记之一:VXLAN的更多相关文章

  1. Linux网络学习笔记(二):域名解析(DNS)——以 CoreDNS 为例

    个人笔记,观点不一定正确. 适合对 Kubernetes 有一定了解的同学. 前言 最近一直在学习 Kubernetes,但是手头没有个自有域名,要测试 ingress 就比较麻烦,每次都是手动改 h ...

  2. 网络学习笔记(三):HTTP缓存

      HTTP缓存是一种保存资源副本并在下次请求时直接使用该副本的技术,合理的使用缓存可以有效的提升web性能.   浏览器将js文件.css文件.图片等资源缓存,当下次请求这些资源时,可以不发送网络请 ...

  3. FC网络学习笔记01

    1.Fibre Channel 也就是“网状通道”的意思,简称FC,可以称其为FC协议.FC网络或FC互联. 2.像TCP/IP一样,FC协议集同样具备TCP/IP协议集以及以太网中的概念,比如FC交 ...

  4. FC网络学习笔记02 -网络配置方法

    随着新一代飞机的综合化航电系统对通信需求的不断提高,传统的ARINC429.1553B总线的传输速率分别只有100Kbps和1Mbps,其带宽已远远不 论文联盟 http://Www.LWlm.cOm ...

  5. 网络学习笔记----01--pathping跟踪数据包路径

    操作系统win7 Pathping主要用于提供有关在来源和目标之间的中间跃点处的网络滞后和网络丢失的信息. Pathping将多个回显请求消息发送到来源和目标之间的各个路由器一段时间,然后根据各个路由 ...

  6. 网络学习笔记(二):TCP可靠传输原理

      TCP数据段作为IP数据报的数据部分来传输的,IP层提供尽最大努力服务,却不保证数据可靠传输.TCP想要提供可靠传输,需要采取一定的措施来让不可靠的传输信道提供可靠传输服务.比如:出现差错时,让发 ...

  7. 网络学习笔记(一):TCP连接的建立与关闭

      五层网络模型分为:物理层.数据链路层.网络层.传输层.应用层.其中,传输层有两种主要协议:面向连接的TCP(Transmission Control Protocol 传输控制协议).无连接的UD ...

  8. 网络学习笔记:TCP/IP连网和Internet

    1.网关 由硬件和软件组成,实现不同网段间的数据传送. 常用路由器充当网关. 网关通常维护一份路由表,但只有少量的编址信息.它用这些信息把数据转发到知道更多信息的网关. 组成互联网骨干的网关称为核心网 ...

  9. 网络学习笔记----02--IGMP组播、ARP

    IGMP组播 :在路由器的接口上运行,周期性扫描本网段是否有绑定某个多播地址的计算机. ARP,全称Address Resolution Protoco,将广播中的IP地址解析成MAC地址 查看MAC ...

随机推荐

  1. 转载:MySQL:亲测备份策略实例(线上真实备份案例)

    是否为线上库的备份而烦恼过,这里提供一个完整的备份从属数据库的备份方案,亲测可用 说明: 备份从库,按周计,每周进行一次全备 每周一的早上六点进行全备,其他时间备份中继日志 在从库上启用rsync服务 ...

  2. CBSN NEWS

    https://www.cbsnews.com/video/fatal-crossing/

  3. Qt文件系统之QFile

    QFile文件操作 文件打开方式: QIODevice::NotOpen    0x0000   设备不打开.QIODevice::ReadOnly    0x0001   设备 以只读的方式打开.Q ...

  4. hex转mif文件 verilog

    用FPGA来跑ARM 核的时候,刚开始将Keil编译产生的hex文件拿来仿真和下到板子上的时候,发现程序运行不正确.细细观察仿真波形发现,在Altera的ROM IP中直接调用Keil产生的hex文件 ...

  5. C# & JAVA:读写文件

    using System; using System.IO; using System.Text; namespace ConsoleApplication4 { class Program { pu ...

  6. Z 字形变换

    将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I R E T ...

  7. mac与Windows系统支持软件汇总

    踩过的坑,记录下

  8. 【Appium自学】Android studio安装与配置(转)

    转自链接:https://www.cnblogs.com/xiadewang/p/7820377.html 1.首先下载Android studio安装包. 可以从http://www.android ...

  9. 装python package 时,conda提示会升级python2到python3,那可能是你的windows不支持py2env下的此包。

    装python package 时,conda提示会升级python2到python3, 那可能是你的windows不支持py2env下的此包.比如:win 下,tensorflow就不支持py2的环 ...

  10. python:windows下python2.7安装mysql-python失败【转】

    转自:https://www.cnblogs.com/yujiebingqing/p/9633476.html 当我们尝试用: 1 pip install mysql-python #并不是MySQL ...