一、以太网交换机支持的以太网端口类型

(1) Access类型:端口只能属于1个VLAN,一般用于连接计算机;
  (2) Trunk类型:端口可以属于多个VLAN,可以接收和发送多个VLAN的报文,一般用于交换机之间连接;
  (3) Hybrid类型:端口可以属于多个VLAN,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。
 说明:
  Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
  缺省Vlan  :当一个端口属于多个vlan时,若接受到无标签的帧,则转发给缺省vlan。
  三种类型的端口可以共存在一台设备上,但Trunk端口和Hybrid端口之间不能直接切换,只能先设为Access端口,再设置为其他类型端口。例如:
Trunk端口不能直接被设置为Hybrid端口,只能先设为Access端口,再设置为Hybrid端口。

二、端口对收发报文的处理

1.Access端口
 【接收报文】
  当接收到的报文不带标签时:接收该报文并为该报文添加缺省vlan的标签。 当接收到的报文带标签时:
  当VLAN ID与缺省VLAN ID相同时:接收该报文。
  当VLAN ID与缺省VLAN ID不同时:丢弃该报文。
 【发送报文】
  由于VLAN ID就是缺省VLAN ID,不用设置,去掉标签后发送。

2. Trunk端口
 【接收报文】
  当VLAN ID与缺省VLAN ID相同时:接收该报文。
  当VLAN ID与缺省VLAN ID不同时,但VLAN ID是该端口允许通过的VLAN ID时:接收该报文。
  当VLAN ID与缺省VLAN ID不同时,且VLAN ID是该端口不允许通过的VLAN ID时:丢弃该报文。
 【发送报文】
  当VLAN ID与缺省VLAN ID相同时:去掉标签,发送该报文。 
  当VLAN ID与缺省VLAN ID不同时:保持原有标签,发送该报文。

3.Hybrid端口(hybrid端口与Trunk端口类似) 
 【接收报文】
  当VLAN ID与缺省VLAN ID相同时:接收该报文。
  当VLAN ID与缺省VLAN ID不同时,但VLAN ID是该端口允许通过的VLAN ID时:接收该报文
  当VLAN ID与缺省VLAN ID不同时,且VLAN ID是该端口不允许通过的VLAN ID时:丢弃该报文。
 【发送报文】
  当VLAN ID与缺省VLAN ID相同时:去掉标签,发送该报文
  当VLAN ID与缺省VLAN ID不同时,可以通过命令port hybrid  vlan vlan-id-list { tagged | untagged } 配置该端口是否带有标签,发送该报文。
前序 目的地址 源地址 VLAN(optional) 类型/长度 数据 padding(optional) 校验和
VLAN为2byte的vlan tag,前12bit为vid 后4bit为优先级

常用的标准类型有Ethernet II和IEEE 802.3
标准规定主机发送以太帧的默认类型是Ethernet II

Ethernet II 帧格式

前序 目的地址 源地址 类型 数据 FCS
8byte 6byte 6byte 2byte 46-1500byte 4byte

IEEE 802.3

前序 帧起始定界符 目的地址 源地址 长度 数据 FCS
7byte 1byte 2/6byte 2/6byte 2byte 46-1500byte 4byte

Ethernet II帧的有效类型和IEEE 802.3的有效长度的两个字节无一相同,容易区分二者。
类型字段用于区分数据中的上层协议,如0x0800表示IP协议,0x8137表示IPX和SPX协议
最小帧长为64byte,从目的地址开始到FCS结束(CRC校验和),因此数据字段最少46byte

帧判断:
如果源地址后面2byte的值大于1500,必定是Ethernet II帧,否则要么是纯802.3帧,要么是802.3的另外两个变种,需要继续判断接下来的数据帧
如果紧接着的数据的2byte为FF:FF则为Netware以太帧,如果为AA:AA则表示以太网-SNAP帧,其他表示纯802.3帧

以IPX报文为例子:
1,Ethernet II封装
前序 目的地址 源地址 0x8137 IPX数据报 FCS

2,Netware-以太网帧(FF:FF已被简化)(DSAP SSAP 控制 数据)或(数据)
前序 帧起始定界符 目的地址 源地址 长度 IPX数据报 FCS

3,以太网-SNAP帧(DSAP SSAP 控制 机构代码 类型 数据)
前序 帧起始定界符 目的地址 源地址 长度 0xAA 0xAA 0x03 0x0000000 x8137 IPX数据报 FCS

4,纯802.3帧(DSAP SSAP 控制 数据)
前序 帧起始定界符 目的地址 源地址 长度 0xe0 0xe0 0x03 IPX数据报 FCS
 
TPID   PRIOR  CFI   VLANID
16b       3b      1b     12b

