файлы 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