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