This document discusses client-server communication using TCP in Python. It introduces sockets as endpoints for bidirectional communication between clients and servers. The objectives are to develop secure client-server communication within a network using full duplex communication. The methodology uses socket programming and multithreading - threads are created for each client to allow independent communication through individual sockets. The server script establishes a socket bound to a port, while the client script connects to the server socket. Future scopes include adding a database, frontend, and internet hosting to create a real-time chat application, or including more graphical interfaces.