Uploaded image for project: 'Fast Datapath Product'
  1. Fast Datapath Product
  2. FDP-207

[openvswitch]ping between ovn logical ports failed crossing nat because of checksum error

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • ovs-dpdk
    • None
    • [openvswitch]ping between ovn logical ports failed crossing nat because of checksum error
    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      Please mark each item below with ( / ) if completed or ( x ) if incomplete:

      ( ) The acceptance criteria defined below are met.


      ( ) The epics work is available in a downstream build (nightly/Async or other)


      ( ) All cards under the epic have been moved to Done

      Show
      Please mark each item below with ( / ) if completed or ( x ) if incomplete: ( ) The acceptance criteria defined below are met. ( ) The epics work is available in a downstream build (nightly/Async or other) ( ) All cards under the epic have been moved to Done
    • rhel-net-ovs-dpdk
    • 100% To Do, 0% In Progress, 0% Done
    • ssg_networking
    • Moderate

      This epic tracks all the effort needed to deliver the solution related to the bug described below.
      Versions:
      RPM_OVS=https://download.eng.bos.redhat.com/brewroot/packages/openvswitch3.2/3.2.0/37.el9fdp/x86_64/openvswitch3.2-3.2.0-37.el9fdp.x86_64.rpm
      RPM_OVN_COMMON=https://download.eng.bos.redhat.com/brewroot/packages/ovn22.12/22.12.1/35.el9fdp/x86_64/ovn22.12-22.12.1-35.el9fdp.x86_64.rpm
      RPM_SELINUX=http://download-node-02.eng.bos.redhat.com/brewroot/packages/openvswitch-selinux-extra-policy/1.0/34.el9fdp/noarch/openvswitch-selinux-extra-policy-1.0-34.el9fdp.noarch.rpm

      kernel-5.14.0-284.45.1.el9_2.x86_64
      nic driver: mlx5_core

      step:
      1. create ovn environment with DPDK datapath.
      2.create lr1 and ls1 and ls2
      3.apply nat on rl1
      4.ping from ls1p1 to ls2p1, the starting one or two icmp requests can get reply, but the following can't
      5. looks like the ICMP request arrived at ls2p1 has wrong checksum.
      [root@dell-per740-17 nat]# ip netns exec ls2p1 tcpdump -i ls2p1 -ennv
      dropped privs to tcpdump
      tcpdump: listening on ls2p1, link-type EN10MB (Ethernet), snapshot length 262144 bytes
      03:35:17.101798 00:de:ad:ff:01:02 > 00:00:00:01:02:01, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 63, id 6374, offset 0, flags [DF], proto ICMP (1), length 84)
      177.31.36.11 > 172.1.36.21: ICMP echo request, id 35748, seq 1, length 64
      03:35:17.101816 00:00:00:01:02:01 > 00:de:ad:ff:01:02, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 126, offset 0, flags [none], proto ICMP (1), length 84)
      172.1.36.21 > 177.31.36.11: ICMP echo reply, id 35748, seq 1, length 64
      03:35:18.111669 00:de:ad:ff:01:02 > 00:00:00:01:02:01, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 63, id 7197, offset 0, flags [DF], proto ICMP (1), length 84, bad cksum 6a69 (->7a4b)!)
      177.31.36.11 > 172.1.36.21: ICMP echo request, id 35748, seq 2, length 64
      03:35:19.135629 00:de:ad:ff:01:02 > 00:00:00:01:02:01, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 63, id 7767, offset 0, flags [DF], proto ICMP (1), length 84, bad cksum 682f (->7811)!)
      177.31.36.11 > 172.1.36.21: ICMP echo request, id 35748, seq 3, length 64

      For detailed steps, please see: dpdk_basic_nat() in https://gitlab.cee.redhat.com/kernel-qe/kernel/-/blob/master/networking/openvswitch/ovn/nat/runtest.sh?ref_type=heads

      This issue doesn't happen when using https://download.eng.bos.redhat.com/brewroot/vol/rhel-9/packages/openvswitch3.1/3.1.0/59.el9fdp/x86_64/openvswitch3.1-3.1.0-59.el9fdp.x86_64.rpm

              ovsdpdk-bot ovsdpdk bot
              rhn-support-liali Liang Li
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: