PPPoE及其MTU

    技术2022-05-11  10

       PPPoE成帧组件

    组件

    大小(以字节为单位)

    数据净荷

    11 452

    TCP头部

    20

    IP头部

    20

    PPP头部

    2

    PPPoE头部

    6

          PPPOE的最大接收单元为1492,以太网最大载荷为1500   octets,PPPOE头为6   octets,PPP协议ID为2(PPP包前是两字节的PPP协议ID值)   octets,所以PPP的MTU最大不能超过1492 。     PPPOE协议头有6个字节,正好和14字节的以太头实现了4字节对齐。     在PPP会话阶段,PPP包被封装在PPPOE以太帧中,以太包目的地址都是单一的,以太协议为0x8864,PPPOE头的CODE必须为0,SESSION_ID必须一直为发现阶段协商出的SEESION_ID值,PPPOE的负载是整个PPP包,PPP包前是两字节的PPP协议ID值。    

        数据净荷、TCP头部和IP头部构成PPP净荷,因而加起来不能超过PPPoE的最大尺寸1 492字节,PPP、PPPoE和以太网头部不在1 492字节之内,属于额外开销:

                           1 492 + 2 + 6 + 18 = 1 518字节

     

       在PPP会话阶段,PPP包被封装在PPPOE以太帧中,以太包目的地址都是单一的,以太协议为0x8864,PPPOE头的CODE必须为0,SESSION_ID必须一直为发现阶段协商出的SEESION_ID值,PPPOE的负载是整个PPP包,PPP包前是两字节的PPP协议ID值。一个PPPOE会话过程包的例子为:                     1                   2                   3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|                  Access_Concentrator_mac_addr                 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|Access_Concentrator_mac_addr(c)|        Host_mac_addr          |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|                     Host_mac_addr (cont)                      |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|    ETHER_TYPE = 0x8864        | v = 1 | t = 1 |  CODE = 0x00  |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|     SESSION_ID = 0x1234       |      LENGTH = 0x????          |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|    PPP PROTOCOL = 0xc021      |        PPP payload            ~+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+注意:由于PPPOE头是6字节,PPP协议ID号两个字节,一共要占用8个字节,而以太网的MTU值为1500,所以上层PPP负载数据不能超过1492字节,所以PPP协商时协商的最大接收单元值不能超过1492字节,也就是相当于在PPPOE环境下的MTU是1492字节。


    最新回复(0)