p2p p2p library will abstract p2p communication over bare minimum TCP Persistent TCP connection: The server and client will never create a new connection until the existing one is closed. Bidirectional communication: Once the connection is established, either the server or the client can send data at any time