一、LAN(Local Area Network,局域网)

1.通信方式

  向目标IP地址发送ARP广播,获取目的IP地址的MAC地址,然后用单播MAC地址实现相互通信

2.LAN的特点

  1.同一LAN下的节点不需要通过三层设备(路由器)就可以通信。

  2.LAN中的结点能够互相发送广播报文,这些结点组成了一个广播域

3.LAN的不足:

  当一个LAN中的结点数量增加时,随之带来的广播风暴就会导致整个网络的瘫痪,。

  比较LOW的解决办法:

买两台交换机,两台交换机不做连接,这样两个LAN就不会相互影响。 

  靠谱解决方法:

  把一台交换机当成两台虚拟虚拟交换机,两台虚拟机交换机相互之间互不影响,并能动态的调整交换机的端口。这就是VLAN

二、VLAN

1.VLAN的特点:

1.一台物理交换机上可以有多个LAN

2.每个LAN之间的广播报文互相不可达,VLAN之间互不影响。

3.每一个VLAN就是一个广播域

2.VLAN的优点:

1.提高网络安全:不同VLAN之间的结点需要通信必须通过三层设备,这种情况下就可以在三层设备上配置访问列表,阻止部分业务流在VLAN之间的流动。

2.降低开销:不用另外再买一台物理交换机就可以实现LAN的隔离

  3.提高性能:减少逻辑组之间不必要的广播流量,提升网络性能

  4.减轻广播风暴

3.VLAN下源地址追踪:

1.帧标记(显式标记):根据数据帧进入的端口属于哪一个VLAN确定(发生在交换机的内部)。在帧进入交换机之前就决定帧属于哪一个VLAN。

  优点:立即标记VLAN

   标记机制:IEEE 802.1Q

2.帧过滤(隐式标记):交换机通过某种方式为每个VLAN保持一张MAC地址表,当帧需要转发时才做出决定

  优点:不修改帧

4.802.1Q新增标签信息

  802.1QTag的长度是4bytes,它位于以太网帧中源MAC地址和长度/类型之间。

  802.1QTag包含4个字段的含义:

  Type:长度为2bytes,表示帧类型,802.1Qtag帧中type字段取固定值0x8100,如果不支持802.1Q的设备收到802.1Q帧,则将其丢弃。

  PRI:priority字段,长度为3bit,表示以太网帧的优先级,取值范围是0~7,数值越大,优先级越高。当交换机/路由器发生传输阻塞时,优先发送优先级高的数据帧。

  CFI:Canonical FormatIndicator,长度为1bit,表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。该字段用于区分以太网帧、FDDI帧和令牌环网帧,在以太网帧中,CFI取值为0。

  VID:VLAN ID,长度为12bit,取值范围是0~4095,其中0和4095是保留值,不能给用户使用。

5.VLAN间路由:

VLAN之间的互访需要借助路由器或三层交换机

三 、VXLAN

 1.基本概念

  1.VXLAN (Virtual eXtensible Local Area Network,虚拟可拓展局域网):VXLAN是NVO3(Network Virtualization over Layer3)中的一种网络虚拟化技术,通过将VM或物理服务器发出的数据包封装在UDP中,并使用物理网络的IP/MAC作为报文头进行封装,然后在IP网络上传输,到达目的地后由隧道终结点解封装并将数据发送给目标虚拟机或物理服务器。

  2. NVE (Network Virtual Endpoint):网络虚拟边缘节点NVE,是实现网络虚拟化功能的网络实体。报文经过NVE封装转换后,NVE间就可基于三层基础网络建立二层虚拟化网络。

  3.VTEP(VXLAN Tunnel Endpoints):VTEP是VXLAN隧道端点,封装在NVE中,用于VXLAN报文的封装和解封装。

  4. VNI(VXLAN Network Identifier):VXLAN网络标识VNI类似VLAN ID,用于区分VXLAN段,不同VXLAN段的虚拟机不能直接二层相互通信。

2.VXLAN产生的背景

  云计算和大规模的虚拟化网络环境的产生。

  2.1. 虚拟机规模受网络规格限制

