> I looked into the code and the logic seems good to me. > But reordering in dataplane also has performance implications especially > considering non-TCP traffic. Also, the packets came to OvS may already been > out-of-ordered. Could you provide some performance data points showing when > all EMC hit and mix of EMC-hit and EMC-miss cases, and how is the throughput > affected? Also maybe considering only do it for TCP traffic?
Thanks Yipeng for reviewing the patch. The patch is for *preventing* OVS to do any reordering of packets received in a batch which belongs to same megaflow. OVS should send all packets for a given megaflow in the same order as it receives in the batch. However if a packet is already received out-of-order from the network itself, OVS cannot put it back in order. Regarding performance it also depends on application how it treats any out-of-order packet. For e.g. if a TCP application does not use SACK then end point may request retransmissions of packets which are received out-of-order thereby reducing effective throughput. Similarly any delayed (out-of-order) ACK can also cause fast-retransmits from sender side. As per my understanding in principle if OVS is acting as a L2 switch (NORMAL flow) then it should not change the order of received packets for a given flow since we don't know how an application (Virtual Machine) will react to out-of-order packets. Warm Regards, Vishal Ajmera _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev