On Wed, Sep 4, 2019 at 10:51 AM Steve Zabele <zab...@comcast.net> wrote: > > I think a dual table approach makes a lot of sense here, especially if we > look at the different use cases. For the DNS server example, almost certainly > there will not be any connected sockets using the server port, so a test of > whether the connected table is empty (maybe a boolean stored with the > unconnected table?) should get to the existing code very quickly and not > require accessing the memory holding the connected table. For our use case, > the connected sockets persist for long periods (at network timescales at > least) and so any rehashing should be infrequent and so have limited impact > on performance overall. > > So does a dual table approach seem workable to other folks that know the > internals?
Let me take a stab and compare. A dual table does bring it more in line with how the TCP code is structured.