C++ #18 Boost.Asio 기본

underlier12·2020년 3월 6일
1

C++

목록 보기
18/19

18. Boost.Asio 기본 사용법

기본 개념

IOService

Boost.Asio의 IO Service는 통신의 핵심적인 역할을 수행한다. 커널에서 발생한 입출력 이벤트를 디스패치 해주는 기능을 수행한다. 즉 네트워크 상 접속 및 데이터 처리 이벤트를 담당한다.

Endpoint

종단점은 네트워크에 존재하는 특정한 컴퓨터에서 실행되고 있는 하나의 프로그램을 의미한다. 일반적으로 네트워크 통신 기능을 가지고 있는 모듈을 의미하며 IP 주소 및 포트 번호의 한 쌍 자체를 종단점이라고 칭하기도 한다.

DNS

Domain Name Server는 도메인 주소를 IP 주소로 변환해주는 서버를 의미한다. Boost Asio에서 도메인 주소를 통해 IP 주소를 알아내고 종단점을 구하기 위한 목적으로 DNS 기능을 지원한다.

기본 클래스

Query

Boost Asio의 Query 클래스는 도메인 주소와 프로토콜을 이용해 DNS 질의문을 생성한다.

Acceptor

Acceptor는 서버 프로그램이 IO Service와 종단점을 이용해 클라이언트의 접속을 기다리도록 한다.

Passive Socket

수동 소켓은 연결 수립 요청을 기다리는 소켓을 의미하며 서버 프로그램의 Acceptor를 통해 만들어 질 수 있다.

Active Socket

능동 소켓은 다른 컴퓨터로 데이터를 보내거나 받기 위한 연결 수립 과정에서 사용되는 능동적인 소켓을 의미한다.

Iterator

반복자는 여러 개의 IP 주소가 존재할 때 종단점이 여러 개 존재할 수 있으므로 개별적인 종단점에 접근하고자 할 때 사용할 수 있다.

profile
logos and alogos

0개의 댓글