- SOCKET 이란?

 

두 프로그램이 네트워크를 통해 서로 통신을 수행 할 수 있도록 양쪽에 생성되는 링크의 단자.

두 소켓이 연결되면 서로 다른 프로세스끼리 데이터를 전달 할 수 있다.

 

- Server / Client 흐름도.

 

Server/Client는 전화기에 비율할 수 있다.

 

Server : 전화를 받는 사람.

Client : 전화를 거는 사람.

 

Server는 먼저 실행중인 상태여야 하고 Client의 접속을 허락하고 관리할 수 있어야 한다.

즉, Server는 Client에게 전화가 올 때까지 기다리고 있다가 Client가 전화를 걸면 전화를 받는다.

 

<Server>

 

 1. 전화기가 장만한다. (socket 함수)

 2. 전화 번호를 할당 받아야 한다. (bind 함수)

 3. 전화가 걸려올 수 있도록 전화기를 잭에 연결한다. (listen 함수)

 4. Client로부터 전화가 걸려오면 받는다. (accept 함수)

 5. Client와 대화를 주고 받는다. (send, recv 함수)

 6. 대화가 끝나면 전화를 끊는다. (closesocket 함수)

 

<Client>

 

 1. 전화기가 장만한다. (socket 함수)

 2. Server에 전화를 건다. (connect 함수)

 3. Server와 대화를 주고 받는다. (send, recv 함수)

 4. 대화가 끝나면 전화를 끊는다. (closesocket 함수)

 

참고 내용.

 http://cafe.naver.com/nevernding

'Programming > Socket' 카테고리의 다른 글

[API] 소켓 통신 4 <Client>  (0) 2017.05.22
[API] 소켓 통신 2 <Server/Client 공통>  (0) 2017.05.22

+ Recent posts