TCP/IP sockets use a connection model, where a client (socket client) seeks to establish a connection with a server (socket server). Once established, the socket client and server communicate over this connection in a peer-to-peer fashion by sending and receiving data streams over the established connection.