• Somnath Kotur's avatar
    bnxt_en: Add support for NAT(L3/L4 rewrite) · 9b9eb518
    Somnath Kotur authored
    Provides support for modifying L3/L4 Header parameters to support NAT.
    Sets the appropriate fields/bits in cfa_flow_alloc cmd.
    
    Sample cmd for offloading an IPv4 flow with SNAT:
    
    ovs-ofctl add-flow ovsbr0 "ip,nw_src=192.168.201.44 \
    actions=mod_nw_src:203.31.220.144,output:p7p1"
    
    Replace 'nw_src' with 'nw_dst' in above cmd for DNAT with IPv4
    
    Sample cmd for offloading an IPv4 flow with SNAPT:
    
    ovs-ofctl add-flow ovsbr0 "ip,nw_src=192.168.201.44 \
    actions=mod_nw_src:203.31.220.144, mod_tp_src:6789,output:p7p1"
    
    Similar to DNAT, replace 'tp_src' with 'tp_dst' for offloading flow
    with DNAPT
    
    Sample cmd for offloading an IPv6 flow with SNAT:
    
    ovs-ofctl add-flow ovsbr0 "ipv6, ipv6_src=2001:5c0:9168::2/64 \
    actions=load:0x1->NXM_NX_IPV6_SRC[0..63], \
    load:0x20010db801920000->NXM_NX_IPV6_SRC[64..127],output:p7p1"
    
    Replace 'SRC' with DST' above for IPv6 DNAT
    Signed-off-by: default avatarSomnath Kotur <somnath.kotur@broadcom.com>
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    9b9eb518
bnxt_tc.h 6.44 KB