= TCP Communication = <> See also: [[UdpCommunication|UdpCommunication]] == Client == Here's simple code to send and receive data by TCP in Python: {{{#!python #!/usr/bin/env python import socket TCP_IP = '127.0.0.1' TCP_PORT = 5005 BUFFER_SIZE = 1024 MESSAGE = "Hello, World!" s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((TCP_IP, TCP_PORT)) s.send(MESSAGE) data = s.recv(BUFFER_SIZE) s.close() print "received data:", data }}} == Server == Here's simple code to serve TCP in Python: {{{#!python #!/usr/bin/env python import socket TCP_IP = '127.0.0.1' TCP_PORT = 5005 BUFFER_SIZE = 20 # Normally 1024, but we want fast response s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind((TCP_IP, TCP_PORT)) s.listen(1) conn, addr = s.accept() print 'Connection address:', addr while 1: data = conn.recv(BUFFER_SIZE) if not data: break print "received data:", data conn.send(data) # echo conn.close() }}} == Links == * [[http://www.python.org/doc/current/lib/module-socket.html|socket]] -- builtin Python module * [[http://www.python.org/doc/current/lib/module-telnetlib.html|telnetlib]] -- builtin Python module * [[http://woozle.org/~neale/papers/sockets.html|Introduction to TCP Sockets]] -- uses Python to explain. Note: substitute socket.AF_INET where socket.PF_INET is mentioned. = Discussion = . (none yet!)