Mirror Commands


Chips mirror actions:

PRONTO3290 PRONTO3296 PRONTO3295(TR2)(egress mirror=true)
PRONTO3780 PRONTO3920 PRONTO3922 PRONTO3930 PRONTO3960 PRONTO3965 PRONTO3980 PRONTO3920 PRONTO3924(TD)
 
ES4654 AS4610_54P AS4610_54T AS4610_30P AS4610_30T(Helix4)(egress mirror=true)
 PRONTO5101 PRONTO5401 AS6701_32X N2632XL N2948_6XL AS6712_32X AS5712_54X S4048 ARCTICA4806XP(TD2)
 
AS5812_54T AS5812_54X(TD2P)
 DCS7032Q28 AS7712_32X Z9100 (TH)

Note:Egress mirror works correctly only on those switches that the parameter 'egress mirror' is true.According to above chips,3290(Firebolt3),3296(Triumph2),helix4 support egress mirror.On other switches,the mirror port' traffics' action are not certain.

Below is the test result on some kinds of chips:

p3290(Firebolt3):

module    name

 mirror dst traffic test result

multitable

pass

udf/ttp multicast 

pass

push mpls/pop mpls

failed(3290 do not support mpls)

egress mode

pass

flow control

pass

l2mpls

failed(3290 do not support mpls)

p3297(trumph2):

module    name

 mirror dst traffic test result

multitable 

pass

ttp multicast 

pass

udf/push mpls/pop mpls

pass

egress mode 

pass

flow control 

mirror test pass

l2mpls

pass

as5812_54t(trident2plus):

module    name

mirror dst traffic test result

multitable 

pass

ttp multicast 

failed

udf/push mpls/pop mpls

pass

egress mode 

pass

flow control 

mirror test pass

l2mpls

failed(mirror port packets has one more vlan 4095)

vxlan/l2gre/NAT

pass

p6701(trident2):

module    name

 mirror dst traffic test result

multitable 

pass

ttp multicast 

failed

udf/push mpls/pop mpls

pass

egress mode 

pass

flow control 

pass

l2mpls/nat

pass

vxlan/l2gre

failed

p3920(trident+):

module    name

 mirror dst traffic test result

multitable 

pass

ttp multicast 

failed

udf/push mpls/pop mpls

pass

egress mode 

pass

flow control 

pass

l2mpls

pass


4610_54t_b(helix4):

module    name

 mirror dst traffic test result

multitable 

pass

ttp multicast /udf

pass

push mpls/pop mpls

failed(4610 do not support mpls)

egress mode 

pass

flow control 

pass

l2mpls

failed(4610 do not support l2mpls)

as7712_32x(tomhark):

module    name

 mirror dst traffic test result

multitable 

pass

ttp multicast 

failed

pop mpls/udf

failed(do not support mpls)

egress mode 

pass

flow control /l2mpls/nat/push mpls(ip packets)

pass

vxlan/l2gre

failed

Create One Mirror

ovs-vsctl [--OPTION] -- set bridge <bridge> mirrors=@m -- --id=@<port1> get Port <port1> -- --id=@<port2> get Port <port2> [-- --id=@<port3> get Port <port3>]-- --id=@m create Mirror name=<mirror-name> select-src-port=@<port1>[,@<port3>] select-dst-port=@<port1>[,@<port3>] output-port=@<port2>

PicOS OVS supports mirroring, select-src-port and select-dst-port represent the source ports of mirroring, select-dst-port means some packets (in switch chip) will go-out from the specified port (egress); select-src-port means some packets will enter the specified port (ingress); output_port means the monitor port. PicOS OVS supports up to 4 mirrors.

Before PicOS2.10 ovs only support configure physical port as output_port, from PicOS2.10 ovs also support lag interface as output_port.


Example1:
Add port ge-1/1/1, ge-1/1/2 and ge-1/1/3 to mirror, ge-1/1/1 and ge-1/1/2 as ingress and egress, the output port is ge-1/1/3.

root@PicOS-OVS$ovs-vsctl set bridge br0 mirrors=@m -- --id=@ge-1/1/1 get Port ge-1/1/1 -- --id=@ge-1/1/2 get Port ge-1/1/2 -- --id=@ge-1/1/3 get Port ge-1/1/3 -- --id=@m create Mirror name=mymirror select-src-port=@ge-1/1/1,@ge-1/1/2 select-dst-port=@ge-1/1/1,@ge-1/1/2 output-port=@ge-1/1/3

Example2:
Add port ge-1/1/1, ge-1/1/2 and ae1 to mirror, ge-1/1/1 and ge-1/1/2 as ingress and egress, the output port is ae1.

root@PicOS-OVS$ovs-vsctl set bridge br0 mirrors=@m -- --id=@ge-1/1/1 get Port ge-1/1/1 -- --id=@ge-1/1/2 get Port ge-1/1/2 -- --id=@ae1 get Port ae1 -- --id=@m create Mirror name=mymirror select-src-port=@ge-1/1/1,@ge-1/1/2 select-dst-port=@ge-1/1/1,@ge-1/1/2 output-port=@ae1


ovs-vsctl [--OPTION] destroy <table> <record> – clear Bridge <bridge> mirrors

Example:


Delete a mirror named mymirror from mirror table in bridge br0.

admin@PicOS-OVS$ ovs-vsctl destroy Mirror mymirror -- clear Bridge br0 mirrors
or
admin@PicOS-OVS$ ovs-vsctl clear Bridge br0 mirrors

Create Two Mirrors


admin@PicOS-OVS$ovs-vsctl  -- set bridge br-s mirrors=@m,@m1 -- --id=@ge-1/1/1 get Port ge-1/1/1 -- --id=@ge-1/1/3 get Port ge-1/1/3 -- --id=@m create Mirror name=mymirror select-src-port=@ge-1/1/1 output-port=@ge-1/1/3 -- --id=@m1 create Mirror name=mirror1 select-src-port=@ge-1/1/3 output-port=@ge-1/1/1

Add one mirror and monitor port is lag

admin@PicOS-OVS$ovs-vsctl -- add bridge br-s mirrors @m -- --id=@te-1/1/1 get Port te-1/1/1 -- --id=@te-1/1/2 get Port te-1/1/2 -- --id=@ae1 get Port ae1 -- --id=@m create Mirror name=mymirror select-src-port=@te-1/1/1 select-src-port=@te-1/1/2 output-port=@ae1

Delete one mirror

admin@PicOS-OVS$ovs-vsctl remove bridge br0 mirrors 76fd4479-67e9-4c65-8edb-b99d8706d8f9

Copyright © 2024 Pica8 Inc. All Rights Reserved.