A Erlang socket framework