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