在大的数据中心,单台交换机连接数十台物理服务器,单台物理服务器又可以虚拟出多台虚拟机,为了保证集群中所有的虚拟机可以正常通信,交换机必须保存所有虚拟机的MAC地址,而MAC地址表的容量限制了虚拟机的数量

  2.2. 网络隔离能力限制

VLAN 使用 12-bit 标记 VLAN ID,最多支持 4094 个 VLAN,这对大型云部署会成为瓶颈。VXLAN 的 ID (VNI 或者 VNID)则用 24-bit 标记,支持 16777216 个二层网段。

  2.3.虚拟机迁移范围受网络架构限制

  虚拟机启动后,可能由于服务器资源等问题(如CPU过高,内存不够等),需要将虚拟机迁移到新的服务器上。为了保证虚拟机迁移过程中业务不中断,则需要保证虚拟机的IP地址、MAC地址等参数保持不变,这就要求业务网络是一个二层网络,且要求网络本身具备多路径的冗余备份和可靠性。参考(http://developer.huawei.com/ict/cn/site-agile-network/article/site-doc-vxlan/

3.VXLAN的优势

  1. 支持更多的二层网段。

     VLAN 使用 12-bit 标记 VLAN ID,最多支持 4094 个 VLAN,这对大型云部署会成为瓶颈。VXLAN 的 ID (VNI 或者 VNID)则用 24-bit 标记,支持 16777216 个二层网段。

  2. 能更好地利用已有的网络路径。

    VLAN 使用 Spanning Tree Protocol 避免环路,这会导致有一半的网络路径被 block 掉。VXLAN 的数据包是封装到 UDP 通过三层传输和转发的,可以使用所有的路径。

  3. 避免物理交换机 MAC 表耗尽。

    VXLAN将虚拟机发出的数据包封装在UDP中,并使用物理网络的IP/MAC地址作为外层头进行封装,对网络只表现为封装后的参数。因此,极大降低了大二层网络对MAC地址规格的需 求。由于采用隧道机制,TOR (Top on Rack) 交换机无需在 MAC 表中记录虚拟机的信息。

  4. 针对虚拟机迁移范围受网络架构限制

    通过VXLAN构建大二层网络,保证了在虚拟迁移时虚拟机的IP地址、MAC地址等参数保持不变。

4.VXLAN的报文格式

5.VXLAN包转发流程

  图中 Host-A 和 Host-B 位于 VNI 10 的 VXLAN,通过 VTEP-1 和 VTEP-2 之间建立的 VXLAN 隧道通信。数据传输过程如下:

  1. Host-A 向 Host-B 发送数据时,Host-B 的 MAC 和 IP 作为数据包的目标 MAC 和 IP,Host-A 的 MAC 作为数据包的源 MAC 和 IP,然后通过 VTEP-1 将数据发送出去。

  2. VTEP-1 从自己维护的映射表中找到 MAC-B 对应的 VTEP-2,然后执行 VXLAN 封装,加上 VXLAN 头,UDP 头,以及外层 IP 和 MAC 头。此时的外层 IP 头,目标地址为 VTEP-2 的 IP,源地址为 VTEP-1 的 IP。同时由于下一跳是 Router-1,所以外层 MAC 头中目标地址为 Router-1 的 MAC。

  3. 数据包从 VTEP-1 发送出后,外部网络的路由器会依据外层 IP 头进行路由,最后到达与 VTEP-2 连接的路由器 Router-2。

  4. Router-2 将数据包发送给 VTEP-2。VTEP-2 负责解封数据包,依次去掉外层 MAC 头,外层 IP 头,UDP 头 和 VXLAN 头。VTEP-2 依据目标 MAC 地址将数据包发送给 Host-B。

6.关于VXLAN的网关

  

LAN VLAN与VXLAN学习笔记的更多相关文章

  1. Vxlan学习笔记——原理

    1. 为什么需要Vxlan 普通的VLAN数量只有4096个,无法满足大规模云计算IDC的需求,而IDC为何需求那么多VLAN呢,因为目前大部分IDC内部结构主要分为两种L2,L3.L2结构里面,所有 ...

  2. Vxlan学习笔记——原理(转)

    文章转自http://www.cnblogs.com/hbgzy/p/5279269.html 1. 为什么需要Vxlan 普通的VLAN数量只有4096个,无法满足大规模云计算IDC的需求,而IDC ...

  3. Vxlan学习笔记——实现

    1. 创建NVI NVI(Network Virtual Instance)网络虚拟实例,是VTEP上为一个VXLAN提供L2交换服务的虚拟交换实例,NVI和VXLAN ID一一对应.别和VNI混了. ...

  4. 网络协议学习笔记(二)物理层到MAC层,交换机和VLAN,ICMP与ping原理

    概述 之前网络学习笔记主要讲解了IP的诞生,或者说整个操作系统的诞生,一旦有了IP,就可以在网络的环境里和其他的机器展开沟通了.现在开始给大家讲解关于网络底层的相关知识. 从物理层到MAC层:如何在宿 ...

  5. 交换机安全学习笔记 第九~十章 HSRP VRRP

    HSRP  (Hot Standby Router Protocol) 热备份路由器协议 思科私有 HSRP消息使用UDP 端口号 1985(IPv6时为2029) 使用多播地址 224.0.0.2( ...

  6. Caliburn.Micro学习笔记(四)----IHandle<T>实现多语言功能

    Caliburn.Micro学习笔记目录 说一下IHandle<T>实现多语言功能 因为Caliburn.Micro是基于MvvM的UI与codebehind分离, binding可以是双 ...

  7. TCP/IP协议学习笔记

    计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...

  8. Oracle RAC学习笔记:基本概念及入门

    Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章]    oracle 10g real applica ...

  9. openstack学习笔记一 虚拟机启动过程代码跟踪

    openstack学习笔记一 虚拟机启动过程代码跟踪 本文主要通过对虚拟机创建过程的代码跟踪.观察虚拟机启动任务状态的变化,来透彻理解openstack各组件之间的作用过程. 当从horizon界面发 ...

随机推荐

  1. 靶场练习--sqli(3&4)

    第三关 先解决一下第二关遗留下来的问题,嘻嘻.看来数据库原理应当过一遍~ 1.首先判断是否有SQL注入,然后再看是数字型.字符型.发现这里是字符型. 2.order by 查询字段数,记得后面要加一个 ...

  2. 07.Linux-CentOS系统库文件libaudit.so.1丢失问题

    问题:缺少共享库文件sudo: error while loading shared libraries: libaudit.so.1: cannot open shared object file: ...

  3. python数字图像处理(五) 图像的退化和复原

    import cv2 import numpy as np import matplotlib.pyplot as plt import scipy import scipy.stats %matpl ...

  4. 通过URL方式动态修改logback level级别

    import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ch.qos.logback.classic.Level; import ...

  5. poj 2505 乘法博弈论

    转自:http://hzwer.com/1921.html 题目大意: 题意:Stan从1开始,可以乘上2~9中任何一个数,Ollie也如此操作,只到某个人本回合的操作超过N为之..1<N< ...

  6. 向指定URL 发送POST请求的方法

    java发送psot请求: package com.tea.web.admin; import java.io.BufferedReader; import java.io.IOException; ...

  7. centos 6.5 配置阿里云 yum 镜像

    配置国内镜像目的是为了加速软件下载安装速度,参考链接:http://mirrors.aliyun.com/help/centos 备份.养成文件操作前备份的习惯 cd /etc/yum.repos.d ...

  8. 【优化】MySQL千万级大表优化解决方案

    问题概述 使用阿里云rds for MySQL数据库(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死.严重影响业务 ...

  9. Java线程与线程、进程与进程之间通信方式

    1.1 基本概念以及线程与进程之间的区别联系 关于进程和线程,首先从定义上理解就有所不同: 进程是具有一定独立功能的程序.它是系统进行资源分配和调度的一个独立单位,重点在系统调度和单独的单位,也就是说 ...

  10. Oracle 包的学习

    (1)包是一种数据库对象,相当于一个容器.将逻辑上相关的过程.函数.变量.常量和游标组合成一个更大的单位.用户可以从其他 PL/SQL 块中对其进行引用 (2)包类似于C++和JAVA语言中的类,其中 ...