글
■ Welcome to MintnLatte's blog! 를 출력하는 소켓 프로그램의 구현
: 연결 요청(Client) -> 문자열 전송(Server) -> 화면 출력(Client)
(1) 서버 프로그램
- 소켓 생성 : 클라이언트의 요청을 받기위해 소켓 생성
- 주소 설정 : 서버의 IP 주소와 포트를 설정
- 포트 연결 : 생성한 소켓을 설정한 주소에 연결 (바인드)
- 개통 요청 : 운영체제(커널)에 개통을 요청
- 요청 수신 : 클라이언트의 요청을 수신 (듣기소켓)
- 정보 전송 : 클라이언트와 데이터 송수신 (연결 소켓)
- 연결 종료 : 연결소켓 종료
- 서버 종료 : 듣기소켓 종료
(2) 클라이언트 프로그램
- 소켓 생성 : 서버와 통신하기 위한 소켓 생성
- 주소 설정 : 연결하기 위한 서버의 IP 주소와 포트를 설정
- 연결 요청 : 서버에 연결 요청 (포트는 커널에서 결정)
- 정보 전송 : 서버와 데이터 송수신
- 연결 종료 : 연결소켓 종료
(3) 실행 결과
- 서버 프로그램 실행
: 서버 소켓 생성 후 클라이언트의 요청을 기다린다. 요청이 오면 문자열 전송.
- 사용중인 포트 확인
: 연결 요청(Client) -> 문자열 전송(Server) -> 화면 출력(Client)
(1) 서버 프로그램
- 소켓 생성 : 클라이언트의 요청을 받기위해 소켓 생성
- 주소 설정 : 서버의 IP 주소와 포트를 설정
- 포트 연결 : 생성한 소켓을 설정한 주소에 연결 (바인드)
- 개통 요청 : 운영체제(커널)에 개통을 요청
- 요청 수신 : 클라이언트의 요청을 수신 (듣기소켓)
- 정보 전송 : 클라이언트와 데이터 송수신 (연결 소켓)
- 연결 종료 : 연결소켓 종료
- 서버 종료 : 듣기소켓 종료
※ 서버 IP주소를 INADDR_ANY, 포트 번호를 9000 으로 설정할 경우, 현재 서버 컴퓨터의 9000번 포트를 목적지로 하는 모든 연결 요청에 대해 해당 서버 응용 프로그램에서 처리하겠다는 의미이다. 한 컴퓨터에 여러 장의 LAN 카드가 장착되어 있어서 여러 개의 IP 주소가 할당되고, 서버 응용 프로그램은 이들 IP를 통해 들어오는 모든 연결 요청을 받아서 처리하기위함.
(2) 클라이언트 프로그램
- 소켓 생성 : 서버와 통신하기 위한 소켓 생성
- 주소 설정 : 연결하기 위한 서버의 IP 주소와 포트를 설정
- 연결 요청 : 서버에 연결 요청 (포트는 커널에서 결정)
- 정보 전송 : 서버와 데이터 송수신
- 연결 종료 : 연결소켓 종료
(3) 실행 결과
- 서버 프로그램 실행
: 서버 소켓 생성 후 클라이언트의 요청을 기다린다. 요청이 오면 문자열 전송.
- 클라이언트 프로그램 실행
: 클라이언트 소켓 생성 후 서버에 연결 요청 후 데이터를 수신하여 출력.
- 사용중인 포트 확인
: 현재 사용중인 9000번 포트 확인.
'B ook summary > Socket progm' 카테고리의 다른 글
Chapter 3. 소켓 프로그래밍에서 알아야 할 기본 :: TCP & UDP (1) | 2013.11.13 |
---|---|
Chapter 3. 소켓 프로그래밍에서 알아야 할 기본 :: 프로토콜 계층 구조 (0) | 2013.11.13 |
Chapter 2. 내친김에 소켓 프로그래밍 확장하기 :: 파일 리스트 송수신 (0) | 2013.11.12 |
Chapter 2. 내친김에 소켓 프로그래밍 확장하기 :: 문자열 송수신 (0) | 2013.11.12 |
TCP/IP 소켓 프로그래밍 (0) | 2012.06.05 |
RECENT COMMENT