Java教程

虚拟以太网VLAN

本文主要是介绍虚拟以太网VLAN,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 虚拟局域网VLAN

虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。

这些网段具有某些共同的需求。

每一个 VLAN 的帧都有一个明确的标识符,指明发送这个帧的工作站是属于哪一个 VLAN。

只是局域网给用户提供的一种服务,而并不是一种新型局域网。

举例:

image.png

当 B1 向 VLAN2 工作组内成员发送数据时, 工作站 B2 和 B3 将会收到广播的信息。

B1 发送数据时,工作站 A1, A2 和 C1 都不会收到 B1 发出的广播信息。

 

帧格式

虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。

image.pngimage.png

特点

  • 虚拟网络建立在局域网交换机之上;
  • 以软件方式实现对逻辑工作组的划分与管理;
  • 逻辑工作组的结点组成不受物理位置的限制;
  • 同一个VLAN上的用户属于同一个广播域。

划分方式

  • 用交换机端口号;
  • 用 MAC地址;
  • 用网络层地址;
  • 根据IP组播划分VLAN;
  • 按策略划分VLAN;
  • 按用户定义、非用户授权划分VLAN。

商用交换机对VLAN的支持

以太网交换机的接口有三种类型

  • Access:只能属于1个VLAN, 一般用于连接计算机的端口;
    • 收包:判断是否有VLAN信息,如果没有则打上端口的所属的VLAN tag,并进行交换转发;如果有VLAN tag则直接丢弃;
    • 发包:将报文的VLAN信息剥离, 直接发送出去。 
  • Trunk: 可以接收和发送多个VLAN的报文,但有一个默认VLAN,一般用于交换机之间的连接端口;
    • 收包:判断是否有VLAN信息:如果没有则打上端口的VID,并进行转发;如果有则判断该Trunk端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃;
    • 发包:比较端口的VID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送;如果不相等则直接发送。 
  • Hybrid: 可以允许多个VLAN通过 可允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签 既可以用于交换机之间的连接,也可以用于连接用户的计算机。 
    • 收包: 收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID, 并进行交换转发;如果有则判断该Hybrid端口是否允许该VLAN的数据进入,如果可以则转发,否则丢弃;
    • 发包:判断该VLAN在本端口的属性(disp interface即可看到该端口对哪些VLAN是untag,哪些VLAN是tag);如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送。
这篇关于虚拟以太网VLAN的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!