VLAN TAG的组成字段 VLAN Tag 包含四个字段,分别是TPID(Tag protocol identifier,标签协议标识符),Priority,CFI(Canonical Format Indicator,标准格式指示位)和VLAN ID.

TPID:用来标识本数据帧是带有VLAN Tag的数据帧.该字段长度为16bit,在H3C系列以太网交换机上缺省取值为协议规定的0X8100.

Priority:用来表示802.1P的优先级.该字段为3bit,相关介绍和应用请参见本手册"Qos-Qos Profile"部分的介绍.

CFI:用来标识MAC地址是否以标准格式进行封装.该字段长度为1bit,取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装,缺省取值为0.

VLAN ID:用来标识报文所属VLAN的编号.该字段长度为12bit,取值范围为0-4095.由于0和4095通常不使用,所以VLAN ID的取值范围为1~4094

VLAN端口属性详解相关推荐

  1. python中文读音ndarray-numpy中的ndarray方法和属性详解

    NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...

  2. spring MVC请求处理类注解属性详解

    spring MVC请求处理类注解属性详解

  3. Meta http-equiv属性详解

    Meta http-equiv属性详解 博客分类: Web综合 HTML浏览器IECache搜索引擎  http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮 ...

  4. JavaScript Function.arguments 属性详解

    转载自   JavaScript Function.arguments 属性详解 arguments属性是正在执行的函数的内置属性,返回该函数的arguments对象.arguments对象包含了调用 ...

  5. vertical-align属性详解

    vertical-align属性详解:http://www.cnblogs.com/wcp-spring/archive/2013/03/04/2942456.html 关于vertical-alig ...

  6. border-sizing属性详解和应用

    box-sizing 用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型.它有 content-box . border-box 和 inherit 三种取值. inherit 指的是从父元素继 ...

  7. Flash播放控件属性详解

    Flash 播放控件属性详解 一.属性篇 1.AlignMode(读写)  语法:AlignMode As Long  说明:对齐方式(与SAlign 属性联动).当控件的长宽比例与影片不一致且WMo ...

  8. android layout_width 属性,android:layout_weight属性详解

    在android开发中LinearLayout很常用,LinearLayout的内控件的android:layout_weight在某些场景显得非常重要,比如我们需要按比例显示.android并没用提 ...

  9. html5 规定输入字段,HTML5 Input属性详解

    本篇教程探讨了HTML5 Input属性详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < value 属性 value 属性规定输入字段的初始值: rea ...

最新文章

  1. ansible组件-playbook学习笔记
  2. Mongoose源码剖析:Introduction and Installation
  3. sdut 3335 数据结构实验之栈与队列八:栈的基本操作
  4. win7 打开“计算机”慢,win7电脑启动慢解决方法
  5. 【数学建模】线性规划模型MATLAB求解(最优化)
  6. java 字节码对象_获得类的字节码对象的三种方式
  7. [译]Kinect for Windows SDK开发入门(八):骨骼追踪进阶 上
  8. java dom 获得子元素_在JavaScript中删除DOM节点的所有子元素
  9. 正则匹配身份证和邮箱
  10. 数学知识点回顾(二)
  11. onvif协议_【通用语言】ONVIF协议的秘密
  12. PHP、JS、Python,数据库 获取今天是星期几了?[开发篇]
  13. 点亮led灯的个数_点亮一个led灯程序
  14. SQL标准语句——思维导图
  15. 服务器机械硬盘坏了怎么修复,硬盘修复软件:如何修复硬盘错误?
  16. [Error]compileSdkVersion is not specified. Please add it to build.gradle
  17. iOS开发之—— XCODE真机调试设备连接一直忙碌如何处理!(真机调试各种错误提示解决)...
  18. thinkPHP6 文本过滤(过滤敏感词)
  19. Qt大屏电子看板系统源码
  20. 通过淘宝商品ID和sku ID 获取到淘宝商品SKU信息接口,可获取sku价格,sku销量,sku图片及sku库存,SKU重量,SKU尺寸体积接口等参数

热门文章

  1. 全国电信及网通 DNS 列表
  2. 双色球彩票系统(java)
  3. win10下java环境变量设置 不要再错啦
  4. 银河麒麟Kylin_s10_sp2安装Oracle11g(FS)(亲测有效)
  5. 缓存常用的三种读写策略==》Write Behind Pattern(异步缓存写入)
  6. 微信屏蔽app下载链接
  7. JS实现在线ps功能
  8. 极品婆媳龙争虎斗---我和阿芬的正面接触(9)
  9. 李胜溢8.22最新黄金走势分析及黄金操作建议
  10. 【Java学习0331】多线程