[파이썬] 소켓 연결 및 연결 해제
소켓(Socket)이란?
소켓은 네트워크 통신을 위한 엔드포인트로, 서로 다른 호스트 간에 통신을 가능하게 해주는 기술입니다. 소켓을 사용하여 데이터를 송수신하고, 연결을 설정하고 해제할 수 있습니다. 이번 글에서는 Python을 사용하여 소켓 연결 및 연결 해제하는 방법을 알아보겠습니다.
소켓 연결(Socket Connection) 설정하기
Python에서 소켓을 사용하기 위해서는 socket
모듈을 import해야 합니다. 다음 코드를 통해 소켓 연결을 설정할 수 있습니다.
import socket
# 소켓 생성
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 호스트와 포트 지정
host = 'localhost' # 호스트 이름
port = 12345 # 포트 번호
# 서버에 연결하기
s.connect((host, port))
# 연결 성공 메시지 출력
print('Connected to', host, 'on port', port)
위 코드에서 AF_INET
은 IPv4 주소 체계를 사용하고, SOCK_STREAM
은 TCP 소켓을 의미합니다. 소켓을 생성한 후, connect()
함수를 사용하여 서버에 연결할 수 있습니다.
소켓 연결 해제(Socket Disconnection)하기
소켓 연결 해제는 연결된 소켓 객체의 close()
함수를 호출하여 수행할 수 있습니다. 다음은 소켓 연결 해제하는 코드입니다.
# 소켓 연결 해제하기
s.close()
# 연결 해제 메시지 출력
print('Socket disconnected')
위 코드에서 close()
함수를 호출하여 소켓 연결을 해제할 수 있습니다. 연결 해제 후에는 필요에 따라 추가적인 작업을 수행할 수 있습니다.
성공적인 소켓 연결 및 연결 해제
다음과 같이 소켓 연결 및 연결 해제를 정상적으로 수행하는 예제 코드를 제시합니다.
import socket
def connect_socket():
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = 'localhost'
port = 12345
s.connect((host, port))
print('Connected to', host, 'on port', port)
return s
def disconnect_socket(s):
s.close()
print('Socket disconnected')
# 소켓 연결 실행
socket_obj = connect_socket()
# 소켓 연결 해제 실행
disconnect_socket(socket_obj)
위의 코드를 실행하면, 정상적으로 소켓 연결과 연결 해제가 수행되는 것을 확인할 수 있습니다.
이렇게 Python을 사용하여 소켓 연결 및 연결 해제를 수행할 수 있습니다. 네트워크 통신을 위한 소켓은 다양한 기능을 제공하므로, 활용하는 방법을 익혀두면 유용하게 사용할 수 있습니다.