■ 소켓 프로그래밍 소켓 프로그래밍이란 소켓을 이용한 통신 프로그래밍을 말한다. 소켓이란 (Socket) 프로세스 통신 간에 사용되는 양쪽 끝단을 의미한다. 즉, 소프트웨어 차원에서 원격에 존재하는 두 호스트를 연결해주는 매개체이다. 대표적으로 TCP 와 UDP이용이 있다. 소켓프로그램은 주로 서버-클라이언트 2개의 프로그램이 쌍을 이룬다. 이런 흐름은 포트에 대기하다가 클라이언트의 연결을 기다리고 (listen), 클라이언트가 접근을 요청하면 받아들여서(accept) 서버-클라이언트 연결을 설정하고, 클라이언트의 여러 명령을 받아서 서비스를 하게 되는 것이다. 비유적으로 생각해보자. 서버소켓은 먼저 소켓을 생성한다. (전화기 구입) 그리고 주소와 포트를 할당한다. (전화번호 개통) 요청대기 (전화를 기..