IVL(independent vlan learning)每个vlan建一个表,看起来好像有很多表,其实这里所说的表是指逻辑上的表,实际上在交换机中还是只有一个表。如果将VID相同的记 录都提取出来组成一个表,那么一个物理上的表在逻辑上就可以认为是多个表了。

在MAC表中以MAC+VID为主键进行储存。这样,同一个MAC就可能由于VID的不同而在MAC表中存在多条记录。

1.根据MAC+VID在MAC表中寻找,找不到转3

2.向找到的port转发packet,end. (但是如果表项所示端口与收到以太网帧的端口相同,则丢弃该帧。)

3.向packet携带的vid对应的整个VLAN的port转发,end.
 

SVL(shared valn learning)在MAC表中以MAC为主键进行储存,也就是说同一个MAC在SVL方式下只能存在一个记录在MAC表中。(有缺点很少使用,位于不同VLAN的主机(或网络设备)具有相同的MAC地址,由于SVL交换机所有VLAN共享一个MAC表,这样对应的MAC表项中端口就会不断的变化,而且两个VLAN的报文转发也会受到影响)

1.在MAC中先根据MAC寻找相应的记录,找不到转4

2.记录中的VID与packet中携带的VID一样,得到相应的port;不一样转5

3.将packet转发到相应的port,end.

4.向packet携带的vid对应的整个VLAN的port转发,end.

5.drop,end.

IVL模式是独享式的MAC地址学习模式,各个VLAN内学习到的MAC地址为各个VLAN所有,不会共享给 其他VLAN。

SVL模式是共享式MAC地址学习模式,某一个VLAN学习到的MAC会被其他所有VLAN共享使用

L2FDB表中MAC地址通过老化机制来更新

在转发的过程中,不会对帧的内容进行修改

转发流程角度
a、对于支持IVL的交换机,转发流程分以下几步:
根据帧内Tag Header的VLAN ID查找L2FDB表,确定查找的范围;
根据目的MAC查找出端口
如果在L2FDB表中查找不到该目的MAC,则该报文将通过广播的方式在该VLAN内所有端口转发;
同时该以太网帧的源MAC将被学习到接收到报文的端口上

b、对于支持SVL的交换机,转发流程分以下几步
根据帧的目的MAC查MAC转发表(即L2FDB),查找相应的出端口。
判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,匹配则转发,不匹配则丢弃;
如果在L2FDB表中查找不到该目的MAC,则判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,不匹配直接丢弃;匹配则在该VLAN内广播;

最新文章

  1. python爬虫学习(7) —— 爬取你的AC代码
  2. HTML5学习笔记
  3. WPF感悟
  4. 【代码笔记】iOS-按钮带下划线的写法
  5. asp.net使用signalr实现集群集群下面的消息推送
  6. javascript关键字和保留字
  7. Flv.js
  8. MUI - 图片预览(perviewimage)的优化
  9. HTML中调用servlet的问题(?)
  10. Q查询
  11. DICOM标准相关资料
  12. SimpleDateFormat格式化日期
  13. Detecting an Ajax request in PHP
  14. POJ 3352 无向图边双连通分量,缩点,无重边
  15. [SQL基础教程] 5-1视图
  16. Weblogic概念与基础
  17. 蚂蚁金服新一代数据可视化引擎 G2
  18. 【学习笔记】C# 构造和析构
  19. Nagios部署与配置
  20. 【mysql】删除字段的最后一个字符

热门文章

  1. 最小生成树:HDU1863-畅通工程
  2. 笔记-python-tutorial-4.controlflow( and function)
  3. 读《深入理解jvm虚拟机》之长期存活对象进入老年代,有感!!!!
  4. python 闯关之路四(下)(并发编程与数据库编程) 并发编程重点
  5. kettle Spoon.bat闪退解决办法!
  6. 用js立即执行函数开发基于bootstrap-multiselect的联动参数菜单
  7. LINQ体验(9)——LINQ to SQL语句之Insert/Update/Delete操作
  8. 高亮T4模板
  9. psql 工具详细使用介绍
  10. java中使用二进制进行权限控制