• switch中的PVID、VID、untag、tag概念


    以openwrt为例,下图是mt7621(glinet mt1300)中switch配置图
    在这里插入图片描述
    该switch一共有7个port,一个连接CPU,还有6个可供外部使用,上图只显示了6个port;
    一个switch可以设置多个VLAN(虚拟局域网 Virtual Local Area Network),如上图设置了两个VLAN;

    VID

        VLAN的ID,一个port可以属于多个VLAN,也就是拥有多个VID,如上图LAN3(port2)拥有VID 1、2;

    PVID

        基于端口的VLAN ID(Port-base VLAN ID),一个port只允许有一个untag存在,而那个untag所属的VLAN的VID成为这个port的pvid,如上图LAN4(port3)的PVID为1,WAN(port4)的PVID为2;

    untag

        接收报文:
            如果该报文untag,允许报文进入该端口所属VLAN中,并给报文打上PVID的vlan tag;
            如果该报文带有tag并且tag与该port的PVID相等,则单独接收到该VLAN中,否则丢弃;
        发送报文:
            将报文中的tag剥掉,发送出去(VLAN中的报文一定会包含tag,所以不存在发送前没有tag的报文)

    tag

        接收报文:
            如果该报文带有tag并且tag与该port所属的VLAN的vid相等,则单独接收到该VLAN中,否则丢弃;
        发送报文:
            将带有tag的报文,直接发出(VLAN中的报文一定会包含tag,所以不存在发送前没有tag的报文)

    access端口

        该端口只属于一个VLAN,并且为untag;表现就是untag端口;

    trunk端口

        该端口只属于多个VLAN,并且全部为tag;表现就是多个tag端口;

    hybrid端口

        该端口只属于多个VLAN,并且分别拥有tag和untag;
        接收报文:
            tag功能优先,所以会先判断报文是否有tag,如果有则接收进入tag与VID相等的VLAN中;
            否则进入untag功能,如果该报文untag,允许报文进入该端口所属VLAN中,并给报文打上PVID的vlan tag,如果该报文带有tag并且tag与该port的PVID相等,则单独接收到该VLAN中,否则丢弃;
        发送报文:
            tag功能优先,所以会先判断报文tag是否与其所属的VLAN的VID相等,如果相等则发出;
            否则进入untag功能,将报文中的tag剥掉,发送出去(VLAN中的报文一定会包含tag,所以不存在发送前没有tag的报文)

  • 相关阅读:
    win11系统完全卸载Oracle11g图文详细步骤
    MySQL数据库基本操作+用户管理+用户授权
    彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-用户系统EP03
    curl 工具的使用
    Qt+Python多次刷新缓存的问题及项目延伸:
    02矩阵01 —— 基本矩阵 : 对角矩阵、方幂、数量矩阵、转置矩阵、对称矩阵、逆矩阵、奇异矩阵、三角矩阵
    决策树(DT)相关介绍,实现肌电信号(8类)分类
    C 不再是一种编程语言
    一文教你搞懂Redis集群
    【PAT甲级 - C++题解】1093 Count PAT‘s
  • 原文地址:https://blog.csdn.net/dengxinfa/article/details/125995555