Hi, My first post to OvS list - a quick hello! You may have seen me on the DPDK mailing list, where I send most of my patches. I'm looking forward to working with yee folks of the OvS community :)
I've been looking at optimizing the datapath classifier, and stumbled into a few concepts that I don't think I understand correctly. I've a question below, any input or suggestions where to investigate next welcome! When matching the miniflows between packets and subtables, I believe a packet cannot match a subtable if the packet does not have at least the miniflow bits set that the subtable miniflow has. Eg: o subtable matches on nw_src (bit 63 of mf) o The packet miniflow does NOT have bit 63 set o Is it possible for this to packet to match the subtable? If yes, how? In the context of netdev_flow_key_hash_in_mask(), the mf_get_next_in_map() returns a zero value (uint64_t) which is added into the hash if the bits isn't set in the packet. It seems like this is not required, as it doesn't add entropy to the hash itself. (It does change the hash, as it jumbles around the existing set bits..) If we could remove these zero hashes from occurring, we could potentially speed up the core of the dpcls_lookup(). Has anybody looked at this before? Am I mistaken in how the bits in the miniflow and wildcarding takes place? Regards, -Harry _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
