Mirroring packets to an ECMP destination are not distributed

Bug #1616822 reported by Hari Prasad Killi on 2016-08-25
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R3.1
Fix Committed
Medium
Anand H. Krishnan
Trunk
Fix Committed
Medium
Anand H. Krishnan

Bug Description

Mirrored traffic to an ECMP mirror destination are not distributed as vrouter uses the outer header to calculate the hash.

Review in progress for https://review.opencontrail.org/23771
Submitter: Divakar Dharanalakota (<email address hidden>)

Reviewed: https://review.opencontrail.org/23771
Committed: http://github.org/Juniper/contrail-vrouter/commit/78b516a01921ed84308868d5b0da682587c9f2ea
Submitter: Zuul
Branch: master

commit 78b516a01921ed84308868d5b0da682587c9f2ea
Author: Divakar <email address hidden>
Date: Fri Sep 2 23:25:39 2016 +0530

Distribute mirroring packets to Ecmp destination

Incase of dynamic mirroring, udp header is added on top of mirrored
packet. If the mirroring destination is an Ecmp destination, ecmp
distribution is happening using the newly added udp heder. This results
in no distribution with in Ecmp, as all mirrored packets are going to
contain the same IP/UDP header resulting in same hash calculation.

As a fix, for a better distribution, the udp source port of the UDP header
is calculated based on the packet's IP/IPV6 header content. This results
in better port range, eventually leading to better Ecmp distribution.
For non IP/IPV6 packets, Agent added port is taken as is.

closes-bug: #1616822

Change-Id: I06f2fd0dee79ade11696bc2b2d9c3c34c374ff65

Review in progress for https://review.opencontrail.org/24590
Submitter: Divakar Dharanalakota (<email address hidden>)

Reviewed: https://review.opencontrail.org/24590
Committed: http://github.org/Juniper/contrail-vrouter/commit/7de3127323428ba8f1f62fbc72dfb79f3c2acf01
Submitter: Zuul
Branch: R3.1

commit 7de3127323428ba8f1f62fbc72dfb79f3c2acf01
Author: Divakar <email address hidden>
Date: Fri Sep 2 23:25:39 2016 +0530

Distribute mirroring packets to Ecmp destination

Incase of dynamic mirroring, udp header is added on top of mirrored
packet. If the mirroring destination is an Ecmp destination, ecmp
distribution is happening using the newly added udp heder. This results
in no distribution with in Ecmp, as all mirrored packets are going to
contain the same IP/UDP header resulting in same hash calculation.

As a fix, for a better distribution, the udp source port of the UDP header
is calculated based on the packet's IP/IPV6 header content. This results
in better port range, eventually leading to better Ecmp distribution.
For non IP/IPV6 packets, Agent added port is taken as is.

closes-bug: #1616822

Change-Id: I06f2fd0dee79ade11696bc2b2d9c3c34c374ff65

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers