하나의 프로세스를 여러 포트에 바인딩하시겠습니까?

하나의 프로세스를 여러 포트에 바인딩하시겠습니까?

관리자가 아닌 포트(예: > 1024)에서 들어오는 연결을 수신하고 실행 중인 소켓 서버가 있습니다. 또한 이 프로세스가 모니터링 목적으로 다른 포트에서 다른 유형의 연결을 처리할 수 있기를 바랍니다. 나는 반대 상황인 다대일에 대한 질문을 SE에서 찾았지만 이것은 일대다 상황이 될 것입니다.

내 질문: 하나의 프로세스를 여러 포트에 바인딩할 수 있습니까?

그렇다면 서로 다른 포트의 연결을 고유하게 안정적으로 처리할 수 있습니까? 즉, 포트 2000은 한 코드 조각을 실행하고 포트 3000은 다른 코드 조각을 실행합니다.

기본 포트에 연결되어 있는 다른 클라이언트를 모니터링하기 위해 연결을 처리하는 방법에 대한 다른 제안도 환영합니다.

답변1

절대 가능합니다. 선택기나 설문조사를 사용하여 알림을 받고 각 연결을 관리할 수 있습니다.

http://linux.die.net/man/2/select

답변2

이것은 프로그래밍 질문처럼 보이지만 아직 작성하지 않은 프로그램과 지정되지 않은 언어에 대한 것입니다.

하나의 프로세스를 여러 포트에 바인딩할 수 있습니까?

예.

다른 포트의 연결을 고유하게 안정적으로 처리할 수 있나요?

예, 각 수신(바인딩) 포트는 별도의 소켓에 의해 서비스됩니다(각 수신 포트에서 이루어진 모든 연결도 마찬가지입니다).

관련 정보