файлы TCP and UDP
This commit is contained in:
parent
97366df035
commit
7eae67847a
10
tcp_client.py
Normal file
10
tcp_client.py
Normal file
@ -0,0 +1,10 @@
|
||||
import socket
|
||||
|
||||
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
client.connect(('127.0.0.1', 10000))
|
||||
# Отправляем сообщение 'EXIT' для завершения работы сервера
|
||||
client.sendall(b'EXIT')
|
||||
|
||||
data = client.recv(1024)
|
||||
print(f"Ответ от сервера: {data.decode()}")
|
||||
client.close()
|
20
tcp_server.py
Normal file
20
tcp_server.py
Normal file
@ -0,0 +1,20 @@
|
||||
import socket
|
||||
|
||||
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
server.bind(("0.0.0.0", 10000))
|
||||
server.listen(1)
|
||||
print("TCP сервер запущен")
|
||||
|
||||
while True:
|
||||
conn, addr = server.accept()
|
||||
print(f"Подключение от {addr}")
|
||||
|
||||
data = conn.recv(1024)
|
||||
if not data:
|
||||
break
|
||||
conn.sendall(data.upper())
|
||||
|
||||
conn.close()
|
||||
|
||||
if data.upper() == b'EXIT':
|
||||
break
|
16
udp_client.py
Normal file
16
udp_client.py
Normal file
@ -0,0 +1,16 @@
|
||||
import socket
|
||||
|
||||
# Новый порт для UDP клиента
|
||||
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
|
||||
# Сообщение, которое будет отправлено на сервер
|
||||
message = b'hello server'
|
||||
|
||||
# Отправляем сообщение серверу
|
||||
client.sendto(message, ('127.0.0.1', 20001)) # Новый порт 20001
|
||||
|
||||
# Получаем и выводим модифицированные данные от сервера
|
||||
data, _ = client.recvfrom(1024)
|
||||
print(f"Ответ от сервера: {data.decode()}")
|
||||
|
||||
client.close()
|
26
udp_server.py
Normal file
26
udp_server.py
Normal file
@ -0,0 +1,26 @@
|
||||
import socket
|
||||
|
||||
# Новый порт для UDP-сервера
|
||||
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
server.bind(('0.0.0.0', 20001)) # Новый порт 20001
|
||||
print("UDP сервер запущен на порту 20001")
|
||||
|
||||
while True:
|
||||
# Получаем данные от клиента
|
||||
data, addr = server.recvfrom(1024)
|
||||
if not data:
|
||||
continue
|
||||
|
||||
print(f"Получено сообщение от {addr}: {data.decode()}")
|
||||
|
||||
# Модифицируем данные: преобразуем в верхний регистр и добавляем префикс
|
||||
modified_data = b"Modified: " + data.upper()
|
||||
|
||||
# Отправляем модифицированные данные обратно клиенту
|
||||
server.sendto(modified_data, addr)
|
||||
|
||||
# Дополнительное условие для завершения работы
|
||||
if data.upper() == b'EXIT':
|
||||
break
|
||||
|
||||
server.close()
|
Loading…
Reference in New Issue
Block a user