#!/usr/bin/env python import socket import timeit tcp_server_adress = sys.argv[1] # expecting "www.perdu.com" def print_sock_ctts(): buffer = b"" data = sock.recv(4096) while data: buffer += data data = sock.recv(4096) print(buffer.decode()) def test_request_single_packet(): sock.connect((f'{tcp_server_adress}', 80)) request = b"GET / HTTP/1.1\r\nHost: " + tcp_server_adress.encode() + b"\r\n\r\n") sock.sendall(request.) print_sock_ctts() sock.close() def test_request_split_packet(): sock.connect((f'{tcp_server_adress}', 80)) request = b"GET / HTTP/1.1\r\nHost: " sock.sendall(request) request = tcp_server_adress.encode() + "\r\n\r\n" sock.sendall(request) print_sock_ctts() sock.close() def time_test(function) t1 = timeit.default_timer() function() t2 = timeit.default_timer() print(t2-t1) client_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) time_test(test_request_single_packet) time_test(test_request_split_packet)