广播域
- 交换机是数据链路层的连接设备
- 使用一个或多个交换机互连起来的交换式以太网,其所有站点都属于同一个广播域
- 随着交换式以太网规模的扩大,广播域相应扩大
- 但是,巨大的广播域并不是一件好事,它会带来很多问题:
- 产生广播风暴:网络中会频繁出现广播信息。
- 使用TCP/IP协议栈时,很多协议都会使用广播
- ARP:地址请求协议(已知IP地址,找出其相应的MAC地址)
- RIP:路由信息协议(一种小型的,内部路由协议)
- DHCP:动态主机配置协议(用于自动配置IP地址)
- NetBEUI:Windows下使用的广播型协议
- IPX/SPX:Novell网络的协议栈
- AppleTalk:Apple公司的网络协议栈
- 难以管理和维护
- 潜在的安全问题
如何分割广播域
- 使用路由器可以隔离广播域。路由器不会转发广播包,但是路由器的成本较高,局域网内全部使用路由器来隔离广播域是不现实的
- 在上述条件下,虚拟局域网VLAN技术应运而生
虚拟局域网VLAN
1、虚拟局域网VLAN(Virtual Local Area Network)是一种将局域网内的设备划分成与物理位置无关的逻辑组的技术,这些逻辑组具有某些共同的需求。
2、交换机上生成的各VLAN(逻辑组)是互不相通的。
3、实现VLAN间通信的方法:
- 使用路由器
- 使用三层交换机
交换机VLAN转发过程
1、情景一:同一交换机下,VLAN的转发。如,从主机A发往同一VLAN下的主机B的帧转发过程:
当交换机收到帧后,解析出帧的目的MAC地址,然后在帧交换表中查找包含目的MAC地址的条目,从中找到转发端口,再从VLAN表中判断,如果转发端口所属VLAN与帧进入端口所属VLAN是同一个,则将帧从转发端口转发。
2、情景二:多个交换机互连,并且,同一VLAN分布在不同的交换机上。
要理解这个场景的转发过程,我们需要再理解几个概念
在交换机上实现VLAN技术,需要交换机实现以下两大功能:
- 能处理IEEE 802.1Q帧
- 交换机的各端口可以支持不同的端口类型,不同端口类型的端口对帧的处理方式有所不同
IEEE 802.1Q帧
- IEEE 802.1Q帧(俗称Dot One Q)对以太网帧格式进行了扩展,插入了4字节的VLAN标记(tag)
- VLAN标记的最后12位称为VLAN标识符VID,它唯一地标志了以太网帧属于哪一个VLAN
- VID的取值范围:0-4095(0 -
)
- 0和4095都不用来表示VLAN,因此用于表示VLAN的VID有效取值范围为1-4094
- 802.1Q帧是由交换机来处理的,而不是由用户主机来处理的。也就是说,用户主机只认识以太网帧,而不认识802.1Q帧
- 当交换机收到普通的以太网帧时,会将其插入4字节VLAN标记进而转变为802.1Q帧,简称“打标签”
- 当交换机转发802.1Q帧时,可能会删除其4字节VLAN标记进而转变为普通以太网帧,简称“去标签”
端口的缺省VLAN ID:
- 在思科交换机上称为Native VLAN,即本证VLAN
- 在华为交换机上称为PVID(Port VLAN ID),即端口VLAN ID。交换机的每个端口,有且仅有一个PVID。
交换机一般有3种类型的端口:
- Access
- 如果用户未对交换机端口进行过配置,则默认配置为Access端口
- Access端口一般用于连接用户计算机
- Access端口只能属于一个VLAN
- Access端口的PVID值与端口所属VLAN的ID相同
- Access端口接收处理方法:一般只接受“未打标签”的数据帧,即普通以太网数据帧。当收到“未打标签”的数据帧时,根据接收该帧的端口的PVID,给帧“打标签”,即插入4字节VLAN ID字段,字段中的VID取值与端口PVID取值相等。
- Access端口发送处理方法:若帧中的VID与端口的PVID相等,则去除“标签”并转发该帧;否则不处理。
- Trunk
- Trunk端口一般用于交换机之间或交换机与路由器之间的互连
- Trunk端口可以属于多个VLAN
- 用户可以设置Trunk端口的PVID值。默认情况下,Trunk端口的PVID值为1
- Trunk端口发送处理方法:对于数据帧中的VID等于端口PVID的数据帧,去掉“标签”再转发。对于数据帧中的VID不等于端口PVID的数据帧,直接转发。
- Trunk端口接收处理方法:接收“已打标签”的数据帧,而不管数据帧中的VID是否等于端口的PVID。接收“未打标签”的数据帧,根据端口的PVID值给帧“打标签”,即插入4字节VLAN ID字段,字段中的VID取值与端口PVID取值相等
- Hybrid(思科交换机没有此端口)
- 是华为设备的私有端口
- Hybrid端口可用于交换机之间或交换机与路由器之间的互连(同Trunk端口)
- Hybrid端口也可用于交换机与用户计算机之间的互连(同Access端口)
- Hybrid端口可以属于多个VLAN(同Trunk端口)
- 用户可以设置Hybrid端口的PVID值。默认情况下,Hybrid端口的PVID值为1(同Trunk端口)
- Hybrid端口接收处理方法(同Trunk端口):接收“已打标签”的数据帧,而不管数据帧中的VID是否等于端口的PVID。接收“未打标签”的数据帧,根据端口的PVID值给帧“打标签”,即插入4字节VLAN ID字段,字段中的VID取值与端口PVID取值相等。
- Hybrid端口发送处理方法(与Trunk端口不同):查看数据帧中的VID是否在端口的“去标签”列表中:如果存在,则去掉“标签”再转发;如果不存在,则直接转发。
内容整理自:湖科大教书匠