本文主要知识来源于学校课程,部分知识来自于H3C公司教材,未经许可,禁止转载。如需转载,请联系作者并注明出处。

  1.  VLAN(Virtual LAN):我们称之为虚拟局域网,它的作用就是将物理上互连的网络在逻辑上划分为多个互不相干的网络,这些网络之间是无法通讯的,就好像互相之间没有连接一样,因此广播也就隔离开了。  

  实现原理:通过交换机的控制,某一VLAN成员发出的数据包交换机只发给同一VLAN的其它成员,而不会发给该VLAN成员以外的计算机。简言之,一个VLAN就是一个广播域。

  为什么需要VLAN?

  位于协议第2层的交换机虽然能隔离冲突域,提高每一个端口的性能,但并不能隔离广播域,不能进行子网划分,不能层次化规划网络,更无法形成网络的管理策略,因为这些功能全都属于网络的第三层———网络层。因此,如果只用交换机来构造一个大型计算机网络,将会形成一个巨大的广播域,结果是,网络的性能会降低以至无法工作,网络的管理束手无策,这样的网络是不可想象的。

  举个栗子:传统的二层交换机所有端口都属于一个广播域,这样就不便于管理和网络变化,假设一个用户现在属于工作组1,与工作组1内的用户在同一个LAN中,一段时间后要把该用户划分到工作组2中,要加入到工作组2中的LAN,那么必须重新连线。这种给网络管理带来了不方便。这样就在传统二层交换机上引入了VLAN(Virtual LAN)。每个VLAN中的所有节点在同一个广播域,每个VLAN是逻辑LAN,VLAN之间是二层隔离的。

  VLAN产生由来:交换机的设计者们借鉴了路由结构中子网的思路,得出了虚网的概念,即通过对网络中的IP地址或MAC地址或交换端口进行划分,使之分属于不同的部分,每一个部分形成一个虚拟的局域网络,共享一个单独的广播域。这样就可以把一个大型交换网络划分为许多个独立的广播域,即VLAN。

  VLAN命令配置:

  

  这么做的好处呢?(摘自H3C公司技术甜甜圈)

  (1). 广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力

  (2). 增强局域网的安全性:VLAN间不能直接通信,即一个VLAN内的用户不能和其它VLAN内的用户直接通信,而需要通过路由器或三层交换机等三层设备

  (3). 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活

  2.   跨设备的VLAN互连与802.1Q协议

  跨设备的VLAN成员互连的组网,就必然涉及到不同VLAN流量识别的问题,如下图。

  

  为了解决VLAN流量识别的问题,思科公司和IEEE分别提出了ISL和802.1Q标准。

  交换链路内协议(ISL),是思科私有协议,我们在这不详细谈。

  想看ISL帧格式我就放个图好了:封装以太网帧哦。802.1Q是插入标签,不是封装,这是差别。

  

  着重来看一下IEEE 提出的802.1Q标准是怎么解决VLAN流量识别的问题的吧?

  802.1Q协议:在跨设备转发时给报文打上VLAN信息,如打上VLAN标签,标识报文所属的VLAN,交换机通过对报文中VLAN信息的识别进行相应的转发。

  IEEE 802.1Q帧格式是在传统以太网帧格式上定义一个新的以太网帧字段。

  

  上图中的0x8100为固定字段,英文为Etype。标识报文的封装类型为以太网的802.1Q封装。

  Pri优先级主要用于当交换机出端口发生拥塞时,交换机通过识别该优先级,优先发送优先级高的数据包。

  CFI:规范格式指示器,总是被设置为0.  CFI常用于以太网类网络和令牌环类网络之间,如果在以太网端口接收的帧具有CFI,那么设置为1,表示该帧不进行转发(打这条线是因为这知识只作了解即可)

  VLAN ID: 该字段为12bit,最大支持4096个VLAN,因为2^12=4096。

  关于VLAN ID,下面给出一个具体的表,细节就不赘述了。

  

  觉得还是讲讲NATIVE VLAN比较好。

  Native VLAN:本地VLAN,一个VLAN的帧只能转发到属于同一个VLAN的端口或者干道端口。

  只有发往干道端口的帧才需要加上VLAN ID。从干道收到的帧中如果没有VLAN ID,则认为是本地VLAN(Native VLAN),默认为VLAN 1。

  ISL就没有Native VLAN这个概念了。只有IEEE 802.1Q标准才有。

  

