• Joe Damato's avatar
    i40e: Add support for MPLS + TSO · b4fb2d33
    Joe Damato authored
    This change adds support for TSO of MPLS packets.
    
    In my tests with tcpdump it seems to work. Note this test setup has
    a 9000 byte MTU:
    
    MPLS (label 100, exp 0, [S], ttl 64) IP srcip.50086 > dstip.1234:
      Flags [P.], seq 593345:644401, ack 0, win 420,
      options [nop,nop,TS val 45022534 ecr 1722291395], length 51056
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 593345, win 122,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 602289, win 105,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 620177, win 71,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    MPLS (label 100, exp 0, [S], ttl 64) IP srcip.50086 > dstip.1234:
      Flags [P.], seq 644401:655953, ack 0, win 420,
      options [nop,nop,TS val 45022534 ecr 1722291395], length 11552
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 638065, win 37,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 644401, win 25,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 653345, win 8,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    
    IP dstip.1234 > srcip.50086: Flags [.], ack 655953, win 3,
      options [nop,nop,TS val 1722291395 ecr 45022534], length 0
    Signed-off-by: default avatarJoe Damato <jdamato@fastly.com>
    Co-developed-by: default avatarMike Gallo <mgallo@fastly.com>
    Signed-off-by: default avatarMike Gallo <mgallo@fastly.com>
    Tested-by: Gurucharan <gurucharanx.g@intel.com> (A Contingent worker at Intel)
    Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
    b4fb2d33
i40e_main.c 455 KB