由来(传统局域网的局限性):

  • 缺乏流量隔离:即使把组流量局域化道一个单一交换机中,广播流量仍会跨越整个机构网络(ARP、RIP、DHCP协议)
  • 管理用户不便 :如果一个主机在不同组间移动,必须改变物理布线,连接到新的交换机上。
  • 路由器成本较高:局域网内使用很多路由器花销较大。

一个以太网是一个广播域,当一个以太网包含的计算机太多时,往往会导致:

  •   以太网中出现大量的广播帧,特别是经常使用的ARP和 DHCP 协议。
  •   一个单位的不同部门共享一个局域网,对信息保密和安全不利。

       

VLAN基本概念: 虚拟局域网(VLAN)是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。

    把局域网通过交换机进行逻辑上的分割,分割得到的每一个子网(虚拟局域网)是一个广播域。

     通过虚拟局域网(Virtual LAN),可以把一个较大的局域网分割成一些较小的与地理位置无关的逻辑上的VLAN,而每个VLAN是一个较小的广播域。

       802.3ac标准定义了支持VLAN的以太网帧格式的扩展。它在以太网帧中插入一个4字节的标识符(插入在源地址字段和类型字段之间),称为VLAN标签,用来指明发送该帧的计算机属于哪个虚拟局域网。插入VLAN标签的帧称为802.1Q帧,如下图所示。由于VLAN帧的首部增加了4字节,因此以太网的最大帧长从原来的1518字节变为1522 字节。

  

以太网报文格式 vlan 以太网的vlan_标识符

      VLAN标签的前两个字节置为0x8100,表示这是一个802.1Q帧。在VLAN标签的后两个字节中,前4位没有用,后12位是该 VLAN的标识符 VID,它唯一标识了该 802.1Q帧属于哪个 VLAN。12位的VID可识别4096个不同的 VLAN。插入VID后,802.1Q帧的FCS必须重新计算。
     如下图所示,交换机1连接了7台计算机,该局域网划分为两个虚拟局域网VLAN-10 和VLAN-20,这里的10和20就是802.1Q帧中的VID字段的值,由交换机管理员设定。各主机并不知道自己的VID值(但交换机必须知道),主机与交换机之间交互的都是标准以太网帧。一个VLAN的范围可以跨越不同的交换机,前提是所用的交换机能够识别和处理VLAN。交换机2连接了5台计算机,并与交换机1相连。交换机2中的2台计算机加入 VLAN-10,另外3台加入VLAN-20。这两个VLAN虽然都跨越了两个交换机,但各自都是一个广播域。

以太网报文格式 vlan 以太网的vlan_字段_02

 

  假定A向B发送帧,交换机1根据帧首部的目的MAC地址,识别B属于本交换机管理的VLAN-10,因此就像在普通以太网中那样直接转发帧。假定A向E发送帧,交换机1必须把帧转发到交换机 2,但在转发前,要插入VLAN 标签,否则交换机 2不知道应把帧转发给哪个VLAN。
     因此在交换机端口之间的链路上传送的帧是 802.1Q 帧。交换机 2 在向 E 转发帧之前,要拿走已插入的VLAN 标签,因此E收到的帧是A发送的标准以太网帧,而不是802.1Q帧。如果A向C发送帧,那么情况就复杂了,因为这是在不同网络之间的通信,虽然A和C都连接到同一个交换机,但是它们已经处在不同的网络中(VLAN-10和VLAN-20),需要通过上层的路由器来解决,也可以在交换机中嵌入专用芯片来进行转发,这样就在交换机中实现了第3层的转发功能。
   虚拟局域网只是局域网给用户提供的一种服务,并不是一种新型局域网。 

 交换机(避免碰撞):

1.根据MAC地址来有选择性的转发到目的接口,而不是广播方式发送。根据目的MAC地址来查找交换表实现有选择的转发。

2.转发表通过自学习的方式构建交换表。

以太网报文格式 vlan 以太网的vlan_标识符_03


  分割是逻辑上的,跟主机位置无关。

  可以根据接口,MAC地址和上层协议类型进行划分。

   MAC地址:MAC地址英语:Media Access Control Address),直译为媒体存取控制位址,也称为局域网地址(LAN Address),MAC位址以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。在OSI模型中,第三层网络层负责IP地址,第二层数据链路层则负责MAC位址  。MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址 。  

VLAN的实现:

以太网报文格式 vlan 以太网的vlan_以太网报文格式 vlan_04

以太网报文格式 vlan 以太网的vlan_字段_05

IEEE 802.1Q帧: 

以太网报文格式 vlan 以太网的vlan_虚拟局域网_06


  • 后12位是VLAN标识符VID,唯一表示了该以太网帧属于哪个VLAN。
  •  VID的取值范围为0~4095,但0和4095都不用来表示VLAN,因此用于表示VLAN的有效VID取值范围为1~4094。do-while循环
  •  IEEE 802.1Q帧是由交换机来处理的,而不是由用户主机来处理的。(即主机之间只交换普通的以太网帧

VLAN的作用:可以抑制广播风暴。