VLAN虚拟局域网技术(一)-计算机网络的更多相关文章

  1. VLAN虚拟局域网技术(三)-计算机网络

    本文主要知识来源于学校课程,部分知识来自于H3C公司教材,未经许可,禁止转载.如需转载,请联系作者并注明出处. 本节主要介绍 pVLAN和 动态VLAN. 1.   pVLAN:英文全称Private ...

  2. VLAN虚拟局域网技术(二)-计算机网络

    本文主要知识来源于学校课程,部分知识来自于H3C及思科中国公司网页技术手册,未经许可,禁止转载.如需转载,请联系作者并注明出处. 本节主要是总结一些思科的VLAN组中的私有协议:DTP和VTP. 1. ...

  3. 虚拟局域网(VLAN)技术在企业网管理中的应用

    虚拟局域网(VLAN)技术在企业网管理中的应用 1.VLAN介绍     所谓VLAN 是指处于不同物理位置的节点根据需要组成不同的逻辑子网,即一个VLAN 就是一个逻辑广播域,它可以覆盖多个网络设备 ...

  4. 单交换机VLAN虚拟局域网划分

    1.下载Cisco模拟器 Packet Tracer 是由Cisco公司发布的一个辅助学习工具,为学习CCNA课程的网络初学者去设计.配置.排除网络故障提供了网络模拟环境.学生可在软件的图形用户界面上 ...

  5. Vlan ---虚拟局域网

    VLAN是一种将局域网(LAN)设备从逻辑上划分(注意,不是从物理上划分)成一个个网段(或者说是更小的局域网LAN),从而实现虚拟工作组(单元)的数据交换技术.VLAN(Virtual Local A ...

  6. 利用三层交换机实现VLAN间路由(计算机网络中速率、带宽、吞吐量的概念)

    1.速率 速率是指计算机网络中的主机在数字信道上,单位时间内从一端传送到另一端的数据量,即数据传输率,也称数据率或比特率.比特(bit)是数据量的最小单位,s(秒)是时间的最小单位.所以速率单位为bi ...

  7. VLAN(虚拟局域网)划分

    VLAN根据不同的需求,可以有多种划分方式: 一:静态划分 基于端口             按VLAN交换机上的物理端口和内部的PVC(永久虚电路)端口来划分 静态划分安全.可靠,易于配置与维护 二 ...

  8. 网络拓扑_配置VLAN虚拟局域网

    目的: 1.创建VLAN10,VALN20,VLAN30; 2.将端口加入VLAN 3.查看VLAN信息 拓扑图: 步骤: 1.在三层交换机中创建VLAN10,VLAN20,VLAN30 <Hu ...

  9. 计算机网络学习笔记--数据链据层之MAC子层(整理)

    概述: 为什么需要介质访问控制子层(MAC)? 介质访问控制子层(MAC)是局域网体系结构中划分的子层,多路访问链路采用共享介质连接所有站点.发送站点通过广播方式发送数据并占用整个带宽,如果有多个站点 ...

随机推荐

  1. 【BZOJ4382】[POI2015]Podział naszyjnika 堆+并查集+树状数组

    [BZOJ4382][POI2015]Podział naszyjnika Description 长度为n的一串项链,每颗珠子是k种颜色之一. 第i颗与第i-1,i+1颗珠子相邻,第n颗与第1颗也相 ...

  2. 【BZOJ3160】万径人踪灭 Manacher+FFT

    [BZOJ3160]万径人踪灭 Description Input Output Sample Input Sample Output HINT 题解:自己想出来1A,先撒花~(其实FFT部分挺裸的) ...

  3. sql优化(1)

    转自:https://blog.csdn.net/jie_liang/article/details/77340905 在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化, ...

  4. 通过手机浏览器打开APP或者跳转到下载页面.md

    目录 通过手机浏览器打开APP或者跳转到下载页面 添加 schemes 网页设置 参考链接 通过手机浏览器打开APP或者跳转到下载页面 以下仅展示最简单的例子及关键代码 由于硬件条件有限,仅测试了 A ...

  5. 巨蟒python全栈开发数据库攻略3:行记录的操作&单表查询3

    1.数据行的增删改 2.单表查询 select&where条件 3.group by&having&order by&limit

  6. 第二课作业——redis常用命令

    第二课时作业 静哥 by 2016.2.23~2016.2.22   [作业描述] 1.key string list hash结构中,每个至少完成5个命令,包含插入 修改 删除 查询,list 和h ...

  7. python系列十六:Python3 面向对象

    #!/usr/bin/python #-*-coding:gbk-*- #Python3 面向对象 '''面向对象技术简介    类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了 ...

  8. caffe使用(2)

    总体流程 https://blog.csdn.net/hjimce/article/details/48933813 https://zhuanlan.zhihu.com/p/24087905 1.编 ...

  9. pandas 如何判断指定列是否(全部)为NaN(空值)

    判断某列是否有NaN df['$open'].isnull().any() # 判断open这一列列是否有 NaN 判断某列是否全部为NaN df['$open'].isnull().all() # ...

  10. Django继承

    Django目前支持两种不同的继承方式,包括抽象基础类和多表继承. 1.抽象基础类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 cla ...