다중접속서버

10-4, 10-5에서 쓰인 시그널 핸들링을 이용하면 멀티 프로세스 기반의 다중접속 서버를 구현할 수 있습니다. 위 그림은 이번에 구현할 멀티프로세스 기반 다중접속 에코 서버의 구현모델입니다. 클라이언트의 수가 둘이면 두 개의 자식 프로세스, 다섯이면 5 개의 자식 프로세스를 가지게 됩니다. 따라서 에코서버는 다음의 과정을 거쳐야 합니다. 1. 에코 서버의 부모프로세스는 accept 함수 호출을 통해 연결 요청 수락 2. 이때 얻게 되는 소켓의 파일 디스크립터 자식 프로세스 생성 후 넘겨줌 3. 자식 프로세스는 전달받은 파일 디시크립터를 바탕으로 서비스 제공 여기서 2번은 자식 프로세스는 생성될 때 부모 프로세스를 전부 복사하므로 따로 처리할 과정은 없습니다. #include #include #inclu..
서버가 한 번에 한 요청만 받을 수 있다면 연결요청이 무수히 쌓였을 때 후순위에 있는 요청은 받아들여지기까지 긴 시간이 걸릴 것입니다. 또, 네트워크 프로그램은 데이터의 송수신 시간이 큰 비중을 차지하기에 한 번에 한 요청보단 여러 요청을 받는 것이 더 유리합니다. 그래서 둘 이상의 클라이언트에게 동시에 서비스를 제공하는 다중접속 서버가 필요합니다. 멀티프로세스 기반 서버 : 다수의 프로세스를 생성하는 방식 멀티플렉싱 기반 서버 : 입출력 대상을 묶어서 관리하는 방식 멀티쓰레딩 기반 서버 : 클라이언트의 수만큼 쓰레드를 생성하는 방식 위는 대표적인 세 가지 다중접속 서버입니다. 이 문서에서는 제목에서 말했듯 멀티프로세스 기반 서버에 대해서 다룰 것입니다. 먼저 프로세스란, 메모리 공간을 차지한 상태에서 ..
푸더기
'다중접속서버' 태그의 글 목록