network abstraction and client draft