一、内容来源

本文是对下面这篇文章的总结,写的很全、很细致、干货满满,强力推荐:
《Tagged, UnTagged and Native VLANS Tutorial – A Quick Guide about What they Are?》

二、为什么引入VLAN?

  1. 早期设备间通过集线器Hub) 来连接,通过集线器连接的设备之间属于同一个冲突域,即:同一时刻只能有一个设备发送数据,否则发生冲突,发生冲突后只能延时后重发
    集线器会将收到的Packet)全部都转发到所有已连接设备。若连接的设备越多,转发的无效报文就越多,通信链路会“很忙”,效率越低。

  2. 交换机Switche)的引入解决了冲突域的问题,会动态维护MAC地址所属端口,只有在不知道MAC地址所属端口时才广播(也称泛洪),即:“非必要不广播”。

  3. 通过交换机的特性可知:用交换机连接的设备之间是可以通信的,若不想让两个设备之间通信,只能连接到不同的且独立的交换机。

  4. 对于一个大型公司或是组织,若是通过“插拔交换机”来实现内部访问的控制,未免太低效甚至是不可能的,故引入了VLAN,显然VLAN是需要交换机支持的。


VLAN可以这么理解
VLAN是对LAN进行分组(分隔)的一种方法。原本LAN内设备间都可以通信,通过VLAN划分后,变成了LAN内只有具有相同组ID(VLAN ID)的设备间可以通信。

三、VLAN(802.1Q)基本概念及其交换机的处理

  1. VLAN协议格式:在以太网包的类型(或长度)字段的位置插入一个4字节的标签。

  2. 标签格式:2字节TPID,即:Tag Protocol Identifier,标签协议标识,取固定值:0x8100) + 0.5字节优先级,取值越大优先级越高) + 1.5字节VLAN ID,0x000和0xfff做保留

  3. 包分类:插入VLAN标签的称为标签包tagged packet),未插入VLAN标签的称为非标签包untagged packet)。

  4. 交换机支持VLAN:
    1)端口分类:用于连接设备的称为非标签端口untagged ports,思科称为:access ports),用于交换机(或支持VLAN的设备)之间连接的称为标签端口tagged ports,思科称为:trunk ports
    2)标签端口tagged ports):收到非标签包,插入本征VLAN(Native Vlan)的ID后再发送;收到标签包时,直接发送,不替换VLAN ID。
    3)非标签端口untagged ports):收到设备的非标签包时,插入端口配置的VLAN ID后再发送;收到设备的标签包时,若包的VLAN ID与端口的配置的ID不符,则丢弃。向设备发送的包为去掉标签后的非标签包。
    4)同一个交换机下:VLAN相同的端口才能通信,且通信时采用非标签包通信。

