Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

브래의 슬기로운 코딩 생활

네트워크 보안 12주차 정리 - 2 (Multiplex 서버- poll 기법) 본문

2-2/네트워크 보안

네트워크 보안 12주차 정리 - 2 (Multiplex 서버- poll 기법)

김브래 2023. 11. 21. 21:39

Multiplex 서버
- poll 기법 -




Poll 기법


폴링 함수

함수: poll()
• 등록된 파일 기술자(FD: File Descriptor)를 이용하여 이벤트를 감지
• 해당 기술자의 입/출력 상태를 모니터링하여 결과를 기록

 

 인자:
– *fds : 모니터링하고자 할 파일기술자를 갖는 구조체변수들
– nfds : 파일기술자의 개수(구조체 변수의 개수)
– timeout : 모니터링 시간(밀리초)

 

• 결과 값:
– 성공 : 0 또는 그 이상(이벤트의 개수)
– 실패 : -1

구조체: struct pollfd

poll() 함수의 파일기술자 모니티링용 구조체

 

 구조체 멤버:
– fd : 모니터링할 파일기술자
– events : 모니터링할 이벤트 종류
– revents : 발생한(감지된) 이벤트

타임 아웃

밀리초단위로 처리

 

select기법 대비 이벤트 발생에 대한 시간을 알 수 없음
• 별도 처리가 필요(예: 현재시간 추출)

모니터링 결과 확인

struct pollfd의 revents 멤버를 통해 확인


사용 방법


호출 순서

Select 기법 vs. Poll 기법
• 모니터링 대상과 타임아웃이 동일하다면, 검사할 FD와 타임 아웃에 대한 재설정 필요 없음