今天,温习了一下vlan的知识。以下是转载过来的一篇文章。说得比较透彻

 

802.1Q VLAN 技术原理
 在数据通信和宽带接入设备里,只要涉及到二层技术的,就会遇到VLAN。而且,通常情况下,VLAN在这些设备中是基本功能。所以不管是刚迈进这个行业的新生,还是已经在这个行业打拼了很多年的前辈,都要熟悉这个技术。在论坛上经常看到讨论各种各样的关于VLAN的问题,在工作中也经常被问起关于VLAN的这样或那样的问题,所以,有了想写一点东西的冲动。
      大部分童鞋接触交换这门技术都是从思科技术开始的,讨论的时候也脱离不了思科的影子。值得说明的是,VLAN是一种标准技术,思科在实现VLAN的时候加入了自己的专有名词,这些名词可能不是通用的,尽管它们已经深深印在各位童鞋们的脑海里。本文的描述是从基本原理开始的,有些说法会和思科技术有些出入,当然,也会讲到思科交换中的VLAN。

1. 以太网交换原理
        
     VLAN的概念是基于以太网交换的,所以,为了保持连贯性,还是先从交换原理讲起。不过,这里没有长篇累牍的举例和配置,都是一些最基本的原理。
本节所说的以太网交换原理,是针对‘传统’的以太网交换机来说的。所谓‘传统’,是指不支持VLAN。
     简单的讲,以太网交换原理可以概括为 ‘源地址学习,目的地址转发’。考虑到IP层也涉及到地址问题,为了避免混淆,可以修改为 ‘源MAC学习,目的MAC转发’。从语文的语法角度来讲,可能还有些问题,就再修改一下 ‘根据源MAC进行学习,根据目的MAC进行转发’。总之,根据个人习惯了。本人比较喜欢 ‘源MAC学习,目的MAC转发’的口诀。
     稍微解释一下。
     所谓的‘源MAC学习’,是指交换机根据收到的以太网帧的帧头中的源MAC地址来建立自己的MAC地址表,‘学习’是业内的习惯说法,就如同在淘宝上买东西都叫‘宝贝’一样。
     所谓的‘目的MAC转发’,是指交换机根据收到的以太网帧的帧头中的目的MAC地址和本地的MAC地址表来决定如何转发,确定的说,是如何交换。
这个过程大家应该是耳熟能详了。但为了与后面的VLAN描述对比方便,这里还是简单的举个例子。
Figure 1-1:
  |-------------------------------|
  |  SW1 (Ethernet Switch) |
  |-------------------------------|
          |               |
          |port1       |port 2
          |               |
      |-------|       |-------|
      |  PC1|       |  PC2|
      |-------|       |-------|

     简单描述一下PC1 ping PC2的过程:(这里假设,PC1和PC2位于同一个IP网段,IP地址分别为IP_PC1和IP_PC2,MAC地址分别为MAC_PC1和MAC_PC2)
     1). PC1首先发送ARP请求,请求PC2的MAC。目的MAC=FF:FF:FF:FF:FF:FF(广播);源MAC=MAC_PC1。
     SW1收到该广播数据帧后,根据帧头中的源MAC地址,首先学习到了PC1的MAC,建立MAC地址表如下:
MAC地址             端口
MAC_PC1             PORT 1

     2). 由于ARP请求为广播帧,所以,SW1向除了PORT1之外的所有UP的端口广播。
     注意,该帧没有任何变化。换句话说,交换机没有对帧做任何修改。这就是传说中的透明传输。