noise socket abstraction