sockets ; 소켓

소켓은 네트웍 상에서 클라이언트 프로그램과 서버 프로그램 사이의 통신 방법이다. 소켓은 "접속의 끝 부분"으로 정의된다. 소켓은 때로 소켓 API라고 불리는, 일련의 프로그래밍 요청이나 function call로 만들어지고 사용된다. 가장 보편적인 소켓 API는 버클리 유닉스 C 언어 인터페이스이다. 소켓들은 또한, 같은 컴퓨터 내에서 프로세스들 간의 통신에도 사용된다.

다음은 하나의 서버가 여러 개의 클라이언트 요청을 처리하고, 요청을 처리할 때에만 접속을 유지하는 인터넷과 같은 커넥션리스 서비스에서, 서버로부터의 전형적인 소켓요청 순서이다.

socket()
|
bind()
|
recvfrom()
|
(클라이언트로부터 sendto 요청이 들어올때까지 기다린다)
|
(sendto 요청을 처리한다)
|
sendto (클라이언트로부터의 요청에 대응하여, HTML 파일 등을 보낸다)
이에 대응하는 클라이언트의 소켓요청 순서는 다음과 같다.

socket()
|
bind()
|
sendto()
|
recvfrom()

소켓은 또한 C 언어의 시스템 호출이나 함수의 순서를 다소 바꾸면, 커넥션 중심의 트랜잭션에서도 사용될 수 있다.


이 정보는 1999년 10월 19일에 수정되었습니다.
영어판(whatis.com)