IGMP 동작 과정 (업데이트)

sunnyjjang·2025년 6월 1일

네트워크

목록 보기
15/26
post-thumbnail

동작방식

  1. 클라이언트: 멀티캐스트 그룹에 가입 요청하기 위해 Membership Report 메세지 생성

  2. 클라이언트: 동일 네트워크에 있는 라우터에게 전달하기 위해 멀티캐스트 주소로 요청을 전송

    → IGMP 메시지를 위한 예약된 멀티캐스트 주소: IGMPv2/IGMPv3 모두 224.0.0.22 사용

  3. 라우터: 멀티캐스트 라우팅 테이블을 수정하여 멀티캐스트 그룹 정보를 업데이트

  4. 라우터: 주기적으로 IGMP 쿼리 전송 → 어디로? 동일 네트워크 내의 전체 호스트를 가리키는 244.0.0.1로

    클라이언트: Membership Report로 응답

    → 클라이언트 응답이 없으면 라우터는 멀티캐스트 라우팅 테이블에서 해당 클라이언트를 제거

라우터는 멀티캐스트 그룹 정보를 유지하기 위해 정기적으로 IGMP Query를 보내고, 호스트의 응답을 통해 그룹 가입 여부를 갱신한다. 응답이 없으면 해당 그룹에서 탈퇴한 것으로 간주하고 트래픽 전송을 중단한다.

여기서 라우터는 IGMP General Query를 224.0.0.1 주소로 전송한다. 224.0.0.1은 서브넷에 존재하는 모든 호스트에게 보내는 멀티캐스트 주소라고 하는데, 서브넷에 존재하는 모든 호스트에게 멀티캐스트 요청을 보내는 것과 브로드캐스트하는 것의 차이가 뭘까 궁금했다.

결국엔 '서브넷에 존재하는 모든 호스트에게 보내는 멀티캐스트 주소' 라는 표현이 잘못된 것 같다.
서브냇 내의 멀티캐스트 수신자들 즉 멀티캐스트 라우팅 테이블에 등록되어있는 모든 호스트에게 IGMP 쿼리를 보내는 것이므로 멀티캐스트가 맞다.

profile
지금 이 순간이 다시 넘겨볼 수 있는 한 페이지가 될 수 있게

0개의 댓글