UDP(User Datagram Protocol)

컴퓨터가 다른 컴퓨터와 데이터 통신을 하기 위한 규약의 일종

 

- 기본적인 것은 TCP와 동일하지만 TCP보다 신뢰성이 없다.

- 받는 쪽에서 데이터를 제대로 받는지 신경쓰지 않는다

- ip주소와 prot 번호를 알면 데이터 전송이 가능하다

 

server코드

# UDPServerSocket.py

import socket

if __name__ == '__main__':
    host = '127.0.0.1'
    port = 4455
	
    # 소켓 생성 
    server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
	# 바인딩
    server.bind((host, port))
	
    
    while True:
        data, addr = server.recvfrom(1024)
        data = data.decode("utf-8")

        print(f"Client : {data}")

        data = data.encode("utf-8")
        server.sendto(data, addr)

 

client코드

# UDPClientSocket.py

import socket

if __name__ == '__main__':
    host = '127.0.0.1'
    port = 4455
    # address의 약자
    addr = (host, port)

	# 소켓 생성
    client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

    while True:
        data = input("Enter a word : ")

        data = data.encode("utf-8")
        client.sendto(data, addr)

        data, addr = client.recvfrom(1024)
        data = data.decode("utf-8")
        print(f"Server:{data}")

server 실행 후 client를 실행한다

# 서버 열기
python UDPServerSocket.py

# 클라이언트 열기
python UDPClientSocket.py

텍스트가 보내지는지 간단하게 확인할 수 있다

반응형

+ Recent posts