32 lines
871 B
Python
32 lines
871 B
Python
#!/usr/bin/env python
|
|
import socket
|
|
import timeit
|
|
|
|
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():
|
|
request = f"GET / HTTP/1.1\r\nHost: {tcp_server_adress}\r\n\r\n"
|
|
sock.sendall(request.encode())
|
|
print_sock_ctts()
|
|
|
|
def test_request_split_packet():
|
|
request = f"GET / HTTP/1.1\r\n"
|
|
request = f"Host: {tcp_server_adress}\r\n\r\n"
|
|
sock.sendall(request.encode())
|
|
print_sock_ctts()
|
|
|
|
tcp_server_adress = input("server domain name : ") # expecting "www.perdu.com"
|
|
client_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
sock.connect(('{tcp_server_adress}', 80))
|
|
|
|
timeit.timeit("test_request_single_packet()", number=1)
|
|
timeit.timeit("test_request_split_packet()", number=1)
|
|
|
|
sock.close()
|