Lec8 EEE13 2s1617
Lec8 EEE13 2s1617
TCP SOCKETS
TCP TAGLINE
s.listen(num_of_people_in_queue)
TCP
SOCKET
TCP
SOCKET
TCP SERVER
LISTENING
TCP
SOCKET
DEDICATED
CLIENT
TCP
TCP
SOCKET SOCKET
TCP SERVER
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)
TCP_IP = '127.0.0.1'
TCP_PORT = 5005 import socket
BUFFER_SIZE = 20
s = socket.socket(socket.AF_INET,
UDP_IP = "127.0.0.1"
socket.SOCK_STREAM) UDP_PORT = 5005
s.bind((TCP_IP, TCP_PORT))
s.listen(1) sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind((UDP_IP, UDP_PORT))
conn, addr = s.accept()
print 'Connection address:', addr
while True:
while 1:
data, addr = sock.recvfrom(1024)
data = conn.recv(BUFFER_SIZE)
if not data: break print "received message:", data
print "received data:", data
conn.send(data) sock.close()
conn.close()
s.close()
TCP UDP
TCP CLIENT
I WANT TO CONNECT
WITH YOU 192.168.11.1
CLIENT
TCP
SOCKET
TCP
SOCKET
TCP CLIENT
CLIENT
TCP
SOCKET
TCP
SOCKET
TCP CLIENT
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()
TCP UDP
MULTIPLE CONNECTIONS
> TCP has dedicated sockets for each client that connects
to it
def clientthread(conn):
conn.send('Welcome to the server. Type something and hit enter\n') #send only takes string
while True:
data = conn.recv(1024)
reply = 'OK...' + data
if not data:
break
conn.sendall(reply)
conn.close()
while 1:
conn, addr = s.accept()
print 'Connected with ' + addr[0] + ':' + str(addr[1])
start_new_thread(clientthread ,(conn,))
s.close()
MULTIPLE CONNECTIONS
SELECT()
CLIENT 4
CLIENT 3
REACTOR
CLIENT 1
LOOP
CLIENT 2
MULTIPLE CONNECTIONS