笔记:VLAN及交换机处理详细教程(Tagged, UnTagged and Native VLANS Tutorial)相关推荐

  1. notability整理归档_5000 字干货:iPad 笔记神器《Notability》详细教程,助你开启学霸之路...

    编者按:本文来自"爱范儿",作者:Tommy Sun:36氪经授权发布. 随着硬件与系统的不断发展,现在的 iPad 已经可以称得上是一个得力的生产力工具,虽然很多人都是「买前生产 ...

  2. [安卓开发笔记一]Android开发配置opencv环境超详细教程

    [安卓开发笔记一]Android开发配置opencv环境超详细教程 [更新于 2022年4月] 再次提醒,建议现在看到这篇文章的,仅仅把此文做一个流程参考,4年前android studio就使用cm ...

  3. 计算机与交换机基本网络设置方法,交换机配置方法 网络交换机的详细配置方法(图文教程)...

    在"傻瓜"型交换机肆意的今天,如何配置交换机对很多人来说都是一门高深的学问,甚至在被问及交换机如何配置时,有人会反问道:交换机还需要配置的么? 确实,交换机的配置过程复杂,而且根据 ...

  4. 【小程序】微信小程序云开发笔记详细教程(建议收藏)

    1- 前言 1.1 微信云开发是什么? 微信云开发是微信团队联合腾讯云推出的专业的小程序开发服务. 开发者可以使用云开发快速开发小程序.小游戏.公众号网页等,并且原生打通微信开放能力. 开发者无需搭建 ...

  5. tensorflow学习笔记九:将 TensorFlow 移植到 Android手机,实现物体识别、行人检测和图像风格迁移详细教程

    2017/02/23 更新 贴一个TensorFlow 2017开发者大会的Mobile专题演讲 移动和嵌入式TensorFlow 这里面有重点讲到本文介绍的三个例子,以及其他的移动和嵌入式方面的TF ...

  6. Linux系统双网卡聚合超详细教程

    Linux系统双网卡聚合超详细教程 将多个物理网卡聚合在一起,从而实现冗错和提高吞吐量 网络组不同于旧版中bonding技术,提供更好的性能和扩展性 网络组由内核驱动和teamd守护进程实现. 主要分 ...

  7. 网吧使用多路宽带线路详细教程(图文)

    网吧使用多路宽带线路详细教程(图文) 作者:下岗老农 来源:天下网吧联盟 发布时间:2007.01.10 很多网吧的经营者都在寻找经济有效的扩容办法.增加宽带线路是一个常用的办法. 但增加之后,怎样才 ...

  8. 手把手从零开始搭建k8s集群超详细教程

    本教程根据B站课程云原生Java架构师的第一课K8s+Docker+KubeSphere+DevOps同步所做笔记教程 k8s集群搭建超详细教程 1. 基本环境搭建 1. 创建私有网络 2. 创建服务 ...

  9. DiscuzX3.2,3.3升级DiscuzX3.4的详细教程!

    DiscuzX3.4官方 Git 地址:https://gitee.com/ComsenzDiscuz/DiscuzX DiscuzX3.4下载地址:Git/SVN下载地址  http://gitee ...

最新文章

  1. python下的orm基本操作(1)--Mysql下的CRUD简单操作(含源码DEMO)
  2. sqlserver创建对于job失败_创建维护计划失败创建 对于 JobStep“子计划”失败
  3. MIT的这个AI,专治抗生素滥用,二次抗生素直降67%
  4. 深入理解 C 指针阅读笔记 -- 第六章
  5. [转]PageRank算法
  6. [JavaScript]为JS处理二进制数据提供可能性的WEB API
  7. VTK:重采样折线用法实战
  8. 13 | 答疑(一):无法模拟出 RES 中断的问题,怎么办?
  9. miniGUI安装笔记(转)
  10. 第4章 Python 数字图像处理(DIP) - 频率域滤波11 - 使用高通滤波器锐化图像
  11. java学习(135):map中泛型使用
  12. python s d是什意思_python里d是什么意思
  13. php网站开发项目实战,PHP动态网站开发项目实战
  14. RabbitMQ和Kafka的显著差异(2)
  15. 关于Maven项目build时出现No compiler is provided in this environment的处理
  16. SQLite3中核心C API
  17. PHP的几个常用加密函数
  18. 开源改变了小米什么?
  19. python中len和range函数_for循环len函数和range函数的运用
  20. 让DB2跑得更快——DB2内部解析与性能优化

热门文章

  1. quartz定时任务突然不执行了
  2. 43-Java编程案例三:验证码
  3. 编码器差分信号转脉冲信号变送A、B和Z三相差分同时转换
  4. nacos核心功能介绍
  5. linux怎么刷机教程,竞斗云2.0 Linux免驱动刷机教程(不死uboot)
  6. 一款超好看的个人主页HTML源码
  7. 隆化的大米排之首 国稻种芯·中国水稻节:河北承德十大特产
  8. matlab 深度学习做声音分类
  9. rgv动态调度MATLAB代码,基于贪心算法的智能RGV的动态调度策略
  10. Sql Server查询中生成流水号