2024年5月4日发(作者:)
首先第一点需要明白的是:
在我们交换机上存在三种VLAN端口,它们分别是access端口、hybrid端口、以及
trunk端口,它们各自都有自己的属性,以及在数据流处理过程中的转发规则。
一、 access 端口的转发规则
access端口收到一个数据帧时,作如下处理:
首先第一步:
当一个数据帧进入到access之前,首先判断这个帧中是否带有VLAN TAG的信息,
那么判断的结果只有两种,要么有要么没有,那么接下来ACCESS端口,又会根据判断的
不同的结果,分别作不同的处理呢?
如果有VLANTAG,那么默认情况下,access端口是不接收带有VLAN TAG的数据
帧,此时该数据帧会被ACCESS端口直接丢弃
如果没有VLANTAG,那么ACCESS端口会接收该数据帧,并且会在该原始的以太网数
据帧中插入ACCESS端口的PVID信息作为VLAN TAG标记,然后带有VLANTAG的数
据帧会流入交换机内部(此时ACCESS端口的收的任务实际上已经完成啦,因为此时数据
帧已经从access端口被接收进来啦),接下来的任务会交给交换机来处理,交换机会根据
帧中的目的MAC地址,来查找自己MAC地址表所对应的表项,如果查到则从相应的端
口转发出去,没有则广播。
在绝大部分情况下,ACEESS端接收到的数据帧是不带VLAN TAG的标记,因为通常
情况下,ACCESS端口连接的是PC机,而一个PC机在不经过特殊处理的情况下,发出的
原始的以太网数据帧,即我们平时所说的裸帧(不带VLANTAG)
这里需要说明的是ACCESS端口PVID的概念:
PVID:故名思意即为PORT VLAN ID的缩写,那么ACCESS端口的PVID是多少呢,
它又是怎么知道的呢?实际上说直白一点:就是你在配置ACCESS 端口时,属于那个
VLAN,那么它的PVID就是该端口所属的VLAN ID
ACCESS端口在发送数据帧之前,作如下处理:
当ACCESS端口转发数据帧之前,根据MAC地址表项中目的地址所对应的表项,并
取出该转发端口的VLAN ID 与接收进来的数据帧中所带的VLAN ID作比较,如果相同,
则脱标,以原始数据帧的格式,从ACCESS端口转发出去,如果不同,则不转发直接丢弃,
从这一点来说,这也就可以解释为什么在交换机内部同一VLAN数据能被转发,而不同
VLAN的数据不能被转发的原因
Access端口收发规则总结:
1、 ACCESS端口收规则:
ACCESS端口收到一个数据帧以后判断是否带有VLANTAG 信息,如果有,那么
ACCESS端口默认情况下,不予于转发,会直接丢弃该数据帧,如果没有,在进入该端口
时,则会在原始数据帧的内部打上(插入)该access端口的PVID后接收进来,然后接下
来把带有TAG的数据帧交给交换机作下一步数据转发处理
2、 ACCESS端口发规则:
在收到一个带有TAG的数据帧后,ACCESS端口在转发出去之前,比较帧中的
VLANID与自己的PVID是否相同,如果相同,则去掉帧中的VLAN TAG标记,然后转发
出去,如果不相同,则直接丢弃
3、请记住从ACCESS端口接收进来的一定是带有VLANTAG标记的帧,而从ACCESS
端口发送出去的一定是原始的以太帧(即所谓的不带VLANTAG的裸帧)
二、TRUNK端口的转发规则:
1、trunk端口收规则
Trunk端口收到数据帧后,作如下处理:
首先判断帧中是否带有VLAN TAG标记,如果没有则打上Trunk端口的PVID,(默认
这个TRUNK PVID是 1,关于这一点稍后作更详细的解释说明),如果有则判断帧中的
VLAN ID是否允许在该TRUNK端口中转发出去,如果允许则转发,如果不允许则丢弃
2、trunk 端口发规则
Trunk端口在转发数据帧之前,比较收到帧中的VLAN ID与TRUNK端口的PVID
是否相同,如果相同,则剥离VLAN TAG标记,恢复成裸帧后转发出去。如果不相同,则
保持帧中的标记不作修改,然后判断帧中的VLANID 是否允许在该TRUNK端口中转发出
去,如果允许则转发,如果不允许则丢弃。
3、关于TRUNK端口PVID为什么默认是1的说明:
其原因其实很简单:因为交换机出厂默认建有一个VLAN1,并且配置所有的端口都被
划分到VLAN1中,因此交换机的所有端口的默认PVID都为VLAN 1 (包括TRUNK端口),
那么这个默认的PVID,当然是可以通过配置被修改的,因此在你没有对TRUNK端口作单
独特殊的配置之前,其PVID还是为默认的PVID 为VLAN1
实际上我们可能把ACCESS、TRUNK端口协同起来理解比较,你可以这样去更好的理
解、方便记忆
无论是ACCESS端口,还是TRUNK端口在接收数据帧之前:
其核心思想是首先都会去判断收到的数据帧中是否带有VLAN TAG标记,然后根据判
断的不同结果再去进行下一步的不同处理。
那么然后ACCESS、TRUNK端口在发送数据帧之前:
其核心思想是都会去比较接收进来的数据帧中的VLANID与接收端口的PVID是否相
同,然后根据不同的比较结果再去进行下一步的不同处理。
二、 Hybrid端口转发规则
1、 Hybrid端口的收规则:
一个HYBRID端口收到一个数据帧是判断帧中是否带有VLAN TAG 标记,如果没有
则打上该端口的PVID,并进行交换转发,如果有则查看帧中的VLAN ID ,然后判断该
HYBRID端口是否允许该VLAN 通过,如果可以则转发,否则丢弃(此时HYBRID端口上
的UNTAG配置是不用考虑的,UNTAG配置只对发送的报文起作用)
2、 Hybrid端口发规则:
HYBRID端口收到带有VLAN TAG的数据帧后,根据帧中的VLANID, 判断该VLAN
在本端口(本端口:指的是将要发送数据帧的那个HYBRID端口)的属性(disp interface 即
可查看到该端口对哪些VLAN UNTAG,对哪些VLAN TAG),如果是UNTAG则剥离VLAN
标记,然后发送出去,如果是TAG则直接发送
3、 关于HYBRID的转发规则里,我们又会引发出以下几个疑问,那么接下来我们
来描述,并解答这几个疑问
3、1:首先第一个问:hybrid端口的PVID是多少?它是从何而来的?
答:首先需要明白的是:当我们把一个端口配置成HYBRID后,默认情况下它是不属
于任何一个VLAN,因为默认情况下它是不存在所谓的默认的PVID,因此我们必须根据实
际情况通过命令手动配置来明确指定该HYBRID端口的PVID
接口模式下:
实际上你可以这样理解:把E0/0/1 的端口属性改为hybrid,并且把它的端口ID,即
PVID设置为10,那么它实际效果则相当于把E0/0/1端口作为ACCESS,并且加入到了
VLAN10,只是变换了一种方式而已
3、2:怎么去判断HYBRID端口允许哪些VLAN 通过,哪些VLAN不能通过?
答:
发布者:admin,转转请注明出处:http://www.yc00.com/web/1714820961a2522456.html
评论列表(0条)