Currently Router is used for InterfacePtr/Binding which don't pass associated interface endpoints. It doesn't need lock and endpoint bookkeeping so it is expected to be more efficient. However, with features such as sync method calls, Router becomes more complex. It is quite some work to maintain two different router implementation and ensure they are consistent.
It would be nice to measure/optimize MultiplexRouter for the non-associated case, and remove Router.
Comment 1 by bugdroid1@chromium.org
, Sep 6 2016