交换机VLAN研究
这两天在研究openWRT的网络接口问题,涉及到了交换机的一些概念,主要是跟VLAN相关的,在此总结一下。
VLAN在802.11Q中定义,802.11Q帧格式如下图所示:

交换机示意图如下图所示:

交换机的端口有三种类型,access,trunk,hybrid(其实应该还有一种模式,透传模式,在此不做研究)。
- access端口用于连接终端设备,比如电脑,因为终端设备是无法处理802.1Q数据帧的,因此进出access端口的报文都必须是没有vlan标记的(其实进入access端口的报文好像也可以有TAG,只要与端口的PVID相同就可以,这种情况下报文会原封不动地进入到交换机内部)。
- trunk端口用于连接交换机与交换机之间(可能也可以是路由器),主要用于设备与设备之间的互连。
- hybrid端口相当于access与trunk的合体,既可以连接终端设备,也可以连接交换机。
不同的VLAN使用不同的VID(VLAN ID)区分,交换机的VID有两种类型:
- 普通VID,即Vlan ID,用于区分不同的VLAN。
- PVID(Port-base Vlan ID),不同厂商的叫法不一样,也有叫Native VLAN ID的,与普通VID有本质区别,这是一个端口的属性,一般初始状态下所有端口的初始PVID都是1。
对于hybrid端口,还有一个特别的概念,叫tagged端口和untagged端口,用于规定从交换机是否去掉离开的报文的TAG。这是对端口所属于的VID的一个概念,同一个物理端口中可能对于VID1是tagged端口,但是对于VID2却是untagged端口。
- tagged端口,报文离开交换机时不去掉TAG。
- untagged,离开的报文带有的TAG为untagged VID时,报文离开交换机时去掉该TAG。
access端口只属于一个VLAN,即对应该端口的PVID的VLAN,而trunk与hybrid端口可以同时在多个VLAN中,称为VID组。
无论原始报文是否有VID,进入到交换机内部的报文一定是有TAG的。而从交换机出去的包根据端口设置的不同,可能有、也可能没有TAG。
下面总结一下交换机对进出的报文的VLAN TAG的处理。
对于进入到交换机内部的数据包,只需要区分access端口与非access端口,我们认为access端口的VID组中只有一个VID,值等于PVDI。
- 当报文没有TAG时,则打上端口的PVID后进入交换机内部。
- 当报文有TAG时,如果该TAG在VID组中(注意access端口的VID组中值有PVID),则允许报文原封不动地进入交换机,否则丢弃该报文。
对于离开交换机的报文,需要分别对待access,trunk与hybrid端口。
- access端口,如果报文的TAG等于端口PVID,则去掉TAG后发送出去,否则丢弃该报文。
- trunk口,如果报文的TAG等于端口PVID,则去掉TAG后发送出去,如果不等于端口的PVID,但是在端口的VID组中,则将报文原封不动地发送出去,否则丢弃该报文。
- hybrid端口,与trunk端口基本相同,唯一的不同是,每一个VID可以设置为tagged或者是untagged,如果报文的TAG为某一个被设置为untagged的VID时,则去掉TAG后再发送出去。
本人不是交换机职业玩家,如有错误,请大家指出。还有,我的手工画是不是很萌!
交换机VLAN研究的更多相关文章
- 交换机VLAN、 TRUNK 、VTP 配置
交换机VLAN. TRUNK .VTP 配置 1. 配置 CISCO 二层交换机的IP 地址(catalyst 2950 为例) SW1(config)#int vlan 1 //进入管理接口inte ...
- Trunk 实现跨交换机 VLAN 通信
当网络中有多台交换机时,位于不同交换机上的相同VLAN的主机之间时如何通信的呢?我们使用Trunk实现跨交换机VLAN通信.还有以太网通道的操作哦. 实验拓扑 两台交换机直连,每台下面再连接两台VPC ...
- Cisco基础(二):三层交换vlan间通信、多交换机vlan间通信、三层交换配置路由、RIP动态路由配置、三层交换配置RIP动态路由
一.三层交换vlan间通信 目标: VLAN实现了广播域的隔离,同时也将VLAN间的通信隔离了.三层交换技术使得VLAN间可以通信. 通过三层交换实现VLAN间通信 方案: 为了解决了传统路由器低速. ...
- 【培训】交换机VLAN
为了解决用交换机做LAN互联无法限制广播的问题,出现了VLAN技术,把一个LAN划分为多个逻辑的“LAN”-VLAN. VLAN技术将一个物理的LAN逻辑地划分为不同的广播域,每一个VLAN包含一组有 ...
- 设置跨交换机VLAN
4台计算机,pc1 pc2 连接到交换机1的f1/1和f1/2.Pc3 pc4 连接到交换机2的f1/1和f1/2.pc1设置ip地址192.168.1.10,pc2 pc3 pc4设置ip地址192 ...
- 交换机VLAN的定义、意义以及划分方式
什么是VLAN 虚拟网技术(VLAN,Virtual Local Area Network)的诞生主要源于广播.广播在网络中起着非常重要的作用,如发现新设备.调整网络路径.IP地址租赁等等,许多网络协 ...
- 对交换机VLAN及各种端口类型的理解
每学习一种技术时,我们往往需要去了解why,即这个技术是为解决什么问题而出现的. VLAN全称为Virtual Local Area Network,即虚拟局域网,是逻辑上的一种划分.一般来说,如果交 ...
- H3C S5024P交换机 vlan实验
H3C S5024P交换机第二次vlan实验 实验1 与交换机端口G0/1和G0/2相连的PC1与PC2属于VLAN 1,与G0/3和G0/4相连的PC3和PC4属于VLAN 2,PC1.PC2.PC ...
- 跨交换机VLAN之间的通信(基于Cisco模拟器)
实验要求: 拓扑结构如下 1.交换机2台:主机4台:网线若干. 2.把主机.交换机进行互联. 3.给2台交换机重命名为A.B. 4.设置2台交换机及主机的ip.注意IP要不冲突 5.在2台交换机上分别 ...
随机推荐
- TCP/IP详解学习笔记 这位仁兄写得太好了
TCP/IP详解学习笔记(1)-基本概念 为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣 ...
- Others in life
耗电量主要是与电机有关,800W电机在48V下的工作电流大约是800/48=16.7A,因此其工作时间主要取决于电池的容量,如果电池容量是20Ah,那么大概也就连续工作1个小时左右,也就是30-40k ...
- javaio学习笔记-字符流类(2)
1.java.io包中的字符流类-FileReader和FileWriter: BufferedReader:缓存的输入字符流; BufferedWriter:缓存的输出字符流; FileReader ...
- Eclipse debug ‘Source not found’
用Eclispe进行Debug时一直被一个问题所困扰:Source not found. 问题产生的原因是调试进入了一个没有源代码的jar包里. 简短说明: Edit Source Lookup Pa ...
- javaScript 工作必知(五) eval 的使用
eval eval(parse) parse :里面跟参数字符串,我们知道执行javascript 会编译执行, 改变全局变量的值: var x = 2; //定义的全局变量 alert(x); ...
- 桦仔 笔记4-徐 模仿灾难发生时还原adventurework数据库 示例 stopat
1 --模仿灾难发生时还原adventurework数据库 示例 stopat 2 3 BACKUP DATABASE AdventureWorks 4 TO DISK= 'D:\MSSQL\Data ...
- notepad++ 必装插件
nppftp ;FTP客户端,你懂的: explorer:设置常用文件链接:打开当前文件路径:
- leetcode find median sorted arrays python
# @link http://www.cnblogs.com/zuoyuan/p/3759682.html class Solution(object): def findMedianSortedAr ...
- nginx install
./configure --prefix=/home/allen.mh/local/nginx --with-http_ssl_module --with-http_sub_module --with ...
- StringBuffer&Runtime demo
public class StringBufferDemo02 { public static void main(String[] args) { StringBuffer ...