Programming/Windows Socket Programming

Socket programming Basic model - 개요

퀴노아 2020. 3. 1. 09:34

- 서비스를 요청하는쪽을 client, 요청된 서비스를 처리하는 쪽을 server라고 부른다.

TCP 서버/클라이언트 로직 순서

TCP서버        

TCP클라이언트

socket()

socket()

bind()

 

listen()

 

accept() 

connect()

recv()

send()

send()

recv()

closesocket()

closesocket()

- accept()와 connect()에서 TCP의 3way handshake(SYN, SYN/ACK, ACK)가 발생함.

- 윈도우 소켓은 WS2_32.DLL을 통해 대부분의 기능이 제공된다. 이를 사용하려면 ws2_32.lib를 프로젝트에 추가해야 한다.

- socket()을 본격적으로 호출하기 전에 사전작업으로 winsock초기화 작업을 해줘야 한다.

WSAStartup(): WS2_32.DLL 메모리에 로드(초기화)하는 함수.

WSACleanup(): 윈속 함수 사용중지를 알리고 리소스 반환하는 함수.