Mirroring: Nic assisted mirroring does not work.

Bug #1687862 reported by Shashikiran H
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R4.0
Fix Released
High
Anand H. Krishnan
Trunk
Fix Committed
High
Anand H. Krishnan

Bug Description

Topo: 2 computes.
First will have mirror source, second will have mirror destination.
10.204.217.17 --- 10.204.217.49

I send traffic from source to the destination and monitor tcpdump on p1p1 on the source.
I have vlan value of 100 set on source mirroring side.

I don't see the vlan header on p1p1.

root@nodec32:~# mirror -b
Mirror Table

Flags:D=Dynamic Mirroring, Hw=NIC Assisted Mirroring

Index NextHop Flags VNI Vlan
------------------------------------------------
    0 0 Hw 0 100

root@nodec32:~# vif --get 3
Vrouter Interface Table

Flags: P=Policy, X=Cross Connect, S=Service Chain, Mr=Receive Mirror
       Mt=Transmit Mirror, Tc=Transmit Checksum Offload, L3=Layer 3, L2=Layer 2
       D=DHCP, Vp=Vhost Physical, Pr=Promiscuous, Vnt=Native Vlan Tagged
       Mnp=No MAC Proxy, Dpdk=DPDK PMD Interface, Rfl=Receive Filtering Offload, Mon=Interface is Monitored
       Uuf=Unknown Unicast Flood, Vof=VLAN insert/strip offload, Df=Drop New Flows, L=MAC Learning Enabled
       Proxy=MAC Requests Proxied Always, Er=Etree Root

vif0/3 OS: tap0740fa42-dd
            Type:Virtual HWaddr:00:00:5e:00:01:00 IPaddr:0
            Vrf:1 Flags:PMrMtL3L2DEr QOS:-1 Ref:5 Mirror index 0
            RX packets:55146 bytes:3450791 errors:0
            TX packets:48862 bytes:2221226 errors:0
            Drops:12
            Ingress Mirror Metadata: 3 19 64 65 66 61 75 6c 74 2d 64
                                     6f 6d 61 69 6e 3a 61 64 6d 69 6e
                                     3a 6c 65 66 74 ff 0
            Egress Mirror Metadata: 4 19 64 65 66 61 75 6c 74 2d 64 6f
                                    6d 61 69 6e 3a 61 64 6d 69 6e 3a
                                    6c 65 66 74 ff 0

tcpdump -i p1p1 -xxx -n ip proto 17
10:00:48.319687 IP 10.204.217.17.61911 > 10.204.217.49.6635: UDP, length 88
 0x0000: 0025 90c4 84cc 0025 90c3 0aee 0800 4500
 0x0010: 0074 0000 0000 4011 b29e 0acc d911 0acc
 0x0020: d931 f1d7 19eb 0060 0000 0001 a13f 4500
 0x0030: 0054 0000 4000 3f01 35a1 0101 0103 0202
 0x0040: 0203 0800 7069 cc00 0011 fe1f bd64 0000
 0x0050: 0000 0000 0000 0000 0000 0000 0000 0000
 0x0060: 0000 0000 0000 0000 0000 0000 0000 0000
 0x0070: 0000 0000 0000 0000 0000 0000 0000 0000
 0x0080: 0000

Jeba Paulaiyan (jebap)
Changed in juniperopenstack:
milestone: none → r4.0
importance: Undecided → High
Jeba Paulaiyan (jebap)
tags: added: blocker
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/31084
Submitter: Anand H. Krishnan (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/31084
Committed: http://github.com/Juniper/contrail-vrouter/commit/eb1925f5f6dfd13f69289901bbc3cb829eaa47cc
Submitter: Zuul (<email address hidden>)
Branch: master

commit eb1925f5f6dfd13f69289901bbc3cb829eaa47cc
Author: Anand H. Krishnan <email address hidden>
Date: Sun May 7 08:39:39 2017 +0530

Copy the mirror vlan to parent fmd

. without copying the mirror vlan to parent fmd, no tag insertion
will happen. Hence, copy the mirror vlan to parent fmd.

. for the first packet than generates a flow (and thus held), save
and restore the mirror vlan to and from the packet node.

. while transmitting the tunneled packet out, get to the outermost
IP header after taking into account vlan headers that are present
in the packet

Change-Id: I23ab21afc31b4aae74af3f8ff80720df1a36d703
Closes-Bug: #1687862

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R4.0

Review in progress for https://review.opencontrail.org/31382
Submitter: Anand H. Krishnan (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/31382
Committed: http://github.com/Juniper/contrail-vrouter/commit/a25ff05d30ad5b60ae0a98a6ef13919ff8a6f0b1
Submitter: Zuul (<email address hidden>)
Branch: R4.0

commit a25ff05d30ad5b60ae0a98a6ef13919ff8a6f0b1
Author: Anand H. Krishnan <email address hidden>
Date: Sun May 7 08:39:39 2017 +0530

Copy the mirror vlan to parent fmd

. without copying the mirror vlan to parent fmd, no tag insertion
will happen. Hence, copy the mirror vlan to parent fmd.

. for the first packet than generates a flow (and thus held), save
and restore the mirror vlan to and from the packet node.

. while transmitting the tunneled packet out, get to the outermost
IP header after taking into account vlan headers that are present
in the packet

Change-Id: I23ab21afc31b4aae74af3f8ff80720df1a36d703
Closes-Bug: #1687862

Revision history for this message
Shashikiran H (skiranh) wrote :

Verified on R4.0 build 5.

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

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.