Router abstraction.