ping过程

    技术2022-05-20  43

    在上图中,以PC2 ping PC4为例

    1.       交换机内部的配置

    VLAN

    VLAN_ID

    PORT_BITMAP

    UT_PORT_BITMAP

    2

    001111

    001110

    3

    110001

    110000

     

    端口2和端口4要配置为untag端口。

    端口寄存器表

    端口号

    端口缺省VLAN标识(PVID

    1

    2

    2

    2

    3

    2

    4

    2

    5

    3

    6

    3

    2.       PC2发送ARP请求广播包,请求PC4MAC地址。

    3.       交换芯片将ARP包打上端口2PVID,并根据交换机的配置进行ingress过滤。

    4.       端口源MAC地址学习

    以源MAC2地址+VID为索引检索MAC地址学习表,在系统的初始化阶段,MAC地址表是空的,查找不到相应表项,帮将这个表项源MAC地址+VID+端口号写入MAC地址表

    MAC地址

    VLAN-ID

    PORT

    MAC2

    2

    2

     

    5.       目的MAC地址检索及转发。

    如果收到的为单播包,则查MAC地址学习表,如果表项为空,就向所有端口洪泛;

    如果收到的为广播包(目的MAC地址为0xFFFFFF),则向所有端口广播;

    如果收到的为组播包(目的MAC地址以0x01005e开头),则以该组播MAC地址+VID去匹配组播表。如果查到表项,则取出组播输出端口列表中的端口列表,向这些端口发送;如果查表失败,则以VID去查VLAN表,得到该VLAN的所属端口列表,向这些端口转发。

    在本例中,ARP报文为广播包,则在该端口PVLAN对应的VLAN组里广播出去,即向端口234广播出去。

     

    6.       端口234对应的操作

    端口2ARP请求广播包接收端口,故不会向所连PC2转发,端口3和端口4则将ARP请求转发至所连PC机,并根据配置进行egress过滤。

    7.       被请求的主机响应

    与端口4相连的PC4检查到ARP请求包请求的IP地址是自己的,则发送ARP应答包到PC2(也要将MAC4+VID+端口号写入地址学习表)。

    8.       PC2收到ARP应答包后,发送ICMP请求单播包到PC4判断链路是否可达。

    PC4收到ICMP控制包后,对PC2发送ICMP响应单播包进行响应。


    最新回复(0)