글
■ 클라이언트 / 서버 구조에서 클라이언트는 IP 주소로 네트워크상의 서버를 구분하고, 포트로 시스템 내부에서 실행중인 프로그램을 구분해서 서비스를 요청한다.
(1) 포트 (Port)
: 클라이언트의 서비스 요청과 서버의 응대 처리는 각각의 소켓이 연결된 포트를 통해 이루어진다.
- 컴퓨터 시스템은 0 부터 65535까지의 포트를 두고 있다.
- 클라이언트가 원하는 서비스를 받으려면 서버의 어떤 포트가 서비스를 하고 있는지를 미리 알아야한다.
- 서버에서는 서비스를 할 수 있도록 미리 서버측 응용프로그램에서 소켓을 생성하고 해당 포트를 연결시켜 놓아야 한다.
※ 참고자료 : 2011/05/11 - [T heory/Network] - 포트 (Port)
- 리눅스/유닉스 계열 시스템에서 포트별로 할당된 서비스의 내용 확인하기
: /etc/services 파일을 통해 확인 가능
(2) IP 주소
: 소켓통신을 위해 상대 컴퓨터와의 접속점으로 IP 주소와 포트를 사용한다.
- 응용프로그램에서의 IP 주소의 표현방식은 '도메인 이름(www.naver.com)', '10진수(202.131.30.81)'이 있다.
- 이런 형식의 IP 주소는 네트워크 바이트 순서로 된 이진값으로 변환해야 한다.
※ 참고자료 : 네트워크 바이트 순서 관련 자료
- 2011/06/20 - [T heory/Network] - 네트워크 바이트 순서 (Byte Ordering)
- 2011/04/13 - [P rogramming/C Language] - 바이트 순서 변환 함수 (ntohl, ntohs, htonl, htons)
※ 참고자료 : IP 주소 변환 관련 자료
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_addr()
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_aton()
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_ntoa()
(3) 프로토콜 주소의 구성
: TCP/IP 통신망에서 상대방과 통신하기 위해 사용하는 접속점의 주소는 구조체 sockaddr에 담아 준비한다.
※ 참고자료 : 프로토콜의 주소 관련 자료
- 2012/02/27 - [P rogramming/Socket] - 프로토콜 체계와 주소체계 - PF_INET, AF_INET
- 2012/02/28 - [P rogramming/Socket] - 3. 주소 정보의 표현 (sockaddr / sockaddr_in)
※ 포트번호나 IP 주소는 모두 네트워크 바이트 순서로 기술해야 하고, 특히나 IP 주소는 이진 형식이어야 한다.
(1) 포트 (Port)
: 클라이언트의 서비스 요청과 서버의 응대 처리는 각각의 소켓이 연결된 포트를 통해 이루어진다.
- 컴퓨터 시스템은 0 부터 65535까지의 포트를 두고 있다.
- 클라이언트가 원하는 서비스를 받으려면 서버의 어떤 포트가 서비스를 하고 있는지를 미리 알아야한다.
- 서버에서는 서비스를 할 수 있도록 미리 서버측 응용프로그램에서 소켓을 생성하고 해당 포트를 연결시켜 놓아야 한다.
※ 참고자료 : 2011/05/11 - [T heory/Network] - 포트 (Port)
- 리눅스/유닉스 계열 시스템에서 포트별로 할당된 서비스의 내용 확인하기
: /etc/services 파일을 통해 확인 가능
(2) IP 주소
: 소켓통신을 위해 상대 컴퓨터와의 접속점으로 IP 주소와 포트를 사용한다.
- 응용프로그램에서의 IP 주소의 표현방식은 '도메인 이름(www.naver.com)', '10진수(202.131.30.81)'이 있다.
- 이런 형식의 IP 주소는 네트워크 바이트 순서로 된 이진값으로 변환해야 한다.
※ 참고자료 : 네트워크 바이트 순서 관련 자료
- 2011/06/20 - [T heory/Network] - 네트워크 바이트 순서 (Byte Ordering)
- 2011/04/13 - [P rogramming/C Language] - 바이트 순서 변환 함수 (ntohl, ntohs, htonl, htons)
※ 참고자료 : IP 주소 변환 관련 자료
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_addr()
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_aton()
- 2012/02/29 - [P rogramming/Linux System] - 네트워크 주소 변환 - inet_ntoa()
(3) 프로토콜 주소의 구성
: TCP/IP 통신망에서 상대방과 통신하기 위해 사용하는 접속점의 주소는 구조체 sockaddr에 담아 준비한다.
※ 참고자료 : 프로토콜의 주소 관련 자료
- 2012/02/27 - [P rogramming/Socket] - 프로토콜 체계와 주소체계 - PF_INET, AF_INET
- 2012/02/28 - [P rogramming/Socket] - 3. 주소 정보의 표현 (sockaddr / sockaddr_in)
※ 포트번호나 IP 주소는 모두 네트워크 바이트 순서로 기술해야 하고, 특히나 IP 주소는 이진 형식이어야 한다.
'B ook summary > Socket progm' 카테고리의 다른 글
Chapter 3. 소켓 프로그래밍에서 알아야 할 기본 :: 소켓의 생성과 종료 (0) | 2013.11.13 |
---|---|
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 |
RECENT COMMENT