1. 클라이언트와 서버


   - 클라이언트 --------------------> 서버 

      // 연결 요청(소켓 API함수를 호출 -> 서버 프로그램에 연결 요청)

 

   - 서버 ------------------->  클라이언트  

     // 문자열 전송(요청 받은 서버는 연결되자마자 문자열을 클라이언트에게 전송)

  

   - 클라이언트 --------------------> 서버 

     // 화면 출력(클라이언트는 전송받은 문자열을 자신의 화면에 출력)



2.  소켓 프로그래밍(Server)  관련 함수

  

 처리과정

관련 함수 

비유 

 소켓을 생성 

socket() 

전화기 준비 

 연결 요청을 수신할 주소 설정

 

회사 대표전화와 내선 번호 준비 

 소켓을 포트에 연결

bind() 

전화기를 준비한 내선에 연결 

 커널에 개통 요청 

listen() 

전화국에 개통 요청 

 연결 요청을 수신 (기다림)

accept() 

전화를 기다리다가 전화가 오면 받음 

 클라이언트에게 서비스를 제공 

read() / write() 

전화 통화 

 클라이언트와의 연결 종료 

close() 

전화 끊기  




3. telnet 연결 


 $ telnet host [포트번호]


 - 포트번호 : 기본값은 23번 

   (그러나 대부분 보안상 23번 포트 연결을 허용안됨. 따라서 지정해줘야함. 보편적으로 9000번이나 9080번을 사용.)

 

- 자기자신

    $telnet 127.0.0.1  또는 $telnet localhost 


'웹소켓' 카테고리의 다른 글

hello_client.c  (0) 2018.11.01
hello_server.c  (0) 2018.10.31

+ Recent posts