Thanks a lot for your detail reply, John. My scenario is vxlan over l3 network, which means after decapsulation, vpp will use ip header to execute the forward function. I use this command to create the tunnel: "vppctl create vxlan tunnel src 10.0.0.1 dst 10.0.0.2 vni 24 encap-vrf-id 0 decap-next node ethernet-input". I found that vpp will calculate the inner ip header checksum and verify it. So I wonder if it is possible to skip the inner ip header calculation because the outer udp checksum can cover the inner packet. Expecting your reply, thanks a lot.
Regards, Yuwei From: John Lo (loj) [mailto:l...@cisco.com] Sent: Friday, October 19, 2018 11:04 PM To: Zhang, Yuwei1 <yuwei1.zh...@intel.com>; vpp-dev@lists.fd.io Subject: RE: [vpp-dev] one question IP checksum The IP path after receiving a VXLAN packet is processing the outer IP header and not the inner one. The payload of VXLAN packet is expected to be an ethernet packet. After VXLAN decap, the payload ethernet packet will be processed in L2 forwarding path where no IP processing is involved. If you want to speed up VXLAN decap processing, there is a vxlan-bypass feature you can enable on the underlay interface which will look for VXLAN packet and bypass IP lookup to speed up processing: vpp# set interface ip vxlan-bypass ? set interface ip vxlan-bypass set interface ip vxlan-bypass <interface> [del] Enabling this feature on IP forwarding would add slight overhead for non-VXLAN IP packets but speed up VXLAN decap performance as IP lookup is not done. Regards, John From: vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io> <vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>> On Behalf Of Zhang Yuwei Sent: Thursday, October 18, 2018 11:26 PM To: vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io> Subject: [vpp-dev] one question IP checksum Hi Guys and VPP maintainers, When I run VPP in vxlan scenario, I found that when VPP receive a vxlan packets, after decapsulation, the packet will go into ip-input node instead of ip-input-nochecksum which means vpp will re-calculate the checksum and verify it. I think the outer UDP checksum has already include the inner packet as payload, so can we skip the ip header checksum calculation for inner ip header? This part is done by software which will cause some CPU cycles consumption and I tried if skip the checksum calculation it will have a obvious performance gain. Can anybody give me some instructions? Thanks a lot for your kindly help. Regards, Yuwei
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#10886): https://lists.fd.io/g/vpp-dev/message/10886 Mute This Topic: https://lists.fd.io/mt/27412224/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-