make it work
more workings
recv response
encode header
support udp and tcp