3.1 소켓 만들기
버클리 소켓 API(Berkeley Socket API)는 원래 BSD 4.2 운영체제의 일부로 배포되었는데, 프로세스와 TCP/IP 스택의 여러 계층 사이에 표준 인터페이스로 쓰기 위해 제공되었다. 배포된 이후 여러 주요 운영체제 및 프로그래밍 언어로 포팅되어, 사실상 네트워크 프로그래밍의 표준으로 여겨지고 있다.
프로세스는 실행 도중 하나 이상의 소켓(socket)을 만들고 초기화하여 소켓 API로 제어하는데, 이렇게 만든 소켓을 통해 데이터를 읽고 쓰게 된다. 소켓을 만들려면 이름 그대로 socket() 함수를 호출한다.
SOCKET socket(int af, int type, int protocol);