After the unidirectional flow from one port to another, modify the flow entry to configure a 1-to-3 ports multicasting scenario where packets matching the flow entry are duplicated and forwarded to 3 output ports. This time, use the mod-flows command ovs-ofctl mod-flows br0 in_port=1,dl_type=0x0800,nw_src=126.96.36.199,actions=output:2,3,4. Then, use the dump flow command to verify the flow is set up correctly.
Figure 7 – 1 to 3 port packet duplication and multicasting
Configure the packeth and wireshark on all PCs, send the packets into port 1, and examine the packets received on port 2, 3, and 4 to see if the action matches the flow specification.
Figure 8 – 1 to 3 port packet filtering, duplication, and multicasting
Next, use the packeth to build packet with VLAN, priority, ARP, TCP, UDP, and ICMP packets to exercise various flow packet matching fields and use the wireshark to verify the output.
In addition to using filters in multicasting, port level duplication and multicasting is also supported. To configure this scenario, first clean up the flows in br0 using ovs-ofctl del-flows br0. Then, use ovs-ofctl add-flow br0 in_port=1,actions=output:2,3,4 to add a new multicasting flow.
Figure 9 – 1 to 3 port level multicasting
The same traffic with source IP 188.8.131.52 is sent to port 1. The received traffic on port 4 is captured using wireshark. With the tools described in this document, various traffic patterns combined with different filters can be configured to test application scenarios.
Figure 10 – 1 to 3 port level multicasting